🎉 Node-RED 1.0.0-beta.3 released

We have published the next public beta of Node-RED 1.0.

This beta contains all of the remaining major features for 1.0. From this point on we'll be focussed primarily on bug fixes only.

Asynchronous message passing

As I wrote on the blog last week, this release changes the message passing between nodes to be asynchronous rather than synchronous. If you have haven't read that blog post, please do.

This change introduces a new API that nodes can use to indicate when they have finished handling a message. Along with that is a new node in the palette called the 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. This will only work for nodes that are updated to the new API and we'll be sharing more details in the near future.

Removed Nodes

We have removed some nodes from the default palette.

The Twitter, Email, Feedparser and Pi GPIO nodes are no longer installed as dependencies of the node-red module. They have all been in their own npm modules for a long time, but you will need to explicitly add them back if you are using them.

Reorganised palette

We've also reorganised the palette to give what we believe is a better order to the nodes.

The categories are now:

  • common - the basic building block nodes: Inject, Debug, Catch, Status, Links, Comment.
  • function - the main function nodes: Function, Switch, Change, Template, Exec, Delay, Trigger, Range
  • network - nodes that do things over the network. This means the HTTP In and HTTP Response node are now sat next to each other and not split across different categories - likewise the MQTT, TCP and UDP nodes.
  • sequence - the nodes for working with message sequences: Split, Join, Sort and Batch.
  • parser - the nodes for working with particular data formats: CSV, HTML, JSON, XML and YAML.

Subflow Instance property UI

In 0.20 we added the ability for a Subflow Template to define a set of environment variables and for individual instances of the subflow to override their values.

With this beta, when you define the env vars of a subflow you can also define a custom UI for how the env var should be presented in the instance node.

For example, you may want to have a boolean flag in the subflow to toggle a piece of behaviour per instance. Rather than a free-form text field in the instance node to set the flag you can configure it to show a checkbox.

You can also now customise the colour of a Subflow node.

Editor Features

The editor has a number of new features worth highlighting:

Action List

A lot of the things you can do in the editor are defined as 'actions'. The actions can have keyboard shortcuts assigned in the settings dialog. We provide default shortcuts to lots of the actions, but not all.

This beta introduces the new Action List. This provides a way to browser and trigger any action.

You can open the action list from the View->Action List menu item, or use the shortcut Ctrl-Shift-P

Speaking of keyboard shortcuts, we've added some new defaults.

  • Cmd/Ctrl-Y : redo the last edit that was undone with Cmd/Ctrl-z
  • Cmd/Ctrl-Alt-L : clear the debug sidebar of messages
  • Cmd/Ctrl-d : Deploy your flows

Visual JSON Editor

The JSON editor now provides a visual mode where you edit JSON without worrying about getting all the quotes in the right place.

New wiring tricks

In 0.20, Ctrl-clicking in the workspace opens the quick-add dialog. Now, if you ctrl-click on a wire the quick-add dialog is shown and whatever you add will be spliced into the wire you clicked on.

More search results

The search dialog (Ctrl-f) only ever returned the first 25 results. This was a problem for some users when using it to browse their hundreds of tabs. The dialog can now show all of the results - albeit 25 at a time.

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 0.20.x.

So on a Pi you'd do:

sudo npm install -g --unsafe-perm node-red@next

Reporting problems

If you hit any problems, please report them either as a reply on this topic, or in the #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

We're very close to releasing 1.0. There are a small handful of items to resolve and no doubt you will all have some feedback for us on the changes in this beta.

But our focus now shifts to a lot of the non-code related material we need to have in place for the release. Documentation, website updates, videos and so on.

31 Likes

Woohoo! Congrats a great milestone for your team.

Great work.
What sort of deploy does Cmd/Ctrl-d do? The type already selected for the button?

Exactly that.

And with the new Action List, you may notice there are actions defined to set the different deploy types:

Which you could bind shortcuts to in the settings dialog.

What more could one possibly want out of life?

8 Likes

The Time & Motion Police will be really pleased with the new wiring tricks! Combined with the previous v0.2 additions it is really quick now to sketch out a flow :point_up_2:

Just noticed a very minor issue in the Subflow properties editor - the language box seems too small, and the text is cut off.
(Same result on Chrome, Firefox & Edge displayed on Windows 10)

template

Edit - that was supposed to be a thumbs up smiley, not a ... well never mind.

Holy balls... This is going to make handing instances over to maintainers so much nicer...

1 Like

You might need to prevent this from happening with the wire join concept :slight_smile:
image

1 Like

ooops - it's only supposed to show nodes with both an in and out...

1 Like

I thought for a minute there was an output pin on the debug node (to permit inline debug). Shame.

Ps, fabulous news on the V1 imminent release. So much work put in. :clap::clap::clap:

Can you share the steps you took to do that? When you ctrl-click on a wire it only lists nodes with an input and output - the Debug node doesn't get listed.

It did for me. Ctrl click to add a new inject, then continue with the wire to do the splice, debug shows up at top of my list

Ah - if you are already in quick-join mode when you click the wire. Understood.

1 Like

Good job :slight_smile:

thank you great update
cheers
Neil

:clap::clap::clap::clap::clap::clap::clap::clap::clap::clap:
Great work.
Thank you.

@knolleary Great job! Node-RED is not only an awesome tool, but it is fun to use! Thank you for everything!

2 Likes

Hi how can i update my windows run to the new version

i was trying
npm install -g --unsafe-perm node-red
i also update NPM still this is the version getting installed

node-pre-gyp WARN Using request for node-pre-gyp https download
[bcrypt] Success: "C:\Users\GadOf\AppData\Roaming\npm\node_modules\node-red\node_modules\bcrypt\lib\binding\bcrypt_lib.node" is installed via remote
+ node-red@0.20.7
added 13 packages from 9 contributors, removed 6 packages and updated 62 packages in 32.804s

C:\Users\GadOf>node-red

@aihysp please re-read the section of the post above that explains how to install the beta. It gives the command to run and you are not running it.

1 Like

A little style issue with color selector.
Chrome, Version 76.0.3809.100 Windows 10
image

By haven't looked this tab for a while, don't really know is it related to latest beta.