Repository navigation
ci: make local checks portable across platforms - #638
Conversation
3f7d754 to
06fc721
Compare
06fc721 to
32456bc
Compare
Codecov Report✅ All modified and coverable lines are covered by tests. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
628b482 to
20b077e
Compare
20b077e to
f415e79
Compare
|
維護者調整:在這個分支上面加了 5 個 commit,沒有改寫你原本的 commit。#639 已經和這裡拆開,直接以 方向:Windows 也跑全部檢查
效能:雜湊改回一個 batch
其他
驗證
已知限制: 另外,PR 描述裡「Windows 本機執行 |
6733832 to
e297f1d
Compare
這個 PR 做了什麼
改善本機檢查與相關工具在 Windows Git Bash、macOS 和 Linux 上的相容性,修正 Windows 路徑、SHA-256 工具與文字編碼造成的檢查失敗。Windows 本機執行
tool/dev/analyze.sh,其餘 gates、codegen、測試與 coverage 交由 Linux CI。正式工具程式碼:
mise取得的 Windows 路徑,並以 Bash 3.2 相容的方式進行不分大小寫比較,避免合法的 Flutter SDK 路徑被誤判為系統 SDKshasum與sha256sum間切換的 SHA-256 helper,並在目前 shell 中逐一計算 cache key 的檔案雜湊tool/commit.sh的跨平台檢查結果訊息,並保留使用--no-check時的警告測試程式碼:
Platform.pathSeparator解析 DevFS 暫存路徑,使測試不依賴 POSIX/這個 PR 沒有修改 App 功能、UI、EEW 推估、通知路徑或其他安全關鍵邏輯。
相關 issue
沒有對應的 issue。
怎麼驗
tool/check/commits.sh origin/main..HEAD通過:8 個 commitstool/check/tooling.sh通過tool/dev/_lib.sh,不再因${variable,,}出現bad substitutionbuild通過檢查清單
tool/check/commits.sh origin/main..HEAD通過—— commit 訊息就是更新日誌,格式見 commit.md
mise exec -- flutter analyze與mise exec -- flutter test通過AppLocalizations,沒有寫死gh pr checks:每一項都是 pass 或 skipped)—— 沒過不能合併,見 pr.md
AppSpacing/AppRadius/AppMotion,深色模式看過,文字對比度可接受