Hello all, it’s time for the biweekly migration subsystem meeting. The meeting will take place in slack in various threads
This meeting:
➤ Is for core migrate maintainers and developers and anybody else in the community with an interest in migrations
➤ Usually happens every second Thursday and alternates between 1400 and 2100 UTC.
➤ Is done on the #migration channel in Drupal Slack (see www.drupal.org/slack for information).
➤ Happens in threads, which you can follow to be notified of new replies even if you don’t comment in the thread. You may also join the meeting later and participate asynchronously!
➤ Has a public agenda anyone can add to. See the parent issue for an idea of the typical agenda.
➤*Transcript will be exported and posted* to the agenda issue. For anonymous comments, start with a :bust_in_silhouette: emoji. To take a comment or thread off the record, start with a :no_entry_sign: emoji.

Core migration issues

Next video meeting 2024-04-25

0️⃣ Who is here today?

benjifisher I am here!
alison hi!
quietone HI

1️⃣ What should we talk about today? Suggest topics here and I will add threads. I will also check for comments on the issue for today's meeting.

mikelutz (he/him) #2756269: [PP-1] Dispatch new events while importing data
benjifisher Provide ability to reference current value of process pipeline as a source property. #3236774: Provide ability to reference current value of process pipeline as a source property
smustgrave Oh perfect timing, Since I just had it open  any last minute feedback on #3323990: Migrate Drupal reports wrong version of Drupal if pointed at a Drupal 9 or 10 database
smustgrave Thanks btw for always quick responses!
benjifisher Update MigratePluginManager to include both attribute and annotation class: #3424509: Update MigratePluginManager to include both attribute and annotation class
alison Scope question, for next time --Is it okay to add issues that are NR but maybe don't need "Real Discussion," and maybe aren't "Important," but we want to move them along (maybe because they're ours)? -- or is that a misuse of this space, i.e. we should stick to things that need group discussion and/or are high priority?
smustgrave If it’s migration related don’t see why not. There’s also #needs-review-queue-initiative though most migration related issues I end up coming back here for better eyes.
alison Thank you! -- in this case, it's a migrate_plus issue, so I'll just set a reminder for myself to "suggest it" in two or four weeks :)
benjifisher You could also bring it up in the channel, outside of a meeting.
alison Oh! Yeah I suppose I could :laughing:
mikelutz (he/him) In theory we are supposed to post the meeting issue in advance, and people can add topics to the issue, but no one does, and we really don't pay much attention to it.
alison Makes sense (on all points)

2️⃣ Action items. To be added later.

3️⃣ Statistics

Migrate Initiative Meeting 346 open issues, 4 fixed since last meeting, 3 in NR
Migrate Initiative Meeting Google sheet for recording stats: https://docs.google.com/spreadsheets/d/1o0Rjlc1vnnLP5bM5P-SMMyGzqn7258hi...

4️⃣ Comment in this thread if you are looking for ways to contribute. Give us some idea of what you would like to do: documentation, code review, testing, project management, ...

5️⃣ Previous minutes.

Migrate Initiative Meeting #3422067: [meeting] Migrate Meeting 2024-03-14 1400Z (edited)
mikelutz (he/him) This is kinda off, we didn’t actually have a meeting on the 14th
alison Ah HA!  Robots don't work!  MY JOB IS SAFE! (edited)
mikelutz (he/him) Well, no. I provided the issue link to the bot becuase it exists on d.o, we just didn’t have the meeting.
alison shoot........

6️⃣ Announcements

benjifisher At MidCamp last week, two timeslots were organized as "unconferences". We proposed ideas for discussion, then each idea got a table in one big room.

I proposed

Is there anything the Migrate API cannot do?

and described it as a live version of this Slack channel. I got a table full of people interested in talking about migrations.

7️⃣ Dispatch new events while importing data

Migrate Initiative Meeting #2756269: [PP-1] Dispatch new events while importing data
Migrate Initiative Meeting (Original Request) https://drupal.slack.com/archives/C226VLXBP/p1711659762981879?thread_ts=... (edited)
mikelutz (he/him) I haven’t commented on this yet, but it seem slike it’s odd that it dispaches the migration failed event for both row fails and a whole migration fail.  Given the work being done in #3247718: Allow process plugins to flag a row to be skipped. This whole section of code is getting a bit of a refactor, I feel like we should hold off a bit.
benjifisher Postpone it.

8️⃣ Provide ability to reference current value of process pipeline as a source property

