# 🎉 Node-RED 1.1.0-beta.1 released

**URL:** <https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761>\
**Category:** News\
**Created:** [4 June 2020 10:38 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761 "2020-06-04T10:38:31Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![knolleary](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/knolleary/32/3_2.png) [@knolleary](https://discourse.nodered.org/u/knolleary)\
**Post date:** [4 June 2020 10:38 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/1 "2020-06-04T10:38:31Z")

</div>

We have just released the first public **beta** release of Node-RED 1.1.0

This beta contains all of the major features for 1.1.0. There are a small number of items still to add before the full release later this month.

As its been 6 months since the 1.0 release, there are quite a lot of new features in this release.

What follows is just some of the main highlights. Be sure to read through the [Change Log](https://github.com/node-red/node-red/blob/c048b1a25b36040f169f443701b9a0dde2f57914/CHANGELOG.md) to see what else is in there.

## Known Issues

The following issues have already been reported:

**Fixed in git**

- Some nodes (eg Dashboard nodes) unexpectedly show a configuration error
- Some configuration nodes incorrectly show a '0' user count in the config node sidebar
- Debug node's status 'automatic' behaviour not working as expected
- Missing tooltips on Outliner buttons
- Cannot re-enable a disabled config node
- Buttons don't work for a node freshly added to a group
- Trigger node - disabling second output doesn't mark workspace dirty
- "Select node" behaviour in Catch/Complete/Status nodes not working as expected on Android
- Function node still creates VM for empty setup/close code
- Duplicate events on node buttons with Android
- Merging flows from the server breaks the view
- `node-red admin` throws error when displaying help. (`node-red-admin@0.2.6` published with fix)
- Edit group dialog throws error on Done for some users

**Not yet fixed**

- Node icons turning blue randomly (think this is due to the latest Chrome changing its default form/focus CSS)

## Editor features

### Information sidebar redesign

The info sidebar now includes a tree-view of your flows - we call it the outliner. This gives another way to navigate your flows and quick find things.

 ![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/8/0/80629bee6e0199b229f5be8effb38f2d193e0dc8.png)

Each node has a button that takes you to it in the workspace, a button to enable/disable it and, in the case of the Inject and Debug nodes, a button to trigger their action. Double-clicking on a node will bring up its edit dialog.

To make room for the outliner, the help section of the sidebar has now moved to its own sidebar tab. The added benefit of putting the help in its own tab is you can now browse all of the available help topics without having to select a node of the right type in the workspace.

It will also give us a space to add other help topics in the editor.

### Grouping nodes

To help organise your flows you can now group your nodes in the editor. The group can have a custom border and background colour and an optional label.

You can even try your hand at [pixel art](https://twitter.com/knolleary/status/1245066477155373057) if you really want.

Groups are added to the flow as a new type of node. As people start using them, it will make it harder to share flows with users who haven't yet upgraded. To help out, we've published [`node-red-node-group`](https://flows.nodered.org/node/node-red-node-group) which registers a `group` node type but does absolutely nothing. Installing this module will allow older versions of Node-RED to import flows that include a group - although they won't see the groups in the editor. And the module knows not to register itself when it isn't needed, so there's no issue upgrading to 1.1 with it installed.

 ![groups-one](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/0/5/051f84b2611763695f285e3715cc68232651c252.gif)

### New actions

The following new actions have been added to the editor. You can searching for them in the Action List (`Ctrl/Cmd-Shift-P` or `View -> Action List`) and you can assign keyboard shortcuts to them.

- `core:show-examples-import-dialog`
- `core:group-selection` - (Ctrl/Cmd-Shift-G)
- `core:ungroup-selection` - (Ctrl/Cmd-Shift-U)
- `core:merge-selection-to-group`
- `core:remove-selection-from-group`
- `core:copy-group-style` - (Ctrl/Cmd-Shift-C)
- `core:paste-group-style` - (Ctrl/Cmd-Shift-V)
- `core:show-help-tab`
- `core:show-selected-node-labels`
- `core:hide-selected-node-labels`
- `core:activate-selected-debug-nodes`
- `core:activate-all-debug-nodes`
- `core:activate-all-flow-debug-nodes`
- `core:deactivate-selected-debug-nodes`
- `core:deactivate-all-debug-nodes`
- `core:deactivate-all-flow-debug-nodes`

## Runtime features

### node-red-admin built-in

The `node-red-admin` command-line tool has existed since the start of the project, but it isn't something widely known about or used. It can be used to remotely administer a Node-RED runtime.

To make it more useful, it is now integrated into the `node-red` command. You run it with:

```auto
node-red admin

```

One of the useful commands it provides is a way to hash passwords suitable for `adminAuth`. It prompts you for the password you want to use and it gives you back the hash you can paste into your settings file.

```auto
$ node-red admin hash-pw
Password:
$2b$08$sjxLvq8MmycyWJpxPLyweuw/WlYt1MX56eG5Q5nlyxJs2fASGm2jm

```

The other commands let you list what nodes are installed, enable/disable them, install new ones or remove old ones. You can also search the flow library.

### Overriding individual settings

The `node-red` command now supports the `-D` option to override individual settings. For example, to temporarily run with a different level of logging you can use:

```auto
node-red -D logging.console.level=trace

```

[Design note](https://github.com/node-red/designs/blob/master/designs/overwrite-settings.md)

### `httpAdminMiddleware` setting

We've had the `httpNodeMiddleware` option for a while now - allowing a custom middleware to be added to the HTTP In node routes. This release adds `httpAdminMiddleware` that does the same thing for all of the admin routes, which includes the editor itself. This can be used, for example, to add custom http headers to all admin requests. Not something most end users need, but has been a requirement from those who embed the editor into their own applications.

### Custom adminAuth token handling

`adminAuth` now supports a custom `tokens` function that can be used to validate any auth token passed to the admin api. This opens up some more flexible options to integrate Node-RED admin security with other authentication systems.

[Design note](https://github.com/node-red/designs/blob/master/designs/admin-api-authentication.md)

### Installing nodes from other locations

The admin api for installing new nodes has been extended to support a 'url' parameter - which should be a full url to a `tgz` containing the node to install.

[Design note](https://github.com/node-red/designs/tree/master/designs/node-installation)

### Refreshing HTTPS certificates

Thanks to @BartButenaers the runtime can now be configured to periodically refresh its https certificates. This feature requires Node.js 12 or later.

The default [settings file has been updated](https://github.com/node-red/node-red/blob/c048b1a25b36040f169f443701b9a0dde2f57914/packages/node_modules/node-red/settings.js#L139-L171) with examples for how to configure this.

## Node updates

### JSONata `$moment` support

We've added support for the Moment date/time library within JSONata expressions via the `$moment` function.

This adds some long needed timezone awareness into the core of Node-RED. For example, you can get the current time in Auckland with the expression:

```auto
$moment().tz("Pacific/Auckland")

```

If you wanted to get the time 2 hours from now, you can do:

```auto
$moment().add(2, "hours")

```

It can also do a much better job of parsing dates:

```auto
$moment($.payload, "YYYY-MM-DD")

```

We're considering making the Moment library available as a default built-in of the Function node as well.

### Inject node properties

The Inject node can now set any properties on the message it sends - you aren't limited to just `topic` and `payload`.

 ![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/5/4/54f3fcf7e05f4670a04b1c17d2d87c41f815c5b4.png)

### Function node lifecycle

The Function node now lets you provide code that should be run when the node is deployed and when it is being stopped. This lets you initialise any state in the node before it starts handling any messages. Note that each piece of code is in a separate scope - you cannot declare variables in one and access them in the others. You need to use `context` to pass things between them.

The main Function has also been made a proper async Function so you can use `await` at the top level, if that's your sort of thing.

![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/b/0/b05e4a7454e6d0855c33b533cb98200975110684.png)

### Debug node status

The Debug node can now set its status message independently of what it passes to the Debug sidebar. Useful if you want to Debug a shorter summary to status, whilst showing more complete information in the sidebar where there is more space.

### Trigger node

The Trigger node can now optionally send its 'second message' on a separate output.

If you want it to handle separate streams of messages, you are no longer tied to using `msg.topic` to identify the streams - you can use any message property.

## Lots more...

Be sure to read through the [Change Log](https://github.com/node-red/node-red/blob/c048b1a25b36040f169f443701b9a0dde2f57914/CHANGELOG.md) 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 1.0.x.

So on a Pi you'd do:

```auto
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

There are a [small number of pull-requests outstanding](https://github.com/node-red/node-red/milestone/14) that should get merged next week. They including adding more example flows to the core nodes, and a few final bits of tidy up.

As it stands, we don't believe any of them would warrant another beta release.

So aside from resolving any feedback this beta generates, we'll be switching gears to get all of the documentation updates ready for the release later this month.

---

<div class="post-metadata">

**Author:** ![Paul-Reed](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/paul-reed/32/66906_2.png) [@Paul-Reed](https://discourse.nodered.org/u/Paul-Reed)\
**Post date:** [4 June 2020 11:02 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/2 "2020-06-04T11:02:33Z")

</div>

Just thinking about the terminology 'group', don't we also use the same word to describe dashboard tab/group?  
Could that be confusing.

---

<div class="post-metadata">

**Author:** ![ghayne](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/ghayne/32/39_2.png) [@ghayne](https://discourse.nodered.org/u/ghayne)\
**Post date:** [4 June 2020 11:11 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/3 "2020-06-04T11:11:28Z")

</div>

Some great additions there, thank you!

---

<div class="post-metadata">

**Author:** ![cymplecy](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/cymplecy/32/2773_2.png) [@cymplecy](https://discourse.nodered.org/u/cymplecy)\
**Post date:** [4 June 2020 11:13 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/4 "2020-06-04T11:13:20Z")

</div>

Minor issue re new status enhancement on Debug node

I'd previously got this arrangement with two debugs = PAYLOAD just for the msg.payload status and ALEXA PHRASE for the full msg object debug

![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/0/7/074af141109bcb454d448b26890cb40f63e6fb4e.png)

I just tried it and the ALEXA PHRASE hasn't shown msg.payload which I thought it would when it defaults to automatic - obviously I can just change it to msg.payload but just feeding this back

![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/7/d/7dc3d86fedcf5eafbf7cc6aae81bc154effcc151.png)

---

<div class="post-metadata">

**Author:** ![ristomatti](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/ristomatti/32/5857_2.png) [@ristomatti](https://discourse.nodered.org/u/ristomatti)\
**Post date:** [4 June 2020 11:51 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/5 "2020-06-04T11:51:12Z")

</div>

There's a lot more useful new features than what I was expecting to be there, amazing work!

---

<div class="post-metadata">

**Author:** ![bakman2](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/bakman2/32/6207_2.png) [@bakman2](https://discourse.nodered.org/u/bakman2)\
**Post date:** [4 June 2020 12:19 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/6 "2020-06-04T12:19:45Z")

</div>

After reloading NR with the new release all my dashboard nodes give an error, changing one of the nodes makes all the red triangles disappear, but in the config tab, all the dashboard tab nodes show up with 0 items, i am affraid to remove the empty ones.

_edit_ - deleting them, deletes the tab and all is gone, doesnt make much sense.

 ![Screenshot 2020-06-04 at 14.19.03](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/e/e/ee22db66623482131ad988bcdb7a8e687f85ec0c.jpeg)

---

<div class="post-metadata">

**Author:** ![juzam](https://avatars.discourse-cdn.com/v4/letter/j/839c29/32.png) [@juzam](https://discourse.nodered.org/u/juzam)\
**Post date:** [4 June 2020 12:37 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/7 "2020-06-04T12:37:32Z")

</div>

I've seen this too. I am on the latest dashboard UI 2.22.1, if I hover on the triagle the message is "invalid properties: - group" : ![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/5/6/56fdfda3bcf02f1943c271872c52548406780b3e.png)

ps: the nodes are working as before even with the error, but when deploying you get the warning about all those nodes.

---

<div class="post-metadata">

**Author:** ![knolleary](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/knolleary/32/3_2.png) [@knolleary](https://discourse.nodered.org/u/knolleary)\
**Post date:** [4 June 2020 12:39 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/8 "2020-06-04T12:39:00Z")

</div>

> [@juzam](#):
>
> I've seen this too.

Is that using the 1.1.0-beta or the current 1.0.x stable release?

---

<div class="post-metadata">

**Author:** ![juzam](https://avatars.discourse-cdn.com/v4/letter/j/839c29/32.png) [@juzam](https://discourse.nodered.org/u/juzam)\
**Post date:** [4 June 2020 12:39 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/9 "2020-06-04T12:39:33Z")

</div>

1.1.0-beta.1 freshly built, the problem is not present when using 1.0.5 stable.

---

<div class="post-metadata">

**Author:** ![bakman2](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/bakman2/32/6207_2.png) [@bakman2](https://discourse.nodered.org/u/bakman2)\
**Post date:** [4 June 2020 12:43 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/10 "2020-06-04T12:43:17Z")

</div>

With the beta, all dashboard tabs show up with 0 nodes in the config tab.  
Even with recreating the tabs, it keeps them at 0 in the config tab (and showing the element twice, one with elements and one with 0)

Just rolled back and all is back in normal state. Is it possible due to duplicate names in group names throughout tabs ?

---

<div class="post-metadata">

**Author:** ![ristomatti](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/ristomatti/32/5857_2.png) [@ristomatti](https://discourse.nodered.org/u/ristomatti)\
**Post date:** [4 June 2020 15:05 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/11 "2020-06-04T15:05:57Z")

</div>

The "Select node" feature doesn't seem to work on Android Chrome. Picking a node highlights it but when pressing "Done", the selected node is not checked. I used "Select node" within complete node settings if it matters. On desktop this work.

I noticed another Android specific issue - everything logged to debug sidebar is printed twice. This didn't happen with 0.20.x at least and I don't think it happened with the latest 1.0.x either. Yet again on desktop this doesn't occur.

---

<div class="post-metadata">

**Author:** ![cinhcet](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/cinhcet/32/438_2.png) [@cinhcet](https://discourse.nodered.org/u/cinhcet)\
**Post date:** [4 June 2020 15:31 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/13 "2020-06-04T15:31:39Z")

</div>

really cool features!!!!  
Having moment in function nodes would also be really great.

About the function node having the setup and closing tab:  
By default, the new VM for the setup code is not created, which is really good 🙂  
However, if I write something in the setup tab and later remove it in the following way:

 ![1](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/f/9/f9e0654464a02bd7bba3479b75b5fcd27b9aa25d.png)  
then the VM is created. Only if one removes also that comment completely, or inserts a "\n" again, like so  
 ![2](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/a/0/a06df7837c2a1327a9a44855ef5701010a3ebf50.png)  
the VM is correctly not executed anymore.

Not really a dealbreaker, but I thought I mention it

---

<div class="post-metadata">

**Author:** ![knolleary](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/knolleary/32/3_2.png) [@knolleary](https://discourse.nodered.org/u/knolleary)\
**Post date:** [4 June 2020 15:34 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/14 "2020-06-04T15:34:26Z")

</div>

> [@cinhcet](#):
>
> Not really a dealbreaker, but I thought I mention it

Ah yes - good spot. We try to be smart by adding that default comment if the box is otherwise blank, but only save anything if it gets edited. So any change to the whitespace will be regarded as a 'change' meaning we believe there to be valid code to run. We should try to be smarter on that.

---

<div class="post-metadata">

**Author:** ![TotallyInformation](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/totallyinformation/32/31_2.png) [@TotallyInformation](https://discourse.nodered.org/u/TotallyInformation)\
**Post date:** [4 June 2020 15:36 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/15 "2020-06-04T15:36:35Z")

</div>

Fantastic work. Well done to everyone who contributed.

> [@knolleary](#):
>
> `node-red admin`

Does that mean that the separately install node-red-admin npm package can be removed?

> [@knolleary](#):
>
> We've added support for the Moment date/time library within JSONata expressions via the `$moment` function.

> [@knolleary](#):
>
> We're considering making the Moment library available as a default built-in of the Function node as well.

Haha, way to go to make my moment node redundant! Truth be told, couldn't happen to a nice node. 🤣

---

<div class="post-metadata">

**Author:** ![knolleary](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/knolleary/32/3_2.png) [@knolleary](https://discourse.nodered.org/u/knolleary)\
**Post date:** [4 June 2020 15:42 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/16 "2020-06-04T15:42:40Z")

</div>

> [@TotallyInformation](#):
>
> Does that mean that the separately install node-red-admin npm package can be removed?

You no longer need to install `node-red-admin` as a separate module if you have `node-red` installed - but just take note of the different command name: `node-red admin xyz` not `node-red-admin xyz`

This is because you cannot have two npm modules provide the same command without leading to errors and warnings from npm when you install the second one.

The separately installable `node-red-admin` module still has a place - if you were wanting to remotely administer a NR instance without having the full `node-red` installed locally.

---

<div class="post-metadata">

**Author:** ![knolleary](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/knolleary/32/3_2.png) [@knolleary](https://discourse.nodered.org/u/knolleary)\
**Post date:** [4 June 2020 16:08 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/17 "2020-06-04T16:08:39Z")

</div>

> [@bakman2](#):
>
> After reloading NR with the new release all my dashboard nodes give an error, changing one of the nodes makes all the red triangles disappear,

> [@bakman2](#):
>
> With the beta, all dashboard tabs show up with 0 nodes in the config tab.

Both fixed in git. May spin a beta.2 as this will be annoying for any dashboard user to put up with.

---

<div class="post-metadata">

**Author:** ![ghayne](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/ghayne/32/39_2.png) [@ghayne](https://discourse.nodered.org/u/ghayne)\
**Post date:** [4 June 2020 16:50 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/18 "2020-06-04T16:50:27Z")

</div>

The edit group dialogue isn't working for me, pressing "Done" doesn't close the dialogue. Colour changes work nevertheless after pressing "Cancel". Label names are not stored either.

---

<div class="post-metadata">

**Author:** ![cymplecy](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/cymplecy/32/2773_2.png) [@cymplecy](https://discourse.nodered.org/u/cymplecy)\
**Post date:** [4 June 2020 16:55 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/19 "2020-06-04T16:55:40Z")

</div>

> [@ghayne](#):
>
> The edit group dialogue isn't working for me, pressing "Done" doesn't close the dialogue

Is working for me NR running on Win10/Chromium Browser on Pi4

[edit]Actually just failed for me now - was OK to start with until I started trying to show the label[/edit]

---

<div class="post-metadata">

**Author:** ![ghayne](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/ghayne/32/39_2.png) [@ghayne](https://discourse.nodered.org/u/ghayne)\
**Post date:** [4 June 2020 17:00 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/20 "2020-06-04T17:00:23Z")

</div>

Chrome Browser on MX Linux:

 ![Peek 2020-06-04 17-56](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/9/0/9065047a8bcfeef3e08be4769c9d74d8829a3c14.gif)

---

<div class="post-metadata">

**Author:** ![cinhcet](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/cinhcet/32/438_2.png) [@cinhcet](https://discourse.nodered.org/u/cinhcet)\
**Post date:** [4 June 2020 17:02 UTC](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761/21 "2020-06-04T17:02:22Z")

</div>

> [@ghayne](#):
>
> The edit group dialogue isn't working for me, pressing "Done" doesn't close the dialogue. Colour changes work nevertheless after pressing "Cancel". Label names are not stored either.

I had this this morning too (firefox) but cannot reproduce it now. But I am 100% certain it happened

[Next page](https://discourse.nodered.org/t/node-red-1-1-0-beta-1-released/27761.md?page=2)
