Unable to install a new palette

I'm not able to install a new palette. If I try to install one, following error occurs:

2023-03-02T17:44:06.576Z npm install --no-audit --no-update-notifier --no-fund --save --save-prefix=~ --production --engine-strict node-red-contrib-light-scheduler@0.0.18
2023-03-02T17:44:08.117Z [err] npm
2023-03-02T17:44:08.118Z [err] WARN
2023-03-02T17:44:08.118Z [err] config production Use `--omit=dev` instead.
2023-03-02T17:44:10.859Z [err] npm
2023-03-02T17:44:10.859Z [err] ERR! code EBADENGINE
2023-03-02T17:44:10.864Z [err] npm
2023-03-02T17:44:10.865Z [err] ERR! engine Unsupported engine
2023-03-02T17:44:10.865Z [err] npm
2023-03-02T17:44:10.865Z [err] ERR! engine Not compatible with your version of node/npm: node-red-contrib-httpauth@1.0.12
2023-03-02T17:44:10.866Z [err] npm ERR!
2023-03-02T17:44:10.866Z [err] notsup Not compatible with your version of node/npm: node-red-contrib-httpauth@1.0.12
2023-03-02T17:44:10.866Z [err] npm ERR!
2023-03-02T17:44:10.866Z [err] notsup Required: {"node":"^0.12.7"}
2023-03-02T17:44:10.866Z [err] npm ERR!
2023-03-02T17:44:10.866Z [err] notsup Actual: {"npm":"9.3.1","node":"v18.14.0"}
2023-03-02T17:44:10.871Z [err]
2023-03-02T17:44:10.872Z [err] npm
2023-03-02T17:44:10.872Z [err] ERR! A complete log of this run can be found in:
2023-03-02T17:44:10.872Z [err] npm ERR! /home/pi/.npm/_logs/2023-03-02T17_44_08_034Z-ebug-0.log

node-red-contrib-httpauth is installed in version 1.0.12 and node red shows this as latest

How can I fix it?

@Apollo13 Welcome to the forum,

When you say I'm not able to install a new palette. do you mean you are trying to install a new node from the 'Manage palette' option in the sidebar?

  1. what version of Node-RED and node.js are you running? (you can get this from the startup log)
  2. what device are you running on and what OS?
  3. are you running with docker or Home Assistant?
  4. have you tried to install any other node? if so what was the result?

That appears to be saying that the package will only run with that very old, and long out of support, version of nodejs. You have version 18, which is current, but it won't work with version 1 or above.

@zenofmud that is what I mean.

Node red is installed on a raspi 4, there is no docker or homeassistend installation on the raspi.

I tried to install a random palette but the result was the same.

Which version do you want to know?

@Colin I interpreted this error message like you. This palette is currently used by other guys to interact with the homeassistend and it works. So I thought that's a problem of my installation

Welcome to the Forum. Since you are new here, I'll dig a bit deeper for you.

Not really. If it works for the "other guys," may be only because they are using seriously out-of-date software.

You can start troubleshooting this sort of thing by looking at the flows library page for the node. (Check the navigation bar at the top of this page.) You should notice right away that the node has not been updated in almost eight years. This might well be a record and almost guarantees that some later version of node.js or NodeRED will break it. If you follow the link to the GitHub repo, you will find open issues going back almost to the beginning, including one identical to yours involving NR version 2.0. The workaround proposed there (editing the package.json file) could allow the node to load, but I would very surprised if it actually works. If not, I'm afraid you're on your own to find an alternative.

I think there may be an npm command line option to tell it to ignore that, but that doesn't mean it will work.

I am running nodejs 18.14.2 and I get the ebadengine message but it appears that it treats it as a warning as the install does complete. You might like to upgrade to 18 to see if it works for you too.
You can do that, and upgrade to the latest node-red, using the install/upgrade script and adding --node18 to the end of the command.

Thanks for your tip. I was running the latest nodejs version so update had no effekt. I solved it by deleting the parameter 'Engine = strict' of the install sequence from the node.
I made a short test and it works :slight_smile:

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