# 更新日志

每个版本的源码可通过仓库中的 `v<版本号>` 标签查看。

## 0.2.1 · 2026-11-09

- 解析 SRI 元数据时只提取所需的字段，避免为后续选项和分隔段创建数组。
- 修复命令行将未知子命令后面的参数误当成子命令的问题。无效命令返回退出码 `2`。
- 统一使用 MoonBit 核心库处理非 JavaScript 目标的进程退出，消除 JavaScript 构建中的无用导入警告。

## 0.2.0 · 2026-11-09

### 新增

- `manifest` 批量生成 SRI 清单，支持多个算法、部署根目录和 UTF-8 路径列表。清单读写和比较也可通过 `yiwnagmolu/moonsri/manifest` 子包调用。
- `check-manifest` 校验部署文件，可输出 JSON 报告。单文件和批量校验都支持 `--min-algorithm`。
- `diff-manifest` 按路径列出两份清单中的新增、删除和摘要变化。
- `Hasher` 支持分块计算 SRI 摘要，`verify_bytes_at_least` 可在库内执行最低算法强度校验。
- `tag` 生成带 `integrity` 的脚本和样式表标签。浏览器示例展示摘要匹配时加载成功、摘要不匹配时被拦截。

### 改进

- 校验同一资源时只计算一次最强算法的摘要，再与该算法的各个候选摘要比较。
- JavaScript 命令行在退出前写完报告，避免通过管道读取时截断大份 JSON 输出。
- CI 在 WebAssembly 和 JavaScript 上检查批量清单、算法策略和 HTML 标签输出。

## 0.1.0 · 2026-11-09

### 新增

- 首个可运行版本，提供 SHA-256、SHA-384 和 SHA-512 的 SRI 生成、解析和校验。
- 提供单文件 `generate` 和 `check` 命令、资源示例和双目标 CI。
