Meeting will happen in #d10readiness on drupal.slack.com.

Hello and welcome to this Drupal 10 readiness meeting!

This meeting:
➤ Is for core and contributed project developers as well as people who have integrations and services related to core. Site developers who want to stay in the know to keep up-to-date for the easiest Drupal 10 upgrade of their sites are also welcome.
➤ Usually happens every other Monday at 18:00 UTC.
➤ Is done over chat.
➤ 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: `https://www.drupal.org/project/drupal/issues/3224401`
➤ *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.

0️⃣ Who is here today? Comment in the thread below to introduce yourself.

Kristen Pol (she/her) Kristen, Santa Cruz, California, contributor (edited)
xjm I am here! Got distracted briefly by, uhhhh, the lyrics to a Moana song cough
FeyP Patrick, contrib module developer
shaal Ofer Shaal, DrupalPod :sunglasses:
Ilcho Vuchkov (vuil) Ilcho, Bulgaria EU
mglaman Matt. WI,US. drupal-check/phpstan-drupal/php8
longwave Dave, UK, core contributor
Gábor Hojtsy (he/him) Gábor, Drupal 10 coordinator
catch Nat from the UK
larowlan hey there, lee from AU
kimb0 Kim, au :wave:
joshmiller Hey all. Josh Miller, lives in Indiana, works on 26 different Urban Institute sites. Majority are D7, 1/3 are D8, and 2 are D9 :smile: Just keeping up with the progress on D10

1️⃣ Do you have suggested topics you are looking to discuss? Post in this thread and we’ll open threads for them as appropriate. (edited) 

FeyP What about the update process? Is it similar to D8->9 or will it be different and if the latter, how? When would a good time to start porting a contrib module? Between alpha and beta or later?
xjm Letʻs talk removing QuickEdit from core and the need to recruit a maintainer
shaal Is there any change to the process of projects that get patches made by Project Update Bot, that were reviewed by users, but no new version released by the project's maintatiners?
mglaman PHP8 + PHPStan detection. May not need thread. but working on it. Ondrej is interested, too.
kimb0 Would love to get #2940383: [META] Unify file upload logic of REST and JSON:API in before deadline.

2️⃣ Key Drupal 10 dates

Gábor Hojtsy (he/him) It seems to be that time now that we need to start tracking these.
Gábor Hojtsy (he/him) See https://www.drupal.org/about/core/policies/core-release-cycles/schedule#...
Gábor Hojtsy (he/him) The Drupal 10 branch will be open in 2-3 months from now, when major dependency updates become available. Especially Symfony 5.4 and 6.0.
Gábor Hojtsy (he/him) Similar to Drupal 9, Drupal 10 has 3 scenarios based on when beta requirements are complete:If beta is done by March 18, release is June 15, 2022. In 317 days! :open_mouth: If beta is done by May 13, release is August 17, 2022.Last resort: If beta is done by September 9, release is December 14.
Gábor Hojtsy (he/him) For Drupal 9, we made the first scenario :slightly_smiling_face:
xjm It is also worth noting that the deprecation deadline for D10 deprecations is the beta deadline of 9.3 which is on November 8 in 98 days. We also hope to finalize the PHP and DB requirements around then.

3️⃣ QuickEdit is under discussion to be removed from core

Gábor Hojtsy (he/him) @xjm raised this
Gábor Hojtsy (he/him) see #3222947: Decide whether to move Quick Edit to contrib
xjm See #3222947: Decide whether to move Quick Edit to contrib
Gábor Hojtsy (he/him) Feedback to removing it from core has been almost entirely supportive so far (to my personal surprise BTW).
xjm Next thing we need is someone willing to maintain it in contrib, or at minimum help with any security issues with it for the next two years or so
xjm (FWIW I am also going to try to help us get any known sec issues with it fixed before we move it)
Gábor Hojtsy (he/him) We also need product manager signoff on the issue that I’ve seen, neither Angie nor Dries chimed in yet.
xjm (Says the product manager?) :P
Gábor Hojtsy (he/him) I pinged the question to Dries, not sure how much that will help :slightly_smiling_face:
Gábor Hojtsy (he/him) I think this is a question with definite impartiality for all core product managers, since Dries was involved as a funder in making QuickEdit happen while Angie was a manager on it and I was an employee involved with it.
Gábor Hojtsy (he/him) So I am seeking wider input from all of them :slightly_smiling_face:
xjm Yeah Angie might not have much time at the moment and Dries is traveling too. I see your point though. Maybe we should reach out to yoroy as the one PM who was not involved in its development?
xjm And maybe write up a succinct summary of the "why" for them so they don't have to read the whole issue (although the flood of +1s are also useful info in themselves I guess)
Gábor Hojtsy (he/him) I think the issue summary is pretty good already? Do you think of something else to be written up?
xjm @Gábor Hojtsy (he/him) I dunno; catch and I wrote most of the IS and I am never sure if my writing is sufficiently an executive-level summary or not :slightly_smiling_face:
xjm But if you think it's sufficient then that probably means it is :slightly_smiling_face:
longwave what happens if nobody steps up to maintain it in contrib? (not quite a parallel, but look at the complete lack of activity on simpletest in contrib)
xjm We've never not found a sucker, err, maintainer before, so that would be interesting to try to solve
joshmiller FWIW, we have a staff of 30 Staff content editors at the Urban Institute. 1 is Drupal-specialist. All of them interact with Drupal weekly. None of them use Quick Edit.
xjm @joshmiller Could you post that to the issue? #3222947: Decide whether to move Quick Edit to contrib
joshmiller @xjm :you-got-it-dude:

