Voting starts in March for the Drupal Association Board election.
In@pounard rightly points out that by implementing the global config overrides as a context rather than an event listener, once you enter a different context, the global config overrides are not used anymore. Eg. if you enter a user specific context, your global overrides are no more. Previously global config overrides were implemented as a config event listener, so they reacted on config events like other overrides. Keeping that behavior would have let global overrides coexist with language specific overrides. That was certainly a point we missed with the original patch. By implementing global overrides as a context, going into a different context also assumed to solve "no overrides applied", while that is not actually what is happening. The config events are still firing and language specific overrides will still apply nonetheless.
- Move global config overrides back to an event listener (as was before ), like the locale config event listener still is.
- Separate concerns of contexts and overrides clearly by removing the direct context specific override capability. Nothing in core used it anyway. Now overrides react to contexts as appropriate and concerns are clearly separate.
- Fix the override-free context to actually be override-free. This was previously implemented to stack on other contexts and while it avoided global overrides, it did not avoid locale overrides.
- Add plenty more test coverage to the locale overrides co-exisiting with non-overriden values and the locale overrides co-existing with global overrides.
PASSED: [[SimpleTest]]: [MySQL] 52,554 pass(es). View
PASSED: [[SimpleTest]]: [MySQL] 52,580 pass(es). View
PASSED: [[SimpleTest]]: [MySQL] 52,614 pass(es). View