In keeping with semantic versioning, this will be broken up into the appropriate major/minor/patch versions depending on the changes involved.
Note that which branch/version these are in will likely change as details are worked out. For example, something may initially be in 1.x but after investigation, it'll need to be moved to 2.x due to breaking changes. Additionally, some of these can be partially implemented in a non-breaking way with the breaking changes postponed to 2.x.
Most of these will require opening counterpart issues for Config Enforce Devel where they need to be kept in sync, e.g. when changing a class' method parameters that Config Enforce Devel extends, etc. See #3306273: Config Enforce Devel roadmap
2.x
Significant changes that will affect backward compatibility:
- #3306489: Rename various classes to include "Immutable" in their names to differentiate them from Config Enforce Devel variants
- #3284038: Importing configs from a profile fails - issue can be renamed to a more general purpose "support other extension types, i.e. profiles and themes"
- #3305728: Implement dependency injection where ever possible - major restructuring
- #3305735: Type hint method/function parameters, return types, and class properties
- #3305729: Add interfaces for all classes
- #3306034: Increase minimum PHP version and Drupal core version - Drupal ^9.3 and 10; PHP 8.1
- #3341143: Add indicator(s) to each config form to reflect the enforcement status - more significant, breaking changes at this stage.
1.x
New features and improvements that should not affect backward compatibility:
- #3164846: Block writing of enforced config
- #3305728: Implement dependency injection where ever possible - only where it's possible to do without renaming classes, changing constructors, etc.
- #3174603: Add automated tests
- #3185374: Support adding enforced configs to themes - only if possible without breaking backwards compatibility, otherwise move to 2.x.
- #3305742: Implement PHPStan
- #3305740: Use strict typing in all PHP files (declare(strict_types=1);)
- #3306034: Increase minimum PHP version and Drupal core version - Drupal core 8, 9, 10; PHP 7.4
- #3296839: Automated Drupal 10 compatibility fixes
1.0.x
Changes and fixes which do not affect backward compatibility at all:
- #3225119: Call to undefined method EnforcedConfigRegistry::createEnforcedConfigs()
- #3310185: Node form display config enforce shows up on node add form on anything newer than 1.0.0-rc3
- #3337732: FormHelperTrait::addWarning() should use '#theme' => 'status_messages' rather than output raw markup
- #3315807: Some forms with Ajax sub-forms don't work with Config Enforce Devel installed
- #3341143: Add indicator(s) to each config form to reflect the enforcement status - only non-breaking changes at this stage.
- #3343791: Update project page in preparation for 1.0.0 stable release
- #3345648: List module under "Configuration" on modules admin page
- #3352380: Add support for ConfigEntityListBuilder config forms
- #3353064: Create a test trait to abstract repetitive UI checks/asserts
- #3354371: Expand ConfigResolver tests to cover all config types we support
- #3251911: Plug-in based config not correctly identified on config forms (e.g. text editor/CKEditor)
- #3355222: Hide Config Enforce container on all content entity add/edit forms, not just for nodes
- #3357713: Enforced config background colours have serious accessibility issues for some types of colour blindness
- #3357685: Enforced config background colours make text unreadable in dark mode (e.g. Gin)
- #3357741: Make config enforcement during cache-rebuild optional
Comments
Comment #2
ambient.impactComment #3
ambient.impactComment #4
ambient.impactComment #5
ambient.impactComment #6
ambient.impactComment #7
ambient.impactComment #8
ambient.impactComment #9
ambient.impactComment #10
ambient.impactComment #11
ambient.impactComment #12
ambient.impactComment #13
ambient.impactComment #14
ambient.impactComment #15
ambient.impactRe-saving issue summary with no changes to get Drupal.org to show updated issue statuses.
Comment #16
ambient.impactComment #17
ambient.impactComment #18
ambient.impactAdded #3310185: Node form display config enforce shows up on node add form on anything newer than 1.0.0-rc3 under 1.0.x
Comment #19
ambient.impactAdded to 1.0.x:
Comment #20
ambient.impactRe-saving issue summary with no changes to get Drupal.org to show updated issue statuses.
Comment #21
ambient.impactAdded #3341143: Add indicator(s) to each config form to reflect the enforcement status
Comment #22
ambient.impactAdded #3185374: Support adding enforced configs to themes
Comment #23
ambient.impactAdded #3343791: Update project page in preparation for 1.0.0 stable release
Comment #24
ambient.impactAdded #3345648: List module under "Configuration" on modules admin page
Comment #25
ambient.impactAdded #3353064: Create a test trait to abstract repetitive UI checks/asserts under 1.0.x
Comment #26
ambient.impactAdded #3352380: Add support for ConfigEntityListBuilder config forms under 1.0.x
Comment #27
ambient.impactAdded #3354371: Expand ConfigResolver tests to cover all config types we support and #3251911: Plug-in based config not correctly identified on config forms (e.g. text editor/CKEditor) under 1.0.x
Comment #28
ambient.impactRe-saving issue summary with no changes to get Drupal.org to show updated issue statuses.
Comment #29
ambient.impactRe-saving issue summary with no changes to get Drupal.org to show updated issue statuses.
Comment #30
ambient.impactAdded #3355222: Hide Config Enforce container on all content entity add/edit forms, not just for nodes under 1.0.x
Comment #31
ambient.impactRe-saving to refresh status of #3355222: Hide Config Enforce container on all content entity add/edit forms, not just for nodes in issue summary.
Comment #32
ambient.impactAdded #3357685: Enforced config background colours make text unreadable in dark mode (e.g. Gin) under 1.0.x
Comment #33
ambient.impactAdded #3357713: Enforced config background colours have serious accessibility issues for some types of colour blindness under 1.0.x
Comment #34
ambient.impactRe-saving to get the issue statuses in the summary to update.
Comment #35
ambient.impactAdded #3357741: Make config enforcement during cache-rebuild optional under 1.0.x