Skip to content

fix: MoonBit の非推奨・暗黙参照の警告を解消して release-check を通す #207

Description

@mizchi

v0.48.0 の公開作業で、現行 MoonBit ツールチェーンの警告により pkf run release-check が check:js で失敗することを確認した。警告の抑制ではなく、推奨される記法への移行で解消する。

再現環境

  • 対象コミット: 2681c3b (Release v0.48.0)
  • moon: 0.1.20260920 (914d7da 2026-09-20)
  • moonc: v0.10.14+7d59c7ec9 (2026-09-18)
pkf run release-check
# 失敗箇所だけを実行する場合
moon check --deny-warn --warn-list=-27-20-82 --target js

JS の厳格チェックでは、以下の警告が計82件のエラーとして報告された。

対応対象

  • implicit_impl_as_method(0079、22件): trait 実装のメソッドを通常のメソッドとして暗黙に公開する挙動が非推奨。既存 API の利用形態を確認し、必要に応じて明示的な pub extend や通常メソッドの定義に移行する。
    • 例: modules/bit_fast_import/src/fast_import_parse.mbt:156 の derive(Eq, Debug)。
  • test_unqualified_package(0025、60件): テストでパッケージのシンボルを暗黙に取り込む参照を、パッケージ修飾付きの参照に変更する。
    • 例: modules/bit_archive/src/tar_test.mbt:5 の tar_format_octal → @bit_archive.tar_format_octal。

上記件数は JS の厳格チェックで観測した範囲。全ターゲットを確認し、同種の警告を解消する。通常の moon check --target all は2,229件の警告、エラー0で成功しているが、--deny-warn を使うリリースゲートは通らない。

完了条件

  • 警告を追加で無効化せず、check:js / check:wasm / check:native が成功する。
  • 公開 API と既存の振る舞いを維持し、必要な生成インターフェースを更新する。
  • 関連テストと pkf run release-check が成功する。

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions