🎉 Node-RED 1.2.2 released

Where is line 30 coming from ? are you using the UI to install or command line ?
(and line 1 and 2 still indicate node 15 and npm 7....)

0 verbose cli [
0 verbose cli   '/usr/local/bin/node',
0 verbose cli   '/usr/local/bin/npm',
0 verbose cli   'i',
0 verbose cli   'node-red-contrib-s7comm'
0 verbose cli ]
1 info using npm@7.0.2
2 info using node@v15.0.0
3 timing config:load:defaults Completed in 2ms
4 timing config:load:file:/usr/local/lib/node_modules/npm/npmrc Completed in 1ms
5 timing config:load:builtin Completed in 1ms
6 timing config:load:cli Completed in 1ms
7 timing config:load:env Completed in 0ms
8 timing config:load:file:/mnt/dietpi_userdata/node-red/.npmrc Completed in 0ms
9 timing config:load:project Completed in 1ms
10 timing config:load:file:/root/.npmrc Completed in 0ms
11 timing config:load:user Completed in 0ms
12 timing config:load:file:/usr/local/etc/npmrc Completed in 0ms
13 timing config:load:global Completed in 0ms
14 timing config:load:cafile Completed in 0ms
15 timing config:load:validate Completed in 0ms
16 timing config:load:setUserAgent Completed in 0ms
17 timing config:load:setEnvs Completed in 1ms
18 timing config:load Completed in 7ms
19 verbose npm-session 4ba634e3b2363290
20 timing npm:load Completed in 19ms
21 timing arborist:ctor Completed in 1ms
22 timing arborist:ctor Completed in 1ms
23 timing idealTree:init Completed in 302ms
24 timing idealTree:userRequests Completed in 1ms
25 silly idealTree buildDeps
26 timing idealTree Completed in 305ms
27 timing command:install Completed in 310ms
28 verbose stack Error: Invalid tag name ""~"2.23.4": Tags may not have any characters that encodeURIComponent encodes.
28 verbose stack     at invalidTagName (/usr/local/lib/node_modules/npm/node_modules/npm-package-arg/npa.js:91:15)
28 verbose stack     at fromRegistry (/usr/local/lib/node_modules/npm/node_modules/npm-package-arg/npa.js:296:13)
28 verbose stack     at Function.resolve (/usr/local/lib/node_modules/npm/node_modules/npm-package-arg/npa.js:81:12)
28 verbose stack     at Arborist.[nodeFromEdge] (/usr/local/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:798:22)
28 verbose stack     at Arborist.[buildDepStep] (/usr/local/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:760:36)
28 verbose stack     at Arborist.[buildDeps] (/usr/local/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:618:31)
28 verbose stack     at Arborist.buildIdealTree (/usr/local/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/build-ideal-tree.js:202:29)
28 verbose stack     at async Promise.all (index 1)
28 verbose stack     at async Arborist.reify (/usr/local/lib/node_modules/npm/node_modules/@npmcli/arborist/lib/arborist/reify.js:121:5)
28 verbose stack     at async install (/usr/local/lib/node_modules/npm/lib/install.js:40:5)
29 verbose cwd /mnt/dietpi_userdata/node-red
30 verbose Linux 4.19.0-12-amd64
31 verbose argv "/usr/local/bin/node" "/usr/local/bin/npm" "i" "node-red-contrib-s7comm"
32 verbose node v15.0.0
33 verbose npm  v7.0.2
34 error code EINVALIDTAGNAME
35 error Invalid tag name ""~"2.23.4": Tags may not have any characters that encodeURIComponent encodes.
36 verbose exit 1

Sorry i wrong to copy log,

Yes i have reinstalled v15 and v7 to retry this issue... with version v12 work fine..

Hi @mspacca

this is definitely due to a change made in npm 7.

What other modules have you got installed for node-red-dashboard?

For hotly debated reasons, they have chosen that npm 7 will now start to automatically install peerDependencies - where they were previously ignored. This is going to cause endless problems for modules in our ecosystem.

My theory is you have a module installed that lists node-red-dashboard as a peerDependency, but its version string is not valid. This is ignored by npm <7, but now npm 7 will complain.

