- Issue created by @bvoynick
Currently, the Entity Type Behaviors module stores all behavior configuration from plugin forms as PHP-serialized data. It does the job, but is pretty messy to read compared to Drupal's standard serialization to YML.
I would like to be able to store 'config' data using Drupal's general config serialization instead.
An alternate to the entity_type_behaviors.settings_base schema will need to be provided, called something else such as "entity_type_behaviors.settings_base_unserialized", which types the config key as a mapping instead of as text.
While keeping the default serialize/unserialize handling, provide alternate handling that does not serialize, and allow individual plugins to opt-in to forgoing serialization. Ideally this would be done by defining the config schema for that specific plugin, and setting the type to the new non-serialized base. I don't know how easy this is to check though, not too familiar with looking up schema programmatically.
It definitely has to be opt-in, since we don't want to break existing plugins for this module.
The module already provides base/default schema for plugin configuration that can be extended for custom schemas, so we're good there.
#3279519 has already fixed an issue where the default config schema was not associated to the entity type behavior config, which would otherwise be a prerequisite.
Remaining steps to take to add this feature:
Active
2.0
Code