MagicMirror v2.30.0 版本发布:现代化升级与功能增强
MagicMirror 是一个开源的模块化智能镜子平台,它允许用户通过简单的配置将普通镜子转变为显示天气、日历、新闻等信息的智能设备。作为一个高度可定制的项目,MagicMirror 持续更新以满足开发者和用户的需求。
核心架构升级
本次 v2.30.0 版本带来了多项重要改进,首先是运行环境的重大升级。项目现在要求 Node.js 版本至少为 v20.18.1 或更高,推荐使用 v20 或 v22 及以上版本。这一变更确保了项目能够利用最新的 JavaScript 特性和性能优化。
在底层架构方面,项目引入了 fetch 请求的超时机制,通过 undici 库实现,这对运行在较慢硬件上的系统特别有帮助。同时,修复了模块加载过程中的黑屏问题,现在当某个模块的 node_helper 加载失败时,系统会显示错误信息并继续加载其他模块,而不是直接崩溃。
新增功能亮点
日历模块增强:日历功能得到了显著改进,新增了显示全天事件结束日期的能力(通过 showEnd=true 参数)。同时修复了多个时区相关的问题,包括 #3098、#3144 等长期存在的问题。对于全天事件,showEndsOnlyWithDuration 参数现在能够正确工作。
远程内容支持:compliments 模块现在支持刷新远程的 compliments 文件,这对于需要动态更新显示内容的用户来说是个实用功能。项目还为此添加了相应的测试用例,确保功能的稳定性。
开发工具链升级:项目重新引入了 eslint-plugin-import 和 eslint-plugin-package-json 等 linting 工具,并新增了对 Markdown 文件的 linting 支持。这些改进有助于保持代码质量和一致性。
用户体验优化
配置改进:在 config.js.sample 文件中新增了关于 locale 变量的说明文本,帮助新用户更好地理解如何配置本地化设置。同时修复了 positions.js 文件在某些系统(如 Synology NAS)上的写入权限问题,现在当出现访问被拒绝时,系统会显示友好提示而不是直接崩溃。
动画系统:动画名称现在可以通过导出方式使用,这为开发者提供了更大的灵活性来创建自定义动画效果。
测试与稳定性
测试套件得到了全面更新,所有测试配置现在都允许完全的外部访问,这在容器化环境中特别有用。项目还修复了多个与日期相关的测试用例问题,确保测试结果的准确性。
依赖管理
项目更新了 Electron 依赖到 v32 版本,并测试了与 Node.js 23 的兼容性。同时移除了不再需要的 node-pty 和 drivelist 测试依赖,简化了开发环境配置。
项目维护
GitHub 工作流得到了优化,包括重新激活了 stale.yaml 工作流来自动标记和关闭长时间无活动的 issue。新增了在发布前几天运行的拼写检查工作流,确保文档质量。
MagicMirror v2.30.0 版本通过这些改进继续巩固其作为领先开源智能镜子平台的地位,为开发者和终端用户提供了更强大、更稳定的功能基础。
热门内容推荐
最新内容推荐
项目优选









