# 🎉 Node-RED 3.0.0-beta.1 released

**URL:** <https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124>\
**Category:** News\
**Created:** [3 May 2022 13:35 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124 "2022-05-03T13:35:27Z")\
**Posts on this page:** 20\
**Page:** 2

<div class="post-metadata">

**Author:** ![dceejay](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/dceejay/32/38_2.png) [@dceejay](https://discourse.nodered.org/u/dceejay)\
**Post date:** [4 May 2022 07:38 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/21 "2022-05-04T07:38:35Z")

</div>

That ^^^ should work...

---

<div class="post-metadata">

**Author:** ![krambriw](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/krambriw/32/5429_2.png) [@krambriw](https://discourse.nodered.org/u/krambriw)\
**Post date:** [4 May 2022 07:43 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/22 "2022-05-04T07:43:52Z")

</div>

So nicely it worked!!! Just seven minutes on a RPi4 with a lot of stuff in the flows

![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/2/4/2485845b59dcc0e4488f2f5e8d02de34cac4791d.png)

Besides, the new feature for Link calls, how good is that!!!, Thanks, Steve!!

```auto
Link Call: Display link targets of nodes in a regular flow, for Link Call nodes inside a subflow (#3528) @Steve-Mcl

```

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

---

<div class="post-metadata">

**Author:** ![Steve-Mcl](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/steve-mcl/32/4826_2.png) [@Steve-Mcl](https://discourse.nodered.org/u/Steve-Mcl)\
**Post date:** [4 May 2022 07:46 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/23 "2022-05-04T07:46:17Z")

</div>

Sorry guys, I missed this one (my bad 😳)...

[Flow edit pane missing tab (cannot rename a flow tab)](https://github.com/node-red/node-red/issues/3577)

---

<div class="post-metadata">

**Author:** ![dynamicdave](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/dynamicdave/32/96_2.png) [@dynamicdave](https://discourse.nodered.org/u/dynamicdave)\
**Post date:** [4 May 2022 08:48 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/24 "2022-05-04T08:48:15Z")

</div>

Like @krambriw , I've just up upgraded one of my RPi-4B to NR 3.0.0-beta.1  
Worked fine and took just over 4-mins.

 ![Screen Shot 05-04-22 at 09.43 AM](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/5/f/5f6cc84945d763548e6fa21a4725531e12457ee1.png)  
I used the command line command as given by @Steve-Mcl above.

---

<div class="post-metadata">

**Author:** ![Barbudor](https://avatars.discourse-cdn.com/v4/letter/b/4af34b/32.png) [@Barbudor](https://discourse.nodered.org/u/Barbudor)\
**Post date:** [4 May 2022 09:43 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/25 "2022-05-04T09:43:31Z")

</div>

Great news, nice new features.

Any breaking news around Projects ?  
I started to use that feature recently and I love it and they are a few things that I would believe make this great feature into an awesome one:

1. It would make a lot of sense to integrate an equivalent of "node-red-contrib-flow-manager" inside Projects. Having the ability to stage/commit per flows & subflows makes a lot of sense for development management: ability to revert commits, merge commits across branches, ....
2. Automatic install of dependencies (unless I've missed a way of doing it)  
Happy to open a topic about it if you'd like

Thanks for the great work

---

<div class="post-metadata">

**Author:** ![Sean-McG](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/sean-mcg/32/54677_2.png) [@Sean-McG](https://discourse.nodered.org/u/Sean-McG)\
**Post date:** [4 May 2022 12:21 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/26 "2022-05-04T12:21:27Z")

</div>

@Steve-Mcl If you are taking requests 🤪

> [@FR: Sort Group selection drop down list](https://discourse.nodered.org/t/fr-sort-group-selection-drop-down-list/56978):
>
> Not sure if this has been mentioned, I couldn't see anything. But it cannot just be me that finds this a pain? As my project has grown this list is getting longer and longer. If I add a new group then I know I can find it at the bottom of the list. But often I'm changing existing groups to add another button etc. So I have to scroll all the list up and down to find the correct group.

---

<div class="post-metadata">

**Author:** ![jbudd](https://avatars.discourse-cdn.com/v4/letter/j/5f8ce5/32.png) [@jbudd](https://discourse.nodered.org/u/jbudd)\
**Post date:** [4 May 2022 13:13 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/27 "2022-05-04T13:13:15Z")

</div>

If I click and drag I can select two nodes and move or delete them together.  
If I ctrl-click on two nodes they are both selected and I can move or delete them together.

If I click and drag I can select two junctions and move or delete them together.  
If I ctrl-click on two junctions it _draws a wire between them_.

Doesn't seem very consistent?

---

<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 May 2022 13:33 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/28 "2022-05-04T13:33:19Z")

</div>

> [@jbudd](#):
>
> Doesn't seem very consistent?

A Junction acts as both a Node and a Port - so they have a take a bit of behaviour from both things.

Click-Drag on a node moves it  
Click-Drag on a port starts a wire

It felt right that Click-Drag on a junction should move it - (node-behaviour)

But it is also reasonable to expect to be able to create a wire from a Junction - so the question is what interaction makes sense to do that. Given Ctrl-Click-Drag on a port starts a wire, that felt to be the option to chose rather than invent yet another combination for users to learn.

If you have a suggestion for how else that could be achieved, we'd welcome the feedback

---

<div class="post-metadata">

**Author:** ![jbudd](https://avatars.discourse-cdn.com/v4/letter/j/5f8ce5/32.png) [@jbudd](https://discourse.nodered.org/u/jbudd)\
**Post date:** [4 May 2022 13:47 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/29 "2022-05-04T13:47:35Z")

</div>

Yes, thinking about that...

Another issue with junctions:

You can draw a wire from a junction to a node, deploy and data flows along the wire (top of pic).  
But if you draw a wire from the node to the junction and deploy, data does not flow down the wire (bottom of pic).

 ![Untitled 11](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/e/8/e87c338cbafd8937db6fbfb02ed77fbd68bae072.jpeg)

---

<div class="post-metadata">

**Author:** ![Steve-Mcl](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/steve-mcl/32/4826_2.png) [@Steve-Mcl](https://discourse.nodered.org/u/Steve-Mcl)\
**Post date:** [4 May 2022 14:00 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/30 "2022-05-04T14:00:02Z")

</div>

> [@jbudd](#):
>
> But if you draw a wire from the node to the junction and deploy, data does not flow down the wire (bottom of pic).

This is a known situation...

> <https://github.com/node-red/node-red/issues/3506>
>
> \### Current Behavior
> 
> \* Possible to wire odd arrangement where no \`msg\` gets thr…ough (DEMO 1)
> 
> \* Deleting a "good wire" then replacing it causes odd wiring and \`msg\` does not make it through the flow. (DEMO 2)
> 
> \### Expected Behavior
> 
> Prevent joining if not valid
> 
> 
> \### Steps To Reproduce
> 
> Import (or replicate) the flows below.
> 
> \### Example flow
> 
> \#### Demo 1...
> !\[chrome\_sylyI0UtiN\](https://user-images.githubusercontent.com/44235289/159871706-9bf10689-81ef-4516-8c11-23d9d3f5e82d.gif)
> 
> \`\`\`
> \[{"id":"83a067d8d7767cf5","type":"inject","z":"a8f2fd5e9bb60bcf","name":"","props":\[{"p":"payload"},{"p":"topic","vt":"str"}\],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"fred","payloadType":"str","x":1330,"y":380,"wires":\[\["9a0438fb36dbd9ea"\]\]},{"id":"a1dc381d92309c80","type":"debug","z":"a8f2fd5e9bb60bcf","name":"debug 1","active":true,"tosidebar":true,"console":false,"tostatus":true,"complete":"payload","targetType":"msg","statusVal":"\\"fred \\" & payload","statusType":"jsonata","x":1300,"y":440,"wires":\[\]},{"id":"7fbe3faf3bb4e7f8","type":"junction","z":"a8f2fd5e9bb60bcf","x":1160,"y":440,"wires":\[\["a1dc381d92309c80"\]\]},{"id":"d50f402dffed4939","type":"junction","z":"a8f2fd5e9bb60bcf","x":1460,"y":380,"wires":\[\["7fbe3faf3bb4e7f8","9a0438fb36dbd9ea"\]\]},{"id":"9a0438fb36dbd9ea","type":"junction","z":"a8f2fd5e9bb60bcf","x":1520,"y":500,"wires":\[\[\]\]}\]
> \`\`\`
> 
> \#### Demo 2
> !\[chrome\_G6RuClVmuJ\](https://user-images.githubusercontent.com/44235289/159872397-356921c0-8612-450a-bb1e-02cacfb00a90.gif)
> 
> \`\`\`
> \[{"id":"c002f56b02ae7c32","type":"debug","z":"a8f2fd5e9bb60bcf","name":"debug 2","active":true,"tosidebar":true,"console":false,"tostatus":false,"complete":"false","statusVal":"","statusType":"auto","x":1347.999997317791,"y":159.99999886751175,"wires":\[\]},{"id":"a32c97b613303016","type":"inject","z":"a8f2fd5e9bb60bcf","name":"","props":\[{"p":"payload"},{"p":"topic","vt":"str"}\],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":1340,"y":100,"wires":\[\["5b0dff4c80021945"\]\]},{"id":"d6b44c2c93c77454","type":"junction","z":"a8f2fd5e9bb60bcf","x":1480,"y":180,"wires":\[\["ad382084c106decc"\]\]},{"id":"5d4b29c28d9152d9","type":"junction","z":"a8f2fd5e9bb60bcf","x":1520,"y":160,"wires":\[\["d6b44c2c93c77454"\]\]},{"id":"ad382084c106decc","type":"junction","z":"a8f2fd5e9bb60bcf","x":1420,"y":260,"wires":\[\[\]\]},{"id":"bf134fcd2c0ea7ba","type":"junction","z":"a8f2fd5e9bb60bcf","x":1260,"y":260,"wires":\[\["f10bdcd36f35efd7","ad382084c106decc"\]\]},{"id":"f10bdcd36f35efd7","type":"junction","z":"a8f2fd5e9bb60bcf","x":1227.999997317791,"y":159.99999886751175,"wires":\[\["c002f56b02ae7c32"\]\]},{"id":"5b0dff4c80021945","type":"junction","z":"a8f2fd5e9bb60bcf","x":1480,"y":100,"wires":\[\["5d4b29c28d9152d9"\]\]}\]
> \`\`\`
> 
> \### Environment
> 
> \- Node-RED version: 2.2.2 on \`dev\` branch 
> \- Node.js version: 16
> \- npm version: NA
> \- Platform/OS: Windows 11
> \- Browser: Chrome 99.0.4844.74

EDIT  
Looking at this again, this might be slightly different to the linked issue 🤔 @knolleary ?

- Create a 1 to many flow
- Wire backwards from input to junction
- deploy - no msg (as expected)
- Export and Import (duplicate 1) OR copy & paste (duplicate 2) loses the wire

![chrome_yvQpujVMeT](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/4/b/4b10c4d73b781a4506f127b1914bb86f774af8c6.gif)

@jbudd thanks for the feedback

* * *

Edit 2 @jbudd sorry, i didn't notice your follow up post. I see the same issue.

---

<div class="post-metadata">

**Author:** ![jbudd](https://avatars.discourse-cdn.com/v4/letter/j/5f8ce5/32.png) [@jbudd](https://discourse.nodered.org/u/jbudd)\
**Post date:** [4 May 2022 14:25 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/31 "2022-05-04T14:25:39Z")

</div>

Thanks Steve. It may well be caused by the same code "feature" but my example does not involve wiring junction to junction, nor deleting a previous wire.

After a bit more poking I'd restate it like this:  
If you wire a node **input port** to a junction, the line is visible in the editor but **not** added to the junction's "wires" array.  
Then if you deploy and reload the page, it (obviously) is not drawn.

---

<div class="post-metadata">

**Author:** ![jbudd](https://avatars.discourse-cdn.com/v4/letter/j/5f8ce5/32.png) [@jbudd](https://discourse.nodered.org/u/jbudd)\
**Post date:** [4 May 2022 18:07 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/32 "2022-05-04T18:07:58Z")

</div>

Going back to click-drag action on a junction:  
As you say, click-drag on a port starts a wire.  
A junction _looks_ similar to a port so I would expect click-drag to act the same.

But since it does not, you get situations like this:  
You can highlight a wire and shift-click-drag to move it from a port to a junction.  
But highlight it again and shift-click-drag moves linked nodes on one side or the other rather than moving the wire.  
 ![Animation](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/3/0/307e87d07e731e95a6f8691ff1071fef2fb48756.gif)

The only solution I can think of is to draw the junction similar to a do-nothing function with a body and ports.  
 ![Untitled 15](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/a/0/a04e403b37e29f362190be88f7da975fc3592c6d.jpeg)

I'm sure the design conscious developers will veto this though.

---

<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 May 2022 18:22 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/33 "2022-05-04T18:22:40Z")

</div>

> [@jbudd](#):
>
> The only solution I can think of is to draw the junction similar to a do-nothing function with a body and ports.  
> ![Untitled 15](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/a/0/a04e403b37e29f362190be88f7da975fc3592c6d.jpeg)
> 
> I'm sure the design conscious developers will veto this though.

Indeed. If that was the approach we took, we wouldn't have bothered with the feature at all because thats what you already have with noop nodes.

The goal here is to have a more discrete way to route the wires without the visual clutter of a whole node.

---

<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 May 2022 19:40 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/34 "2022-05-04T19:40:55Z")

</div>

It's a new concept and I'm sure it'll go thru a few iterations before it all works out

We've all wanted this for so long that I, for one, am well prepared to spend some time working out what a good UI for it is 🙂

---

<div class="post-metadata">

**Author:** ![Steve-Mcl](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/steve-mcl/32/4826_2.png) [@Steve-Mcl](https://discourse.nodered.org/u/Steve-Mcl)\
**Post date:** [5 May 2022 06:54 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/35 "2022-05-05T06:54:40Z")

</div>

> [@softy2k](#):
>
> been waiting for more than half a year... an still nothing new about the possibility of **limiting the search only for the current flow**

I felt guilty & spared some play time to fit this in...

> <https://github.com/node-red/node-red/pull/3590>
>
> fixes #3419
> 
> \## Types of changes
> 
> \- \[\] Bugfix (non-breaking change which fi…xes an issue)
> \- \[x\] New feature (non-breaking change which adds functionality)
> 
> \## Proposed changes
> 
> Allow user to search current flow via the filter \`is:thisflow\`
> 
> \## Checklist
> \- \[x\] I have read the \[contribution guidelines\](https://github.com/node-red/node-red/blob/master/CONTRIBUTING.md)
> \- \[x\] For non-bugfix PRs, I have discussed this change on the forum/slack team.
> \- \[x\] I have run \`grunt\` to verify the unit tests pass
> \- \[\] I have added suitable unit tests to cover the new/changed functionality

Not guaranteed to be in final v3 since beta is out but its there waiting in the wings.

---

<div class="post-metadata">

**Author:** ![softy2k](https://sea2.discourse-cdn.com/flex026/user_avatar/discourse.nodered.org/softy2k/32/23707_2.png) [@softy2k](https://discourse.nodered.org/u/softy2k)\
**Post date:** [5 May 2022 06:57 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/36 "2022-05-05T06:57:16Z")

</div>

Either way, it's a big step forward.  
Thanks, Steve

---

<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:** [5 May 2022 10:27 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/37 "2022-05-05T10:27:22Z")

</div>

OK - updated my working instance on a Pi4 - lets see what I can do with the new junction nodes instead of present way with null function nodes

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

[Edit] Modified flow (took one existing function node out all together but otherwise identical)

 ![image](https://us1.discourse-cdn.com/flex026/uploads/nodered/original/3X/3/2/32f5070bc4e32bec8fed696fb6fdf2da12d8eada.png)

As discussed by others, only being able to add wires to the junction not from it, is a restriction (which I can live with)

Not being able to use shift modifier to move a wire from a junction was more of a restriction I felt

My suggestion would be to make the junction actually two nodes (in and out) next/close to each other

But we'd need an alternate beta being produced to try it out

As usual, had to stop my broswer (Vivaldi) from interpreting the shift-right-click\_and-drag and let NR have it 🙂

---

<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:** [5 May 2022 12:50 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/38 "2022-05-05T12:50:42Z")

</div>

What would be VERY nice would be a method of doing a global search and replace on dummy function/change nodes with junction nodes 🙂

Maybe possible with text editor (or a running a little script) on flows.json???

---

<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:** [5 May 2022 12:56 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/39 "2022-05-05T12:56:41Z")

</div>

Keep in mind this forum post is about the beta - it doesn't replace posting to #development:feature-requests with ideas that could be considered for the future.

---

<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:** [5 May 2022 13:31 UTC](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124/40 "2022-05-05T13:31:07Z")

</div>

> [@knolleary](#):
>
> If that was the approach we took, we wouldn't have bothered with the feature at all because thats what you already have with noop nodes.
> 
> The goal here is to have a more discrete way to route the wires without the visual clutter of a whole node.

Well, having a native way of putting a junction-type node into place is an enhancement in it own right (not having to edit the function node to change it to an icon)

A closely coupled junction node would be less visually cluttering (and allow for finer wire routing) than the current icon sized method.

But as you say, a single junction node would be less cluttering again.

If the editing restrictions on a single junction prove to be insurmountable, then maybe a closely-coupled pair will be needed

[Previous page](https://discourse.nodered.org/t/node-red-3-0-0-beta-1-released/62124.md?page=1)

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