Global context variables do not display in the Context Sidebar

Of course I do. As does everyone else - https://github.com/node-red/node-red/blob/master/red/runtime/nodes/context/index.js

As I've said many many times, I cannot explain this behaviour. I'm sorry about that. I've already spent a lot of time trying to figure this out, and no doubt I'll end up spending more time on it. But right now, I don't have an answer for you.

That's just a warning. You don't need git if projects are not active. You will need to copy your flow to the right place of course, maybe your credentials file too.

Nick,
I realize that it's taken way too much time. Thank you for looking into it and trying to resolve it. I'll just apply the Windows uninstall/reinstall debug technique. Sometimes upgrades cause embedded gremlins that just multiply. Especially with the Windows OS. :exploding_head:

Disabled Projects. Restarted NR, loaded new browser page... Same results. :sob:

Drat. Worth a try. Well, you are now down to adding your own debugging to NR as Nick has intimated. Using the VScode debugger is also possible and might help though it takes a while to get your head around it.

TotallyInformation,
can you elaborate on the VScode Debugger?

Thanks.

Sure :smile:

There are also some other blog poss and YouTube videos on the subject.

Ahh VScode Debugger... VS = Visual Studio.. I should have known that. Thanks for the Link.

Closing the topic!.. Installed 0.20.0-beta.5. I'm not sure which version from Beta 4 or 5 fixed this issue, but it now is working! This is so nice to get this feature working.

Thanks Node-RED team

Okay, so I was preparing a presentation about Node-RED, and I've run across the exact same issue. After reading the really long thread and debugging my instance with VSCode, I've found the culprit, finally.

Issue is with a module called collections, in my case it's a dependency of node-red-contrib-opcua. It sets-up an Array-shim that modifies the behavior of Array.from(), and that can't handle Array.from of a Set, exactly what happens on https://github.com/node-red/node-red/blob/master/packages/node_modules/%40node-red/runtime/lib/nodes/context/index.js#L398

Uninstalling the offending module solves the issue. Why that happens only with the global context remains an open question, but I have to prepare the presentation after all :slight_smile:.

1 Like

Interesting. That's the 2nd time I've come across this node causing this kind of issue.


Last time, it was the dependent package collections. This was overwriting JS's native Array.prototype.find() function with something incompatible. Sounds like this may be a very similar issue.

Needless to say, overwriting native functions is never a good idea.

1 Like

I commented on an issue 6 month ago on node-red-contrib-iiot-opcua....

@biancode fixed it...

"require('collections/map') has to be removed, because it has collisions with node-red"

Perhaps the same issue need to be raised with this other contrib node? Pointing to this issue?

1 Like

So, the original problem is how Node-RED relates to other installs which overwrite it's default condition(s). The only way to find this without a code debugger is to uninstall everything, install Node-RED and start installing and testing until you find the culprit.

Thanks to those who debugged the problem and addressed it. I resolved it by updating past the problem...