EN

更新日志

记录 func 各版本的功能更新、问题修复与维护变更。

更新于 2周前

2.x 系列

v2.3.1

25cd25 当前版本
  • 追加了一些 F_SYSTEM_* 错误码,以便更加细致地定位错误。
  • 改进 funcgo 诊断能力,增加构建时值类型校验、源码位置、代码片段以及对应错误文档链接。
  • 要求使用 Node.js 24 及以上版本,并在工作区统一采用 NodeNext 模块解析。
  • 分别发布 CommonJSESM 产物,通过包条件导出提供统一的类型声明入口。
  • funcgo 更新至 1.0,默认使用 Rolldown 构建,同时保留 build-ncc 作为遗留构建方式。
  • importrequire 两种消费方式增加端到端覆盖。
  • 明确支持 Node.js 20.12 及以上版本。
  • 精简构建输出内容。
  • 将测试纳入包构建流程;发布包从 2.2.1 的 161 个文件精简到 61 个文件。
  • 更新核心包的构建与测试工具链,包括 TypeScript 7、Vitest 4、Vite 8 及相关依赖。
  • 更新包元数据和 README,运行时 API 保持不变。
  • 缺失命令类支持基于方法的处理器,可使用异步执行、字段选项、服务注入和局部错误捕获。
  • 当值类型无法推断时,在错误详情中提供稳定的原因标识。
  • 工作区迁移到 pnpm 11,共享格式化配置切换为 @unix/prettier。
  • 纯维护性发布,不改变运行时行为。
  • 引入基于模块的命令运行时,包括 FuncModule、服务、方法处理器、局部错误捕获、字段选项和约束。
  • 新增显式的应用创建与运行 API、注册校验,并支持 TypeScript 6。
  • 修正装饰器工厂的类型声明,统一返回标准 ClassDecorator 类型。
  • 移除装饰器产物中不必要的构造函数返回值。
  • 重构命令校验与解析,严格检查重复注册、类型、必填值、数组和未知选项。
  • 引入结构化的系统、运行时、输入和弃用错误,提供稳定的错误码与详情。
  • 将核心包迁入 pnpm 工作区,并把测试套件迁移到 Vitest。

1.x 系列

func 1.0.0 发布于 2019-06-13,奠定了框架的基础能力:使用装饰器定义命令,并提供选项解析、命令分发、元数据注册和服务注入。