Problem/Motivation

#3218356: Process plugin: service introduced a new generic process plugin - Service. This is a variation of Callback plugin provided by Drupal core, and can be used to execute a method of any available service, including Transliteration.

Now we can use Service process plugin to execute transliterate method of Transliteration process plugin. Benefits:
1) Ability to provide multiple method parameters using unpack_source feature;
2) Fewer files = easier maintenance.

Proposed resolution

Deprecate Transliteration source plugin and suggest using Service introduced in #3218356: Process plugin: service.

Remaining tasks

1) Agree on next release and release of removal (relevant issue: #3015034: [Plan] Create a new release);
2) Review / commit;
3) Add release notes snippets or change record;

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

Matroskeen created an issue. See original summary.

matroskeen’s picture

Title: [PP-2] Deprecate Transliteration process plugin » [PP-1] Deprecate Transliteration process plugin
Issue summary: View changes

Turns out #3039240: Create a way to declare a plugin as deprecated is not necessary because it only affects migration plugins (not process plugins).
Here is an example issue of a deprecating process plugin: #3087332: Deprecate the 'd6_url_alias_language' migration process plugin.

matroskeen’s picture

Title: [PP-1] Deprecate Transliteration process plugin » Deprecate Transliteration process plugin
Issue summary: View changes
Status: Active » Needs review
matroskeen’s picture

Issue summary: View changes
matroskeen’s picture

Adding a reference to original task

andypost’s picture

Good idea++

btw I think module could provide upgrade path for the change

matroskeen’s picture

It probably could, but only for migration config entities (not migration plugins). It sounds scary to edit yaml files of custom migrations :)

danflanagan8’s picture

I think we should have a more general discussion about what migrate_plus process plugins could or should be deprecated now that callback has the unpack_source option. A quick look suggests that the following could be easily removed:

  • array_pop
  • array_shift
  • merge

But there may be value in having redundant process plugins for DX purposes.

matroskeen’s picture

@danflanagan8 let's hear some opinions during the next #migrate meeting ;)

heddn’s picture

Status: Needs review » Needs work

NW for adding a change record (CR) and updating the @see references to the CR.

matroskeen’s picture

Status: Needs work » Needs review

Added a draft CR and updated links - back to "Needs review".

  • heddn committed 028a0a1 on 8.x-5.x authored by Matroskeen
    Resolve #3232488 "Deprecate transliteration plugin"
    
heddn’s picture

Status: Needs review » Fixed

Thanks for your efforts!

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.

ben.hamelin’s picture

Just surfacing the change record here as it took a bit to dig out and hoping this helps someone!
https://www.drupal.org/node/3255994