Change record status: 
Introduced in branch: 
2.1.x, 3.0.x, 3.1.x
Introduced in version: 
3.1.7, 3.0.15, 2.1.24
Description: 

The three plugins that read, write and compare ECA's persistent values have
been renamed, and their descriptions corrected.

Plugin ID Old label New label
eca_state_read Persistent state: read ECA state: read
eca_state_write Persistent state: write ECA state: write
eca_state Persistent state: compare ECA state: compare

Why the rename matters more than a label change

The old labels and descriptions claimed these plugins read from and write to
"the Drupal state". That was never true. They have always used ECA's own
EcaState service, injected as $this->state on
ActionBase, which is a separate persistent key value store. A value
written with ECA state: write has never been visible to
\Drupal::state(), and a value set elsewhere through Drupal's state
service has never been readable with ECA state: read.

The rename removes that false claim. If you built a model on the assumption
that these plugins talked to Drupal's state service, that assumption was already
wrong before this change - the behavior has not changed, only the description of
it.

Reading or writing Drupal's actual state service

Use the key value store plugins with the collection state:

  • Key value store: read with collection state
  • Key value store: write with collection state

What you need to do

Nothing, for existing models. The plugin IDs are unchanged,
so no configuration is affected and no update path is required. Existing models
keep working exactly as before and continue to use the same storage.

The only visible difference is in the modeler and in the action
administration UI, where the plugins now appear under their new labels. If you
have written documentation, training material or screenshots that refer to
"Persistent state", those need updating.

Impacts: 
Site builders, administrators, editors
Module developers