Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
Problem/Motivation
#2554151: Test content/configuration in update database dump shows that we are missing some config schema
Proposed resolution
Add it. Its critical because it blocks a critical.
Remaining tasks
User interface changes
API changes
None
Data model changes
Comment | File | Size | Author |
---|---|---|---|
#15 | interdiff.txt | 1.71 KB | dawehner |
#15 | 2555275-15.patch | 3.77 KB | dawehner |
#12 | interdiff.txt | 2.27 KB | dawehner |
#12 | 2555275-12.patch | 3.87 KB | dawehner |
#8 | interdiff.txt | 482 bytes | dawehner |
Comments
Comment #2
dawehnerThere we go.
Comment #3
Wim LeersYou accidentally uploaded the patch for #2555259: Add config schema for image_convert image effect :)
Comment #4
Gábor HojtsySetting back to active, the patch is accidental. Also would needs tests as every other schema fix. Not sure why we broke this out of #2554151: Test content/configuration in update database dump, that one has failing tests due to this missing.
Comment #5
catchAt minimum this is critical and blocking that issue.
Comment #6
dawehnerWhy? Because of babysteps. We need to write the smoke tests anyway for the other issue ... and its block on the entity update one, so would need quite a long time anyway.
Comment #7
BerdirWe're also missing field schemas for quite some field types: #2462155: Field settings schema missing for some field types
Comment #8
dawehnerSome minimal test coverage.
Comment #10
dawehner... Its failing as expected
Comment #11
BerdirIn #2462155: Field settings schema missing for some field types, @stefan_r pointed out that the is_ascii option makes no sense on uri items. Instead of this., should we maybe remove that option from it instead of this? If we keep this, should remove the now duplicated schema definitions below?
Do we really need to make this a web tests with field_ui (and options module?) Those kind of tests usually extend from FieldUnitTestBase, see EmailItemTest for an example.
Comment #12
dawehnerUps, I started with the boolean test which seems to be a bad example.
Comment #13
stefan.r CreditAttribution: stefan.r commentedLet's add a comment explaining URIs should not be ASCII so this setting is unavailable on the uri field type.
Also:
<berdir> yeah, my only point is that IMHO, the test should be named UriItemTest so it is consistent with other tests (*ItemTest being kernel tests while *FieldTest are testing the UI)
Comment #14
jibranComment #15
dawehnerThere we go.
Comment #16
Wim Leerslgtm
Comment #17
catchCommitted/pushed to 8.0.x, thanks!
Comment #19
Gábor HojtsyThe patch committed resulted in a state where the PHP does not use is_ascii while the config schema allows for it on URI settings. In such situations, instead of defining a key for an otherwise invalid setting combination, we introduced base types and inherited from each other from them. The result after this patch unfortunately allows for invalid data combinations, and will not figure out if for example migrate tries to use the is_ascii key on URI settings for something.
Opened #2558635: Config schema invalid for field.storage_settings.uri, allows for is_ascii key to resolve this. Depending on what kind of schema changes do we consider data model changes it may or may not be higher priority.
Comment #20
Gábor HojtsyIn more detail:
This is problematic because it adds all three keys of string, only 2 of which are allowed on uri. It also kept defining the 2 allowed here, which is pointless if already inherited. So its also a double-definition now. We either need to roll back this line or add a more sophisticated base type. See #2558635: Config schema invalid for field.storage_settings.uri, allows for is_ascii key.