Дата релиза: 4 марта 2021
¶Добавлен опциональный параметр для StatementInterface::fetchObject()
Метод Drupal\Core\Database\StatementPrefetch::fetchObject()
и его интерфейс Drupal\Core\Database\StatementInterface::fetchObject()
мимикируют под реализацию fertchObject()
в PDO. Для того чтобы они были идентичны добавлен второй параметр:
/**
* Fetches the next row and returns it as an object.
*
* The object will be of the class specified by StatementInterface::setFetchMode()
* or stdClass if not specified.
*
* @param string|null $class_name
* Name of the created class.
* @param array $constructor_args
* Elements of this array are passed to the constructor.
*
* @return mixed
* The object of specified class or \stdClass if not specified. Returns
* FALSE or NULL if there is no next row.
*/
public function fetchObject($class_name = NULL, $constructor_args = []);
¶В миграцию ContentEntity добавлена возможность указывать ключ источника в котором хранится ID ревизии
Ранее, миграция content_entity
(Drupal\migrate_drupal\Plugin\migrate\source\ContentEntity
) использовалась в ситуациях, когда сайт источник был идентичен сайту назначения.
В Drupal 8.9, 9.0 и 9.1, плагин источника данных content_entity
всегда включал ключ для ID ревизии, так, как если бы сущность источника поддерживала ревизии. (Пример: node, media, taxonomy_term, но не user, file).
В версиях Drupal 8.8 и ранее, ключ ID ревизии никогда не добавлялся.
Начиная с текущей версии вы можете указать, включать ли ID ревизии в миграцию или нет, используя настройку revisions
. Допустимые значения none
и add key
.
Новая настройка опциональна, а значение по умолчанию revisions: add key
- что равносильно поведение до текущего изменения.
Ранее:
source:
plugin: content_entity:node
Начиная с данного релиза:
Для того чтобы ID ревизии не использовался (поведение Drupal 8.8-):
source:
plugin: content_entity:node
revisions: none
Для того чтобы ID ревизии добавлялся (поведение Drupal 8.9, 9.0, 9.1):
source:
plugin: content_entity:node
revisions: add key
¶Claro
- #3116377 Улучшено отображение элемента с автодополнением в раскрытых фильтрах Views.
¶Configuration System
-
#3196050 Исправлена документация для
StorageConfigBase::validateValue()
.
¶Entity System
-
#2693485 Пункты добавления материалов (
/node/add
) теперь сортируются по метке, а не по машинному имени.
¶File
-
#3174349
file_url_transform_relative()
теперь поддерживает порты отличные от 80 и 443.
¶Form System
-
#997826 Исправлена работа свойства
#state
для элемента формыtext_format
.
¶Forum
- #3197754 Кнопка «Add new Form topic» больше не показывается на разделах форума.
¶Layout Builder
- #3144010 Исправлена неполадка из-за которой было невозможно удалять псевдо-поля.
¶Migration System
- #2558857 Оптимизирована очистка памяти после загрузки сущностей.
-
#3165944 Миграция
d7_shortcut
больше не указывает в качестве зависимости миграциюd7_menu_links
. -
#3189476 Миграция
node_translation_menu_links
теперь имеет опциональные зависимостиd6_menu
иd7_menu
. -
#3196177 Добавлена документация для плагинов источников
VariableMultiRow
,Variable
,d6/VariableTranslation
иd7/VariableTranslation
. - #3187415 Миграции переводов для системных настроек теперь зависят от базовых миграций этих настроек.
-
#3176394 Типы комментариев больше не мигрируют если в источнике отключен модуль
comment
. -
#2954982 Исправлена неполадка в
EntityContentBase::processStubRow()
приводящая к ошибкам в некоторых ситуациях. - #3178966 Миграции Drupal 2 Drupal теперь будут выдавать ошибки при попытке мигрировать комментарии если на сайте-источнике они отключены.
- #3189587 Добавлена документация для плагинов источников связанных с таксономией.
-
#3084477 Исправлены неполадки в тестах для
migrate_drupal_ui
. -
#3197749 Улучшена документация и добавлен пример для плагина источника
empty
. -
#3097312 Миграции созданные при помощи дериватив и имеющие плагин
migration_lookup
, больше не указываются в качестве опциональных зависимостей. Ранее, подобные миграции имели зависимости друг на друга, хотя могли быть не связаны между собой. -
#2579361 Улучшена документация для
Row::setSourceProperty()
.
¶Olivero
-
#3182711 Блок "помощи" теперь располагается в регионе
content_above
вместо несуществующегоhelp
. - #3182134 Обновлены установочные конфигурации для темы.
-
#3196425 Удалены стили для
::selection
. - #3197721 Добавлен прелоад Metropolis-Regular.
- #3190140 Описание для элемента раскрытия меню теперь содержит заголовок раскрываемого пункта.
¶Views
-
#2470753 Улучшена документация для
hook_views_analyze()
.
¶Тестирование
-
#2571475
KernelTestBase
теперь могу производить внешние HTTP запросы. -
#3187309 Сравнения с использованием XPath для
<select>
и<option>
заменены на современные методы. -
#3189607 Сравнения с использованием XPath для
<input type="checkbox">
заменены на современные методы. -
#3201113 Исправлена опечатка в
PhpUnitVersionDependentTestCompatibilityTrait
.
¶Прочие изменения
-
#3195951 Из
MAINTAINERS.txt
удалён пустой раздел "Provisional membership". -
#3195277 Из
MAINTAINERS.txt
удалены упоминания Drupal 8. -
#3196391 Упоминание "Drupal Core" в
MAINTAINERS.txt
приведено к единому стилю. - #3196433 Исправлена ссылка ведущая на документацию форматов времени PHP.net.
-
#3197135 Исправлена ошибка в примере
hook_validation_constraint_alter()
. -
#2623718 Исправлен код не соответствующий стандарту
Drupal.Commenting.HookComment
. -
#3196392 В
MAINTAINERS.txt
добавлено описание об инициативе «Topic» (Help Topics). -
#3196430 Удалены стили для
::selection
элемента#drupal-off-canvas
. -
#2533254
LanguageInterface
добавлен в группу документацийi18n
. -
#3199582 Исправлен пример реализации
hook_field_storage_config_update_forbid()
.
¶Ссылки
- Drupal 9.1.5 (англ.), drupal.org, 4 марта 2021 г.