Skip to content

v0.9.5

← 返回主 CHANGELOG

0.9.5 - 2026-07-18

⚠️ Breaking Changes

  • ui/exports: brutx-ui-vue/calendar 不再导出 DatePicker/useDatePickerbrutx-ui-vue/carousel 不再导出 useCarousel,改用独立子路径 (d3a35ac)
  • ui/re-export: 移除主入口 index.ts 中全部 reka-ui 值 re-export,import { Dialog, Popover, Tooltip, ... } from 'brutx-ui-vue' 需改为直接从 reka-ui 导入 (4c0d7e0)

✨ Features

  • cli/manifest: Ed25519 签名校验基础设施 + 公钥轮换 + REGISTRY_SIGNATURE_INVALID (4ce99d7)
  • cli/registry: 多 registry 源与离线韧性(离线模式 + auth + reachability) (b084a17)
  • cli/cache: 缓存层升级(条件请求 + 并发去重 + LRU 上限 + registry 版本绑定) (30b7e1c)
  • cli/doctor: 消费 manifest 实现 integrity 漂移与孤儿检测,新增 --sbom 与签名默认 warn 严格模式 (0adf138, 2c1adf6)
  • cli/update: 版本约束体系(version-pinned 默认锁定 + --across-versions 解锁) (b92d426)
  • cli/deps: 组件版本治理体系化(resolveDeps 去重 + 去硬编码 URL + manifest 版本契约) (9ff275d)
  • cli/audit: CLI 操作审计日志与全局 dry-run(BRUTX_DRY_RUN=1--dry-run) (d9bc8fc)
  • registry: CycloneDX 1.5 SBOM 生成 + 依赖分析深化与依赖图导出 + build watch 模式 + 构建增量透明化(verify/bench) (400928e, 1d39b6a, 1c8ea7d, eb38422)
  • docs: 新增 i18n 镜像校验脚本 (6d4a9cf)

♻️ Code Refactoring

  • ui: SSR 兼容性治理(env.ts 工具层 + lint 拦截 + smoke 测试) (f13c3f0)
  • ui: exports 子路径自动化与多入口 ESM 构建 (d3a35ac)
  • registry: 重构注册表系统,改用 AST 自动扫描组件清单 (edb335b)
  • shared: 重构组件索引生成与设计令牌系统,简化 Tailwind 版本检测 (e986f3c, 6d187af, 7fadf0e)

🐛 Bug Fixes

  • ui/toast: 修复 useToast 与 Toast.vue 双定时器冲突 (24a7c38)
  • ui: 修复 FormWizard/Dialog/TreeView 三处状态与 i18n 问题 (8e72cb2)
  • ui/dialog: handleClose 并发守卫与 initSize rAF 取消 (9fec2ff)
  • ui/cascader: 预选值未找到时不再错误高亮首页 (ec0bcdd)
  • ui/data-table: 重置 warnedColumns 并提取魔法数字为默认常量 (eaa6239)
  • ui/lib: date.ts 安全 WW token 解析与 render-imperative timer 跟踪 (072682f)
  • ui/theme: useTheme fallback 引用计数清理 (5cf76a2)
  • ui: 修复 reka-ui 下拉菜单组件命名错误与 Upload 类型 import 路径 (5343591, 600ef27)
  • dialog: 修复无文档或无 body 时的弹窗创建异常 (e01aeb9)
  • cli: 修复打包后 doctor 命令找不到 package.json 与 fetchWithSources 离线全失败时丢失 cause 的问题 (5df18fa, a7e36ef)
  • cli: 修复辅助包 bug 扫描发现的 5 项问题(project/doctor/package-manager/validate-utils) (6e40d92)
  • registry: validate 排除 registry-sbom.json + verify-build 在 npm_execpath 缺失时回退 PATH 中的 pnpm (f1b6392, fa876ea)
  • shared: 拆分 scan 入口隔离 typescript 依赖,修复 CLI 打包 ESM 崩溃 (1277013)
  • ui: 修复浏览器测试 CI 失败(playwright provider + Node-only 依赖隔离) (efc64fc, 69a9fc4)
  • visual-test: 修复跨系统字体差异导致的视觉快照失败 (b704ff2)
  • docs: 修复组件总览卡片链接 404、Demo 组件内存泄漏与英文首页 SEO 路径 (a8e641b, 27f4af9, f230406)
  • vercel: 修复 Vercel 部署 base 路径、outputDirectory 与 buildCommand 多项问题 (e21fae2, b56550c, fc1c554, 009d23f)
  • 修复根仓库扫描报告 5 项发现 + 补齐方案 V2 验收遗漏项 (35a201c, 8680c28)

📝 Documentation

  • 新增供应链安全、仓库基础设施与架构优化方案 V2/V3 文档 (9e07480, 5ec0ec3, dc38499)
  • cli: 补全版本锁定、供应链安全、breaking change 迁移规范与 monorepo 提示文档 (7db7b53, 9995151)
  • docs: 抽离贡献指南、精简首页、重构卡片样式与本地搜索弹窗 (9dfdaf2, b427ec2, f575ab6, 03a2a00)
  • 清理冗余过时设计文档,显式注明开发仅允许使用 pnpm 约定 (517593f, 3839f51)

✅ Tests

  • cli: 更新集成测试用例以匹配新的目录结构 (1ad3df5)

⚡ Performance

  • ui: 运行时性能体系(bench 基准 + 组件审计 + 最佳实践文档) (6da8a43)

📦 Build

  • 引入 turbo 构建增量编排 + changeset 版本管理,移除 shamefullyHoist 显式化包间依赖 (86ba7bf, 5e28af6, 0409f43)
  • ci: 修复 turbo.json 缓存输出,解决测试与文档部署资源缺失问题 (b724597)
  • ui: 添加 @vitest/browser-playwright 依赖并更新配置 (6cd490d)

🔧 CI

  • deps: bump github-actions group with 11 updates (#2) (fea0fae)
  • dependabot: 优化依赖分组策略,拆分 minor/patch 与 major 升级 PR (ed730ac)
  • 优化三套工作流并行化与缓存策略,新增浏览器测试 job,工作流安全与并发加固 (351a20d, e43a416, 6b39333, 641fc62, c3294cf)

蛮力铸就。