Skip to content

v4.7.0

Choose a tag to compare

@github-actions github-actions released this 03 Oct 12:54
· 154 commits to main since this release

OhGithubLost 4.7.0 · 正式版 / Stable

主题 · Theme — 仓库文件创建规则、写权限判定(permissions)、通知投递分流、外观修正。
Repository file-creation rules, write-permission detection, notice delivery routing, appearance fixes.

新增 · Added

  • 统一「+」入口与路径规则 · Single “+” entry with strict path rules
    新建文件按钮收敛为只有加号的 FAB:路径以 / 结尾即建目录,自动生成 <目录>/.gitkeep 占位(Git 不跟踪空目录)。路径白名单为 A-Z a-z 0-9 . _ - 与 /;禁止中文与全角字符、空格与特殊字符,禁止 ..、//、前导 /、以点或空格结尾、Windows 保留名、单级超过 100 字符。
    The “new file” action is now a single “+” FAB: a path ending with / creates a directory, materialised with <dir>/.gitkeep (Git does not track empty directories). Allowed characters are A-Z a-z 0-9 . _ - and /; CJK/full-width characters, spaces, special characters, .., //, a leading /, trailing dot/space, Windows reserved names and path segments longer than 100 characters are all rejected.

  • 禁止空文件 · No empty files
    新建文件必须填写内容(.gitkeep 占位例外);同名条目存在时先拦下并说明原因,不再等到 422。
    New files must have content (except the .gitkeep placeholder). Existing names are rejected up front with a reason instead of surfacing a 422 later.

  • 写权限判定 · Write-permission detection
    GhRepo 新增 canPush / canAdmin 与 isWritable(解析 permissions);仓库页在进入时补拉单仓库详情(只有该接口返回 permissions)。无写权限时隐藏仓库设置、新建文件 FAB 与空态按钮、文件编辑/删除、条目删除、新建发布、新建分支;拿不到详情时留痕并按不可写处理。
    GhRepo gained canPush / canAdmin and isWritable parsed from permissions; the repo page fetches the single-repository endpoint on entry (the only one returning permissions). Without write access it hides repo settings, the new-file FAB and empty-state button, file edit/delete, entry deletion, new release and new branch; if the detail cannot be fetched the event is logged and the repo is treated as read-only.

  • 通知投递分流 · Notice delivery routing
    新增 OgLNoticeDelivery{auto, inAppOnly, allChannels};OgLNoticeHost 接入 WidgetsBindingObserver:后台不弹应用内提示,allChannels / critical 走系统通道,其余排队并在回到前台时补发,不丢消息。
    Added OgLNoticeDelivery{auto, inAppOnly, allChannels}. OgLNoticeHost now observes app lifecycle: no in-app banners while backgrounded, allChannels/critical notices go through the system channel, everything else is queued and delivered on return to foreground — nothing is dropped.

变更 · Changed

  • 外观页 ChoiceChip 选中态改为 primary/onPrimary,明色环境下对比度提升;主题色芯片不再用勾号顶掉色点。
    Appearance page selection now uses primary/onPrimary for better contrast in light mode; the seed-colour chip no longer replaces the colour dot with a check mark.
  • 权限判定统一走 permissions.push,不做降级:无权限就是不给入口。
    Permission checks consistently use permissions.push with no fallback: no permission means no entry point.

已知限制 · Known limitations

  • 多语言(R6)尚未落地:界面仍为中文,已排入 4.9。
    Localisation (R6) is not shipped yet — the UI is still Chinese; scheduled for 4.9.
  • 目录重命名与跨目录批量操作仍未支持。
    Directory rename and cross-directory batch operations are still unsupported.

产物 · Artifacts

Android(arm64-v8a / armeabi-v7a / x86_64 / universal APK / AAB)、Windows、Linux、macOS、iOS —— 共 19 个文件。
Android (arm64-v8a / armeabi-v7a / x86_64 / universal APK / AAB), Windows, Linux, macOS, iOS — 19 files in total.