Skip to content

LeetCode Chinese 1.0.4

Latest

Choose a tag to compare

@github-actions github-actions released this 20 Oct 06:08

LeetCode Chinese 1.0.4

本文沿用项目文档的 md-output 编号与修订记录规范。

[TOC]


修订记录

编号 版本 修订人 修订内容 日期
001 1.0 jie.chen 修复市场规则禁用错误,清理源码检查警告并增加发布预检 2026-10-20

1. 本版修复

检查反馈 处理
禁用 sentence-case 删除设置页的禁用注释,输入提示改为中文“输入题目目录”;实际默认目录仍为 leetcode
document.createElement 使用官方推荐的窗口 DOM 创建方法,按 ownerDocument.win 或 activeWindow 创建元素,保留多窗口归属
不安全类型 tsconfig 明确声明 Node 与 ES2020 标准库;笔记属性使用 Record<string, unknown> 类型注解,再通过现有判断收窄字段
多余类型断言 使用新版规则清理冗余断言,保留确实需要的类型边界;未知 Promise 拒绝值转换为 Error
设置搜索 实现 getSettingDefinitions,按账号、笔记、编辑器、迁移、AI、知识图谱六个分区提供搜索名称和别名,继续复用原有控件与保存逻辑
旧版本兼容 保留 Obsidian 1.12.7 的 display 入口;1.13+ 通过声明式定义渲染,最低版本不变
moment 警告 npm 与 pnpm 均约束 moment 为 2.31.0;同时固定已有 Obsidian 类型包版本,避免安装时漂移
自定义配置目录的迁移备份 备份写入与查找统一使用 vault.configDir,修正写死默认目录导致的备份重试不一致

设置搜索索引只包含分区名称和选项名称,不包含 Cookie、密钥或用户填写的值。切换 AI 服务时保留宿主创建的分区节点,在节点内部刷新控件。


2. 本地检查与市场检查的差异

此前仓库使用 eslint-plugin-obsidianmd 0.3.0 和 typescript-eslint 8.35.1。市场提示了较新规则和类型断言检查;本版将已有开发检查依赖更新为 0.4.2 与 8.72.0,不增加插件运行依赖。

原 tsconfig 的标准库列表没有明确包含 ES2019/ES2020,也没有显式列出 Node 类型。部分 API 的类型依赖开发机间接加载;本版显式配置,避免扫描环境把标准库调用识别为错误类型。市场实际扫描环境无法从本地完全复刻,最终结果仍需以本版的市场重新检查为准。

1.0.3 的 manifest 描述已不含 Obsidian;维护者确认此前重复的描述错误来自混入的 1.0.2 报告。本版不改回该描述。


3. 防复发检查

  • pnpm lint 使用 --max-warnings 0,出现警告也会阻止 CI 和 Release。
  • 新增 pnpm run check:marketplace,在 lint 前自动执行,检查描述、版本一致性、英文简介、moment 锁定和源码禁用规则。
  • 新增回归覆盖设置索引不读取凭据、声明式设置切换服务后的分区保留、多 document 下控件归属。
  • 测试环境补齐 Obsidian 的窗口 DOM helper;迁移测试使用自定义配置目录,验证路径来源于 vault.configDir。

生产依赖的官方 npm 审计在本次核对时报告 0 个漏洞。该结论针对实际解析的生产依赖,不代表第三方扫描器必然采用相同的依赖解析方式,也不代表未来不会发布新公告。

本地发布验证:lint 为 0 错误、0 警告;264 个测试文件通过,3083 项测试通过,8 项既有测试跳过;TypeScript 检查与生产构建通过。main.js 为 1,955,367 字节,低于 2,000,000 字节上限。


4. 安装与市场重新检查

下载 1.0.4 的 leetcode-chinese.zip,覆盖插件目录中的 main.js、manifest.json、styles.css,保留 data.json,再重新启用插件。

在市场管理页确认版本为 1.0.4;必要时通过菜单的 Check for new releases 更新版本,再执行 Request review。也可使用 Review branch 指定本次提交进行预览扫描。请只对照同一版本的检查结果。

1.0.3 已说明的两处 Vim 光标 !important 和 AWS 外部凭据程序能力仍保留。它们不属于本次类型与设置规则清理的范围。


参考资料