chore: zero-warning hardening (862 → 0) for future MoonBit toolchains (#12)
* warnings: eliminate unused/priv/reserved-keyword + long-tail deprecations
- remove unused packages/values/trait-bounds; add priv to internal types
- rename reserved-keyword identifiers (method->method_name, lazy->lazy_*)
keeping JSON-RPC wire key "method" unchanged
- not(x)->!x, Char::from_int->Int::unsafe_to_char, Map::new()->Map([]),
.size()->.length()
- zigzag shl/asr/lsr -> <</>> (logical shift via unsigned), clock/json
reinterpret, Float::from_int/from_double, try?->try/catch,
@strconv.parse_*->@string.parse_*, is_err/is_ok->is Err/Ok, get_char
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
* warnings: migrate Show->Debug ecosystem to zero compiler warnings
Eliminate all remaining deprecation/reserved warnings (434 -> 0) by completing
the Show/Debug split per moonbitlang/core guidance:
- derive(Show) -> derive(Debug) for all structural types; add manual Show
(delegating to Debug or domain-specific text) for types that are displayed
in production / interpolation (LifecycleState, Ty, DecodeError, ParseError,
SchemaError, SimStatus, GrammarError, ...).
- Migrate test/debug call sites: bare assert_eq/assert_not_eq -> @test.*,
and inspect on derived/composite-Show args -> @debug.debug_inspect; keep
builtin inspect for String/custom-Show args (not deprecated).
- Add @test/@debug imports in the correct moon.pkg scopes (test/wbtest/prod
inline) and prune now-unused aliases.
- Refresh snapshot contents for Debug formatting (quoted strings, struct
spacing) via moon test --update.
moon check: 0 warnings, 0 errors. moon test: 1920/1920 on wasm-gc, native, js.
Co-Authored-By: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>
---------
Co-authored-by: ruthasprang3424776 <ruthasprang3424776@gmail.com>
Co-authored-by: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com>