Migrate Initiative Meeting #3236774: Provide ability to reference current value of process pipeline as a source property (edited)
Migrate Initiative Meeting (Original Request) https://drupal.slack.com/archives/C226VLXBP/p1711660171232619?thread_ts=... (edited)
benjifisher I am thinking of re-opening that issue and re-purposing it for the suggestion I made in Comment #6.
benjifisher @danflanagan8 opened the issue and then closed it (works as designed).
benjifisher Or I could open a new issue.
mikelutz (he/him) I’m really not a fan of doing anything here.  As noted in the issue, there is both a hacky way of doing this, and a supported way using placeholder pipelines.  I don’t see any reason to reopen the issue.
benjifisher x-post?
mikelutz (he/him) I feel like if you want to add your get_arguments plugin, it should probably go in migrate_plus
benjifisher Yes, definitely migrate_plus.
benjifisher Generic example:
process:
  bar:
    plugin: build_array
    source: foo
    template:
      key: literal string
      properties:
        - source:field_body/0/value
        - dest:field_body/0/value
      - pipeline:some/nested/key
benjifisher The result is an array with the same structure (string and numeric keys,nesting) as the template. Any string value starting with 'source:' or 'dest:'is replaced by the corresponding source or destination property. Do notprefix destination properties with '@'. The string value 'pipeline:' isreplaced with the source, or the previous value from the process pipeline.You can also extract keys using the '/' separator.
benjifisher For example, to convert a keyed array to an indexed array, ...
benjifisher
process:
  field_paragraph:
    - plugin: migration_lookup
      # ...
    - plugin: build_array
      template:
        target_id: pipeline:0
        target_revision_id: pipeline:1
benjifisher If you want a literal string like 'source:foo' in the result, then a work-around is to define a constant in the source configuration.
benjifisher Prepare a serialized string for the layout_paragraphs module:
benjifisher
behavior_settings:
    - plugin: build_array
      template:
        layout_paragraphs:
          layout: hwp_image_single
          config:
            label: ''
          parent_uuid: null
          region: null
    - plugin: single_value
    - plugin: callback
      callable: serialize
benjifisher It is generally useful for preparing input for the callback plugin.
benjifisher
some_field:
  - plugin: build_array
    template: ...
  - plugin: callback
    unpack_source: true
    callable: ...
benjifisher Or the service plugin, of course.
benjifisher Maybe a new issue (on migrate_plus) is a better idea than reopening the old wound one.

9️⃣ Migrate Drupal reports wrong version of Drupal if pointed at a Drupal 9 or 10 database

Migrate Initiative Meeting #3323990: Migrate Drupal reports wrong version of Drupal if pointed at a Drupal 9 or 10 database
Migrate Initiative Meeting (Original Request) https://drupal.slack.com/archives/C226VLXBP/p1711660806877129?thread_ts=... (edited)
benjifisher I noticed that this was updated recently. I will review it again now.
quietone I will admit it will nice to complete this. 🙂
benjifisher @quietone: I am looking at getLegacyDrupalVersion() again. On the one hand, we should not change things more than we have to. On the other hand, we are already changing it a lot, and it would be nice to simplify it a bit. What do you think?
benjifisher I am thinking
  1. Put a lot less in the try block.
  2. Return early instead of assigning to $version_string and then returning it at the end.
benjifisher For example, why not just return FALSE instead of having this comment inside the catch block?
// All database errors return FALSE.
quietone Yes, it would be nice to tidy it up. Let's do that in a follow up so this bug fix is not delayed.
benjifisher OK
quietone Ta

🔟 Update MigratePluginManager to include both attribute and annotation class

Migrate Initiative Meeting #3424509: Update MigratePluginManager to include both attribute and annotation class (edited)
Migrate Initiative Meeting (Original Request) https://drupal.slack.com/archives/C226VLXBP/p1711661943044309?thread_ts=... (edited)
benjifisher I did one round of review, and it is ready for another round. It is a pretty complicated issue.
quietone Thanks, reviews are needed on this one.  It is best if all the conversions are complete for 10.3.

1️⃣1️⃣ Wrap-Up

Migrate Initiative Meeting Thanks for coming all! See you in 2 weeks

Comments

mikelutz created an issue. See original summary.

benjifisher’s picture

Issue summary: View changes
ddavisboxleitner’s picture

Title: [meeting] Migrate Meeting 2024-03-29 » [meeting] Migrate Meeting 2024-03-28
ddavisboxleitner’s picture

Issue summary: View changes

benjifisher’s picture

Issue summary: View changes
Status: Active » Needs review

I updated some of the formatting and added issue credits. Someone else should review the credits.

I am crediting @ddavisboxleitner for adding the transcript.

smustgrave’s picture

Status: Needs review » Fixed

Went into #migration channel and reviewed the threads from 3/28/2024. All threads were captured and participants listed here.

benjifisher’s picture

Title: [meeting] Migrate Meeting 2024-03-28 » [meeting] Migrate Meeting 2024-03-28 2100Z
Status: Fixed » Active
benjifisher’s picture

Status: Active » Fixed

oops

Status: Fixed » Closed (fixed)

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