diff --git a/CHANGELOG.md b/CHANGELOG.md index 4f4d9cc4f3..6363194c82 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,84 @@ +#### 2.7.0: Release + + - ci: Add logs link to pre-staging slack message (#4215) + - ci: Update `publish_node_package` workflow to `v0.21.0` (#4146) + - Edit snapshot (#4282) @Steve-Mcl + - Clearer communication of navigation restriction when billing is required (#4298) @joepavitt + - Fix snapshot package.json download dependencies (#4289) @hardillb + - Add locked field test (#4280) @hardillb + - remove the request trial license hs form (#4279) @sumitshinde-84 + - Initial user notification backend (#4164) @knolleary + - Clear device group target snapshot (#4276) @Steve-Mcl + - Allow Uppercase letters in initial admin username (#4267) @hardillb + - Fix link in device deploy docs (#4269) @hardillb + - move local installation under contribute section (#4259) @sumitshinde-84 + - Remove vue-template-compiler (#4265) @hardillb + - Bump fastify-metrics from 10.4.1 to 11.0.0 (#3848) @app/dependabot + - Clear query action on invite page (#4263) @knolleary + - Fix import of snapshot credentials for instances (#4262) @knolleary + - Found race condition in tests (#4260) @hardillb + - show full buttons when instance count is 1 (#4247) @Steve-Mcl + - Update so locked template fields are not overwritten (#4244) @hardillb + - Bump postcss-loader from 7.3.3 to 8.1.1 (#3796) @app/dependabot + - Fix import of snapshots and improve test coverage (#4258) @knolleary + - Bump vue from 3.4.21 to 3.4.34 (#4256) @app/dependabot + - Bump cypress from 13.7.3 to 13.13.1 (#4235) @app/dependabot + - Add Keycloak group mapping info (#4233) @hardillb + - update examples links (#4144) @sumitshinde-84 + - Bump @babel/core from 7.24.3 to 7.24.9 (#4179) @app/dependabot + - Allow admin to be set from SSO group (#4237) @hardillb + - Improve 2FA handling (#4255) @hardillb + - Fix device tile kebab menu actions (#4253) @Steve-Mcl + - Fix: Remove dialog mixin from the DevicesBrowser (#4252) @joepavitt + - Add AZURE specific suggestion (#4251) @hardillb + - Allow Session expiry to be configured (#4243) @hardillb + - Add bulk delete for devices browser (#4219) @Steve-Mcl + - Sso create new user (#4207) @hardillb + - Bulk device delete api (#4209) @Steve-Mcl + - Move notification tray out of ff-view (#4240) @knolleary + - Do not store modified email when deduping email list (#4232) @knolleary + - Ability to add device from empty state (#4228) @Steve-Mcl + - Fix limbo state after leaving last team (#4226) @Steve-Mcl + - Add notifications drawer (#4210) @cstns + - Clear redirect url on logout (#4223) @cstns + - Better sanitization of team names in invite email (#4221) @knolleary + - Mask both quoted and unquoted registry tokens (#4220) @hardillb + - Fix accessing team as dashboard user (#4216) @knolleary + - ci: Skip pre-staging workflow on dependabot pull requests (#4205) @ppawlowski + - Ensure team slug is passed for nested views (#4202) @joepavitt + - Move to email verification codes rather than links on signup (#4195) @knolleary + - Add blueprint count to telemetry ping (#4196) @knolleary + - auto genrate license and display (#4105) @sumitshinde-84 + - Surface the "Invite Members" button to the main navigation (#4186) @joepavitt + - Allow AWS SES sourceArn to be set (#4177) @hardillb + - Differentiate between the instance/device name and tile link/details (#4112) @cstns + - Add CTA on resource Audit entries (#4192) @hardillb + - Adds rate limits to assistant route (#4182) @Steve-Mcl + - carry on application search params to followup pages (#4170) @cstns + - cI: Notify on `Install test` workflow failure (#4178) @ppawlowski + - extend applications search to include app/instance/device id's (#4171) @cstns + - Add search functionality to the applications instances page (#4172) @cstns + - Update Security headers (#4154) @hardillb + - Search applications by instances and devices (#4159) @cstns + - add meta information to docs (#4162) @sumitshinde-84 + - Only permit instance/device token to call upon assistant endpoint (#4163) @Steve-Mcl + - Add session ownerId/type to log output if set (#4155) @knolleary + - Add support for JSON in FlowFuse Assistant (#4128) @Steve-Mcl + - Add option to show mfa code instead of qrcode (#4156) @knolleary + - Swap maps with arrays on the applications page (#4148) @cstns + - e2e tests for instance and device rollback feature (#4149) @Steve-Mcl + - Add search bar and allow searching through applications (#4141) @cstns + - Fix install test. (#4143) @hardillb + - Use absolute path for camera icon (#4138) @Steve-Mcl + - Install NodeJS (#4140) @hardillb + - fix path to install.sh (#4135) @hardillb + - ci: Change the way how `Create pre-staging environment` workflow is triggered (#4130) @ppawlowski + - Bump ws from 8.16.0 to 8.18.0 (#4136) @app/dependabot + - Install test (#4134) @hardillb + - include nr-assistant in snapshot and map through settings (#4127) @Steve-Mcl + - Reset publish build to NodeJS 18 (#4133) @hardillb + - fix broken link (#4132) @sumitshinde-84 + #### 2.6.1: Release - Set nodejs version back to 16 for package build (#4121) @hardillb diff --git a/package-lock.json b/package-lock.json index 99d40c75aa..8f79f17854 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@flowfuse/flowfuse", - "version": "2.6.1", + "version": "2.7.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@flowfuse/flowfuse", - "version": "2.6.1", + "version": "2.7.0", "license": "SEE LICENSE IN ./LICENSE", "dependencies": { "@aws-sdk/client-ses": "^3.352.0", @@ -22,7 +22,7 @@ "@fastify/swagger": "^8.10.1", "@fastify/swagger-ui": "^3.0.0", "@fastify/websocket": "^8.1.0", - "@flowfuse/driver-localfs": "^2.6.0", + "@flowfuse/driver-localfs": "^2.7.0", "@flowfuse/flow-renderer": "^0.4.1", "@headlessui/vue": "1.7.19", "@heroicons/vue": "1.0.6", @@ -5070,11 +5070,11 @@ } }, "node_modules/@flowfuse/driver-localfs": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@flowfuse/driver-localfs/-/driver-localfs-2.6.0.tgz", - "integrity": "sha512-rWwZaZJb+9QongScRwW7ZpZ6jqg/RJ/x1caD8/GhwBzFLWWfVrudxSDmfD7p0rPIMTddIHsyDgiPvlnszqKBVA==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@flowfuse/driver-localfs/-/driver-localfs-2.7.0.tgz", + "integrity": "sha512-Pkv9oOlRPI/rmPO7Qx/eP6K+z4yfbOSzWuIcAtuTFmVmQxq/2O9ozzMKyVh8GcY78GlW4ZsES/DsZlGLo0WWnQ==", "dependencies": { - "@flowfuse/nr-launcher": "^2.6.0", + "@flowfuse/nr-launcher": "^2.7.0", "got": "^11.8.5", "semver": "^7.3.8" } @@ -5088,9 +5088,9 @@ } }, "node_modules/@flowfuse/nr-assistant": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@flowfuse/nr-assistant/-/nr-assistant-0.1.0.tgz", - "integrity": "sha512-ZzyQS2U7B7Td29j3AEjnw4UQ9UdUwI1McwiIvl8pucZeFJJX67YLIMCtaN97vqXYgIMSr6+H2Uz00e6t/bX1Qw==", + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@flowfuse/nr-assistant/-/nr-assistant-0.1.3.tgz", + "integrity": "sha512-cIUbOqAscs8rwMoWA7y171ixFYQAmNOa2k0AdLvGYl03U39WcLePVG+CGa2ad0qs5ALVP7++7DBqtvGcIFg6XA==", "dependencies": { "got": "^11.8.6" }, @@ -5099,9 +5099,9 @@ } }, "node_modules/@flowfuse/nr-file-nodes": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/@flowfuse/nr-file-nodes/-/nr-file-nodes-0.0.5.tgz", - "integrity": "sha512-TngLIdWYgISRC79M6QA7BwrBjW0lcyZPV+266HJ2jehMcVovXV5baShl15bY8dwlpxUpbiyCSDnm18HmdUTVtQ==", + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/@flowfuse/nr-file-nodes/-/nr-file-nodes-0.0.6.tgz", + "integrity": "sha512-jc9Ab6vWCZXObyJ1KaZBiix8kBh0PCKWg419FMGfOHyOU5+nJPQw147PjB3Dif8shTdyZ0KsvKlpDNB5pxZeNA==", "dependencies": { "got": "11.8.5", "iconv-lite": "0.6.3" @@ -5135,13 +5135,13 @@ } }, "node_modules/@flowfuse/nr-launcher": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@flowfuse/nr-launcher/-/nr-launcher-2.6.0.tgz", - "integrity": "sha512-mwCT1ZonEBdKvuYtwrQdtO+4+TPMiuueXm7o0wCacHTLCEEOP8XU4l4t4gTodeAniG3o7rP4bXoVHBPIggKJIw==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@flowfuse/nr-launcher/-/nr-launcher-2.7.0.tgz", + "integrity": "sha512-egkVhq/+iY+URt7MNuJoWXbQtk5s/nl7q4yZ7cTTDyz29Q9XD6BpEviEL2oG+8wPsl4jYk2mX672ycrCJKevyw==", "dependencies": { - "@flowfuse/nr-assistant": "^0.1.0", - "@flowfuse/nr-file-nodes": "^0.0.5", - "@flowfuse/nr-project-nodes": "^0.6.2", + "@flowfuse/nr-assistant": "^0.1.3", + "@flowfuse/nr-file-nodes": "^0.0.6", + "@flowfuse/nr-project-nodes": "^0.7.1", "@node-red/util": "^3.1.0", "body-parser": "^1.20.2", "command-line-args": "^5.2.1", @@ -5163,17 +5163,31 @@ } }, "node_modules/@flowfuse/nr-project-nodes": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/@flowfuse/nr-project-nodes/-/nr-project-nodes-0.6.4.tgz", - "integrity": "sha512-lmLEyoG95o3WtkxHpcifwe/s8ccK9duaDElQWUuNvh2gn07StIzEXUkWWxWC7h0yfkkylaJoocjpB8ra39O9Kg==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@flowfuse/nr-project-nodes/-/nr-project-nodes-0.7.1.tgz", + "integrity": "sha512-o25Q3Efg67SaxVF1mEiuldm45Y7l6cCCocKLZzroYfzosfnndlxCWO32bLJtE0uN/8O0gpun+Kiqk+zEX772Dw==", "dependencies": { "got": "^11.8.6", - "mqtt": "^4.3.7" + "http-proxy-agent": "^7.0.2", + "https-proxy-agent": "^7.0.4", + "mqtt": "^4.3.7", + "proxy-from-env": "^1.1.0" }, "engines": { "node": ">=16.x" } }, + "node_modules/@flowfuse/nr-project-nodes/node_modules/agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "dependencies": { + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/@flowfuse/nr-project-nodes/node_modules/bl": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", @@ -5222,6 +5236,30 @@ "readable-stream": "^3.6.0" } }, + "node_modules/@flowfuse/nr-project-nodes/node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/@flowfuse/nr-project-nodes/node_modules/https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "dependencies": { + "agent-base": "^7.0.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/@flowfuse/nr-project-nodes/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -27754,11 +27792,11 @@ } }, "@flowfuse/driver-localfs": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@flowfuse/driver-localfs/-/driver-localfs-2.6.0.tgz", - "integrity": "sha512-rWwZaZJb+9QongScRwW7ZpZ6jqg/RJ/x1caD8/GhwBzFLWWfVrudxSDmfD7p0rPIMTddIHsyDgiPvlnszqKBVA==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@flowfuse/driver-localfs/-/driver-localfs-2.7.0.tgz", + "integrity": "sha512-Pkv9oOlRPI/rmPO7Qx/eP6K+z4yfbOSzWuIcAtuTFmVmQxq/2O9ozzMKyVh8GcY78GlW4ZsES/DsZlGLo0WWnQ==", "requires": { - "@flowfuse/nr-launcher": "^2.6.0", + "@flowfuse/nr-launcher": "^2.7.0", "got": "^11.8.5", "semver": "^7.3.8" } @@ -27769,17 +27807,17 @@ "integrity": "sha512-HQfBUd6bw0extbEgnUv4xjmPF6t+ViIcQAUqxQ7ynnzhJlfuKNnGPmezcGU8rIdKN6zHK/38bbrQIyRCVmI7uw==" }, "@flowfuse/nr-assistant": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/@flowfuse/nr-assistant/-/nr-assistant-0.1.0.tgz", - "integrity": "sha512-ZzyQS2U7B7Td29j3AEjnw4UQ9UdUwI1McwiIvl8pucZeFJJX67YLIMCtaN97vqXYgIMSr6+H2Uz00e6t/bX1Qw==", + "version": "0.1.3", + "resolved": "https://registry.npmjs.org/@flowfuse/nr-assistant/-/nr-assistant-0.1.3.tgz", + "integrity": "sha512-cIUbOqAscs8rwMoWA7y171ixFYQAmNOa2k0AdLvGYl03U39WcLePVG+CGa2ad0qs5ALVP7++7DBqtvGcIFg6XA==", "requires": { "got": "^11.8.6" } }, "@flowfuse/nr-file-nodes": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/@flowfuse/nr-file-nodes/-/nr-file-nodes-0.0.5.tgz", - "integrity": "sha512-TngLIdWYgISRC79M6QA7BwrBjW0lcyZPV+266HJ2jehMcVovXV5baShl15bY8dwlpxUpbiyCSDnm18HmdUTVtQ==", + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/@flowfuse/nr-file-nodes/-/nr-file-nodes-0.0.6.tgz", + "integrity": "sha512-jc9Ab6vWCZXObyJ1KaZBiix8kBh0PCKWg419FMGfOHyOU5+nJPQw147PjB3Dif8shTdyZ0KsvKlpDNB5pxZeNA==", "requires": { "got": "11.8.5", "iconv-lite": "0.6.3" @@ -27806,13 +27844,13 @@ } }, "@flowfuse/nr-launcher": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/@flowfuse/nr-launcher/-/nr-launcher-2.6.0.tgz", - "integrity": "sha512-mwCT1ZonEBdKvuYtwrQdtO+4+TPMiuueXm7o0wCacHTLCEEOP8XU4l4t4gTodeAniG3o7rP4bXoVHBPIggKJIw==", + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/@flowfuse/nr-launcher/-/nr-launcher-2.7.0.tgz", + "integrity": "sha512-egkVhq/+iY+URt7MNuJoWXbQtk5s/nl7q4yZ7cTTDyz29Q9XD6BpEviEL2oG+8wPsl4jYk2mX672ycrCJKevyw==", "requires": { - "@flowfuse/nr-assistant": "^0.1.0", - "@flowfuse/nr-file-nodes": "^0.0.5", - "@flowfuse/nr-project-nodes": "^0.6.2", + "@flowfuse/nr-assistant": "^0.1.3", + "@flowfuse/nr-file-nodes": "^0.0.6", + "@flowfuse/nr-project-nodes": "^0.7.1", "@node-red/util": "^3.1.0", "body-parser": "^1.20.2", "command-line-args": "^5.2.1", @@ -27830,14 +27868,25 @@ } }, "@flowfuse/nr-project-nodes": { - "version": "0.6.4", - "resolved": "https://registry.npmjs.org/@flowfuse/nr-project-nodes/-/nr-project-nodes-0.6.4.tgz", - "integrity": "sha512-lmLEyoG95o3WtkxHpcifwe/s8ccK9duaDElQWUuNvh2gn07StIzEXUkWWxWC7h0yfkkylaJoocjpB8ra39O9Kg==", + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/@flowfuse/nr-project-nodes/-/nr-project-nodes-0.7.1.tgz", + "integrity": "sha512-o25Q3Efg67SaxVF1mEiuldm45Y7l6cCCocKLZzroYfzosfnndlxCWO32bLJtE0uN/8O0gpun+Kiqk+zEX772Dw==", "requires": { "got": "^11.8.6", - "mqtt": "^4.3.7" + "http-proxy-agent": "^7.0.2", + "https-proxy-agent": "^7.0.4", + "mqtt": "^4.3.7", + "proxy-from-env": "^1.1.0" }, "dependencies": { + "agent-base": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", + "integrity": "sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==", + "requires": { + "debug": "^4.3.4" + } + }, "bl": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", @@ -27879,6 +27928,24 @@ "readable-stream": "^3.6.0" } }, + "http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "requires": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + } + }, + "https-proxy-agent": { + "version": "7.0.5", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.5.tgz", + "integrity": "sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==", + "requires": { + "agent-base": "^7.0.2", + "debug": "4" + } + }, "lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", diff --git a/package.json b/package.json index 84cb9fc6c0..f7d28fc103 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@flowfuse/flowfuse", - "version": "2.6.1", + "version": "2.7.0", "description": "An open source low-code development platform", "homepage": "https://flowfuse.com", "bugs": { @@ -66,7 +66,7 @@ "@fastify/swagger": "^8.10.1", "@fastify/swagger-ui": "^3.0.0", "@fastify/websocket": "^8.1.0", - "@flowfuse/driver-localfs": "^2.6.0", + "@flowfuse/driver-localfs": "^2.7.0", "@flowfuse/flow-renderer": "^0.4.1", "@headlessui/vue": "1.7.19", "@heroicons/vue": "1.0.6",