chore: make CI strict — fmt diff + deny-warn - #4
Merged
Merged
Conversation
Previously CI ran `moon check --warn-list=-a`, which silenced every warning including new nightly deprecations. Tightening it so that deprecation warnings become CI errors and get migrated promptly: - `moon fmt && git diff --exit-code` — enforces fmt cleanliness - `moon check --deny-warn` — warnings are errors - `moon test` — unchanged Generated with Claude Code (https://claude.com/claude-code).
Three deprecations surfaced by `moon check --deny-warn`: - `pattern.substring(start=N)` / `word.substring(start=N)` — `substring` is deprecated; switched to MoonBit slice syntax `s[N:].to_string()`, matching the compiler's suggested replacement. Note: codex-cli review flagged a theoretical difference for starts that land on a UTF-16 trailing surrogate; current tests and `vscode_fuzzy_score_simple` (which always passes 0) don't exercise that path, so we follow the compiler guidance. - `@json.inspect(...)` → `json_inspect(...)` — the package-qualified form is deprecated. - `.gitignore`: ignore `_build/`. All 5 tests pass under moon test. Generated with Claude Code (https://claude.com/claude-code).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The existing CI workflow uses
moon check --warn-list=-a, whichsilences every warning including new nightly deprecations. This means
deprecated syntax and APIs sneak in unnoticed.
Tightening it so deprecations become CI errors and get migrated early.
Changes
moon fmt && git diff --exit-code— format diff gatemoon check --deny-warn— warnings are errorsmoon test— unchangedIf this PR turns red against
main, that's the point: surfacingoutstanding deprecations. They should be fixed in follow-up PRs.
🤖 Generated with Claude Code