Warning: [0020]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib.mbt:143:14 ]
     │
 143 │       match (try? decode_by_format_raw(data, format)) {
     │              ──┬─  
     │                ╰─── 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\staging-moonbit-image\lib.mbt:158:10 ]
     │
 158 │   match (try? decode_by_format_raw(data, format)) {
     │          ──┬─  
     │            ╰─── 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\staging-moonbit-image\lib.mbt:193:14 ]
     │
 193 │       match (try? image_dimensions_raw(data, format)) {
     │              ──┬─  
     │                ╰─── 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\staging-moonbit-image\lib.mbt:323:14 ]
     │
 323 │       match (try? encode_bmp(img)) {
     │              ──┬─  
     │                ╰─── 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\staging-moonbit-image\lib.mbt:328:14 ]
     │
 328 │       match (try? encode_qoi(img)) {
     │              ──┬─  
     │                ╰─── 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")
    }

─────╯
Error: [4036]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:96:5 ]
    │
 96 │     ImageFormat::BMP, ImageFormat::QOI, ImageFormat::TGA, ImageFormat::PNG,
    │     ────────┬───────  
    │             ╰───────── Cannot create values of the read-only type: BMP.
────╯
Error: [4036]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:96:23 ]
    │
 96 │     ImageFormat::BMP, ImageFormat::QOI, ImageFormat::TGA, ImageFormat::PNG,
    │                       ────────┬───────  
    │                               ╰───────── Cannot create values of the read-only type: QOI.
────╯
Error: [4036]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:96:41 ]
    │
 96 │     ImageFormat::BMP, ImageFormat::QOI, ImageFormat::TGA, ImageFormat::PNG,
    │                                         ────────┬───────  
    │                                                 ╰───────── Cannot create values of the read-only type: TGA.
────╯
Error: [4036]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:96:59 ]
    │
 96 │     ImageFormat::BMP, ImageFormat::QOI, ImageFormat::TGA, ImageFormat::PNG,
    │                                                           ────────┬───────  
    │                                                                   ╰───────── Cannot create values of the read-only type: PNG.
────╯
Error: [4036]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:97:5 ]
    │
 97 │     ImageFormat::GIF, ImageFormat::JPEG,
    │     ────────┬───────  
    │             ╰───────── Cannot create values of the read-only type: GIF.
────╯
Error: [4036]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:97:23 ]
    │
 97 │     ImageFormat::GIF, ImageFormat::JPEG,
    │                       ────────┬────────  
    │                               ╰────────── Cannot create values of the read-only type: JPEG.
────╯
Error: [4036]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:102:15 ]
     │
 102 │   assert_true(ImageFormat::BMP.is_encodable())
     │               ────────┬───────  
     │                       ╰───────── Cannot create values of the read-only type: BMP.
─────╯
Error: [4036]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:103:15 ]
     │
 103 │   assert_true(ImageFormat::QOI.is_encodable())
     │               ────────┬───────  
     │                       ╰───────── Cannot create values of the read-only type: QOI.
─────╯
Error: [4036]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:105:5 ]
     │
 105 │     ImageFormat::TGA, ImageFormat::PNG, ImageFormat::GIF, ImageFormat::JPEG,
     │     ────────┬───────  
     │             ╰───────── Cannot create values of the read-only type: TGA.
─────╯
Error: [4036]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:105:23 ]
     │
 105 │     ImageFormat::TGA, ImageFormat::PNG, ImageFormat::GIF, ImageFormat::JPEG,
     │                       ────────┬───────  
     │                               ╰───────── Cannot create values of the read-only type: PNG.
─────╯
Error: [4036]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:105:41 ]
     │
 105 │     ImageFormat::TGA, ImageFormat::PNG, ImageFormat::GIF, ImageFormat::JPEG,
     │                                         ────────┬───────  
     │                                                 ╰───────── Cannot create values of the read-only type: GIF.
─────╯
Error: [4036]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:105:59 ]
     │
 105 │     ImageFormat::TGA, ImageFormat::PNG, ImageFormat::GIF, ImageFormat::JPEG,
     │                                                           ────────┬────────  
     │                                                                   ╰────────── Cannot create values of the read-only type: JPEG.
─────╯
Warning: [0001]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:214:4 ]
     │
 214 │ fn close_to(c : Color, r : Int, g : Int, b : Int, tol : Int) -> Bool {
     │    ────┬───  
     │        ╰───── Warning (unused_value): Unused function 'close_to'
─────╯
Warning: [0006]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\types.mbt:84:3 ]
    │
 84 │   TruncatedData(String)
    │   ──────┬──────  
    │         ╰──────── Warning (unused_constructor): Variant 'TruncatedData' is never constructed
────╯
Warning: [0006]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\types.mbt:86:3 ]
    │
 86 │   InvalidValue(String)
    │   ──────┬─────  
    │         ╰─────── Warning (unused_constructor): Variant 'InvalidValue' is never constructed
────╯
Failed with 8 warnings, 12 errors.
Error: failed to run check for target Native

Caused by:
    failed when checking project
