native_stub.c
moonbit_labeler.internal_test.c
  正在创建库 D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\_build\native\debug\test\moonbit_labeler.internal_test.lib 和对象 D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\_build\native\debug\test\moonbit_labeler.internal_test.exp
Error: [4032]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\gherkin_blackbox_test.mbt:97:32 ]
    │
 97 │   let r : Result[@image.Image, @image.DecodeError] = try? @image.decode(get_fixture())
    │                                ─────────┬────────  
    │                                         ╰────────── The type @image.DecodeError is undefined.
────╯
Error: [4024]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\gherkin_blackbox_test.mbt:99:9 ]
    │
 99 │     Err(@image.DecodeError::UnsupportedFormat(_)) => assert_true(true)
    │         ─────────┬────────  
    │                  ╰────────── The type/trait @image.DecodeError is not found.
────╯
Error: [4032]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\gherkin_blackbox_test.mbt:107:32 ]
     │
 107 │   let r : Result[@image.Image, @image.DecodeError] = try? @image.decode(get_fixture())
     │                                ─────────┬────────  
     │                                         ╰────────── The type @image.DecodeError is undefined.
─────╯
Error: [4024]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\gherkin_blackbox_test.mbt:109:9 ]
     │
 109 │     Err(@image.DecodeError::InvalidHeader(_)) => assert_true(true)
     │         ─────────┬────────  
     │                  ╰────────── The type/trait @image.DecodeError is not found.
─────╯
Error: [4032]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\gherkin_blackbox_test.mbt:124:25 ]
     │
 124 │   let r : Result[Bytes, @image.DecodeError] = try? @image.encode(img, @image.ImageFormat::PNG)
     │                         ─────────┬────────  
     │                                  ╰────────── The type @image.DecodeError is undefined.
─────╯
Error: [4036]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\gherkin_blackbox_test.mbt:124:71 ]
     │
 124 │   let r : Result[Bytes, @image.DecodeError] = try? @image.encode(img, @image.ImageFormat::PNG)
     │                                                                       ───────────┬───────────  
     │                                                                                  ╰───────────── Cannot create values of the read-only type: PNG.
─────╯
Error: [4024]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\gherkin_blackbox_test.mbt:126:9 ]
     │
 126 │     Err(@image.DecodeError::EncodeNotImplemented(_)) => assert_true(true)
     │         ─────────┬────────  
     │                  ╰────────── The type/trait @image.DecodeError is not found.
─────╯
Error: [4036]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\gherkin_blackbox_test.mbt:141:34 ]
     │
 141 │   let bytes = @image.encode(img, @image.ImageFormat::BMP) catch {
     │                                  ───────────┬───────────  
     │                                             ╰───────────── Cannot create values of the read-only type: BMP.
─────╯
Error: [4036]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\gherkin_blackbox_test.mbt:158:34 ]
     │
 158 │   let bytes = @image.encode(img, @image.ImageFormat::QOI) catch {
     │                                  ───────────┬───────────  
     │                                             ╰───────────── Cannot create values of the read-only type: QOI.
─────╯
Warning: [0020]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\gherkin_blackbox_test.mbt:97:54 ]
    │
 97 │   let r : Result[@image.Image, @image.DecodeError] = try? @image.decode(get_fixture())
    │                                                      ──┬─  
    │                                                        ╰─── Warning (deprecated): `try?` is deprecated.

  Do not mechanically replace this with `try expr |> Ok catch { e => Err(e) }`; that still creates a local `Result` wrapper and usually misses theintended migration.
  Only create `Ok`/`Err` when the `Result` value must escape this local expression: stored, returned, passed to a Result-taking API, or kept for later comparison as data.

  Migration in inspect-based tests:
  1. If the expected behavior is success, remove `try?` and run the raising expression directly:

    inspect(expr, content=...)

  2. If the expected behavior is an error, replace `try?` with `try ... catch ... noraise`:

    try expr catch {
      e => inspect(e, content=...)
    } noraise {
      _ => fail("expected expr to raise")
    }

────╯
Warning: [0020]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\gherkin_blackbox_test.mbt:107:54 ]
     │
 107 │   let r : Result[@image.Image, @image.DecodeError] = try? @image.decode(get_fixture())
     │                                                      ──┬─  
     │                                                        ╰─── Warning (deprecated): `try?` is deprecated.

  Do not mechanically replace this with `try expr |> Ok catch { e => Err(e) }`; that still creates a local `Result` wrapper and usually misses theintended migration.
  Only create `Ok`/`Err` when the `Result` value must escape this local expression: stored, returned, passed to a Result-taking API, or kept for later comparison as data.

  Migration in inspect-based tests:
  1. If the expected behavior is success, remove `try?` and run the raising expression directly:

    inspect(expr, content=...)

  2. If the expected behavior is an error, replace `try?` with `try ... catch ... noraise`:

    try expr catch {
      e => inspect(e, content=...)
    } noraise {
      _ => fail("expected expr to raise")
    }

─────╯
Warning: [0020]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\gherkin_blackbox_test.mbt:124:47 ]
     │
 124 │   let r : Result[Bytes, @image.DecodeError] = try? @image.encode(img, @image.ImageFormat::PNG)
     │                                               ──┬─  
     │                                                 ╰─── Warning (deprecated): `try?` is deprecated.

  Do not mechanically replace this with `try expr |> Ok catch { e => Err(e) }`; that still creates a local `Result` wrapper and usually misses theintended migration.
  Only create `Ok`/`Err` when the `Result` value must escape this local expression: stored, returned, passed to a Result-taking API, or kept for later comparison as data.

  Migration in inspect-based tests:
  1. If the expected behavior is success, remove `try?` and run the raising expression directly:

    inspect(expr, content=...)

  2. If the expected behavior is an error, replace `try?` with `try ... catch ... noraise`:

    try expr catch {
      e => inspect(e, content=...)
    } noraise {
      _ => fail("expected expr to raise")
    }

─────╯
Warning: [0029]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\moon.pkg:11:3 ]
    │
 11 │   "moonbitlang/async",
    │   ─────────┬─────────  
    │            ╰─────────── Warning (unused_package): Unused package 'moonbitlang/async'
────╯
Warning: [0029]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\moon.pkg:13:3 ]
    │
 13 │   "riantr/moonbit_labeler/extensions/image",
    │   ────────────────────┬────────────────────  
    │                       ╰────────────────────── Warning (unused_package): Unused package 'riantr/moonbit_labeler/extensions/image'
────╯
Warning: [0029]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\moon.pkg:14:3 ]
    │
 14 │   "riantr/moonbit_labeler/extensions/labeler",
    │   ─────────────────────┬─────────────────────  
    │                        ╰─────────────────────── Warning (unused_package): Unused package 'riantr/moonbit_labeler/extensions/labeler'
────╯
