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

Hello and welcome to this Drupal 9 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 9 upgrade of their sites are also welcome.
➤ Usually happens every other Monday at 19: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/3041095`
➤*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.

Moderated By: Gabor Hojtsy (he/him)

0️⃣ Who is here today? Comment in the thread below to introduce yourself and tell us what you are here for.

Gabor Hojtsy (he/him) Gábor, core committer :slightly_smiling_face:
Gabor Hojtsy (he/him) cc @xjm, @berdir, @mikelutz, @mglaman
mglaman Matt here, tooling dibble dabbler
xjm Hi :slightly_smiling_face:
berdir Sascha, entity-manager-deprecation-updater
mikelutz I’m here, I’m here!!
lendude Len, ex phpunit initiative lead, lurking
catch Nat, core-committer, a bit on-off atm.
jhodgdon (she/her) Jennifer, lurking because I got notifications that two run-weekly contrib tests are failing due to new deprecations
larowlan lee, here late, but timezones

1️⃣ Deprecation timelines, allowed changes in 8.7 now that its in alpha.

Gabor Hojtsy (he/him) As per earlier today, new deprecations should be for 8.8.x now, but if there’s one that is strategic to backport we could update the patch to say 8.7.0. Existing RTBC patches are fine with 8.7.0 :slightly_smiling_face:
Gabor Hojtsy (he/him) any specific questions or concerns? :slightly_smiling_face:
mglaman Good to know for sprinters at MidCamp
Gabor Hojtsy (he/him) Also based on prior discussions, 8.8 is the last release to deprecate for Drupal 9 as otherwise 8.9 (which is released at the same time as 9) would introduce things that are immediately dropped.

2️⃣ Deprecation message format standard

Gabor Hojtsy (he/him) TWG announced
Gabor Hojtsy (he/him) waiting for feedback for 2 more days and then the format will be decided :slightly_smiling_face:
Gabor Hojtsy (he/him) we need someone soon to help with to codify that in coder
Gabor Hojtsy (he/him) jonathan1055 worked on it a bunch in 2017, the code needs updating but should be a good base

3️⃣ Deprecation message reporting from phpstan

Gabor Hojtsy (he/him) I believe @mglaman was working on this, do you need help / reviews? :slightly_smiling_face:
mglaman Need to fix failures

Need to test multi-line deprecations

Need to push it forward :slightly_smiling_face:

Gabor Hojtsy (he/him) this would help the usability of the tool immensely ^^^^ :slightly_smiling_face:
mglaman I’m going to circle back to it this week
mglaman I’ve been sprinting on my midCamp/DrupalCon session stuff
mglaman and general Commerce / client work too :stuck_out_tongue:
Gabor Hojtsy (he/him) yeah stuff that makes money is always useful :smile:

4️⃣ Deprecation testing on d.o with phpstan

Gabor Hojtsy (he/him) This went live recently :slightly_smiling_face:
Gabor Hojtsy (he/him) Sort of.
Gabor Hojtsy (he/him) is a a results file :slightly_smiling_face:
Gabor Hojtsy (he/him) from
mglaman Looks like it’s including `level: 1`
Gabor Hojtsy (he/him) There is an XML format fix waiting for deployment at once @mixologic is out of cgit hell on d.o :smile:
mglaman `Function _batch_process invoked with 1 parameter, 0 required.`
Gabor Hojtsy (he/him) @mglaman yeah I don’t think we wanted that to happen
mixologic @Gabor Hojtsy (he/him) I can look at that now
mglaman that’s where you omit `--level` and add

```