4️⃣ Big progress on Drupal Rector (9 to 10)! 82% of Drupal core deprecated API uses in contrib can be resolved now!

Gábor Hojtsy (he/him) Palantir.net has been sponsoring @mglaman to work on Drupal Rector
Gábor Hojtsy (he/him) Thanks to this effort, a HUGE part of deprecated API uses in contrib are now covered by rector.
shaal :tada:
Gábor Hojtsy (he/him) Screenshot 2021-08-02 at 20.26.05.png
xjm That graph is legit fantastic
Gábor Hojtsy (he/him) That and other graphs are at https://dev.acquia.com/drupal10/deprecation_status/graphs as well as contrib readiness results in other tabs.
Gábor Hojtsy (he/him) Overall 60% of contribs only exhibit info.yml file incompatibility as much as we can detect currently.
Gábor Hojtsy (he/him) We are still going to introduce deprecated APIs and extensions in Drupal 9, so this will get worse a bit still.
xjm But only for 98 more days aside from possibly certain critical-but-easy-for-site-owners deprecations of legacy path modules and themes :slightly_smiling_face:
xjm Right now I think PHP 8.1 is adding a lot more disruption than core itself in terms of deprecations
larowlan Awesome work
larowlan We are getting close to committing #3223209: deprecate file_save_data, file_copy and file_move and replace with a service which will upset that a bit

5️⃣ PHP 8 compatibility detection for contrib / custom code

mglaman PHPStan is missing a lot of checks. We have a meta issue going
Gábor Hojtsy (he/him) I’ve been unsuccessfully experimenting with this but failed so glad @mglaman picked it up :smile:
mglaman One of my first steps was to get internal functions recognized as deprecated by parsing stubfiles.
mglaman Like each, create_function, etc
Gábor Hojtsy (he/him) @mglaman hm, is it feasible to do though?
mglaman Yep :slightly_smiling_face:
mglaman I’ve got the PR into BetterReflection, copied a fix from the upstream AND support for JetBrain’s own Deprecated PHP attribute they use
mglaman Basically I’m walking around like a fool and Ondrej is the parent correcting my path

6️⃣ Is the update similar to D8->9 or will it be different and if the latter, how?

Gábor Hojtsy (he/him) Raised by @FeyP
Gábor Hojtsy (he/him) The process is the same, the tools are the same. Upgrade Status, Drupal Rector, etc.
mglaman I’d say the same and easier.easier because:round 2, lessons learnedComposer isn’t dropping a major release or rewrite
FeyP Very nice. Thank you! And when would be a good time to start replacing APIs in contrib?
Gábor Hojtsy (he/him) Well, I would add the caveat that Drupal 9 to 10 will have more frontend changes. So those may or may not be as easy to follow for contrib. Especially around CKEditor 4 to 5.
Gábor Hojtsy (he/him) @FeyP I will post the contrib question in its own number :smile: (edited)
FeyP Ah, okay, sorry :slightly_smiling_face:
xjm And also:Two years of new APIs and deprecations instead of fiveWe already added the important module compatibility APIs for the info files that are 60% or whatever of contrib modules' upgrades

7️⃣ Is it time to update contrib projects for Drupal 10 or not yet?

