The third and hopefully final beta release of Node-RED 4.0 is now available!
Update May16th: We've republished the beta as 4.0.0-beta.3-1
to fix a packaging error.
Node-RED 4.x requires at least Node 18.x. We recommend using Node 20
This release addresses all of the issues that had been highlighted against the previous beta, and throws in some new features. Here are the highlights.
The Change Log has the full list of changes.
Note: if any issues are reported against the beta, we'll update this post to list them here. If you hit a problem, please do check back here before adding a comment.
Known Issues
Fixed in 4.0.0-beta.3-1 repackage[node-red/array] Error: range already registered
reported in start up - entirely harmless
Multiplayer Mode - User Presence display
The previous beta introduced the new Multiplayer mode as we iterate towards a better user experience when multiple people are working in Node-RED at the same time.
With this update, we now show where in the editor other users are - which tab they have open and whether they are editing a node.
As before, this new mode is not enabled by default. To turn it on, you need to set editorTheme.multiplayer.enabled
property to true
in your settings file. We've added a placeholder in the default settings file, but for an existing install, you'll need to add it yourself. You can see how/what it should look like here.
Better background deploy handling
In the same theme as the new Multiplayer Mode, we've also made some improvements to the existing 'background deploy' handling in the editor. This is where someone deploys new flows whilst you are busy working in the editor.
Previously, you would get a notification that you couldn't ignore and would have to interrupt what you were doing to deal with. If your colleague was being particularly productive and deploying frequently, you'd get a new interruption every time.
With this release, we've made the notification less intrusive. It's no longer modal, so you can carry on what you were doing without having to take any action. We've made it slim line so it doesn't get in the way, and it will self-close after a short period. As with similar runtime notifications, we now also show a warning icon in the header if there has been a background deploy - as it will need dealing with eventually - clicking on that icon shows the notification so you can take action when you choose to.
Improved Diff view for moved nodes
When reviewing changes in the flows, either as a result of a background deploy, or as part of the Projects feature, we now highlight nodes that have only been moved separately to those that have had configuration changes.
When faced with a long list of changes, this will make it easier to spot changes that you care about.
Faster deploys for large flows
We've swapped the library we use to clone flow configurations in the runtime. The new library is faster and uses less memory.
The gains are less noticeable in 'typical' flows, but for those of you with large flows, there should be an improvement.
In my testing, a config with a few hundred tabs with a few hundred nodes on each, plus some subflows went from 8 seconds to deploy down to just over 1 second. YMMV.
Other updates
- Middle mouse clicking on a tab now hides it - similar to most modern browsers - thanks @Steve-Mcl
- Removed a bunch of code no longer needed due to dropping older Node versions - thanks to Rotzbua
- Some typo fixes and docs improvements - thanks @zj-flowfuse and @joshuaC
- Some tidy up of internal apis in the Function node - thanks patlux
- Better timeout handling when npm takes a while to respond - thanks @hardillb
- Some updated translations - thanks @kazuhitoyokoi and @GogoVega
- Better handling of version updates in Projects mode - thanks @kazuhitoyokoi again
Be sure to read through the Change Log to see what else is in there.
Installing the beta
If you want to try out the beta, you will need specify node-red@next when you use npm to update. Without the @next
you'll still get 3.x
So on a Pi you'd do:
sudo npm install -g --unsafe-perm node-red@next
Docker images
The beta images are available under nodered/node-red-dev:v4.0.0-beta.3-1
- with the default image being based on node 20.
Reporting problems
If you hit any problems, please report them either as a reply on this topic, or in the #core-dev slack channel. Please do not post new topics to the forum regarding the beta as that could confuse users who are not using the beta.
Outstanding work
So we've just missed our goal of getting the full 4.0 release out by the end of April - but we're very close. All being well, this should be the final beta release we do. There are a small number of items we'd like to get in and we'll see if they warrant a further beta release or not.
We should be on track to do the full 4.0 release in the next 2 weeks.