Problem/Motivation

FieldStorageCreateCheckSubscriber is a test-only subscriber which checks that bundle fields being registered have their host entity type correctly set up.

However, this error assumes that the storage is a config field storage with an id() method:

> @trigger_error('Creating the "' . $event->getFieldStorageDefinition()->id() . '" field storage definition without the entity schema "' . $entity_type_id . '" being installed is deprecated in drupal:11.2.0 and will be replaced by a LogicException in drupal:12.0.0. See https://www.drupal.org/node/3493981', E_USER_DEPRECATED);

Whereas it's possible for a bundle field storage to be a class, not an entity. Several contrib modules have created a BundleFieldDefinition class which extends BaseFieldDefinition. If modules use these and their test setup causes the error, then the error itself causes a crash.

Steps to reproduce

Proposed resolution

Remaining tasks

User interface changes

Introduced terminology

API changes

Data model changes

Release notes snippet

Comments

joachim created an issue.