All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- CLI 参数解析增强
- 支持在命令行中传递
--KEY=VALUE格式的参数 - 自动将这些参数写入
process.env环境变量 - 可以在启动服务时通过命令行覆盖环境变量配置
- 支持在命令行中传递
- 命令灵活性提升
start和restart命令现在允许接受未知选项- 允许传递额外的自定义参数给服务
- CLI 版本查询增强
- 新增
-v参数作为查看版本的快捷方式(支持-v, --version)
- 新增
-
ES Module 迁移
- 全面迁移到 ES Module (ESM) 语法
- 所有
require替换为import - 所有
module.exports替换为export - 更新 Node.js 版本要求至 >= 22.0.0
package.json添加"type": "module"
-
构建流程更新
- 新增
scripts/build.js使用 esbuild 打包 - 输出格式设置为 ESM
- 支持代码压缩和发布优化
- 新增
- LOG_BASE_DIR 容错增强
- 当配置路径无法创建时自动回退到系统临时目录
- 避免因路径问题导致服务启动失败
-
CLI 工具支持
- 新增
nuwax-file-serverCLI 命令行工具 - 支持
start、stop、restart、status命令 - 支持
--port、--env、--config等命令行参数 - 支持通过命令行参数覆盖环境变量配置
- 新增
-
跨平台支持
- 支持 Windows、Linux、macOS 三大平台
- 使用
cross-spawn确保跨平台命令执行 - 使用
tree-kill实现跨平台进程终止 - PID 文件管理支持多平台临时目录
-
健康检查端点
- 新增
/healthHTTP 端点 - 返回服务状态、版本、运行时间、内存使用等信息
- 新增
-
环境变量配置
- 完整的配置文件加载机制
- 支持
env.development、env.production、env.test - 详细的路径配置项说明
- CLI 专用配置项
-
项目文档
- 新增
docs/ENV.md完整的环境变量配置指南 - 更新
README.md包含 CLI 使用说明 - 新增
AGENTS.md和CLAUDE.md软链接
- 新增
-
测试
- 新增
tests/unit/cli.test.js单元测试 - 覆盖服务管理器、环境变量工具、跨平台兼容性等
- 新增
- 包配置
package.json新增bin字段支持 CLI 全局安装- 新增
commander、cross-spawn、fs-extra、tree-kill依赖
- 启动脚本
- 修复
scripts/start-cli.js实际加载 server.js 的问题 - 修复
router.js中 package.json 路径解析问题
- 修复
- 使用
path.resolve和fs.readFileSync替代require确保安全性
Initial release of nuwax-file-server project.
- 项目基础结构
- Express 服务器配置
- 构建路由、项目路由、代码路由
- pnpm 磁盘空间优化功能
- 日志缓存管理