Repository navigation
v7.4.0
v7.4.0(2026-10-11 · 正式版)
Repo file operations now go through the RepoFileService; legacy defect fix batch.
主题:仓库文件操作接入文件操作服务 + 遗留缺陷修复批。
修复 · Fixed
- 仓库页文件操作接入
RepoFileService:新建 / 删除 / 重命名与目录递归删除改调服务 ——
路径与内容先在服务端规则里校验;单文件写入带文件级基线(create 不覆盖既有文件、
delete 不删错版本);目录删除由服务重新展开前缀并自动分批(≤200/批、基线链式推进),
页面级 200 文件硬上限移除。整体成败以result.ok判定,失败按result.items
逐项提示(同一文案只报一次,避免重复提示淹没界面)。 - 目录删除 / 重命名增加进行中进度:服务的
onProgress回调把阶段与计数
(准备 / 读取 / 上传 / 提交)更新到代码标签顶部的状态行;进行中不再整页转圈、
把列表藏起来。 - 写后失效只读缓存:
RepoFileService的每个写操作在条目真正落定后调用
GhApi.invalidateReadCache(),随后的读取回源;失效本身失败不改变
「写入已成功」的事实,只记一条诊断。 - 语言白名单对齐:设置层
languageCodes由 15 种收敛为 6 种
(简中 / 繁中 / 英 / 德 / 法 / 俄),注释同步说明与OgLI18n.locales、
assets/i18n/目录、pubspec 声明三处一致(此前白名单留着已被删除的语言代码)。 - 文件预览枚举删除死值
OgLPreviewKind.text:文本文件仍判定为unknown
(既有行为由测试锁定),file_preview_page的两处对应分支一并删除。 - 文件图标删除不可达分支:
readme.md/changelog.md两个 case 删除 ——
md在扩展名分支已先返回,这两个 case 进不去。 - 加速地址校验补主机名检查:
https://(无主机)不再放行 —— 它会以空前缀参与
拼接、把「加速已开」伪装成直连;新增键accelUrlHost(6 语言)。 - 下载文件名净化:Windows 保留名改按第一个点之前的部分判定 ——
aux.tar.gz等多扩展名不再绕过(Microsoft 文档:NUL.tar.gz等价于NUL),
补测试用例。 - 登录令牌格式提示补齐:
tokenShapeInvalid增补ghs_/ghr_前缀
(6 语言),提示与实际接受的 6 种前缀一致。 - Gist 详情截断标注:
raw回退拉全文失败时,_GistFile.truncated如实置真,
卡片标注「内容可能被截断(全文回退失败)」(新增键truncatedWarning,6 语言),
不再把残缺内容当完整内容展示。 - 通知中心落盘去重:相同的
title + detail先查去重、再落盘 ——
重复条目不再反复写入磁盘日志。 OgLNoticeDelivery接线状态注释:当前所有调用点都走默认auto,
参数尚未接线(逻辑未变,枚举与参数保留)。- 关于页依赖许可清单补 6 项:
flutter_svg/window_manager/saf_util/
saf_stream/flutter_local_notifications/yaml;顺序声明改为与
pubspec.yaml的dependencies逐项一致。 - 登录页清理:删除数字进度的死注释、
finally中冗余的未挂载分支;
_openOnboarding改用已取得的navigator(不再从 builder 的 context 现取)。 - 动效注释与实现对齐:起始缩放「仅拉满档 < 1」改为「标准档起 < 1:0.99 → 0.975」。
变更 · Changed
- 版本号:
pubspec.yaml7.3.1+70310 → 7.4.0+70400;
kOgLAppVersion同步升至 7.4.0。