← Back to all sparks
N

Neos CMS

MARKETING
Velocity2.5

Content application platform with inline editing and structured content

Neos is rebuilding how its content repository commits and locks, one 9.2 beta at a time

php-cmsevent-sourcingcontent-repositoryconcurrencyupgrade-migrationsbeta-releases
Current state
Neos is a PHP content management system whose 9.x line runs three streams at once: 9.0 and 9.1 maintenance releases carrying the same backported fixes, and 9.2 betas where the real work happens. The feed stores these releases as bare tag lines, so what is in them is only visible at the source — the current beta's 32-character body conceals roughly 3,400 characters of notes. Those notes cover the event-sourced content repository: atomic commits, locking, event migrations and structure adjustments.
Where it's heading
The 9.2 line is reworking the content repository's concurrency model rather than its surface. Atomic events with commitAll remove content stream closing as a locking mechanism, global locking moves into the event store adapter, and follow-up migrations exist for workspaces rebased against content streams that no longer close. Alongside that, a crupgrade:eventsstatus command lets operators see which event migrations apply to their installation — which is the tell that upgrades from earlier 9.x versions are expected to need work.
Prediction
Removing content stream closing changes upgrade behaviour for anyone with rebased workspaces, so expect the remaining betas to be mostly migration coverage and race-condition fixes rather than new features before 9.2 goes final.

Recent moves

  1. 15d ago

    9.2.0-beta3: atomic commits replace content stream closing

    Stored as a 32-character stub; the release itself carries around 3,400 characters. The substantive change is atomic events with commitAll, which simplifies locking by removing content stream closing, backed by a raise to an event store adapter using global locking and a migration for workspaces rebased before that change. A new flow crupgrade:eventsstatus command reports which event migrations apply, and a race condition during content stream forking is fixed. Re-judged from trivial once the real notes were read.

    View source ↗
  2. 2mo ago

    9.0.14: maintenance backport of the 9.1.7 fixes

    The 9.0 maintenance backport of the same fixes shipped in 9.1.7. Two supported lines receiving identical patches is the standing pattern here, so the pair should be read as one piece of work.

    View source ↗
  3. 2mo ago

    9.1.7: dimension tag inheritance and partial publishing fixes

    Dimension tag inheritance and partial publishing fixes on the 9.1 line. Both touch the same content repository the 9.2 betas are restructuring, from the maintenance side.

    View source ↗
  4. 2mo ago

    9.2.0-beta2: no release notes in the feed

    The preceding beta, whose GitHub release genuinely carries nothing but a link to the documentation changelog — confirmed at the source, so unlike beta3 this one is not a truncation.

    View source ↗
  5. 2mo ago

    9.2.0-beta1: workspace roles and a PHP 8.4 floor

    Workspace roles and a PHP 8.4 floor opened the 9.2 line. Workspaces are the surface the later betas' locking and rebase-migration work sits underneath.

    View source ↗