Early Bird Registration for DrupalCon Portland 2024 is open! Register by 23:59 PST on 31 March 2024, to get $100 off your ticket.
Problem/Motivation
Automatic Updates isn't ready to handle composer sites, but has 3rd party dependencies of its own.
Proposed resolution
Remove all dependencies on 3rd party packages, except for drupal/php-signify
, which will be packaged internally. This should work, since ocramius/package-versions
and webflo/drupal-finder
were added to simplify support for Composer.
Remaining tasks
User interface changes
API changes
Data model changes
Release notes snippet
Comment | File | Size | Author |
---|---|---|---|
#12 | interdiff.txt | 7.71 KB | heddn |
#12 | review_only.txt | 48.54 KB | heddn |
#9 | review_only.txt | 41.2 KB | heddn |
#7 | 3088095-6.patch | 1.4 MB | heddn |
#7 | interdiff_5-6.txt | 3.42 KB | heddn |
Comments
Comment #2
heddnComment #3
hestenetI think removing these dependencies makes sense for now, since it's very likely that the only way we'll be able to robustly handle composer support will be under the A/B model of updates in Phase 2.
Removing these elements for now gives us a clean way to handle all the test cases that *are* supported in the current phase, and I think the waters are a bit less muddy.
Comment #4
heddnThis does the leap backwards to not use composer. :sadpanda:
Comment #5
heddnComment #6
webchickThis was flagged on the cross-initiative call, sounds like it's at least "major."
Comment #7
heddnLet's see if this makes things green.
Comment #8
heddnComment #9
heddnHere's a review only patch, now that we're green.
Comment #10
heddnSelf review explaining some of the decisions.
We had a hidden dependency on 8.7 due to
extension.list.module
, etc that are only added in 8.7. Plus once we release a stable tag, 8.6 will have zero new releases/support at that time. So this shouldn't be an issue. We can remove the 8.7 dependency 8.6 is officially sunset.This makes sure when we regenerate our external dependencies, we do it using the oldest version we're purported to support. Which is 5.6 still w/ 8.7.x.
We had failing PHPCS on the new vendor code. Here we get around that by using our own custom xml that excludes vendor folder.
Nice little shell script to automate the generation of the needed dependencies.
Casting to string is intentional to set us up for better support in D9.
This was wrong.
This proves we now support non-composer installs. Previously, 8.7.2 had changes to composer.lock that were breaking successful updates.
Comment #11
heddnA new version of the polyfills was released overnight. As all the changes are generated via composer update inside of
scripts/update_dependencies.sh
, not uploading a new patch. Just know that what will get committed will be slightly different.This is green and still in needs of reviews. I'll probably land it early next week and release a new alpha if I don't hear any concerns.
Comment #12
heddnActually, there were some minor changes to things.
Comment #13
heddn