parameters:
customRulesetUsed: true
```

to .neon

Gabor Hojtsy (he/him) @mixologic yay :slightly_smiling_face:
Gabor Hojtsy (he/him) ok will take a look at that after the meeting @mglaman :slightly_smiling_face:
Gabor Hojtsy (he/him) I think @mixologic should be fine to roll out the XML fix in the meantime :slightly_smiling_face:
Gabor Hojtsy (he/him) that by itself should help us view the output
mglaman When it is grokked, I’d love to re-work to poitn to D.o dispatcher
Gabor Hojtsy (he/him) Yeah I would love to somehow work out running on project branches weekly or so :slightly_smiling_face: but first is fixing the output so it makes sense
Gabor Hojtsy (he/him) @mixologic ok, what do you think of ?:)
mixologic @Gabor Hojtsy (he/him) well, it lgtm, I committed it to the dev branch, and then I was having issues with drupalci's own self tests. they're running now, finally. This shouldnt affect drupalci in any way though so I'll go ahead and merge it into prod.
mixologic Merged. have a shot
Gabor Hojtsy (he/him) yay thanks
Gabor Hojtsy (he/him) posted
mixologic fixed a small bug
Gabor Hojtsy (he/him) good find, I don’t know how this worked locally, lol
Gabor Hojtsy (he/him) but I was looking at this just now :smile:
Gabor Hojtsy (he/him) thanks
Gabor Hojtsy (he/him) will rerun
Gabor Hojtsy (he/him) yay valid XML :slightly_smiling_face:
mglaman yay
Gabor Hojtsy (he/him) I will look into setting the error level more properly as per @mglaman above and also getting rid of the double // :smile:
Gabor Hojtsy (he/him) but this should now be valid checkstyle xml
Gabor Hojtsy (he/him) @mglaman ok, looking at level, now we are calling it like this:
Gabor Hojtsy (he/him) $result = $this->execEnvironmentCommands([
‘cd ’ . $project_dir . ' && sudo -u www-data ' . $source_dir . static::$phpstanExecutable . ' analyse --error-format checkstyle -l 0 -c ' . $work_dir . ‘/’ . $this->pluginDir . ‘/phpstan.neon . > ’ . $work_dir . ‘/’ . $this->pluginDir . ‘/phpstan_results.xml’,
]);
Gabor Hojtsy (he/him) why would level 1 be included with -l 0
mglaman level 0 actually contains assertions
mglaman so remove `-l 0` and pass no level, and add that customRuleSet thing
mglaman As I’ve kind of said.. the tool was nice to have around so I didn’t have to build an analysis tool.. but there’s “some things”
Gabor Hojtsy (he/him) lol
Gabor Hojtsy (he/him) customRulesetUsed: true we already have
Gabor Hojtsy (he/him) so will just remove -l 0 and see how it behaves locally :slightly_smiling_face:
mglaman it will error w/o the customeRuleSet: true FYI
mglaman because it’ll say no assertions ran
Gabor Hojtsy (he/him) ok without the -l 0 its down from 8794 errors to a mere 4402
Gabor Hojtsy (he/him) in core
mglaman \o/
Gabor Hojtsy (he/him) I’ll up a patch for drupalci :slightly_smiling_face:
mixologic make it a variable that can be controlled from build.yml
Gabor Hojtsy (he/him) yeah we should make deprecation reporting configurable separate from other things eventually
Gabor Hojtsy (he/him) I am trying to focus on a useful deprecation tester now :slightly_smiling_face:
Gabor Hojtsy (he/him) ok I reused this issue, two tiny oneline fixes in for @mixologic :slightly_smiling_face:
Gabor Hojtsy (he/him) I am happy to look at configurability of this later :slightly_smiling_face:
Gabor Hojtsy (he/him) this one I actually locally run just now and did not edit the code since :smile:
mixologic patched/pushed
Gabor Hojtsy (he/him) ok sending the last one for a retest :slightly_smiling_face:
Gabor Hojtsy (he/him) @mixologic displaying this would require the backed out jenkins update right? :slightly_smiling_face:
Gabor Hojtsy (he/him) displaying nicer that is :smile:
Gabor Hojtsy (he/him) ok this ran fine :slightly_smiling_face:
Gabor Hojtsy (he/him) so I think this output is what we are gonna get, next step is to improve how we can read it :smile:

5️⃣ Insite dashboard

Gabor Hojtsy (he/him) We agreed with the upgrade status maintainers to use the 8 branch of the module to provide this dashboard for deprecation review.
Gabor Hojtsy (he/him) See and provide feedback on designs at
Gabor Hojtsy (he/him)
Gabor Hojtsy (he/him) I am working with @herczogzoltan on it :slightly_smiling_face:
Gabor Hojtsy (he/him) this is yet another lens for people to help move along to Drupal 9
mglaman Would this try to run PhpStan directly via batch? like individual files?
Gabor Hojtsy (he/him) queue but yeah, individual files or directories, depending on how we found resource constraints
Gabor Hojtsy (he/him) @mglaman My understanding is @herczogzoltan got it to work for the plain old PHP files by unwiring your drupal boostrap (since drupal is already live in this case), but the autoloader wiring was not working yet
mglaman makes sense, everything is autoloadable.. to an extent
mglaman and you would have to just pass individual files
Gabor Hojtsy (he/him) yeah their API at the integratable level seems to be taking file by file

6️⃣ Dependency updates

Gabor Hojtsy (he/him) the new updated core twig now fails with some Twig 3 deprecations,
Gabor Hojtsy (he/him) we need to choose between silencing this and resolving it :slightly_smiling_face:
mikelutz Are we targeting a minimum php version of 7.1 for Drupal 9?
Gabor Hojtsy (he/him) I think twig folks ran into problems with type-hinting if a different name of the class was used so not sure how to resolve this cleanly
Gabor Hojtsy (he/him) cc @catch
catch Drupal 9 will probably be at least PHP 7.2
mikelutz
mikelutz Random small dependency I was messing with ^^ switching over to a psr17 message factory basically requires php 7.1
xjm Caveat: We need to check and see how the PHP host ecosystem has adapted once 7.1 goes EOL
mikelutz currently doing a composer update with php 7+ on 8.8 updates some dependencies that add deprecations that break tests, so we might want to have an issue checking that.
mikelutz Hopefully we can at least require 7.1 for D9 though, otherwise we are holding back vendor libraries quite a bit.
mglaman FYI 7.4 is last 7 branch release. 8 coming in 2020
mikelutz At least from the limited testing I’ve been doing.
xjm @mglaman Where did you learn that info? does not mention it
xjm Hopefully 7.4 will be an LTS if that's the case
mglaman was in a tweet this morning, 1 sec
xjm Relatedly: @mixologic Can we get PHP 7.4.x-dev testbots sometime in the next couple months?
Gabor Hojtsy (he/him)
mglaman @Gabor Hojtsy (he/him) thanks!
Gabor Hojtsy (he/him) PHP 8 in 2020 :dancerbanana:
mixologic @xjm The plan we laid out for 7.3.x is still in effect, does it need adjusting? ()
mixologic (see the "Unreleased Development Environments")
mglaman So Drupal 9 _really_ should adapt the highlest level of PHP possible (ie: 7.2) or have a plan for 9.2.0 or w/o to support 7.2
mixologic ```Once php's pre-release version has hit beta, we will provide a new environment - this will likely be sometime in August every year.```
mixologic But, well, things change, so do we need 7.4.x yet?
xjm @mixologic Ah I didn't realize we'd finalized that. We can at least wait until the 7.4 alpha in June, for sure. :slightly_smiling_face:
xjm Tweeting to ask about 7.4 being an LTS or not; can't hurt

