Node-Red 1.0 released today.
Some new features:
Asynchronous message passing
This release changes the message passing between nodes to be always asynchronous rather than it being sometimes asynchronous and sometimes synchronous depending on the implementation of individual nodes.
Node Send API
Nodes now have a new API available for how they handle messages in the runtime. This API allows them to tell the runtime when they have finished with a message.
This will help the runtime to track nodes as they flow through the system – enabling future features such as automatic timeouts of nodes.
To go along with this change, we’ve introduced a new Complete node. This node can be targeted at another node, like the Catch node, and it will be triggered when the targeted node finishes handling a message.
A knock-on effect of the async messaging change is a change to how the Function node clones messages. It used to avoid cloning messages if it could, but this led to hard to detect issues once the async message change was introduced.
So now the Function node will also clone all of the messages you pass to
If you have a flow that depends on the message not being cloned, you’ll need to update your flow to request the runtime not to do the cloning.
Read more information here