\Drupal\content_translation\ContentTranslationUpdatesManager and the corresponding content_translation.updates_manager service have been deprecated. They could have been previously used to manually update content translation field definitions when content translation settings for an entity bundle changed. The fields were previously created or updated in the following situations:
- When enabling translation through the user interface
- When importing configuration that contains content translation settings
- When creating translatable entity bundles via a migration
In all other situations - in particular when content translation settings were created by the module- (or profile-)provided configuration - fields would have to be manually updated by custom code. This has now been fixed so that ContentTranslationUpdatesManager::updateDefinitions() does not need to be called. Any usages can simply be removed without replacement.
This change also affects migrations. There is no need to explicitly specify that content translation field definitions should be updated. Corresponding destination configuration setting content_translation_update_definitions will be ignored. For example:
Before
destination:
plugin: entity:language_content_settings
content_translation_update_definitions:
- node
After
destination:
plugin: entity:language_content_settings
As part of this change ContentTranslationUpdatesManager has been deprecated entirely, so it should no longer be passed into ContentTranslationManager::__construct().
Before
class MyContentTranslationManager extends ContentTranslationManager {
public function __construct(EntityTypeManagerInterface $entity_type_manager, ContentTranslationUpdatesManager $updates_manager, EntityTypeBundleInfoInterface $entity_type_bundle_info = NULL) {
parent::__construct($entity_type_manager, $updates_manager, $entity_type_bundle_info);
}
}
After
class MyContentTranslationManager extends ContentTranslationManager {
public function __construct(EntityTypeManagerInterface $entity_type_manager, $entity_type_bundle_info) {
parent::__construct($entity_type_manager, $entity_type_bundle_info);
}
}
Note also the related change introduced the $entity_type_bundle_info parameter: https://www.drupal.org/node/2549139