well the version string should be fine as the peer-dependency will want to be able to express greater than a certain level of peer etc... but yes - is broken as-is.

What is odd here is that the peer dep looks like the dashboard 2.23.4 which is very new to be a dependency of any other node... so it must be coming from either the generated local package.json or package-lock.json.

With free new installation, if i install node-red-contrib-s7 for first it work, and all other modules installed before have this issue.
In this case i have installed first node-red-dashboard and all other modules make this issue.

I will use v12.19.0 for now...

Thanks

If you still have the 15 version... can you share the package.json it creates in that dir ?
and ideally the package-lock.json

package.json

{
    "name": "node-red-project",
    "description": "A Node-RED Project",
    "version": "0.0.1",
    "private": true,
    "dependencies": {
        "node-red-contrib-influxdb": "~0.4.1",
        "node-red-contrib-s7": "~2.2.1",
        "node-red-dashboard": "\"~\"2.23.4"
    }
}

First package installed node-red-dashboard with v15, all other with v12.
then
reinstalled v15 then, from this moment I can't install any packages with v15

yeah - edit that package.json to have just "~2.23.4" instead of those extra slashes and quotes

package.json

{
    "name": "node-red-project",
    "description": "A Node-RED Project",
    "version": "0.0.1",
    "private": true,
    "dependencies": {
        "node-red-contrib-influxdb": "~0.4.1",
        "node-red-contrib-s7": "~2.2.1",
        "node-red-contrib-s7comm": "\"~\"1.1.6",
        "node-red-dashboard": "~2.23.4"
    }
}

to try i use v15 now.

it work for the first package installed node-red-contrib-s7comm installed correctly, but in package.json it will add always "\"~\ before version. i have tried to install another package and will not work.

Ok, found problem... Thanks, i will continue use v12 for now ... or I will fix the file every time before installing a package.

Thanks a lot

Side note, I did notice that upgrading to 1.2.2 broke the restart persistence on the node-red-contrib-stoptimer-varidelay node (at least for me). Rolling back to 1.1.3 fixed it. I run my instances in docker containers, in case it matters.

I submitted an issue to the author, but thought I would mention it here as it certainly seems 1.2.x related since the only thing I did to make it work again was roll back to 1.1.3.

EDIT: Put the container back to 1.2.2 and confirmed that the node does not continue after restart, as mentioned. Rolled back to 1.1.3 and it is working as expected again after a NR restart. Definitely seems NR 1.2.x related...

I've faced this issue multiple times;

Restarting node red and all of my flows have disappeared.

It's quite tragic after you've put in a couple of hours of work.

Hope there's a fix for it

@liiontamer without more information its going to be hard to help.

How are you running Node-RED? How do you upgrade? What does the startup log say about the location of your flows file?

Hi Nick,

Thanks for your response.

Running it on my laptop - accessing via localhost. This isn't related to an upgrade however just in general, sometimes if I restart the instance; I login to find my flows missing. It's happened 3 or 4 times in the past 2 months since I've started using Node-RED again. Startup log doesn't mention anything right now but everything's working at the moment.

I want to use Node-RED in commercial environments but not sure if my clients may restart their systems and find that the flows are gone

That certainly should not happen unless something has changed on your system. Does it recover by itself or do you have to restore the flows from your backup?

As Nick asked, start node-red in a terminal and post the log here as that may give us a clue. When pasting the text in then use the </> button at the top of the forum text entry window and paste the log in.

Actually, since this isn't about an upgrade or about the new release of node-red it would be better to start a new thread for your issue. Please post the additional information there. Thanks.

By default it uses the hostname as part of the flow file name. If that changes then it will pick up a different flow.

You can fix the flow file name in your settings.js file so it won't be affected.

I think that Nick is the only full-time Node-RED (core) developer. Some folk here use it professionally though. The rest of us vary in our day-jobs and, like Batman, inhabit the forum at night :rofl:

1 Like

Thanks for your support.

I've just created a new topic "Node-RED Flows Disappearing"

I've also posted the startup log over there

Thanks in advance

This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.