Install

Works with Drupal: 8.x

Using Composer to manage Drupal site dependencies

Alternative installation files

Download domain-8.x-1.0-alpha10.tar.gztar.gz 139.42 KB
MD5: 35c50df2b8df61512b6f099563d382e8
SHA-1: d74edefb535e3c5767e2e2f9b7f5683d038a516c
SHA-256: ea3031f1878661ee97145541b8d1c0b2e52b8250ab44d8e919d2d7c765c19977
Download domain-8.x-1.0-alpha10.zipzip 271.87 KB
MD5: a445f30040a1021829c9bcd84cd5ba37
SHA-1: 9ced216c3e0384b80c79fff55b51fa6c813d6342
SHA-256: 48f508b25531d5fe59fc23947abb5aa5346cd462ab0108fb42e675ff8c0c763e

Release notes

New features

This release has a number of new features, the highlights of which include:

  • Wildcard matching of URL alias patterns
  • Better handling of multilingual settings and URLs
  • Improved documentation of cross-site requests and cookie handling
  • Improved security for redirects
  • Consistent id generation on 32- and 64-bit systems
  • Better permission handling for domain administration
  • A setting to control what node paths will be rewritten when using Domain Source
  • JavaScript validation of Domain Source options against selected Domains
  • A migration handler for Drupal 7, the basis for writing your own migrations.

There are also numerous bugfixes,

Upgrading

There are some significant changes to the code which require that you rebuild the Symfony container, generally with drush cr. There is documentation for help troubleshooting this issue, which is a core Drupal process.

If you are using Domain Config, you may need to disable it before upgrading. This issue has been reported but disabling that module seems to be the only fix. Due to how Domain Config works, you will not lose data by uninstalling and reinstalling the module.

These steps should work with drush / composer:

> drush pmu domain_config
> drush cr
> composer update drupal/domain --with-dependencies
> drush en domain_config
> drush updb

More information about composer is in Drupal's documentation.

Developer Notes

There are a number of changes at the code level, most notably the deprecation of the following services:

  • domain.loader
  • domain.creator
  • domain_alias.loader

These were created back before core's entity API was fully stable. They have all been replaced by standard entity storage for 'domain' and 'domain_alias' respectively. These services, their implementations and interfaces will be removed from the module in beta release 2.

The arguments passed to multiple services have changes as a result, since the classes are now loaded through the @entity_type.manager.

Sample change:

Before:

$default = \Drupal::service('domain.loader')->loadDefaultDomain();

After:

$default = \Drupal::service('entity_type.manager')->getStorage('domain')->loadDefaultDomain();

Complete list of changes

  • Corrects fatal error in DomainSourcePathProcessor.
  • Corrects missing attribute in DomainElementManger.
  • Fixes saving errors on the DomainListBuilder that caused bad data to be saved.
  • Adds a test for canonical hostnames on actions.
  • Proper tests for Domain Actions.
  • Moves the actions test to a functional test.
  • Fix for issue #2927568 reported by Chismen: domain add error
  • Test for paginated domain administration.
  • Adds a test for the weight element on the overview form.
  • Better handling of default domain access values.
  • Cleans up README to explain benefits of this module in one sentence
  • Delete aliases on domain deletion.
  • Adds node dependency to domain source.
  • Adds node as domain_access dependency
  • Moves domain loader and domain creator to entity storage.
  • Fixes property name in DomainForm.
  • Fixes storage references for conformity.
  • Updates Domain Alinas to use entity storage instead of custom loader.
  • Fix for circular dependency in DomainConfigOverrider.
  • Adds a test for https://www.drupal.org/node/2851170.
  • Allows wildcard matching of alias url patterns
  • Adds language save test for domain access.
  • Update travis for drupal 8.5
  • Fix error when getting user domains for anonymous user
  • Adds logging to domain_alias_request_alter().
  • Updates cookie documentation.
  • Adds information about CORS.
  • Fix error when user doesn't have domain_access field
  • Issue #2911548 by agentrickard, marjina-constantin: css_classes should be split
  • Issue #2912679 by bucefal91: Leverage RequestPath condition for path matching
  • Issue #2915364 by gaydabura, agentrickard, andypost: FieldException during install from config
  • Issue #2908236 by agentrickard, Patrick R.: Domain ID may vary between 32-bit and 64-bit versions of PHP
  • Fix for issues reported in https://www.drupal.org/node/2880112
  • Remove the persistent service tags.
  • Adds a trusted host test for Domain Source.
  • Adds trusted host testing to inactive domain redirect.
  • Ensure that domain-sensitive redirect responses are validated by trusted hosts.
  • Add checks for trusted host patterns.
  • Fix the interface definition of getAllValues().
  • Issue #2912150 by @Mistrae. Relation not updated with machine name changes.
  • Fixes the middleware issue reported by @michielnugter.
  • Ensure context is only set once
  • Switch from crc32 to hash for domain_id generation.
  • Adds a test to cover https://www.drupal.org/node/2896434.
  • Adds test for route exclusion settings.
  • Fixes documentation and api for domain source.
  • Improve loading in the path processor.
  • Normalize route names for path mnatching.
  • Allow for entity routes to be excluded from rewrites.
  • Makes link rewrites configurable.
  • Tests for language variant domain source.
  • Adds tests for URL generation.
  • Fix for language handling in canonical paths.
  • Proper handling of domain source for translations.
  • Moves the new redirect response handlers to Domain Source.
  • Fix for issues reported in https://www.drupal.org/node/2880112
  • Fix for sort handling on domain fields.
  • Fix for field access checking.
  • Finishes test for domain module hooks.
  • Updated test for request_alter.
  • Change settings for domain_access field installation.
  • Updates plugin handler based on https://www.drupal.org/node/2870971.
  • Fixes alter hook invocation.
  • Provide hook_domain_validate test case.
  • Fix for drush logic.
  • More granular permissions for Domain Alias.
  • Ensures that the alias list controller is sound.
  • Better access handling in domain_alias_domain_operations().
  • Restrict domain source options using javascript.
  • Remove domain relationship options from views.
  • Validate domain source selection
  • Migrate files for Domain records D7 -> D8
  • Adds all domain fields to the same form group, if applicable.
  • Issue #2892612 by SpadXIII: Domain source trips over deleted field_domain_source
Created by: agentrickard
Created on: 1 Dec 2017 at 18:51 UTC
Last updated: 20 Dec 2017 at 19:59 UTC
Bug fixes
New features

Other releases