As part of #2741403: Revert(Import) a feature programmatically, the Features service definitions (features.services.yml) were changed to add an additional argument to features.manager.
This causes features imports to break when sites upgrade to 8.x-3.0 unless they specifically rebuild caches as part of the upgrade, because service definitions are cached in Drupal. This leads to errors like this:
Argument 7 passed to Drupal\features\FeaturesManager::__construct() must be an instance of Drupal\config_update\ConfigRevertInterface, none given, called in docroot/core/lib/Drupal/Component/DependencyInjection/Container.php
I don't know if Drupal 8 has a formal policy on this, but it seems like contributed modules should be responsible for clearing the services cache as part of an update hook if they make changes to their service definitions. I don't think it's safe to assume that every Drupal site rebuilds caches on every deployment... this isn't tenable for a lot of large scale sites.
| Comment | File | Size | Author |
|---|---|---|---|
| #2 | features-rebuild-container-2826466-2.patch | 420 bytes | nedjo |
Comments
Comment #2
nedjoYes, we need an update. A parallel in core is
views_update_8200(). Patch attached.Comment #4
nedjoApplied this and posted a new release, 8.x-3.1.
Comment #5
nedjo