Problem/Motivation

Some tests are broken because of #2541800: Some config do not inherit from config_object, so locale_system_set_config_langcodes() results in schema errors, the error here is
diff.plugins:langcode variable type is string but applied schema class is Drupal\Core\Config\Schema\Mapping in Drupal\Core\Config\Testing\ConfigSchemaChecker->onConfigSave()

Proposed resolution

Replace type mapping with config_object where is needed and change type sequence of diff.plugins and change the structure

Comments

giancarlosotelo created an issue. See original summary.

pravin ajaaz’s picture

StatusFileSize
new540 bytes

Patch based on it.

pravin ajaaz’s picture

Status: Active » Needs review

Status: Needs review » Needs work

The last submitted patch, 2: fix_schema_langcode_error-2549907-2.patch, failed testing.

pravin ajaaz’s picture

StatusFileSize
new305 bytes
pravin ajaaz’s picture

Status: Needs work » Needs review

Status: Needs review » Needs work

The last submitted patch, 5: fix_schema_langcode_error-2549907-5.patch, failed testing.

giancarlosotelo’s picture

Issue summary: View changes

I took a look on that and the error was quite different and a bit tricky, so sorry for that.
diff.plugins:langcode variable type is string but applied schema class is Drupal\Core\Config\Schema\Mapping in Drupal\Core\Config\Testing\ConfigSchemaChecker->onConfigSave()

in diff.plugins: we have to change the type to mapping and change the structure.

giancarlosotelo’s picture

Issue summary: View changes
giancarlosotelo’s picture

Assigned: Unassigned » giancarlosotelo
giancarlosotelo’s picture

Status: Needs work » Needs review
StatusFileSize
new2.27 KB

This should work.

berdir’s picture

Status: Needs review » Needs work

This doesn't work. Any kind of string could exist there, not just those. They are plugin ID's.

We must keep the sequence.

Instead, you need to move it one level down, so it that it becomes diff.plugins:field_types.$field_type, then you can keep type: sequence

giancarlosotelo’s picture

Status: Needs work » Needs review
StatusFileSize
new11.57 KB

I move it one level down also in diff.plugins.yml (was necessary?) and small changes in the code to made this work.

berdir’s picture

Status: Needs review » Reviewed & tested by the community

Yes, this is the only way I see that can work here.

Status: Reviewed & tested by the community » Needs work

The last submitted patch, 13: fix_config_schema-13.patch, failed testing.

lhangea’s picture

We have some failing tests which need to be fixed first it seems like.

berdir’s picture

Status: Needs work » Reviewed & tested by the community

There is more than one problem, neither will completely fix the tests. We need to commit something, then we can try to get it green in the other issues. Otherwise they block each other.

berdir’s picture

Without this issue, the test doesn't get past installing the default config and explodes before it even starts. This allows us to see the remaining test failures and is therefore a logical first step.

hampercm’s picture

I've verified on my local environment that once this patch and the patch from #2557979-14: SafeMarkup::placeholder() has been removed, SafeMarkup class has changed, update needed are both applied, the failing tests will pass on the latest 8.0.x.

lhangea’s picture

Assigned: giancarlosotelo » Unassigned
Status: Reviewed & tested by the community » Fixed

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.