Skip to content

mHost v0.3.3

Latest

Choose a tag to compare

@github-actions github-actions released this 16 Jul 06:57

v0.3.3 更新说明

本期相对 v0.3.2 主要是一次安全加固 + System Hosts 体验优化,并附带了一轮发版/版本号文档的修正。

🔒 安全修复:escapeHtml 加固(#110,#117)

RuleEditor.tsx 和 SystemHosts.tsx 各自带了一份相同的 escapeHtml,只转义 &、<、> — 文本节点够用,但任何后续把值塞进属性插值(href、title、onclick)就构成 stored XSS。这次:

  • 合并到单一 src/lib/escape.ts
  • 顺手把 " 和 ' 也补上(顺序仍是 & 在前,避免 &amp; 被二次编码)
  • 12 个新单测覆盖五个字符 + 双重编码回归 + <script> 和属性逃逸中和

✨ 新增:System Hosts 行号 gutter(#111,#118)

System Hosts 页面现在常驻显示左侧 44px 行号栏,1-based。开启搜索后,当前活动匹配对应的行号加粗 + 主色高亮。原本搜索栏右侧的 "Line N of M" 小标签下线,gutter 成为主要的"我在第几行"affordance。

实现要点:

  • 布局沿用 RuleEditor 的同款 wrapper + 绝对定位 gutter,保持视觉一致
  • gutter overflow: hidden,通过 onScroll 把 <pre>.scrollTop 同步过去,无独立滚动条
  • lineNumbers memo 仅依赖 totalLines,搜索打字不会重建数组

📖 文档(无运行时变更,#119)

doc/build-and-version.md 重新梳理:

  • 画清楚 __APP_VERSION__ 同时驱动 About 卡片 和 检查更新 的链路
  • 修正 CI 矩阵表中第二个 runner 被误标为 "Intel" 的描述(两个 runner 都是 macos-latest)
  • 列出全部 6 个 Cargo.toml 路径,明确说"不要碰"

下载

平台 DMG
Apple Silicon mHost_0.3.3_aarch64.dmg
Intel mHost_0.3.3_x64.dmg

.app.tar.gz 同帖提供(mHost_aarch64.app.tar.gz、mHost_x64.app.tar.gz)。

升级方式

  • 已安装 v0.3.x:打开 mHost → Settings → "检查更新" → 看到 v0.3.3 后点击跳转下载页
  • 首次安装或从 v0.2.x 升级:直接下载对应架构的 DMG 拖入 Applications 即可,不会影响 /etc/hosts 中 # ---- mHost start ---- managed block

已知问题

  • 安装包未做 Apple 代码签名(同 v0.3.x 一直的状态),首次打开如遇 Gatekeeper 拦截请右键 → 打开
  • Linux / Windows 不在当前发版范围(#67)