Neos and Flow 8.4 LTS Release

We are thrilled to announce the release of Neos CMS version 8.4, the second Long-Term Support (LTS) version of the Neos 8 branch. With this release we deliver a large number of features from Neos 9 for your Neos 8 based project. This gives you more time and tools to prepare your project for Neos 9. And you can help us prepare Neos 9 to give you a smoother upgrade experience.

– Written by


With Neos 8.4 you can safely upgrade your existing projects and deliver an even better experience to your customers. While doing that you can use the included migration helper to already make a large part of your Fusion code ready for Neos 9 and make the next upgrade much more manageable.

Besides that, we brought an improved users module, many UX improvements in the UI, CLI commands, new extensibility points, and so much more. Read further to learn more about this fantastic release.

Note: Neos 8.4 is a bit of a special LTS release, as it is our first additional LTS in the same version range and has the same end-of-life as Neos 8.3. The lifetime of 8.3 had already been extended in the past, meaning both versions are supported with patches until end of 2026 and with security fixes until end of 2027. Neos 9.3 LTS is still planned for mid/late 2026.


Neos 8.4 Release Highlights

A lot of seemingly small but impactful changes were made to various backend modules and CLI commands to make them more efficient and useful.

users-module.png
The users module with the role dropdown visible

The users module now allows you to filter users by their role and the sorting has been made more accessible.

The user and site CLI commands have been improved to show more details when listing or showing entities:

The site list CLI command showing more details about each configured site
The site list CLI command showing more details about each configured site
The user cli command showing a list of users
The user cli command showing a list of users
The user cli command showing details about a user
The user cli command showing details about a user
The site creation wizard
The site creation wizard only showing valid nodetypes for a new site

As we also introduced the "Neos.Neos:Site" NodeType from Neos 9, we adjusted the site creation wizard to filter invalid NodeTypes that cannot be homepages, and we disabled the site import and package creation in this step as those are very dangerous to use in a production system and are better than via CLI. You can still reenable them for now via settings but those options are gone with Neos 9.

The content tree with named columns
The content tree with named columns

Until now it was hard to give custom labels to tethered childnodes like columns in a multicolumn element. This is now much easier as you can define a label next to the name of the NodeType in your yaml configuration.

Fun fact: this change has already been started in 2016 and finally been finished by completely different contributors.

A big focus for Neos 8.4 was also to allow you to write Fusion code which is already compatible with the breaking changes in Neos 9.0. We included a special migration CLI command which you can run during the upgrade to do most of the work necessary. Afterwards many projects should only required minor or even no any additional work in the Fusion code during a later upgrade to Neos 9.

Also a regular core migration takes care of migrating the long deprecated Fusion objects Neos.Fusion:Array and friends.

Exact instructions for the toolings can be found in the upgrade instructions.

Some examples for the mentioned changes:

# The extended node helper
node.label -> Neos.Node.label(node)
node.depth -> Neos.Node.depth(node)
node.path -> Neos.Node.path(node)
node.nodeType -> Neos.Node.nodeType(node)
node.hidden -> Neos.Node.isDisabled(node)

# New node getters
node.identifier -> node.aggregateId
node.autoCreated -> node.classification.tethered
node.context.workspaceName -> node.workspaceName
node.nodeType.name -> node.nodeTypeName

# New global variable for the rendering mode
node.context.inBackend -> renderingMode.isEdit

# Generating a cache identifier for a node
node -> Neos.Caching.entryIdentifierForNode(node)

Neos UI 8.4 Highlights

Every proper software release includes more icons. So we brought you more icons for your NodeTypes and plugins with the update from Font Awesome version 5 to 6. Remember you can also configure your own icons since Neos 8.3.

The content tree with the new collapse button in the top right
The content tree with the new collapse button in the top right

You have lots of nodes in your page and content tree and lost overview? No problem, the new collapse button in the top right allows you to collapse the tree and start over.

The improved dimensions dropdown
The improved dimensions dropdown

The newly improved dimensions dropdown shows you the status of the various dimensions values for the current dropdown. This way you can see f.e. if you already localised the current page. In addition the values can now be put into groups.

The Neos inspector resized to give more space while editing
The Neos inspector resized to give more space while editing

If you run out of space while editing a node in the inspector, the new resize button allows you to adjust the inspector to your needs. The left toolbar with the page and content trees have already been adjustable.

Show preview button in the Neos Ui
The improved new preview behaviour

The preview button of the user interface previously redirected to the published content without showing pending changes. With this release the preview shows the same version of content like seen in the backend. A configuration allows to restore the previous behaviour which is removed with Neos 9.

 

Other notable improvements to the UI:


Flow 8.4 Highlights

We backported the streamlined Flow's proxy class building and reflection system from Neos 9, eliminating complex legacy code and removing the outdated package freezing concept. These changes result in more consistent behavior across all application contexts and a leaner, more maintainable code base.


Documentation & Support

Upgrade instructions

For the full upgrade instructions, please refer to: Upgrade Instructions 8.3 → 8.4

See the release notes for further information: Flow 8.4 Release Notes, Neos 8.4 Release Notes

Contributors

Special thank you to our release team for Neos and Flow 8.4: Markus Günther, Sebastian Helzle and Marc Henry Schultz.

Thank you to all financial supporters of the Neos Project - these contributions made the rewrite possible.

Contributors to the release: