The configuration system has a couple of areas that could do with tidying up. These have to be done together as the procedural code unnecessarily ties everything together.
- Several of the procedural functions in config.inc have no OO equivalents impeding the ability to swap out functionality and unit test.
- config.inc is included in _drupal_bootstrap_configuration() yet none of the functions it contains are regularly used during runtime.
- The ConfigImporter is currently injecting services it is not using and additionally is calling out to procedural code.
- Create a new ConfigManager that implements the functionality of contained with config.inc where appropriate
- Remove or deprecate functionality in config.inc where appropriate
- Remove unneeded dependencies from ConfigInstaller
This blocks beta since it is an API change to the configuration system. A followup should remove the include and usages of
User interface changes
- Remove config_get_entity_type_by_name()
- Remove config_uninstall_default_config()
- Deprecate config_get_storage_names_with_prefix()
- Deprecate typed_config()
- Remove config_import_create_snapshot()
- Remove config_diff()
- Add ConfigManager
- Change ConfigImporter constructor
- Change ConfigInstaller constructor
There appears to be no change records to update as a result of this change. When we remove config() we should update https://drupal.org/node/2065313
PASSED: [[SimpleTest]]: [MySQL] 64,260 pass(es). View
PASSED: [[SimpleTest]]: [MySQL] 64,319 pass(es). View
PASSED: [[SimpleTest]]: [MySQL] 64,293 pass(es). View