Four classes are deprecated in Drupal 11.4.0, to be removed in Drupal 13.0.0:
Drupal\menu_link_content\Plugin\migrate\process\LinkOptionsDrupal\menu_link_content\Plugin\migrate\process\LinkUriDrupal\system\Plugin\migrate\process\d6\TimezoneDrupal\user\Plugin\migrate\process\UserLangcode
They are replaced by equivalent classes in the Migrate module:
Drupal\migrate\Plugin\migrate\process\LinkOptionsDrupal\migrate\Plugin\migrate\process\LinkUriDrupal\migrate\Plugin\migrate\process\TimezoneDrupal\migrate\Plugin\migrate\process\UserLangcode
(The old Timezone class is in the d6 namespace, but the new one is not.)
Migrations
There is no change for migrations, since these process plugins are referenced by their plugin IDs, which have not changed:
link_urilink_optionstimezoneuser_langcode
The plugin IDs now reference the new classes in the Migrate module.
PHP Code
If you refer to these classes by their fully qualified class names, then you will have to update the namespace. This is most common in classes that extend the core plugin classes. For example, suppose you have a custom version of the timezone plugin. Then you will have to update the use statement in your module:
Before Drupal 11.4.0
namespace Drupal\mymodule\Plugin\migrate\process;
use Drupal\system\Plugin\migrate\process\d6\TimeZone;
/**
* Custom variant of the timezone process plugin.
*/
#[MigrateProcess('my_timezone')]
class MyTimeZone extends TimeZone {
// Your code goes here.
}
In Drupal 11.4.0 or later
namespace Drupal\mymodule\Plugin\migrate\process;
use Drupal\migrate\Plugin\migrate\process\TimeZone;
/**
* Custom variant of the timezone process plugin.
*/
#[MigrateProcess('my_timezone')]
class MyTimeZone extends TimeZone {
// Your code goes here.
}