Our lead community developer, Alona Oneill, has been sitting in on the latest Drupal Core Initiative meetings and putting together meeting recaps outlining key talking points from each discussion. This article breaks down highlights from meetings this past week.
You'll find that the meetings, while also providing updates of completed tasks, are also conversations looking for community member involvement. There are many moving pieces as things are getting ramped up for Drupal 9, so if you see something you think you can provide assistance on, we encourage you to get involved.
Drupal 9 Readiness Meeting
September 16, 2019
Meetings are 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.
- It usually happens every other Monday at 18:00 UTC.
- It 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 Drupal 9 Readiness Agenda anyone can add to.
- The transcript will be exported and posted to the agenda issue.
Guzzle, Diactoros, symfony/http-client, and PSRs-7, PSRs-17, and PSRs-18
- [PP-1] Replace the DiactorosFactory message factory in symfony/psr-http-message-bridge with a PSR-17 compliant message factory
- Incompatibility between zend-diactoros and psr-http-message-bridge versions: require symfony/psr-http-message-bridge >=1.1.2
- Switch to symfony/http-client
- [PP-1] Adopt php-http/guzzle6-adapter 2.x to get PSR-18 support without losing Guzzle's async support
- Add interface for classloader so it can be cleanly swapped
Drupal 9/8 PHP version requirements
- Drupal 9 will require at minimum 7.2 as per Bump Drupal's minimum PHP version to 7.2 as soon as 9.0.x is branched
- Discussion / data gathering ongoing in [policy] Decide on PHP 7.x support status to raise that further and also about what to do in Drupal 8 (LTS)
- PHP7.4 container is unable to run because we're using a backported version of typo3/phar. That looks like its being addressed here: Update core PHP dependencies for 8.8.x
MySQL 5.7 and MariaDB 10.1 will officially end support in Oct 2020
Chx suggested splitting the MySQL and MariaDB drivers eventually as they continue to diverge.
Stable upgrade status, but missing features
Gábor Hojtsy announced Upgrade Status went stable a few days ago. There are various missing features:
- Global constants.
- Deprecated libraries Detect use of deprecated libraries.
- Deprecated Twig constructs: Provide information on usages of deprecated code in Twig templates.
- Deprecated JS APIs.
Documenting deprecated code / triggering deprecation errors properly
Drupal 8.8 is the deadline for:
- Add change records to all @deprecated code
- [META] Add trigger_error(..., E_USER_DEPRECATED) to deprecated code
Remove core's own uses of deprecated APIs
Drupal core's own deprecation testing results are really close to done.
Drupal Module Upgrader 7 => 9 directly
There’s been lots of work recently by Amit Goyal, Rohit Joshi, and Pranit Jha to add Drush 9 support and make the transformations produce Drupal 9 compatible results. They also made the test suite green with lots of work and are looking into the possibility to write new transformations with rector. Unfortunately, due to conflicts of dependencies, rector cannot be added to a Drupal instance without Support PHPUnit 7 optionally in Drupal 8, while keeping support for 6.5 being resolved.
Deprecations in contrib
- Ryan Aslett rerun the all-contrib script 4 days ago here and planning on running it again with added data.
- Deprecated API use overall decreased from 33.5k to 29.5k in a month. Most of contrib deprecations are drupal_set_message.
Admin UI Meeting
September 18, 2019
- Meetings are for core and contributed project developers as well as people who have integrations and services related to core.
- Usually happens every other Wednesday at 2:30pm 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!
- There are roughly 5-10 minutes between topics for those who are multitasking to follow along.
- The Admin UI Meeting agenda is public and anyone can add new topics in the document.
Design Revision 1
The breakpoint for Cards set to 85rem Vertical Tabs style update.
Design revision 2: heading spacings
We have several options for defining the default:
- Equal vertical+bottom space: it could be 1em or 0.75em. (margin: 1em 0; or margin: 0.75em 0;
- Only top: 1em or 0.75em.
- Only bottom: 1em or 0.75em.
- Different spacings for top&bottom: margin: 1em 0 0.75em;> go for this
UX meeting
We did a Claro demo and found some bugs. The first one for messages, without icon and title and working on that in a follow-up.
Drupal Core Cross-Initiative Meeting
September 19, 2019
UX Update
Cristina Chumillas talked about UX with the following update:
- Claro is on track, design components need to be reviewed and blockers resolved.
- Several issues are nearly complete.
- Several that still need work from the blocker's list.
- Issue submitted to add Claro to Drupal Core:
- Close to getting a green light to add it as an alpha module.
- Next steps:
- Need additional accessibility maintainer reviews.
- Need additional RM support to understand what the level of sign off should be from each of the maintainers.
Workspaces Update
Andrei Mateescu talked about Workspaces with the following update:
Status:
- List of stable blockers obtained after meeting with maintainers/rm’s.
- Before marking stable, we need a conversion of path aliases to entities (big patch), which adds some risk.
- 2 other major asks:
- Compatible w/ content moderation.
- Ability to add subworkspaces.
- On track right now for getting int core, pending final reviews of those changes.
Blockers:
- None right now.
Next steps:
- Work on the 3 major things identified, get final reviews.
Multilingual Migration
Gábor Hojtsy, Alex Pott, and Michael Lutz talked about Multilingual Migration with the following update:
Status:
- Most issues to get it committed progressing, Alex Pott is working with V Spagnolo on final ones.
- Hard to get data migrated correctly and still grab old migrations to fit them into new formats.
- For revisions + translations, one big overhaul of node revision table is the solution landed on to maintain backwards compatibility.
- Solution is actually working (yay!) just need to do some cleanup, testing & validation.
Blockers:
- Testing is required to validate the solution will work for people who are expecting granular controls.
Next steps:
- Testing / Validating the solution to manage both revisions and translations.
- Later reviews from entity subsystem maintainers, framework mgmt, PM, and RM will need to happen.
- Meet with Lucas Hedding working with V Spagnolo to review the potential breakdown-scenarios.
Drupal 9
Gábor Hojtsy provided a Drupal 9 update:
Status:
- Deprecations => making a ton of progress, some hard ones left.
- Symfony 4 => several mysterious issues found, working to resolve those issues.
- Upgrade status => Stable release hurraayyy!! So far no issues found apart from one person who had no UI showing.
- Drupal Module Upgrader => working w/ community to make it produce D9 compatible code. 1.5 tag released yesterday, no feedback yet.
- Rector => converts your d8 code to d9, looking into merging this into drupal module upgrader.
- Contrib deprecation errors, Ryan Aslett at the DA is helping to resolve the results of deprecations across contrib!
- Core deprecation => requirements recently redefined, D9 branch should be opened with D8.9 branch in less than a month! Whoo-hoo!
Blockers:
- None
Next steps:
- Hey initiative owners: make your stuff Drupal 9 ready, please.
- Resolve final deprecations.
- Keep working on Symfony 4 issues identified.
- Test modules / deprecated API’s and hold a D9 sprint in Amsterdam.
- Keep looking into merging rector.
Demo
Keith Jay provided the following update on Demo:
Status:
- Progressing for working with layout builder for recipe type in the basic format.
- Working on expanding features.
- Working on making a front-page based on layout builder.
- Creating more tooltips.
- Great new content coming from a UK-based chef.
- Layout switcher also in progress.
- 3081587 => may have a core-related issue, to be continued.
Blockers:
- None
Next steps:
- Keep working through the above issues, nothing needed.
Auto Updates
Lucas Hedding gave an auto updates with the following update:
Status:
- 3 parts:
- PSA tells you the update is coming.
- Readiness checks are preflight checks to confirm your site can be updated.
- In-place updates do the fix.
- The first two parts have been released in alpha.
- Video podcast prepared, will be live first weekend of October.
- DA blog post to promote will follow.
- In-place updates are also progressing.
Blockers:
- One issue that needs further discussion to get to RTBC, could use core committer review on this so they know what the blockers are.
Next steps:
- Work through final issues related to part 3 => in-place updates.
- Testing and validation to get to RTBC => beta release with all features.
- Work through the issues identified => stable contrib release.
- Core release will happen later, not to be rushed at this point.
Composer
Ryan Aslett gave an update on Composer with the following update:
Status:
- Down to the last couple of items.
- Made tons of progress.
Blockers:
- Alex Pott needs this issue reviewed.
- Core committers - This issue needs review.
- Core committers - This issue needs to commit!
Next steps:
- Final reviews / Remediations from core committers and Alex Pott.
- Write documentation / enablement supports / marketing & promotion of improvements
- Commit to 8.8!