From f3fc08333053e7ff2280ef0fb882d81a344331ca Mon Sep 17 00:00:00 2001 From: Dave Conway-Jones Date: Thu, 20 Jun 2019 18:14:46 +0100 Subject: [PATCH 01/11] Fix join node reset issue with merging objects and add tests to close #2188 --- .../node_modules/@node-red/nodes/core/logic/17-split.js | 5 +++-- test/nodes/core/logic/17-split_spec.js | 6 ++++++ 2 files changed, 9 insertions(+), 2 deletions(-) diff --git a/packages/node_modules/@node-red/nodes/core/logic/17-split.js b/packages/node_modules/@node-red/nodes/core/logic/17-split.js index fc13f96a9..ec879c253 100644 --- a/packages/node_modules/@node-red/nodes/core/logic/17-split.js +++ b/packages/node_modules/@node-red/nodes/core/logic/17-split.js @@ -572,6 +572,8 @@ module.exports = function(RED) { } } + if (msg.hasOwnProperty("reset")) { if (inflight[partId]) { delete inflight[partId] }; return; } + if ((payloadType === 'object') && (propertyKey === null || propertyKey === undefined || propertyKey === "")) { if (node.mode === "auto") { node.warn("Message missing 'msg.parts.key' property - cannot add to object"); @@ -590,7 +592,6 @@ module.exports = function(RED) { return; } - if (msg.hasOwnProperty("reset")) { if (inflight[partid]) { delete inflight[partId] } return; } if (!inflight.hasOwnProperty(partId)) { if (payloadType === 'object' || payloadType === 'merged') { inflight[partId] = { @@ -631,7 +632,7 @@ module.exports = function(RED) { } if (payloadType === 'object') { group.payload[propertyKey] = property; - group.currentCount = (group.currentCount || 0) + 1; + group.currentCount = Object.keys(group.payload).length; } else if (payloadType === 'merged') { if (Array.isArray(property) || typeof property !== 'object') { if (!msg.hasOwnProperty("complete")) { diff --git a/test/nodes/core/logic/17-split_spec.js b/test/nodes/core/logic/17-split_spec.js index 788172ebe..e55682965 100644 --- a/test/nodes/core/logic/17-split_spec.js +++ b/test/nodes/core/logic/17-split_spec.js @@ -677,6 +677,9 @@ describe('JOIN node', function() { n1.receive({payload:{f:1}, topic:"f", complete:true}); n1.receive({payload:{g:2}, topic:"g"}); n1.receive({payload:{h:1}, topic:"h"}); + n1.receive({reset:true}); + n1.receive({payload:{g:2}, topic:"g"}); + n1.receive({payload:{h:1}, topic:"h"}); n1.receive({payload:{i:3}, topic:"i"}); }); }); @@ -700,6 +703,9 @@ describe('JOIN node', function() { } catch(e) { done(e) } }); + n1.receive({payload:2, foo:"b"}); + n1.receive({payload:3, foo:"c"}); + n1.receive({reset:true}); n1.receive({payload:1, foo:"a"}); n1.receive({payload:2, foo:"b"}); n1.receive({payload:3, foo:"c"}); From e315325d91b01f58e0fd0877cdb5e4a781dd8209 Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Thu, 20 Jun 2019 21:15:20 +0100 Subject: [PATCH 02/11] Fix parsing of content-type header Fixes #2216 This was broken when we switched from media-typer to content-type modules for parsing the content-type header. The content-type header can handle the field with parameters, but does not do the type/sub-type parsing that media-typer does. Our code relied on that extra bit of parsing to correctly identify if the content should be parsed to String or kept as a buffer. The fix restores the use of media-typer, but using the result of the content-type module to make sure it valid --- package.json | 1 + .../@node-red/nodes/core/io/21-httpin.js | 29 +++++++++++-------- .../node_modules/@node-red/nodes/package.json | 1 + 3 files changed, 19 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index d401a614e..30ef53dc0 100644 --- a/package.json +++ b/package.json @@ -48,6 +48,7 @@ "js-yaml": "3.13.1", "json-stringify-safe": "5.0.1", "jsonata": "1.6.4", + "media-typer": "1.1.0", "memorystore": "1.6.1", "mime": "2.4.2", "mqtt": "2.18.8", diff --git a/packages/node_modules/@node-red/nodes/core/io/21-httpin.js b/packages/node_modules/@node-red/nodes/core/io/21-httpin.js index 7e90478f7..fc3fafd28 100644 --- a/packages/node_modules/@node-red/nodes/core/io/21-httpin.js +++ b/packages/node_modules/@node-red/nodes/core/io/21-httpin.js @@ -23,6 +23,7 @@ module.exports = function(RED) { var cors = require('cors'); var onHeaders = require('on-headers'); var typer = require('content-type'); + var mediaTyper = require('media-typer'); var isUtf8 = require('is-utf8'); var hashSum = require("hash-sum"); @@ -36,18 +37,22 @@ module.exports = function(RED) { var checkUTF = false; if (req.headers['content-type']) { - var parsedType = typer.parse(req.headers['content-type']) - if (parsedType.type === "text") { - isText = true; - } else if (parsedType.subtype === "xml" || parsedType.suffix === "xml") { - isText = true; - } else if (parsedType.type !== "application") { - isText = false; - } else if (parsedType.subtype !== "octet-stream") { - checkUTF = true; - } else { - // applicatino/octet-stream - isText = false; + var contentType = typer.parse(req.headers['content-type']) + if (contentType.type) { + var parsedType = mediaTyper.parse(contentType.type); + if (parsedType.type === "text") { + isText = true; + } else if (parsedType.subtype === "xml" || parsedType.suffix === "xml") { + isText = true; + } else if (parsedType.type !== "application") { + isText = false; + } else if (parsedType.subtype !== "octet-stream") { + checkUTF = true; + } else { + // applicatino/octet-stream + isText = false; + } + } } diff --git a/packages/node_modules/@node-red/nodes/package.json b/packages/node_modules/@node-red/nodes/package.json index 9263de215..6916eadaf 100644 --- a/packages/node_modules/@node-red/nodes/package.json +++ b/packages/node_modules/@node-red/nodes/package.json @@ -30,6 +30,7 @@ "https-proxy-agent": "2.2.1", "is-utf8": "0.2.1", "js-yaml": "3.13.1", + "media-typer": "1.1.0", "mqtt": "2.18.8", "multer": "1.4.1", "mustache": "3.0.1", From 46abd0cc429899b0c88fffac1b52051b44849018 Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Thu, 20 Jun 2019 22:33:38 +0100 Subject: [PATCH 03/11] Clear HTTP Request node authType when auth disabled Fixes #2215 --- .../nodes/core/io/21-httprequest.html | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/packages/node_modules/@node-red/nodes/core/io/21-httprequest.html b/packages/node_modules/@node-red/nodes/core/io/21-httprequest.html index 1fd10af9c..4c2a7c0d6 100644 --- a/packages/node_modules/@node-red/nodes/core/io/21-httprequest.html +++ b/packages/node_modules/@node-red/nodes/core/io/21-httprequest.html @@ -49,12 +49,13 @@
- - +
@@ -102,7 +103,7 @@ url:{value:"",validate:function(v) { return (v.trim().length === 0) || (v.indexOf("://") === -1) || (v.trim().indexOf("http") === 0)} }, tls: {type:"tls-config",required: false}, proxy: {type:"http proxy",required: false}, - authType: {value: "basic"} + authType: {value: ""} }, credentials: { user: {type:"text"}, @@ -130,7 +131,7 @@ $(".node-input-useAuth-row").show(); // Nodes (< version 0.20.x) with credentials but without authentication type, need type 'basic' if (!$('#node-input-authType').val()) { - $('#node-input-authType').val('basic'); + $("#node-input-authType-select").val('basic').trigger("change"); } } else { $(".node-input-useAuth-row").hide(); @@ -139,12 +140,14 @@ $('#node-input-password').val(''); } }); - $("#node-input-authType").change(function() { - if ($(this).val() == "basic" || $(this).val() == "digest") { + $("#node-input-authType-select").change(function() { + var val = $(this).val(); + $("#node-input-authType").val(val); + if (val === "basic" || val === "digest") { $(".node-input-basic-row").show(); $('#node-span-password').show(); $('#node-span-token').hide(); - } else if ($(this).val() == "bearer") { + } else if (val === "bearer") { $(".node-input-basic-row").hide(); $('#node-span-password').hide(); $('#node-span-token').show(); @@ -158,8 +161,9 @@ $(".node-input-paytoqs-row").hide(); } }); - if (this.credentials.user || this.credentials.has_password) { + if (this.authType) { $('#node-input-useAuth').prop('checked', true); + $("#node-input-authType-select").val(this.authType); } else { $('#node-input-useAuth').prop('checked', false); } From 87a815fd6f2f5921f50e3e70d4970ee717c88ed1 Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Mon, 17 Jun 2019 15:37:45 +0100 Subject: [PATCH 04/11] Don't allow a link node virtual wire to connect to normal port --- packages/node_modules/@node-red/editor-client/src/js/ui/view.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/view.js b/packages/node_modules/@node-red/editor-client/src/js/ui/view.js index 75df20c95..636c12b40 100755 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/view.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/view.js @@ -1863,7 +1863,7 @@ RED.view = (function() { } var link = {source: src, sourcePort:src_port, target: dst}; if (drag_line.virtualLink) { - if (/^link (in|out)$/.test(src.type) && /^link (in|out)$/.test(dst.type)) { + if (/^link (in|out)$/.test(src.type) && /^link (in|out)$/.test(dst.type) && src.type !== dst.type) { if (src.links.indexOf(dst.id) === -1 && dst.links.indexOf(src.id) === -1) { var oldSrcLinks = $.extend(true,{},{v:src.links}).v var oldDstLinks = $.extend(true,{},{v:dst.links}).v From 04bdcbd4901630094f789075205c02565a7f6f3b Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Fri, 14 Jun 2019 11:18:07 +0100 Subject: [PATCH 05/11] Do not save subflow env vars with blank names --- .../editor-client/src/js/ui/editor.js | 24 ++++++++++--------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/editor.js b/packages/node_modules/@node-red/editor-client/src/js/ui/editor.js index 102374c29..1f4cf0ae9 100644 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/editor.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/editor.js @@ -658,17 +658,19 @@ RED.editor = (function() { list.each(function(i) { var entry = $(this); var item = entry.data('data'); - var name = item.parent?item.name:entry.find(".node-input-env-name").val(); - var valueInput = entry.find(".node-input-env-value"); - var value = valueInput.typedInput("value"); - var type = valueInput.typedInput("type"); - if (!item.parent || (item.parent.value !== value || item.parent.type !== type)) { - var item = { - name: name, - type: type, - value: value - }; - env.push(item); + var name = (item.parent?item.name:entry.find(".node-input-env-name").val()).trim(); + if (name !== "") { + var valueInput = entry.find(".node-input-env-value"); + var value = valueInput.typedInput("value"); + var type = valueInput.typedInput("type"); + if (!item.parent || (item.parent.value !== value || item.parent.type !== type)) { + var item = { + name: name, + type: type, + value: value + }; + env.push(item); + } } }); return env; From a941b1437c41c2a2f5029d984b12b648654fbd9e Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Thu, 13 Jun 2019 14:22:59 +0100 Subject: [PATCH 06/11] Handle subflow internal node wired to a non-existant node Fixes #2202 --- .../@node-red/runtime/lib/nodes/flows/Subflow.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/node_modules/@node-red/runtime/lib/nodes/flows/Subflow.js b/packages/node_modules/@node-red/runtime/lib/nodes/flows/Subflow.js index 2bf9e9e16..dd4cc5495 100644 --- a/packages/node_modules/@node-red/runtime/lib/nodes/flows/Subflow.js +++ b/packages/node_modules/@node-red/runtime/lib/nodes/flows/Subflow.js @@ -409,7 +409,11 @@ function remapSubflowNodes(nodes,nodeMap) { for (j=0;j Date: Sat, 8 Jun 2019 20:42:14 +0100 Subject: [PATCH 07/11] Improve handling of file upload in request node formData can only be Strings or Buffers - anything else will cause errors. To help matters, we now look for invalid types and json-encode them where needed. --- .../@node-red/nodes/core/io/21-httprequest.js | 24 +++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/packages/node_modules/@node-red/nodes/core/io/21-httprequest.js b/packages/node_modules/@node-red/nodes/core/io/21-httprequest.js index d72e16bad..ec5290835 100644 --- a/packages/node_modules/@node-red/nodes/core/io/21-httprequest.js +++ b/packages/node_modules/@node-red/nodes/core/io/21-httprequest.js @@ -203,8 +203,28 @@ module.exports = function(RED) { var payload = null; if (method !== 'GET' && method !== 'HEAD' && typeof msg.payload !== "undefined") { - if (opts.headers['content-type'] == 'multipart/form-data' && typeof payload === "object") { - opts.formData = msg.payload; + if (opts.headers['content-type'] == 'multipart/form-data' && typeof msg.payload === "object") { + opts.formData = {}; + + for (var opt in msg.payload) { + if (msg.payload.hasOwnProperty(opt)) { + var val = msg.payload[opt]; + if (val !== undefined && val !== null) { + if (typeof val === 'string' || Buffer.isBuffer(val)) { + opts.formData[opt] = val; + } else if (typeof val === 'object' && val.hasOwnProperty('value')) { + // Treat as file to upload - ensure it has an options object + // as request complains if it doesn't + if (!val.hasOwnProperty('options')) { + val.options = {}; + } + opts.formData[opt] = val; + } else { + opts.formData[opt] = JSON.stringify(val); + } + } + } + } } else { if (typeof msg.payload === "string" || Buffer.isBuffer(msg.payload)) { payload = msg.payload; From e346702292a3fbb9d4b06977ea9f74c1397f7d47 Mon Sep 17 00:00:00 2001 From: Dave Conway-Jones Date: Sat, 1 Jun 2019 23:49:27 +0100 Subject: [PATCH 08/11] stop join tripping up if last message of buffer is blank. --- packages/node_modules/@node-red/nodes/core/logic/17-split.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/node_modules/@node-red/nodes/core/logic/17-split.js b/packages/node_modules/@node-red/nodes/core/logic/17-split.js index ec879c253..c644b9e36 100644 --- a/packages/node_modules/@node-red/nodes/core/logic/17-split.js +++ b/packages/node_modules/@node-red/nodes/core/logic/17-split.js @@ -628,7 +628,9 @@ module.exports = function(RED) { var group = inflight[partId]; if (payloadType === 'buffer') { - inflight[partId].bufferLen += property.length; + if (property !== undefined) { + inflight[partId].bufferLen += property.length; + } } if (payloadType === 'object') { group.payload[propertyKey] = property; From c1104d1cd6b65b0f44b23cbc546383742cea1911 Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Sat, 25 May 2019 22:11:05 +0100 Subject: [PATCH 09/11] Revealing node position needs to account for zoom level Fixes #2172 --- .../@node-red/editor-client/src/js/ui/view.js | 33 +++++++++++-------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/packages/node_modules/@node-red/editor-client/src/js/ui/view.js b/packages/node_modules/@node-red/editor-client/src/js/ui/view.js index 636c12b40..16883d28a 100755 --- a/packages/node_modules/@node-red/editor-client/src/js/ui/view.js +++ b/packages/node_modules/@node-red/editor-client/src/js/ui/view.js @@ -1331,24 +1331,31 @@ RED.view = (function() { function zoomIn() { if (scaleFactor < 2) { - scaleFactor += 0.1; - RED.view.navigator.resize(); - redraw(); + zoomView(scaleFactor+0.1); } } function zoomOut() { if (scaleFactor > 0.3) { - scaleFactor -= 0.1; - RED.view.navigator.resize(); - redraw(); + zoomView(scaleFactor-0.1); } } - function zoomZero() { - scaleFactor = 1; + function zoomZero() { zoomView(1); } + + function zoomView(factor) { + var screenSize = [chart.width(),chart.height()]; + var scrollPos = [chart.scrollLeft(),chart.scrollTop()]; + var center = [(scrollPos[0] + screenSize[0]/2)/scaleFactor,(scrollPos[1] + screenSize[1]/2)/scaleFactor]; + scaleFactor = factor; + var newCenter = [(scrollPos[0] + screenSize[0]/2)/scaleFactor,(scrollPos[1] + screenSize[1]/2)/scaleFactor]; + var delta = [(newCenter[0]-center[0])*scaleFactor,(newCenter[1]-center[1])*scaleFactor] + chart.scrollLeft(scrollPos[0]-delta[0]); + chart.scrollTop(scrollPos[1]-delta[1]); + RED.view.navigator.resize(); redraw(); } + function selectAll() { RED.nodes.eachNode(function(n) { if (n.z == RED.workspaces.active()) { @@ -3530,13 +3537,13 @@ RED.view = (function() { node.dirty = true; RED.workspaces.show(node.z); - var screenSize = [$("#chart").width(),$("#chart").height()]; - var scrollPos = [$("#chart").scrollLeft(),$("#chart").scrollTop()]; + var screenSize = [chart.width()/scaleFactor,chart.height()/scaleFactor]; + var scrollPos = [chart.scrollLeft()/scaleFactor,chart.scrollTop()/scaleFactor]; if (node.x < scrollPos[0] || node.y < scrollPos[1] || node.x > screenSize[0]+scrollPos[0] || node.y > screenSize[1]+scrollPos[1]) { - var deltaX = '-='+((scrollPos[0] - node.x) + screenSize[0]/2); - var deltaY = '-='+((scrollPos[1] - node.y) + screenSize[1]/2); - $("#chart").animate({ + var deltaX = '-='+(((scrollPos[0] - node.x) + screenSize[0]/2)*scaleFactor); + var deltaY = '-='+(((scrollPos[1] - node.y) + screenSize[1]/2)*scaleFactor); + chart.animate({ scrollLeft: deltaX, scrollTop: deltaY },200); From 28fbb61e81e0d00c59961750a767c21fb574713f Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Fri, 21 Jun 2019 13:25:09 +0100 Subject: [PATCH 10/11] Bump dependencies --- package.json | 14 +++++++------- .../node_modules/@node-red/editor-api/package.json | 4 ++-- packages/node_modules/@node-red/nodes/package.json | 4 ++-- .../node_modules/@node-red/registry/package.json | 4 ++-- .../node_modules/@node-red/runtime/package.json | 4 ++-- packages/node_modules/node-red/package.json | 6 +++--- 6 files changed, 18 insertions(+), 18 deletions(-) diff --git a/package.json b/package.json index 30ef53dc0..782c9256e 100644 --- a/package.json +++ b/package.json @@ -31,14 +31,14 @@ "cheerio": "0.22.0", "clone": "2.1.2", "content-type": "1.0.4", - "cookie": "0.3.1", + "cookie": "0.4.0", "cookie-parser": "1.4.4", "cors": "2.8.5", "cron": "1.7.1", "denque": "1.4.1", - "express": "4.16.4", + "express": "4.17.1", "express-session": "1.16.1", - "fs-extra": "7.0.1", + "fs-extra": "8.0.1", "fs.notify": "0.0.4", "hash-sum": "1.0.2", "https-proxy-agent": "2.2.1", @@ -50,7 +50,7 @@ "jsonata": "1.6.4", "media-typer": "1.1.0", "memorystore": "1.6.1", - "mime": "2.4.2", + "mime": "2.4.4", "mqtt": "2.18.8", "multer": "1.4.1", "mustache": "3.0.1", @@ -68,14 +68,14 @@ "passport-oauth2-client-password": "0.1.2", "raw-body": "2.4.0", "request": "2.88.0", - "semver": "6.0.0", - "uglify-js": "3.5.9", + "semver": "6.1.1", + "uglify-js": "3.6.0", "when": "3.7.8", "ws": "6.2.1", "xml2js": "0.4.19" }, "optionalDependencies": { - "bcrypt": "3.0.5" + "bcrypt": "3.0.6" }, "devDependencies": { "grunt": "~1.0.3", diff --git a/packages/node_modules/@node-red/editor-api/package.json b/packages/node_modules/@node-red/editor-api/package.json index 315a1ee18..f1e15ba4a 100644 --- a/packages/node_modules/@node-red/editor-api/package.json +++ b/packages/node_modules/@node-red/editor-api/package.json @@ -23,9 +23,9 @@ "clone": "2.1.2", "cors": "2.8.5", "express-session": "1.16.1", - "express": "4.16.4", + "express": "4.17.1", "memorystore": "1.6.1", - "mime": "2.4.2", + "mime": "2.4.4", "mustache": "3.0.1", "oauth2orize": "1.11.0", "passport-http-bearer": "1.0.1", diff --git a/packages/node_modules/@node-red/nodes/package.json b/packages/node_modules/@node-red/nodes/package.json index 6916eadaf..29a2b29db 100644 --- a/packages/node_modules/@node-red/nodes/package.json +++ b/packages/node_modules/@node-red/nodes/package.json @@ -20,11 +20,11 @@ "cheerio": "0.22.0", "content-type": "1.0.4", "cookie-parser": "1.4.4", - "cookie": "0.3.1", + "cookie": "0.4.0", "cors": "2.8.5", "cron": "1.7.1", "denque": "1.4.1", - "fs-extra": "7.0.1", + "fs-extra": "8.0.1", "fs.notify": "0.0.4", "hash-sum": "1.0.2", "https-proxy-agent": "2.2.1", diff --git a/packages/node_modules/@node-red/registry/package.json b/packages/node_modules/@node-red/registry/package.json index c7509e751..0dc5339bf 100644 --- a/packages/node_modules/@node-red/registry/package.json +++ b/packages/node_modules/@node-red/registry/package.json @@ -17,8 +17,8 @@ ], "dependencies": { "@node-red/util": "0.20.5", - "semver": "6.0.0", - "uglify-js": "3.5.9", + "semver": "6.1.1", + "uglify-js": "3.6.0", "when": "3.7.8" } } diff --git a/packages/node_modules/@node-red/runtime/package.json b/packages/node_modules/@node-red/runtime/package.json index a3dd1ef4f..3e2b8b539 100644 --- a/packages/node_modules/@node-red/runtime/package.json +++ b/packages/node_modules/@node-red/runtime/package.json @@ -19,8 +19,8 @@ "@node-red/registry": "0.20.5", "@node-red/util": "0.20.5", "clone": "2.1.2", - "express": "4.16.4", - "fs-extra": "7.0.1", + "express": "4.17.1", + "fs-extra": "8.0.1", "json-stringify-safe": "5.0.1", "when": "3.7.8" } diff --git a/packages/node_modules/node-red/package.json b/packages/node_modules/node-red/package.json index 369003664..ebdded149 100644 --- a/packages/node_modules/node-red/package.json +++ b/packages/node_modules/node-red/package.json @@ -37,8 +37,8 @@ "@node-red/nodes": "0.20.5", "basic-auth": "2.0.1", "bcryptjs": "2.4.3", - "express": "4.16.4", - "fs-extra": "7.0.1", + "express": "4.17.1", + "fs-extra": "8.0.1", "node-red-node-email": "^1.4.0", "node-red-node-feedparser": "^0.1.14", "node-red-node-rbe": "^0.2.4", @@ -46,7 +46,7 @@ "node-red-node-tail": "^0.0.2", "node-red-node-twitter": "^1.1.4", "nopt": "4.0.1", - "semver": "6.0.0" + "semver": "6.1.1" }, "optionalDependencies": { "bcrypt": "3.0.5" From b73f12cdba0ca9c1ce465084c835544eb63f0cf9 Mon Sep 17 00:00:00 2001 From: Nick O'Leary Date: Fri, 21 Jun 2019 13:25:39 +0100 Subject: [PATCH 11/11] Bump for 0.20.6 --- CHANGELOG.md | 13 +++++++++++++ package.json | 2 +- .../node_modules/@node-red/editor-api/package.json | 6 +++--- .../@node-red/editor-client/package.json | 2 +- packages/node_modules/@node-red/nodes/package.json | 2 +- .../node_modules/@node-red/registry/package.json | 4 ++-- .../node_modules/@node-red/runtime/package.json | 6 +++--- packages/node_modules/@node-red/util/package.json | 2 +- packages/node_modules/node-red/package.json | 10 +++++----- 9 files changed, 30 insertions(+), 17 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a99600a05..934f1ad60 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,16 @@ +#### 0.20.6: Maintenance Release + + - Revealing node position needs to account for zoom level Fixes #2172 + - stop join tripping up if last message of buffer is blank. + - Improve handling of file upload in request node + - Handle subflow internal node wired to a non-existant node Fixes #2202 + - Do not save subflow env vars with blank names + - Don't allow a link node virtual wire to connect to normal port + - Clear HTTP Request node authType when auth disabled Fixes #2215 + - Fix parsing of content-type header Fixes #2216 + - Fix join node reset issue with merging objects + - Copy data-i18n attribute on TypedInput Fixes #2211 + #### 0.20.5: Maintenance Release - Revert error handling in palette manager diff --git a/package.json b/package.json index 782c9256e..4bf9e6c3a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "node-red", - "version": "0.20.5", + "version": "0.20.6", "description": "A visual tool for wiring the Internet of Things", "homepage": "http://nodered.org", "license": "Apache-2.0", diff --git a/packages/node_modules/@node-red/editor-api/package.json b/packages/node_modules/@node-red/editor-api/package.json index f1e15ba4a..320f9da25 100644 --- a/packages/node_modules/@node-red/editor-api/package.json +++ b/packages/node_modules/@node-red/editor-api/package.json @@ -1,6 +1,6 @@ { "name": "@node-red/editor-api", - "version": "0.20.5", + "version": "0.20.6", "license": "Apache-2.0", "main": "./lib/index.js", "repository": { @@ -16,8 +16,8 @@ } ], "dependencies": { - "@node-red/util": "0.20.5", - "@node-red/editor-client": "0.20.5", + "@node-red/util": "0.20.6", + "@node-red/editor-client": "0.20.6", "bcryptjs": "2.4.3", "body-parser": "1.19.0", "clone": "2.1.2", diff --git a/packages/node_modules/@node-red/editor-client/package.json b/packages/node_modules/@node-red/editor-client/package.json index 06855cca3..eca94372f 100644 --- a/packages/node_modules/@node-red/editor-client/package.json +++ b/packages/node_modules/@node-red/editor-client/package.json @@ -1,6 +1,6 @@ { "name": "@node-red/editor-client", - "version": "0.20.5", + "version": "0.20.6", "license": "Apache-2.0", "repository": { "type": "git", diff --git a/packages/node_modules/@node-red/nodes/package.json b/packages/node_modules/@node-red/nodes/package.json index 29a2b29db..1b08e1ac3 100644 --- a/packages/node_modules/@node-red/nodes/package.json +++ b/packages/node_modules/@node-red/nodes/package.json @@ -1,6 +1,6 @@ { "name": "@node-red/nodes", - "version": "0.20.5", + "version": "0.20.6", "license": "Apache-2.0", "repository": { "type": "git", diff --git a/packages/node_modules/@node-red/registry/package.json b/packages/node_modules/@node-red/registry/package.json index 0dc5339bf..0dd7f3a26 100644 --- a/packages/node_modules/@node-red/registry/package.json +++ b/packages/node_modules/@node-red/registry/package.json @@ -1,6 +1,6 @@ { "name": "@node-red/registry", - "version": "0.20.5", + "version": "0.20.6", "license": "Apache-2.0", "main": "./lib/index.js", "repository": { @@ -16,7 +16,7 @@ } ], "dependencies": { - "@node-red/util": "0.20.5", + "@node-red/util": "0.20.6", "semver": "6.1.1", "uglify-js": "3.6.0", "when": "3.7.8" diff --git a/packages/node_modules/@node-red/runtime/package.json b/packages/node_modules/@node-red/runtime/package.json index 3e2b8b539..850f3b647 100644 --- a/packages/node_modules/@node-red/runtime/package.json +++ b/packages/node_modules/@node-red/runtime/package.json @@ -1,6 +1,6 @@ { "name": "@node-red/runtime", - "version": "0.20.5", + "version": "0.20.6", "license": "Apache-2.0", "main": "./lib/index.js", "repository": { @@ -16,8 +16,8 @@ } ], "dependencies": { - "@node-red/registry": "0.20.5", - "@node-red/util": "0.20.5", + "@node-red/registry": "0.20.6", + "@node-red/util": "0.20.6", "clone": "2.1.2", "express": "4.17.1", "fs-extra": "8.0.1", diff --git a/packages/node_modules/@node-red/util/package.json b/packages/node_modules/@node-red/util/package.json index 7b358bd03..14480d2bf 100644 --- a/packages/node_modules/@node-red/util/package.json +++ b/packages/node_modules/@node-red/util/package.json @@ -1,6 +1,6 @@ { "name": "@node-red/util", - "version": "0.20.5", + "version": "0.20.6", "license": "Apache-2.0", "repository": { "type": "git", diff --git a/packages/node_modules/node-red/package.json b/packages/node_modules/node-red/package.json index ebdded149..9ef2fc749 100644 --- a/packages/node_modules/node-red/package.json +++ b/packages/node_modules/node-red/package.json @@ -1,6 +1,6 @@ { "name": "node-red", - "version": "0.20.5", + "version": "0.20.6", "description": "A visual tool for wiring the Internet of Things", "homepage": "http://nodered.org", "license": "Apache-2.0", @@ -31,10 +31,10 @@ "flow" ], "dependencies": { - "@node-red/editor-api": "0.20.5", - "@node-red/runtime": "0.20.5", - "@node-red/util": "0.20.5", - "@node-red/nodes": "0.20.5", + "@node-red/editor-api": "0.20.6", + "@node-red/runtime": "0.20.6", + "@node-red/util": "0.20.6", + "@node-red/nodes": "0.20.6", "basic-auth": "2.0.1", "bcryptjs": "2.4.3", "express": "4.17.1",