- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Split up UpdaterFormTest to speed up test runs: from 13.5 to 10.5 minutes Fixed landed!
(And moved [#319679] + ๐ Make build tests fail 1) more explicitly, 2) earlier when possible (failing StatusCheckEvent subscribers) Fixed + #317815: cannot change php or .htaccess file, cannot find code mentioned โ from the bucket to the bucket.)
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Add documentation for SymlinkValidatorTest Fixed landed (and moved it from the bucket to the bucket).
Added ๐ Harden LockFileValidator, add stopPropagation() at failures Closed: outdated (discovered by @omkar.podey) to .
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Added ๐ Add addDotGitFolder functionality to \Drupal\fixture_manipulator\FixtureManipulator Fixed to , which is the new blocker for ๐ GitExcluder should not ignore .git directories that belong to packages installed by Composer Fixed that @tedbow identified.
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Automatic Updates & Package Manager should use DependencySerializationTrait when needed Closed: outdated is now obsolete thanks to other issues having landed โ ๐ Fix PHP Warning: serialize() in tests on PHP 8 Fixed is unblocked.
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Added ๐ Update Package Manager event documentation in package_manager.api.php Fixed to .
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ GitExcluder should not ignore .git directories that belong to packages installed by Composer Fixed landed ๐ฅณ
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Added ๐ Identify & vet commonly used composer plugins in the Drupal ecosystem Active to post-MVP.
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ phpcs stopped working since the switch to testing on Drupal 10.0.x by default Fixed landed ๐
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Improving consistency of the buckets that are done ๐ฅณ
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
New MVP issue: ๐ Add functional test that proves there is reasonable UX whenever a stage event subscriber has an exception Fixed .
New post-MVP issues:
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Remove all fixtures except for one: `fake_site` Fixed landed and triggered a new post-MVP issue: ๐ Document that StageFixtureManipulator should not be used in build tests Active .
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Improve the user experience of having your staged update deleted before it was applied Fixed landed, which means we have no further known MVP UX improvement issues on the roadmap! ๐
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Added ๐ "Composer not found" does provide link to help page Fixed .
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Added many MVP issues created in the past 10 days that were still missing from the roadmap:
- ๐ Dynamically copy scaffold file mapping when create fake_site fixture Fixed
- ๐ Random failure: "PHP temp directory (/tmp) does not exist or is not writable to Composer." Fixed
- ๐ Always show summary of validation result if exists Fixed
- ๐ ComposerPatchesValidator should use ComposerInspector instead of ComposerUtility Fixed
- ๐ PackageManagerKernelTestBase::assertResults does not show actual results if none were expected. Fixed (already solved)
- ๐ PackageManagerKernelTestBase::assertResults does not give helpful error message if asserting results are empty fails Fixed (already solved)
- ๐ Assert no errors after creating the test project in ModuleUpdateTest Needs review
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Added ๐ Tighten ComposerPluginsValidator: support only specified version constraint Fixed .
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Validate compliance with composer minimum stability during PreRequireEvent Fixed landed.
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Always show summary of validation result if exists Fixed landed.
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Harden LockFileValidator, add stopPropagation() at failures Closed: outdated was closed.
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
New MVP issues created since #67 that I was not aware of previously:
- ๐ anonymous ProcessOutputCallbackInterface class ComposerInspector::getConfig() assumes __invoke does receive any data in error buffer Closed: duplicate
- ๐ฑ Tag 8.x-2.7, and move development to new 3.x branch to focus on Core inclusion Fixed โ already finished
- ๐ Document when PostApplyEvent should be used instead of hook_update_n() or post update RTBC
- ๐ Update requirements for 3.x Fixed
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Remove our runtime dependency on composer/composer: remove ComposerUtility Fixed was listed twice! ๐
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Adding ๐ฑ Drupal 10 Core Roadmap for Automatic Updates Active .
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Update requirements for 3.x Fixed and ๐ Adopt PHP 8.1-only capabilities such as constructor property promotion + drop BC layers Fixed landed.
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Adding
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Stage no longer needs the config factory Closed: duplicate happened in ๐ Adopt PHP 8.1-only capabilities such as constructor property promotion + drop BC layers Fixed ๐
(Also: #80 was wrong ๐ โ got it right and all up-to-date in #82, but still have to undo what I did in #80.)
29 remain (34 actually remain, but of which 5 are postponed because we want to land
package_manager
first) - ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Adding
- ๐ Hard failure after module install if composer is not found Needs review
- โจ Make StageEvent::$stage a public readonly property, and remove getStage() Fixed
- ๐ $tempStore property of stage was removed Fixed โ already fixed
30 remain (35 actually remain, but 5 of these are
automatic_updates
-specific and hence postponed because we want to landpackage_manager
first) - ๐บ๐ธUnited States tedbow Ithaca, NY, USA
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
โจ Make StageEvent::$stage a public readonly property, and remove getStage() Fixed also landed.
Adding ๐ UnknownPathExcluder doesnโt consider hidden files Fixed and ๐ Decide which classes should be internal and/or final โ delete ExcludedPathsTrait, make CollectPathsToExcludeEvent richer Fixed .
30 remain (35 actually remain, but 5 of these are
automatic_updates
-specific and hence postponed because we want to landpackage_manager
first) - ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Moved one issue to the right place.
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Remove `@requires PHP >= 8.0` annotation from all tests Fixed and ๐ UnknownPathExcluder doesnโt consider hidden files Fixed landed!
28 remain (33 actually remain, but 5 of these are
automatic_updates
-specific and hence postponed because we want to landpackage_manager
first) - ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Landed:
- ๐ Rename validator methods to `validate` unless there different methods for different events Fixed
- ๐ Add new InstalledPackagesList which does not rely on Composer API to get package info Fixed โ Which was somehow missing?!?! ๐ฑ โ unblocked several issues: ๐ Tighten ComposerPluginsValidator: support only specified version constraint Fixed and ๐ ScaffoldFilePermissionsValidator should use ComposerInspector instead of ComposerUtility Fixed (which in turn blocks another issue).
Closed: ๐ anonymous ProcessOutputCallbackInterface class ComposerInspector::getConfig() assumes __invoke does receive any data in error buffer Closed: duplicate .
26 remain (31 actually remain, but 5 of these are
automatic_updates
-specific and hence postponed because we want to landpackage_manager
first) - ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
New: ๐ Create an API for base requirement validators which run before other validators and stop event propagation if they fail Fixed , blocking ๐ Hard failure after module install if composer is not found Needs review .
27 remain (32 actually remain, but 5 of these are
automatic_updates
-specific and hence postponed because we want to landpackage_manager
first) - ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
A lot has happened in the past 48 hours!
Landed:
- ๐ Dynamically copy scaffold file mapping when create fake_site fixture Fixed
- ๐ Always catch \Throwable, not \Exception, and pass the old exception when re-throwing. Fixed
- ๐ Refine multisite detection: many aliases for a single site is fine! Fixed
- ๐ Fix PHPStan violations (happened because PHPStan code checks stopped runningโฆ) Fixed
New:
- ๐ Stop reusing core's commit-code-check.sh in favor of 4 simple commands Fixed โ already landed
- ๐ Validate fake_site with composer Fixed โ already landed
- ๐ Benchmark how slow using composer require would be in kernel tests Fixed
- ๐ Update FixtureManipulator to work with InstalledPackagesList, real composer show command Fixed
- ๐ Drop support for end-of-life versions of Composer Fixed
- ๐ Add a validate() method to ComposerInspector to ensure that Composer is usable Fixed
- ๐ Run `composer validate` after FixtureManipulator commits its changes Fixed
28 remain (33 actually remain, but 5 of these are
automatic_updates
-specific and hence postponed because we want to landpackage_manager
first) - ๐บ๐ธUnited States effulgentsia
I learned from @Wim Leers and @tedbow that some of the issues in the alpha blockers list are a consequence of trying to remove the dependency on composer/composer within tests. I just want to point out that the scope of ๐ Remove our runtime dependency on composer/composer: remove ComposerUtility Fixed is to remove the runtime dependency on that. It's okay to leave composer/composer as a dev dependency, since it already is that for core anyway.
So if it helps to move some of the issues for refactoring tests to not use composer/composer to post-alpha, I'd be +1 to that, so long as we think that the tests are still sufficiently reliable without that refactoring.
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Landed ๐ Add a validate() method to ComposerInspector to ensure that Composer is usable Fixed .
Added ๐ Make ComposerInspector::getVersion() private Fixed .
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Landed: ๐ Make ComposerInspector::getVersion() private Fixed
Added:
- ๐ ComposerInspector::validate() should throw ComposerNotReadyException instead of \Exception Fixed
- ๐ ComposerInspector::validate() should run `composer validate` Fixed
- ๐ Do not disable package_manager.validator.composer in tests Fixed โ already landed
28 remain (33 actually remain, but 5 of these are
automatic_updates
-specific and hence postponed because we want to landpackage_manager
first) - ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Run `composer validate` after FixtureManipulator commits its changes Fixed landed.
- ๐บ๐ธUnited States tim.plunkett Philadelphia
@tedbow, @Wim Leers, @lauriii, and I met and discussed the alpha vs beta classification of many of the issues.
The issues that were moved to a new Beta section are no less important to the codebase or the end user, but they could happen after an initial commit to a dev branch of core.See https://www.drupal.org/about/core/policies/core-change-policies/experime... โ for more distinction on alpha vs beta.
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Landed: ๐ ComposerInspector::validate() should run `composer validate` Fixed
package_manager
:alpha
: 11 remainpackage_manager
+automatic_updates
:alpha + beta
: 27 remain (32 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Remove dependency on symfony/finder Fixed was blocked for months. It's now unblocked. That's why it's now also clear that we won't need an issue to add
symfony/finder
as a new core dependency. But we will need that forsymfony/config
. I already reported that on Dec 9.@longwave already responded favorably. I just posted a patch there, and am adding it to this issue.
I'm also making it more clear which issues are core issues already โ of the 12 remaining (now 13), there are 3 core issues. Finally: this did not yet link to the issue where this module will be added to core: โจ Add Alpha level Experimental Automatic Updates module Needs work . Fixed that too.
package_manager
alpha
blockers: 13 remain, 10 are under our control, 3 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 28 remain (33 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Drop support for end-of-life versions of Composer Fixed landed while I was writing #102 ๐
package_manager
alpha
blockers: 12 remain, 9 are under our control, 3 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 27 remain (32 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ Remove dependency on symfony/finder Fixed landed.
- ๐บ๐ธUnited States phenaproxima Massachusetts
Removing ๐ Add symfony/config to core's dependencies for package_manager Closed: duplicate in favor of ๐ Remove dependency on symfony/config Fixed , which sidesteps the problem completely and doesn't require core (or Package Manager!) to add additional dependencies.
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ Remove dependency on symfony/config Fixed landed!
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Indeed! ๐
package_manager
alpha
blockers: 10 remain, 8 are under our control, 2 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 25 remain (30 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ Refactor exception architecture Fixed is done!
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Update FixtureManipulator to work with InstalledPackagesList, real composer show command Fixed landed, and unblocked ๐ ScaffoldFilePermissionsValidator should use ComposerInspector instead of ComposerUtility Fixed + ๐ ComposerPatchesValidator should use ComposerInspector instead of ComposerUtility Fixed .
๐ Create an API for base requirement validators which run before other validators and stop event propagation if they fail Fixed landedNew beta blockers:
- ๐ PackageManagerKernelTestBase::assertResults ignores event class Fixed โ already landed
- ๐ InstalledPackage::$path for metapackages should be NULL Fixed
- ๐ Update every ComposerValidator-dependent validator to have explicit test coverage that that dependency works Needs work
New beta blockers which are blocking ๐ Remove our runtime dependency on composer/composer: remove ComposerUtility Fixed (see #3316368-23: Remove our runtime dependency on composer/composer: remove ComposerUtility โ ):
- ๐ Updater should use ComposerInspector instead of ComposerUtility Fixed
- ๐ ExtensionUpdater should use ComposerInspector instead of ComposerUtility Fixed
- ๐ \Drupal\automatic_updates_extensions\Form\UpdateReady should use ComposerInspector instead of ComposerUtility Fixed
- ๐ \Drupal\automatic_updates_extensions\Form\UpdaterForm should use ComposerInspector instead of ComposerUtility Fixed
- ๐ UpdateReleaseValidator should use ComposerInspector instead of ComposerUtility Fixed
- ๐ GitExcluder should use ComposerInspector instead of ComposerUtility Fixed
- ๐ UnknownPathExcluder should use ComposerInspector instead of ComposerUtility Fixed
- ๐ OverwriteExistingPackagesValidator should use ComposerInspector instead of ComposerUtility Fixed
- ๐ SupportedReleaseValidator should use ComposerInspector instead of ComposerUtility Fixed
- ๐ CollectIgnoredPathsFailValidator should use ComposerInspector instead of ComposerUtility Fixed
- ๐ FakeSiteFixtureTest should use ComposerInspector instead of ComposerUtility Fixed
- ๐ StatusCheckTraitTest should use ComposerInspector instead of ComposerUtility Fixed
- ๐ RequestedUpdateValidator should use ComposerInspector instead of ComposerUtility Fixed
- ๐ VersionPolicyValidator should use ComposerInspector instead of ComposerUtility Fixed
- ๐ \Drupal\automatic_updates\Form\UpdateReady should use ComposerInspector instead of ComposerUtility Fixed
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Forgot to move ๐ Update FixtureManipulator to work with InstalledPackagesList, real composer show command Fixed !
package_manager
alpha
blockers: 9 remain, 8 are under our control, 3 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 39 remain (44 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
๐ Remove our runtime dependency on composer/composer: remove ComposerUtility Fixed is listed as an alpha blocker, which would make the 15 new beta blockers at the bottom of #109 actually alpha blockers. But @tim.plunkett, @lauriii, @tedbow and I kept #3316368 as an alpha blocker โ I because proving that it can in fact be removed is an alpha blocker, but actually finishing it is not? We need to get clarity on this.
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Landed:
- ๐ VersionPolicyValidator should use ComposerInspector instead of ComposerUtility Fixed
- ๐ \Drupal\automatic_updates_extensions\Form\UpdateReady should use ComposerInspector instead of ComposerUtility Fixed
โ
package_manager
alpha
blockers: 17 remain, 15 are under our control, 2 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 31 remain (36 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Landed:
- ๐ RequestedUpdateValidator should use ComposerInspector instead of ComposerUtility Fixed
- ๐ ExtensionUpdater should use ComposerInspector instead of ComposerUtility Fixed
โ
package_manager
alpha
blockers: 15 remain, 13 are under our control, 2 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 29 remain (34 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
I see I failed to mention that my proposal to close #3342430 as outdated in #3342430-19: Hard failure after module install if composer is not found โ has been accepted at #3342430-27: Hard failure after module install if composer is not found โ โ one less! ๐
โ
package_manager
alpha
blockers: 14 remain, 12 are under our control, 2 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 28 remain (33 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ \Drupal\automatic_updates_extensions\Form\UpdaterForm should use ComposerInspector instead of ComposerUtility Fixed landed.
โ
package_manager
alpha
blockers: 12 remain, 10 are under our control, 2 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 26 remain (31 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ ComposerPatchesValidator should use ComposerInspector instead of ComposerUtility Fixed landed.
โ
package_manager
alpha
blockers: 11 remain, 9 are under our control, 2 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 25 remain (30 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ GitExcluder should use ComposerInspector instead of ComposerUtility Fixed landed.
โ
package_manager
alpha
blockers: 10 remain, 8 are under our control, 2 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 24 remain (29 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
@tedbow discovered a new alpha blocker: ๐ FixtureManipulator should only use Composer commands, rather than manipulating JSON directly Fixed .
๐ฌ
- ๐บ๐ธUnited States phenaproxima Massachusetts
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
And so is ๐ UnknownPathExcluder should use ComposerInspector instead of ComposerUtility Fixed .
Also clarifying the the alpha roadmap is for โจ Add Alpha level Experimental Package Manager module Needs review since we first want to land Package Manager in
10.1
to enable Project Browser to also land in10.1
because Automatic updates is blocked on d.o infrastructure and will definitely not make10.1
. โจ Add Alpha level Experimental Automatic Updates module Needs work is slated for10.2
at this point.โ
package_manager
alpha
blockers: 9 remain, 7 are under our control, 2 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 22 remain (27 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Landed:
- ๐ Remove FixtureManipulator::modifyPackage() last usage Fixed
- ๐ ScaffoldFilePermissionsValidator should use ComposerInspector instead of ComposerUtility Fixed
@phenaproxima opened a new blocker for #3316368: ๐ Stage::validatePackageNames() should not use the Composer API Fixed .
โ
package_manager
alpha
blockers: 8 remain, 6 are under our control, 2 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 21 remain (26 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
Landed:
- ๐ Stage::validatePackageNames() should not use the Composer API Fixed
- ๐ Remove our runtime dependency on composer/composer: remove ComposerUtility Fixed
โ
package_manager
alpha
blockers: 6 remain, 4 are under our control, 2 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 19 remain (24 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Random failure: "PHP temp directory (/tmp) does not exist or is not writable to Composer." Fixed landed.
โ
package_manager
alpha
blockers: 5 remain, 4 are under our control, 2 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 18 remain (23 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ Define the Package Manager API (package_manager.api.php is outdated) Fixed is in; docs gate is cleared!
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Define the Package Manager API (package_manager.api.php is outdated) Fixed landed!
โ
package_manager
alpha
blockers: 4 remain, 1 is under our control, 1 is blocked on upstream (Composer Stager), 2 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 18 remain (23 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ ComposerInspector::validate() should throw ComposerNotReadyException instead of \Exception Fixed landed and was a beta blocker.
- ๐บ๐ธUnited States phenaproxima Massachusetts
Adding ๐ ComposerPluginsValidator uses Composer's internal Package class Fixed as an alpha blocker, which should have been fixed as part of removing our dependency on composer/composer, but slipped through the cracks.
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
fixed ๐ ComposerPluginsValidator uses Composer's internal Package class Fixed
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
We will need ๐ Ensure all remaining @todos have a link to an open issue Fixed before we can get core merge
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
I think you meant ๐ In CoreUpdateTest::testUi, confirm that the UI says no update is available after updating successfully Fixed ? ๐
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ Finalize \Drupal\automatic_updates\Development\Converter script to update core MR Fixed landed.
โ
package_manager
alpha
blockers: 3 remain: 1 is blocked on upstream (Composer Stager), 2 are issues to add core dependenciespackage_manager
+automatic_updates
alpha + beta
blockers: 15 remain (20 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ Add colinodell/psr-test-logger to core's dev dependencies Fixed is in.
That leaves two remaining alpha blockers, both of which are blocked on a new tag of Composer Stager. ๐
- ๐บ๐ธUnited States phenaproxima Massachusetts
I just merged ๐ Tighten ComposerPluginsValidator: support only specified version constraint Fixed . Nice to get that beta blocker in!
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ Unhandled Composer Stager exceptions leave the update process in an indeterminate state Fixed and ๐ Add symlink support to Composer Stager 2.0, require that version, and simplify UX & tests accordingly Fixed are in.
That means we are down to our last remaining alpha blocker...and it's something that requires review from core committers. ๐
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
Added ๐ Fix remaining @todos in ComposerPluginsValidatorTest Fixed for beta target
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
๐ InstalledPackage::$path for metapackages should be NULL Fixed landed.
โ
package_manager
alpha
blockers: 1 remains: an issues to add a core dependencypackage_manager
+automatic_updates
alpha + beta
blockers: 10 remain (15 actually remain, but 5 of these areautomatic_updates
-specific and hence postponed because we want to landpackage_manager
first)
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
added
- ๐ Allow JsonProcessOutputCallback and other Composer runner callbacks to gracefully handle deprecated command options Fixed
- ๐ ComposerMinimumStabilityValidator doesn't check dev packages Fixed - even without this you can't install packages below the stability. just checking the error early
- ๐ Assert status checks pass as early as possible in kernel and functional tests Closed: outdated
- ๐ Optimize Composer calls in FixtureManipulator Closed: works as designed
- ๐ Validate PHP version to be used by the Composer process calls Needs work
- ๐ Ensure all remaining @todos have a link to an open issue Fixed
- ๐ Fix remaining @todos in ComposerPluginsValidatorTest Fixed
- ๐ Autowire everything everywhere all at once โฆ in *Test.php files Fixed
- ๐ Autowire everything everywhere all at once โฆ in *.services.yml files Fixed
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
Changing ๐ Add a validator to check that PHP-TUF's Composer integration is present and configured correctly Fixed to an alpha requirement as per ๐ฑ [policy, no patch] How much of The Update Framework integration is needed for alpha-level review/commit of Package Manager? Needs review
I put a comment on #3316617-29: If unattended updates are enabled, ensure PHP-TUF Composer integration is present โ that we need to confirm our assumptions on that issue with core policy
- ๐บ๐ธUnited States phenaproxima Massachusetts
- ๐บ๐ธUnited States phenaproxima Massachusetts
Removing a duplicate item from the roadmap.
- ๐บ๐ธUnited States phenaproxima Massachusetts
Whoops, removed the wrong thing.
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ Autowire everything everywhere all at once โฆ in *Test.php files Fixed is done too.
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ Autowire everything everywhere all at once โฆ in *.services.yml files Fixed landed.
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
added ๐ Harden our HTTPS requirement Fixed
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ ComposerMinimumStabilityValidator doesn't check dev packages Fixed is in.
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
๐ Rip out the update path Fixed
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ Rip out the update path Fixed is in.
- ๐บ๐ธUnited States phenaproxima Massachusetts
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ Ensure all remaining @todos have a link to an open issue Fixed is in too! Yeah!!!
- ๐บ๐ธUnited States phenaproxima Massachusetts
The monumental ๐ Rename Stage to StageBase to clarify its relationship to its subclasses, and add "Stage" suffix to the Updater classes Fixed landed!
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ Fix remaining @todos in ComposerPluginsValidatorTest Fixed is done.
- ๐บ๐ธUnited States phenaproxima Massachusetts
Removing ๐ Add functional test that proves there is reasonable UX whenever a stage event subscriber has an exception Fixed and adding ๐ Add functional test that proves there is reasonable UX whenever Composer Stager operations have a hard failure Fixed in its place.
- ๐บ๐ธUnited States phenaproxima Massachusetts
Hey, look at that: alpha-blocking security-related ๐ Harden our HTTPS requirement Fixed is in! ๐
- ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
New alpha-blocking security-related issue: ๐ Flag a warning during status check if the OpenSSL extension is not enabled Fixed โ related to ๐ Harden our HTTPS requirement Fixed that landed previously.
- ๐บ๐ธUnited States phenaproxima Massachusetts
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
- ๐บ๐ธUnited States phenaproxima Massachusetts
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ Add a validator to check that PHP-TUF's Composer integration is present and configured correctly Fixed is done too.
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
added ๐ If an error occurs during an attended process, delete the stage on behalf of the user Needs review
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
- Assigned to tedbow
- Status changed to Needs work
over 1 year ago 9:23am 14 June 2023 - ๐ง๐ชBelgium wim leers Ghent ๐ง๐ช๐ช๐บ
This roadmap has not been updated in almost a month.
๐ Enable unattended updates Fixed landed, and so did ๐ Add functional test that proves there is reasonable UX whenever Composer Stager operations have a hard failure Fixed and ๐ ComposerValidator's hook_help() integration is imprecise and incomplete Fixed . ๐ Optimize Composer calls in FixtureManipulator Closed: works as designed was closed as was ๐ Add build test to test cweagans/composer-patches end-to-end Closed: won't fix .
AFAICT missing:
- ๐ Use the rsync file syncer by default Fixed
- ๐ Add Symfony Console command to allow running cron updates via console and by a separate user, for defense-in-depth Fixed
- ๐ For web server dependent unattended updates run the entire life cycle in a separate process that will not be affected by hosting time limits Fixed
AFAICT obsolete:
- ๐ Research alternatives to curl request on post apply event during cron updates Closed: outdated
- ๐ automated_cron should not run cron when visiting update.php Active
- ๐บ๐ธUnited States effulgentsia
Moved ๐ Enable unattended updates Fixed to completed.
- ๐บ๐ธUnited States effulgentsia
Added a nice green checkmark to the Core Alpha Experimental blockers for Automatic Updates section :)
- ๐บ๐ธUnited States effulgentsia
Removed the green checkmark from the Security section of package manager alpha blockers, since there's an open issue in that section.
- ๐บ๐ธUnited States effulgentsia
Added some more core and infrastructure issues to the package manager alpha blockers list.
- ๐บ๐ธUnited States effulgentsia
Moved the following to Completed:
- ๐ Add functional test that proves there is reasonable UX whenever Composer Stager operations have a hard failure Fixed
- ๐ Package Manager should keep an audit log of changes it applied to the active codebase Fixed
- ๐ ComposerValidator's hook_help() integration is imprecise and incomplete Fixed
Removed the following, but did not move to Completed, as they were closed without fixing.
- ๐ Optimize Composer calls in FixtureManipulator Closed: works as designed
- ๐ Add build test to test cweagans/composer-patches end-to-end Closed: won't fix
- Status changed to Active
over 1 year ago 7:05pm 26 June 2023 - ๐บ๐ธUnited States effulgentsia
Added:
- ๐ Use the rsync file syncer by default Fixed
- ๐ Add Symfony Console command to allow running cron updates via console and by a separate user, for defense-in-depth Fixed
- ๐ For web server dependent unattended updates run the entire life cycle in a separate process that will not be affected by hosting time limits Fixed
For the two possibly obsolete issues mentioned in #171, I added notes by them that they might be obsoleted by ๐ For web server dependent unattended updates run the entire life cycle in a separate process that will not be affected by hosting time limits Fixed , but I didn't remove them from the list in case ๐ For web server dependent unattended updates run the entire life cycle in a separate process that will not be affected by hosting time limits Fixed doesn't work out for whatever reason (though I think it will work out).
- Issue was unassigned.
- ๐บ๐ธUnited States effulgentsia
I think all points from #171 were resolved, so removing the assignment to @tedbow that that comment added. @tedbow: please feel free to reassign to yourself if there's something else you want to update here.
- ๐บ๐ธUnited States effulgentsia
Added:
- ๐ Override Composer Stager's TranslatableFactory to return Drupal's TranslatableMarkup Fixed
- ๐ [PP-1] Require PHP-TUF's Composer integration plugin Postponed
Issues tagged core-mvp that aren't in the issue summary. Either they should be added to the issue summary or their core-mvp tag needs to be removed:
- ๐ In Core build tests have core module change a service class constructor Active
- ๐ Limit non-stable releases to RCs on updater form Closed: duplicate
- ๐ Update ProcessOutputCallback to fail on Composer deprecations, to get early notifications of Composer changes Postponed
- ๐ Determine if the PHP syncer can and should be the default file copier Needs work
- ๐ Document PACKAGE_MANAGER_FAILURE.yml in https://www.drupal.org/docs/8/update/automatic-updates Needs review
- ๐ Since #3361983 was committed to Drupal core, psr/http-message needed to be explicitly required for build tests Needs work
- ๐ Is it an error if drupal/core has no scaffold file mappings? Active
- ๐ As of Composer 2.5.5, `composer config` JSON-encodes boolean values Fixed
- ๐ PHPStan error in core merge request conversion Closed: outdated
- ๐บ๐ธUnited States effulgentsia
Added ๐ฑ [policy, no patch] Make PHP's OpenSSL extension a requirement for installing and using Package Manager (and therefore, Automatic Updates and Project Browser) Fixed and ๐ฑ [policy, no patch] Should Package Manager require Composer HTTPS? Active as alpha-blocking policy questions in the core queue.
- ๐บ๐ธUnited States effulgentsia
Added https://github.com/php-tuf/composer-stager/issues/68 to the testing section of the alpha blocker list. I think it's important for us to know the approximate time it takes to execute the full set of preconditions and make a decision on whether that's acceptable or needs optimization or refactoring. If full automation turns out to be too large a task, we can discuss alternate ideas for how to satisfy the alpha-blocking concern but let's see how that issue progresses first.
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
- @effulgentsia re #182 why would that issue be an Alpha blocker as opposed to Stable or Beta? It is because it slow core's test down? It seems like an Alpha module should not have to have all the performance problems already solved.
- Removed ๐ Hosting environment (e.g. cPanel) may add additional files (including symlinks) to the project, which breaks AU Postponed: needs info . We now support most symlinks since ๐ Add symlink support to Composer Stager 2.0, require that version, and simplify UX & tests accordingly Fixed and we exclude must paths in the base of the project as reported in this issue since ๐ Exclude unknown paths in project base: only allow vendor + web root + whatever drupal/core-composer-scaffold allows Fixed . The issue is postponed instead of fixed to allow the original posted to report back but we aren't aware of remaining problems
- Moving ๐ Update every ComposerValidator-dependent validator to have explicit test coverage that that dependency works Needs work to Stable blocker
- Moving ๐ Validate PHP version to be used by the Composer process calls Needs work to Stable blocker. We have only seen this once. @phenaproxima is going to propose a simpler solution on the issue
- Leaving ๐ Make readiness check failure messages clear, consistent, and actionable Needs work as stable blocker for now but I asked for an issue summary update to clarify exactly what the problem is. Depending on the result we may take it out of the roadmap
- Removed ๐ Improve UX for trusting additional composer plugins Active . This is really a feature request that could be done after stable. Also not clear we want to move the ability to opt-in composer plugins to the UI as understanding the compatibility concerns requires deep understanding of how the system works
- ๐ Document that StageFixtureManipulator should not be used in build tests Active removing. This is testing request. The tests would be totally fine if we never did this. Assigned to myself to see if we can just close this issue
- ๐บ๐ธUnited States phenaproxima Massachusetts
๐ Override Composer Stager's TranslatableFactory to return Drupal's TranslatableMarkup Fixed is in; our final translatability blocker!
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
๐ Remove work arounds for 10.0.x support Fixed . This is should a small issue we can do at anytime but would make use not compatible with 10.0.x. Being compatible with 10.0.x makes us be able to do minor updates in the contrib module
- ๐บ๐ธUnited States effulgentsia
Moved these to Done:
- ๐ Add Symfony Console command to allow running cron updates via console and by a separate user, for defense-in-depth Fixed
- GH-CS-68: Perform and automate performance testing of Composer Stager's preconditions
- ๐ For web server dependent unattended updates run the entire life cycle in a separate process that will not be affected by hosting time limits Fixed
Removed these, since they were closed as outdated:
- ๐ Research alternatives to curl request on post apply event during cron updates Closed: outdated
- ๐ Assert status checks pass as early as possible in kernel and functional tests Closed: outdated
- ๐บ๐ธUnited States effulgentsia
Removed all of the alpha-blocking categories with no remaining issues in them, and replaced them with a "Miscellaneous" category, for easier scanning.
- ๐บ๐ธUnited States effulgentsia
Removing the "contrib-only" tag. Not sure what its intended meaning was earlier in this issue's history, but at this point, this issue is all about tracking what's needed to get Automatic Updates into core.
- ๐บ๐ธUnited States effulgentsia
Removed ๐ automated_cron should not run cron when visiting update.php Active as obsoleted by ๐ For web server dependent unattended updates run the entire life cycle in a separate process that will not be affected by hosting time limits Fixed .
- ๐บ๐ธUnited States effulgentsia
Replaced ๐ฑ [policy, no patch] Should Package Manager require Composer HTTPS? Active with its child issue ๐ฑ [policy, no patch] Disallow using Package Manager (and therefore Automatic Updates and Project Browser) when Composer's disable-tls setting is true Needs review .
- ๐บ๐ธUnited States effulgentsia
Added ๐ฑ [policy, no patch] Consider whether to keep Package Manager and Automatic Updates in a separate repo/package than core in order to facilitate releasing updates to the updater Needs review as another alpha-blocking policy question.
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
Made it clear we are blocked on ๐ [policy, no patch] Use Update XML in Package manager to determine release support status Active for our path to core
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
Adding ๐ฑ [policy, no patch] How much of The Update Framework integration is needed for alpha-level review/commit of Package Manager? Needs review to our roadmap because this issue to our roadmap because even though I assume this has been decided the issue has not actually been closed, so it would be good to get clarity
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
Fixed ๐ Ensure exceptions thrown by event subscribers are logged Fixed , ๐ Should we only show RC for pre-releases of core in the form? Active
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
Removing ๐ Assert no errors after creating the test project in ModuleUpdateTest Needs review . It is still open but now only affects
automatic_updates_extensions
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
Fixed ๐ฑ [policy, no patch] Make PHP's OpenSSL extension a requirement for installing and using Package Manager (and therefore, Automatic Updates and Project Browser) Fixed and added newly created ๐ Require not just reccomend openssl extensions Active
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
Added ๐ Add getType to StageBase to allow subclasses to be internal Needs review
- ๐ซ๐ฎFinland lauriii Finland
Moving completed issues to the completed section.
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
Updating "Core Merge request planning"
- ๐ญ๐บHungary Gรกbor Hojtsy Hungary
Is this roadmap still current or is there a better one?
- Assigned to tedbow
- ๐บ๐ธUnited States tedbow Ithaca, NY, USA
@Gรกbor Hojtsy it is not current but this is the only one. I need to update it
- ๐ฌ๐งUnited Kingdom catch
This should be in the core queue, and it could really use an update.
I opened ๐ Package manager/ Automatic Updates should disallow composer patches by default Active which should be either beta or stable blocking, added it to a new 'beta blockers' heading for now.
- ๐ฌ๐งUnited Kingdom catch
Is ๐ Exceptions in batch no longer are shown on the page when Javascript is disabled Needs work still blocking? It should have been fixed since ๐ Only set content-length header in specific situations Fixed but no updates on there or here since.
- ๐ฌ๐งUnited Kingdom catch
@lauriii mentioned that it can be tricky to keep an issue summary up to date with a lot of issues to track and suggested a spreadsheet. I personally find d.o issues in spreadsheets hard to track because you can't immediately see the issue status (or maybe you can if you integrate the spreadsheet cells with d.o but that can be flaky).
To try to compromise I made 'package manager alpha blocker' and 'package manager beta blocker' tags, and then tagged the issues that are already in the issue summary or other ones I could think of. If the tags are inaccurate, please fix them and say why on the issue, just trying to collate things and get a better idea of what is actually left.
https://www.drupal.org/project/issues/search?issue_tags=package%20manage... โ
https://www.drupal.org/project/issues/search?issue_tags=package%20manage... โ
- ๐ณ๐ฟNew Zealand quietone
Added an item to the alpha stage to get a Usability review. It is not a block put it is a process that should start asap so we can avoid blockers later.
I also would like to know about the status of the other gates that are not mentioned in the issue summary, Accessibility, Documentation, Fronted and Performance.
If no one objects, can the long list of Completed be removed? I just find it distracting.
- ๐ฌ๐งUnited Kingdom alexpott ๐ช๐บ๐
After discussion with @xjm, @catch, @longwave and @lauriii, we decided that in order to allow beta testing without the modules being hidden, we can use the dev/prod toggle as outlined in โจ Add a Production/Development Toggle To Core Needs work .
- ๐บ๐ธUnited States xjm
The list of completed issues in the IS makes this page very difficult to load and manage, so removing it from the IS. Sorry. :)
- ๐ฌ๐งUnited Kingdom catch
Opened ๐ Restrict package_manager (and update_manager) behind a dev/prod toggle Active .
I think that is blocking either beta, or 'alpha but in a tagged release' if I remember the Barcelona discussion correctly.
Added it to alpha blockers, which at the moment IMO means 'blocking package_manager being alpha in the 11.0.x branch'..
- ๐ฌ๐งUnited Kingdom catch
Opened ๐ Prepare for package_manager in core Active , probably not a stable blocker as such but we need to know what happens and have some kind of mitigation if it's bad. This is especially going to be the case assuming Drupal CMS increases the usage of contrib automatic_updates from it's current c. 1,000 installs to a lot more than that.