A few days ago I used Dave's script to update node-red and ensure all nodes are locally installed. All nodes were then updated in the pallette manager.
Today it seems i have an update to the email node available - to 1.01 - ans I'm getting the response back from the pallette manager that the node update failed as it is not locally installed.
It alwas helps to read the nodes install notes - note the last line....
Install
Version 0.x of this node is usually installed by default by Node-RED. To install version 1.x you need to uninstall the existing version.
sudo npm uninstall -g node-red-node-email
Then run the following command in your Node-RED user directory - typically ~/.node-red
npm i node-red-node-email
Note : this installs the new version locally rather than globally. This can then be managed by the palette manager.
It didn't work for me, I had additionally to remove the folder manually:
sudo rm -r /usr/lib/node_modules/node-red/node_modules/node-red-node-email
where my npm root is:
npm root -g
/usr/lib/node_modules
Thanks for that guys - I wonder how many other well used modules act like this. To add to that, the install is fine but worth noting the warnings: mailparser 0.6.2 - versions older than 2.3 are deprecated... so why is an ancient version used in the latest email update? Mimelib 0.3.1 is unmaintained. That's not too cheerful. I hand-removed that directory as well and all is working as it should. Update done.
A) because it still works and b) because no one has had time to do due dilligenence on what breaks if/when you update it.
Volunteers and a pull request gratefully received
Ok, I’ll have a go assuming I can find updates.
1 Like
Ah I recall now - for a period they went all wobbly with the license - https://nodemailer.com/about/license/ - and we didn't want to touch it... And while he reverted the nodemailer one to MIT he hasn't done so yet for mailparser... While it may be ok to use for commercial use, we haven't had a chance to dig into any implications for us touching it, so have left it as was.
actually may be worth looking at the mailparser-mit library instead, should just be a drop in.