watch/CHANGELOG.md

3.2 KiB
Raw Blame History

CHANGELOG

v1.5.4 (2026-06-27)

  • 修复 Bug: 修复了配置 Types(文件类型白名单)时,目录本身的创建/删除等事件未能被正确过滤的问题。
  • CLI 体验大幅升级:
    • 紧凑型 UI: 重新设计了日志输出Banner 与 Event视觉更加紧凑专业彻底分离了应用输出与 Watch 日志。
    • 智能追加参数: 当使用 --go 等预设并提供自定义参数(如 watch --go --devCLI 会智能判断并将其追加到默认命令(如 go run . -- --dev)。
    • .gitignore 支持: 默认自动读取当前目录的 .gitignore.ignore 文件并将其中的规则加入排除列表。
    • .watch 任务文件: 支持基于 .watch 文件的极简任务配置(键值对格式),可无参数直接执行默认任务,或通过 watch --taskname 执行特定任务。
    • 清屏支持: 新增 -c, --clear 参数,在重启前自动清理终端。
    • 手动重启: 支持在运行时键入 rs + 回车强行重启服务。
    • 恢复参数: 重新暴露 -E, --exclude-ext 选项(原 -exclude-type)方便灵活排除特定后缀。
    • 参数标准化: -path 改为 -w/--watch-type 改为 -e/--ext-exclude-path 改为 -i/--ignore 等。

v1.5.3 (2026-06-22)

  • 新增 CLI: 新增 watch/watch 子包,提供 watch 命令行工具,支持 go install apigo.cc/go/watch/watch@latest 安装。
    • 支持 -type/-exclude-type/-exclude-path 等 watch.Start 全部配置能力。
    • 预设快捷方式:-go/-web/-js/-py 对应各开发场景。
    • 预设值与显式参数合并,不替换。
    • 无命令时打印变更事件到 stdout。
  • 依赖更新: 新增依赖 go/shell v1.5.4,用于子进程生命周期管理。

v1.5.2 (2026-06-21)

  • 依赖更新: 升级依赖 jsmodv1.5.3castv1.5.3randv1.5.3encodingv1.5.4safev1.5.2filev1.5.5

v1.5.1 (2026-06-11)

  • 版本对齐: 基础设施全局对齐 v1.5.1。

v1.5.0 (2026-05-10)

  • 版本对齐: 基础设施全局对齐 v1.5.0。

v1.1.1

  • 性能优化: 将 TypesExcludeTypesEvents 的过滤逻辑从 O(n) 优化为 O(1) 的 Map 查找。
  • 基础设施对齐: 更新依赖 go/file 至 v1.0.7, go/encoding 至 v1.0.6。
  • 代码质量: 统一变量命名规范(watcher, event),重命名内部方法 isMatchExcludeisExcluded 提升可读性。
  • 测试增强: 引入专门的 bench_test.go,补全匹配逻辑与防抖逻辑的性能基准测试。

v1.1.0

  • 核心升级: 引入 github.com/gobwas/glob 引擎。
  • Gitignore 语义: Excludes 现在支持 **/node_modules/** 等复杂路径模式,并能正确处理目录边界。
  • 路径归一化: 内部统一使用绝对路径与 / 分隔符进行匹配,确保跨平台表现一致。
  • 事件防抖 (Debounce): 引入 apigo.cc/go/timer 的防抖能力,支持 Debounce 配置以合并碎片化事件。

v1.0.0

  • @ssgo/tool/watcher 迁移并重构。
  • 基础设施对齐: 使用 apigo.cc/go/file 替代标准库。
  • API 优化: 引入 Event 结构体,提供 EasyStart 极简入口。