7️⃣ Any topics missing that you wanted to cover? (I’ll create new numbers for them :)

mikelutz Only 64 weeks left until D9 release date!
Gabor Hojtsy (he/him) yup!
mikelutz That number is about to start getting smaller scary fast..
jhodgdon (she/her) I thought I had a question about a new 8.7.x deprecation that recently showed up in 2 of my contrib modules' automated tests, but I figured it out
jhodgdon (she/her) Just some old crufty test code.
Gabor Hojtsy (he/him) :slightly_smiling_face: well +1 @jhodgdon (she/her) for running tests with deprecation detection :slightly_smiling_face:
jhodgdon (she/her) Strangely enough the deprecation detection didn't detect the use of the old Simpletest test classes. ?!?
jhodgdon (she/her) it just detected some other code calls.
jhodgdon (she/her) or maybe it isn't actually deprecation detection, but trigger_error() that was reported, on those tests, come to think of it!

Comments

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

gábor hojtsy’s picture

Issue summary: View changes
gábor hojtsy’s picture

Issue summary: View changes

Gábor Hojtsy credited xjm.

gábor hojtsy’s picture

Issue summary: View changes
Status: Active » Fixed

Posting meeting log and assigning credits.

gábor hojtsy’s picture

Issue summary: View changes

gábor hojtsy’s picture

Special thanks to @mlhess for help with raw and parsed meeting logs.

gábor hojtsy’s picture

Status: Fixed » Closed (fixed)

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

Version: 9.x-dev » 9.0.x-dev

The 9.0.x branch will open for development soon, and the placeholder 9.x branch should no longer be used. Only issues that require a new major version should be filed against 9.0.x (for example, removing deprecated code or updating dependency major versions). New developments and disruptive changes that are allowed in a minor version should be filed against 8.9.x, and significant new features will be moved to 9.1.x at committer discretion. For more information see the Allowed changes during the Drupal 8 and 9 release cycles and the Drupal 9.0.0 release plan.