You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 7-8.RSVP
Socket
Socket
Sign inDemoInstall

@node-red/registry

Package Overview
Dependencies
Maintainers
2
Versions
107
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

Comparing version 2.0.6 to 2.1.0-beta.1

67

lib/installer.js

@@ -43,2 +43,7 @@ /**

let updateAllowed = true;
let updateAllowList = ['*'];
let updateDenyList = [];
let updateAllAllowed = true;
function init(_settings) {

@@ -48,3 +53,15 @@ settings = _settings;

// Should it *all* be managed by util?
installAllowList = ['*'];
installDenyList = [];
installAllAllowed = true;
installVersionRestricted = false;
updateAllowed = true;
updateAllowList = ['*'];
updateDenyList = [];
updateAllAllowed = true;
if (settings.externalModules && settings.externalModules.palette) {
if (settings.externalModules.palette.allowList || settings.externalModules.palette.denyList) {

@@ -54,2 +71,12 @@ installAllowList = settings.externalModules.palette.allowList;

}
if (settings.externalModules.palette.hasOwnProperty('allowUpdate')) {
updateAllowed = !!settings.externalModules.palette.allowUpdate;
}
if (settings.externalModules.palette.allowUpdateList || settings.externalModules.palette.denyUpdateList) {
updateAllowList = settings.externalModules.palette.allowUpdateList;
updateDenyList = settings.externalModules.palette.denyUpdateList;
}
}

@@ -70,2 +97,6 @@ installAllowList = registryUtil.parseModuleList(installAllowList);

}
updateAllowList = registryUtil.parseModuleList(updateAllowList);
updateDenyList = registryUtil.parseModuleList(updateDenyList);
updateAllAllowed = updateAllowed ? updateDenyList.length === 0 : false;
}

@@ -168,2 +199,11 @@

if (isUpgrade && !updateAllAllowed) {
// Check this module is allowed to be upgraded...
if (!updateAllowed || !registryUtil.checkModuleAllowed(module,null,updateAllowList,updateDenyList)) {
const e = new Error("Update not allowed");
e.code = "update_not_allowed";
throw e;
}
}
if (!isUpgrade) {

@@ -267,12 +307,25 @@ log.info(log._("server.install.installing",{name: module,version: version||"latest"}));

if (info.nodes.length > 0) {
log.info(log._("server.added-types"));
const installedTypes = [];
const errorSets = [];
for (var i=0;i<info.nodes.length;i++) {
for (var j=0;j<info.nodes[i].types.length;j++) {
log.info(" - "+
(info.nodes[i].module?info.nodes[i].module+":":"")+
info.nodes[i].types[j]+
(info.nodes[i].err?" : "+info.nodes[i].err:"")
);
const typeCount = info.nodes[i].types.length;
if (typeCount > 0) {
for (var j=0;j<typeCount;j++) {
installedTypes.push(" - "+
(info.nodes[i].module?info.nodes[i].module+":":"")+
info.nodes[i].types[j]+
(info.nodes[i].err?" : "+info.nodes[i].err:"")
);
}
} else if (info.nodes[i].err) {
errorSets.push(`[${info.nodes[i].id}] ${info.nodes[i].err}`)
}
}
if (errorSets.length > 0) {
errorSets.forEach(l => log.warn(l))
}
if (installedTypes.length > 0) {
log.info(log._("server.added-types"));
installedTypes.forEach(l => log.info(l))
}
}

@@ -279,0 +332,0 @@ return info;

4

lib/library.js

@@ -17,3 +17,3 @@ /**

var fs = require('fs-extra');
var fs = require('fs');
var fspath = require('path');

@@ -29,3 +29,3 @@

var validFiles = [];
return fs.readdir(path).then(files => {
return fs.promises.readdir(path).then(files => {
var promises = [];

@@ -32,0 +32,0 @@ if (files) {

@@ -153,2 +153,2 @@ const registry = require("./registry");

exportPluginSettings
}
}
{
"name": "@node-red/registry",
"version": "2.0.6",
"version": "2.1.0-beta.1",
"license": "Apache-2.0",

@@ -19,3 +19,3 @@ "main": "./lib/index.js",

"dependencies": {
"@node-red/util": "2.0.6",
"@node-red/util": "2.1.0-beta.1",
"clone": "2.1.2",

@@ -25,4 +25,4 @@ "fs-extra": "10.0.0",

"tar": "6.1.11",
"uglify-js": "3.14.1"
"uglify-js": "3.14.2"
}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc