ECA 2.0.0 has been released for Drupal 10.3 and 11
ECA 2 is a major milestone. The main improvements are:
- Minimum requirements: Drupal 10.3 and PHP 8.1
- Code clean-up and refactoring, all linters are green for the complete codebase
- Removed usage of all deprecations, PHPStan is all green on level 6
- Dynamic event subscriber: while ECA 1 subscribed to all 233 events (84 provided by ECA, 149 by other modules), ECA 2 now only subscribes to those events, that are relevant on each Drupal site. This comes together with a huge simplification when adding new event plugins, details to be found in the API changes for ECA event plugins change record.
- 74 new plugins, 13 events, 2 conditions, 59 actions
- 164 issues have been resolved (details below): 40 new features, 58 tasks, 58 bugs, 8 miscellaneous
- Dynamic tokens provided by events are now exposed to the UI and in the ECA Guide
- Significant and breaking changes are documented in the Change records for ECA
Huge thanks go to the 45 contributors, who helped us to make all this possible.
Important for developers
Please review the change records carefully, since they contain important information on how to update modules that integrate with ECA. This is especially important for ECA event plugins, and if action plugins have been implemented by extending \Drupal\eca\Plugin\Action\ActionBase
, then the $tokenServices
needs to be renamed into $tokenService
.
How to upgrade
When coming from ECA 1, you should first update to Drupal 10.3. No worries, ECA 1 continues to work with Drupal 10, so you won't be forced to update ECA right away. You can do that update at your own convenience, just so that ECA 2 requires at least Drupal 10.3.
Afterwards, you can update ECA and all other modules that integrate with ECA to version 2 (and equivalent for other modules). Then, some maintenance tasks are recommended:
- Create a database backup
- Clear cache with
drush cr
- Update database with
drush updatedb
- Update existing ECA models with
drush eca:update
Feedback is important to us
Please provide your findings in the issue queue or in the #ECA channel of Drupal Slack.
Add new comment