Problem/Motivation
This is the key BC breaking issue of #3565206: [Meta] Roadplan for Admin Toolbar 3.7 and 4.x:
With the recent release of D11.3.0, we should be looking at creating and new LTS support minor release which will be compatible with D12.
In which case, we would be dropping support for core versions below 10.3 and thus drop support for D9.5:
Currently: ^9.5 || ^10 || ^11
Proposed: ^10.3 || ^11
Down the road, this new minor branch should be able to have requirements similar to the current one, but for the next major, i.e.: ^10.6 || ^11 || ^12
This would allow us to start modernizing module's code base and leverage more recent versions of PHP and Drupal Core APIs.
Steps to reproduce
Proposed resolution
The overall impact on the code base is massive.
Changing the version to 10.3 minimum would imply PHP 8.1 minimum, see:
https://www.drupal.org/docs/getting-started/system-requirements/php-requ...
As per change record: Drupal 10 minimum PHP requirement raised to PHP 8.1.
Among some of the changes expected:
- Remove BC (backward compatibility) code: search for occurrences of
\Drupal::VERSION - Use PHP Attributes where possible
- Use PHP enums where possible
- Use
config_targetfor forms - Use Schema validation
- Use autowiring in services and controllers where possible
- Remove deprecated module
admin_toolbar_links_access_filter - More changes to be added...
Remaining tasks
- #3569351: Drop support for Drupal 10.2 and below
- Break down merge request into smaller issues, once core version requirements have changed.
User interface changes
API changes
Data model changes
Issue fork admin_toolbar-3565209
Show commands
Start within a Git clone of the project using the version control instructions.
Or, if you do not have SSH keys set up on git.drupalcode.org:
Comments
Comment #3
dydave commentedQuick follow-up on this issue:
I've done an initial big round of core API updates resulting from the change of module's core version requirements. 👍
I've pushed a bit everything in the same merge request, due to a lack of time, but it will most likely need to be broken down into 4 or 5 different issues/merge requests. 👌
... This is going to be a big change, since we are looking at dropping support for D9...
But we've got to be able to move forward and modernize module's code base with the most recent versions of Drupal and PHP.
We'll probably come back to this issue after fixing a few other easier/smaller ones.
As always, any feedback, reviews, recommendations or suggestions would be greatly appreciated.
Thanks in advance! 😊
Comment #4
dydave commented