9.1.8 (2026-08-03)

Overview of merged pull requests

BUGFIX: Flush content cache on base workspace change

With https://github.com/neos/neos-development-collection/pull/5674 we removed a global cache key in Neos 9.1, which contained the workspace chain. The workspace chain had ensured different cache keys per workspace/base workspace combination.

Eg. live/review/user vs live/user

Now we need to flush the full user workspace cache on each change of the base workspace.

Fixes: https://github.com/neos/neos-development-collection/issues/5924

  • Packages: Neos

BUGFIX: Include the dimensions of a nodes context as cache identifier

This solves an error introduced with the forward compatibility layer for Neos 9.

The node cache identifier used the dimensions of the node, which are incorrect when working with fallbacks. Instead the dimensions of the context have to be used. For this we reuse the same mechanism as the Node implementation does by using the NodePaths helper.

This change can be ignored during upmerge, as 9.0 uses a different implementation.

  • Packages: Media.Browser Neos

TASK: Update frontend build of Neos.Media.Browser

This PR updates the outdated build stack of the (old) Neos.Media.Browser package to esbuild. Therefore, the Grunt and webpack config together with the Ruby files (Gemfile, config.rb) are removed and replaced by a new esbuild setup. Only the yarn.lock file is used for consistend dependencies to avoid conflicts when having both in place.

The new build combines the Main.js and Vendor.js file into one file.

resolves: #3459, #5920

Upgrade instructions

This change only affects the build stack. Run yarn to update dependencies. Afterwards, run yarn build or yarn watch to use the new build setup.

  • If it’s a bugfix, use the lowest maintained branch which has the bug

  • If it’s a non-breaking feature, use the branch of the next version (might be either minor or major)

  • If it’s a breaking feature it should typically go into the next major version

  • [ ] Reviewer - PR Title is brief but complete and starts with FEATURE|TASK|BUGFIX

  • [ ] Reviewer - The first section explains the change briefly for change-logs

  • [ ] Reviewer - Breaking Changes are marked with !!! and have upgrade-instructions

  • Packages: Neos Media.Browser

TASK: Add ‘isOdd’ and ‘isEven’ to iteration context variables

isOdd and isEven is missing in the documentation, but these variables are quite useful. I know, the same can be done with iteration.index % 2 and iteration.cycle % 2, but isOdd and isEven is easier to read

  • Packages: Neos

Detailed log