Node-RED 1.3.0 里程碑版本发布
🚀 核心架构重大升级
插件系统与模块化
- 插件运行时 API:实现插件运行时 API (#2779)
- 主题插件支持:添加主题插件的初始支持 (#2836)
- 编辑器插件:添加 RED.plugins 模块到编辑器
- 库源插件:添加对库源插件的支持 (#2785)
- 子流程模块:支持 npm 子流程模块 (#2690)
外部模块管理
- 外部模块配置:在 settings.js 中添加 externalModules 配置
- 弃用自动安装:弃用 autoInstallModules,改用 externalModules.autoInstall
- 选项板管理:弃用 editorTheme.palette.editable,改用 externalModules.palette.allowInstall
- 模块过滤:基于允许/拒绝列表过滤选项板管理器节点
🎨 编辑器功能全面增强
子流程功能大幅提升
- 子流程元数据:添加子流程元数据编辑窗格
- 子流程实例查找:添加更简单的方法查找子流程实例
- 子流程确认对话框:删除正在使用的子流程时添加确认对话框 (#2845)
- 子流程编辑:Ctrl+双击子流程节点打开子流程选项卡
- 子流程导出:导出子流程时引用配置节点
- 子流程工具栏:防止意外选择子流程工具栏文本
工作流程与导航
- 选择连接节点:添加选择连接操作 (#2877)
- 选择上下游节点:添加上下游节点选择操作 (#2877)
- 位置导航:添加上一个/下一个位置操作
- 快捷键自定义:允许在设置文件中覆盖默认键位映射 (#2843)
- 组管理:在信息大纲中添加组的启用/禁用切换按钮 (#2844)
输入与界面优化
- 类型输入记忆:切换类型时记住 TypedInput 选择的子选项(修复 #2896)
- 上下文存储显示:在 TypedInput 流/全局类型上显示上下文存储名称(修复 #2793)
- 节点属性类型:实现节点属性类型系统 (#2812)
- 导出预览:在导出对话框中添加导出节点的预览 (#2820)
- 侧边栏显示:确保编辑器加载时显示第一个侧边栏选项卡 (#2846)
⚙️ 运行时重大改进
项目管理与安全
- 项目路径配置:能够将项目路径添加到设置文件 (#2816)
- 语言设置:在设置文件中添加可选的 'lang' 参数 (#2796)
- 默认工作流:允许通过设置设置默认项目工作流 (#2763)
- 凭证处理:修复 /flows API 上的加密凭证处理
性能与稳定性
- 消息追踪:节点通过父流程记录日志以允许添加流程信息
- 配置节点停止:在流程节点之后停止配置节点(修复 #2876)
- Promise 优化:在 runtime/lib/api 中使用更多异步函数以减少 Promise 创建
- when.js 移除:完全移除 when.js 依赖 (#2772)
🔌 节点功能全面升级
消息 API 支持
- 批处理节点:在批处理节点中支持消息 API (#2738)
- CSV 节点:在 CSV 节点中支持消息 API (#2734)
- 延迟节点:为延迟节点添加消息 API 支持 (#2733)
- 排序节点:在排序节点中支持消息 API (#2744)
- 拆分/合并节点:在拆分/合并节点中支持消息 API (#2750)
- 触发器节点:在触发器节点中支持消息 API (#2751)
核心节点增强
- 变更节点:为变更节点规则集添加属性验证(关闭 #2911)
- 执行节点:
- 允许将任何属性附加到命令 (#2908)
- 添加 settings.execMaxBufferSize 来控制执行节点的缓冲区大小 (#2819)
- 默认情况下不将 msg.payload 附加到命令 (#2818)
- HTTP 请求节点:设置 followAllRedirects 以与 POST 一起工作(修复 #2017)
- 注入节点:在注入节点属性配置中标记验证错误(修复 #2914)
- 函数节点:
- 在沙箱中添加 node.outputCount (#2918)
- 允许加载外部模块 (#2873)
- 在关闭作用域中添加 'node' 对象
- Switch 节点:
- 修复属性未定义时的 hasKey 规则处理
- 处理在 Switch 节点中动态设置的无效正则表达式(修复 #2905)
- MQTT 节点:添加 MQTT v5 支持 (#2778 #2886)
示例流程丰富
- 存储节点:添加存储节点的示例流程 (#2784)
- 网络节点:添加网络节点的示例流程 (#2855)
- 解析器节点:添加解析器节点的示例流程 (#2749)
🌐 国际化与浏览器兼容性
语言支持
- 德语更新 (#2806 #2901 #2913)
- 日语翻译:为 Node-RED v1.3.0 添加日语翻译 (#2874 #2900)
- 俄语改进 (#2826)
- 用户语言:在传递给 i18n 之前验证用户提供的语言参数
浏览器兼容性
- IE11 支持:添加 IE11 polyfill 以支持 URI 下载方案 (#2871)
- FireFox 修复:修复 FireFox 中的复制到剪贴板操作
- 滚动条修复:修复滚动条显示 (#2825)
🔧 安全与稳定性增强
安全改进
- 转义用户输入:转义所有用户输入
- 项目文件访问:限制项目文件访问权限,仅限项目目录内
- 凭证超时:处理在编辑器中加载节点凭证时的超时(修复 #2840)
错误处理
- 行号报告:修复节点加载错误中的行号报告 (#2894)
- 未定义错误:处理传递给 node.error 的未定义错误 (#2781)
- 嵌套子流程凭证:修复嵌套子流程的凭证查找(修复 #2910)
这个 1.3.0 版本是 Node-RED 的一个重要里程碑,引入了插件系统、子流程模块化、消息 API 支持等重大功能,同时在用户体验、安全性和国际化方面都有显著提升,为构建更复杂的流程应用提供了强大的基础。
git下载:
国内高速下载通道: