Problem/Motivation

Another follow-up to #2796581: Fields must store their region in entity displays.
Somehow not caught in #2809527: Add backwards compatibility layer for entity display default config that lacks 'region'.

For extra fields that are included in default config, their initial loading will trigger

Undefined index: type in Drupal\field_ui\Form\EntityDisplayFormBase->determineComponentAction() (line 664 of core/modules/field_ui/src/Form/EntityDisplayFormBase.php)

Proposed resolution

There is code to handle extra fields, but does not correctly handle them if it is coming from default config.

Remaining tasks

Write tests

User interface changes

N/A

API changes

N/A

Data model changes

N/A

Support from Acquia helps fund testing for Drupal Acquia logo

Comments

tim.plunkett created an issue. See original summary.

tim.plunkett’s picture

Status: Active » Needs review
FileSize
1.04 KB
tim.plunkett’s picture

Status: Needs work » Needs review
tim.plunkett’s picture

tim.plunkett’s picture

Status: Needs work » Needs review
FileSize
10.56 KB
2.23 KB
tim.plunkett’s picture

Added a test. The FAIL patch is also the interdiff.

The last submitted patch, 8: 2811467-extra-fields-8-FAIL.patch, failed testing.

samuel.mortenson’s picture

Status: Needs review » Reviewed & tested by the community

Looks good to me. Discussed concerns and questions in IRC.

catch’s picture

Status: Reviewed & tested by the community » Closed (duplicate)

Marking this as duplicate of #2796581: Fields must store their region in entity displays, this shows how fragile the runtime bc layer is, and we discussed a config save-only bc layer in irc which didn't make it back to the original issue before it was committed, but would save doing any of this.