Problem/Motivation
This is a follow-up to #3402168: Follow-up for #3361534: Config validation errors can still occur for contrib modules, disrupting contrib and #3361534: KernelTestBase::$strictConfigSchema = TRUE and BrowserTestBase::$strictConfigSchema = TRUE do not actually strictly validate, per #3364109-49: Configuration schema & required values: add test coverage for `nullable: true` validation support.
Once #3364109: Configuration schema & required values: add test coverage for `nullable: true` validation support lands, we'll have a reliable mechanism to detect which config schema types (i.e. simple config objects or config entity types) are fully validatable.
The changes #3402168: Follow-up for #3361534: Config validation errors can still occur for contrib modules, disrupting contrib made should still be respected: we do NOT want config validation to be executed for every contrib module.
But we DO want run config validation for contrib modules when:
- validating a config schema type that has the
FullyValidatableconstraint - that means that
public function checkConfigSchema(TypedConfigManagerInterface $typed_config, $config_name, $config_data …has theFullyValidatableconstraint as one of the values of$typed_config->getConstraints()
Steps to reproduce
N/A
Proposed resolution
TBD
Remaining tasks
TBD
User interface changes
TBD
API changes
TBD
Data model changes
TBD
Release notes snippet
TBD
Comments
Comment #2
wim leersComment #3
wim leersC/P error 😅
Comment #4
wim leersComment #5
phenaproximaAll blockers appear to be in, at last, so this is unblocked.
Comment #6
wim leersClosed #3395099: [meta] Allow config types to opt in to config validation, use "FullyValidatable" constraint at root as signal to opt in to "keys/values are required by default" since this is the last remaining issue in that plan! 👍