CPalius CMF 2.2.9
Released: 2026-09-24 · Channel: stable · Critical: yes
Applying a full-release update looked like a single "Update now" click but actually needed two: the first click replaced files, moved the schema and rebuilt the cache; update hooks, module upgrades and configuration import were left pending until a second, separate click on "Run update". A site serving traffic between those two clicks could run new code against a database that had not caught up, and 500.
What's fixed
Applying an update now finishes the job in one click. The two-request split itself is still there on purpose — running the rest of the update through the same request that just replaced the files means running it through a container that describes the old code, and that is what took a site down in 1.1.2. What changed: the moment the first request lands on a fresh container, it now auto-submits the exact same "Run update" action an operator would otherwise have had to notice and click by hand. One click from the operator's side; the safety boundary that keeps a stale container out of the picture is unchanged.
Two Symfony deprecation warnings, gone. Route::getName() (superseded by the name property) was firing on every admin menu registration; the legacy Flysystem adapter/options config format is replaced with the current per-adapter key. Neither affected behavior, both were flooding the update log with noise.
Upgrade notes
Nothing manual. After this version lands, clicking "Update now" for any future release completes without a second click.