Gábor Hojtsy (he/him) Raised by @FeyP
Gábor Hojtsy (he/him) Two things IMHO
Gábor Hojtsy (he/him) The deprecated APIs list is still trending up: https://dev.acquia.com/drupal10/deprecation_status/graphs bottom graph
Gábor Hojtsy (he/him) 2. Most deprecated API uses we found in contrib are Drupal 8 APIs deprecated for removal in Drupal 10. These can be resolved as soon as you are ready to drop Drupal 8 support. Such as when Drupal 8 goes EOL in 3 months.
Gábor Hojtsy (he/him) So there is a lot you can already do.
xjm It depends I think on whether you want to do a few small updates, or one big one
xjm Some module maintainers might like to continually improve their D10 compatibility, and that's OK to do now
xjm If you only want to do one or two passes I would wait until December
Gábor Hojtsy (he/him) Also as a separate effort, making your project compatible with PHP 8 is something you can do already. If you still support Drupal 8 make sure you still support PHP 7 though as Drupal 8 cannot be updated to support PHP 8. See also thread 5️⃣ for our automation efforts to help find PHP 8 incompatibility errors even on PHP 7. (edited)
xjm And if you really can only look at it once, wait until D10 hits a beta
xjm (Which is March at the earliest)
xjm So depends on your maintainer style basically :slightly_smiling_face:
xjm Oh I would also definitely wait if your module interacts with core JavaScript APIs in particular
xjm That is one area where there will probably be many new deprecations in the next few months
FeyP Thank you, very helpful!
shaal @xjm re: core JavaScript APIs changes, do you have an example for such change?
xjm @shaal Anything that integrates with CKEditor, Autocomplete, the Dialog UI, or Backbone especially
shaal Would we need tools beyond Rector to catch these deprecations ?
Gábor Hojtsy (he/him) Well, CKEditor 5 will be entirely different, so if one has a CK4 integration contrib module, I am not sure if we can offer an automated rectory-style mapping as to what to do about it. We’ve been asking people to try to port smaller projects, but I am not sure its been hapening yet. (edited)
xjm @Gábor Hojtsy (he/him) I forget which tools detect JS deprecations; do you remember? I couldn't find issues related to it on the roadmap issue or our internal spreadsheet
xjm We have a standard for them and an API in core to notify the developer
xjm But I can't remember beyond that where they get flagged
xjm https://www.drupal.org/about/core/policies/core-change-policies/drupal-c... that's the core docs
Gábor Hojtsy (he/him) I thought we would have such tools listed in #3096679: JavaScript calls to deprecated APIs are not found (for Drupal 10) if we identified any, but they are not listed there
xjm @shaal To a large extent it will be deprecations of whole modules or libraries, which Upgrade Status detects for sure
xjm Or will detect in the case of modules and already does detect for libraries, that is
xjm Like we are wholesale deprecating jquery_ui.* and ckeditor.module
xjm But I am going to make a meta for #3105708: Properly deprecate Drupal.Ajax.element_settings and friends and add them all properly to the issue hierarchy
shaal :+1:  thank you

8️⃣ Getting Project Update Bot patches land with inactive maintainers

Gábor Hojtsy (he/him) @shaal raised this
Gábor Hojtsy (he/him) the bot is https://www.drupal.org/u/project-update-bot and so far it posted Drupal 8 to 9 patches generated automatically based on Upgrade Status and Drupal Rector
Gábor Hojtsy (he/him) some maintainers are not active (anymore) though and even reviewed patches are not getting committed
Gábor Hojtsy (he/him) three is an issue at #3168047: Commit Project Update Bot patches to under-maintained projects for Drupal 9 compatibility
Gábor Hojtsy (he/him) @xjm was about to write up a policy doc based on discussions with the DA about what is going to happen (automated commits to unmaintained projects under certain conditions)
xjm Yes, I got mentally blocked a bit on the fact that we don't have an actual docs page other than the project page explaining Project Update Bot. But working on this finally today.
xjm Will share it with others this week so we can get moving on the actual process.
xjm Initially we will only commit RTBC patches, created by the bot itself, where the maintainer has not responded in 4 weeks. And create a new branch and tag for that commit. Maintainers will be emailed before it happens and can opt out (TBD how, maybe the same way as opting out of the bot generally).
xjm We will not auto-commit patches created by humans or ones that are not RTBC
xjm Or ones that fail tests if there is a test suite
xjm BUT if you are a human who has created a D9 patch for a module, consider offering to maintain the module and following the abandoned module process if you don't hear back from current maintainers
FeyP Will the commit bot detect, if there already is another compatible branch without release? And what would happen in that case?
FeyP Also, if the commit bot creates a new branch, will it also create a relase form that branch or just post about the new branch in the issue?
Gábor Hojtsy (he/him) The both should pick up the latest branch I believe.
xjm @FeyP We were thinking that it would tag an alpha on the new branch, so that there is something to test, but it's clear that it is very tentative and doesn't provide API/upgrade path/etc. promises.
drumm Draft query for issues that match the criteria so far.
xjm Just one note on the end bit of the query, the ^9 string will not correctly match once we commit >=8.9 versions. Also project could already technically have that syntax for an info string though it's probably not common.
drumm Right, nothing indexes semver compatibilities, which is why we push back on a lot of “show things that are compatible with X” requests - they aren’t at all practical to write. In this case, can look for new things showing up in the core_version_requirements result column and update the query as-necessary.
xjm Sounds like a good approach to me
xjm @drumm Gábor pointed out that we should  also add a condition to the query that the issue creation date is at least four weeks ago. (The maintainer would not have responded in 4 weeks if the bot were to open an issue for something tomorrow that wasn't fixable before.)
drumm That’s easy enough to add
Gábor Hojtsy (he/him) I think this will not limit the number currently as the bot did not run in four weeks I think but it will limit once the bot starts to run again.

9️⃣ Thanks all for coming! Keep up the great work and see you in two weeks! (edited) 

Comments

Gábor Hojtsy created an issue. See original summary.

gábor hojtsy’s picture

Issue summary: View changes

Gábor Hojtsy credited xjm.

gábor hojtsy’s picture

Issue summary: View changes

Saving notes. Thanks all!

gábor hojtsy’s picture

Status: Active » Fixed

Status: Fixed » Closed (fixed)

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