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: [0012]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib.mbt:146:19 ]
     │
 146 │         Err(_) => raise DecodeError::InvalidHeader("decode failed")
     │                   ────────────────────────┬────────────────────────  
     │                                           ╰────────────────────────── Warning (unreachable_code): Unreachable code
─────╯
Warning: [0020]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib.mbt:159:10 ]
     │
 159 │   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: [0012]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib.mbt:162:15 ]
     │
 162 │     Err(_) => raise DecodeError::InvalidHeader("decode failed")
     │               ────────────────────────┬────────────────────────  
     │                                       ╰────────────────────────── Warning (unreachable_code): Unreachable code
─────╯
Warning: [0020]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib.mbt:195:14 ]
     │
 195 │       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: [0012]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib.mbt:198:19 ]
     │
 198 │         Err(_) => raise DecodeError::InvalidHeader("dimension read failed")
     │                   ────────────────────────────┬────────────────────────────  
     │                                               ╰────────────────────────────── Warning (unreachable_code): Unreachable code
─────╯
Warning: [0020]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib.mbt:326:14 ]
     │
 326 │       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: [0012]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib.mbt:329:19 ]
     │
 329 │         Err(_) => raise DecodeError::InvalidHeader("encode failed")
     │                   ────────────────────────┬────────────────────────  
     │                                           ╰────────────────────────── Warning (unreachable_code): Unreachable code
─────╯
Warning: [0020]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib.mbt:332:14 ]
     │
 332 │       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")
    }

─────╯
Warning: [0012]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib.mbt:335:19 ]
     │
 335 │         Err(_) => raise DecodeError::InvalidHeader("encode failed")
     │                   ────────────────────────┬────────────────────────  
     │                                           ╰────────────────────────── Warning (unreachable_code): Unreachable code
─────╯
Error: [4021]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:89:15 ]
    │
 89 │   assert_true(is_supported_format(b"\x89PNG\r\n\x1a\n"))
    │               ─────────┬─────────  
    │                        ╰─────────── The value identifier is_supported_format is unbound.
────╯
Error: [4021]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:90:16 ]
    │
 90 │   assert_false(is_supported_format(b"not a header"))
    │                ─────────┬─────────  
    │                         ╰─────────── The value identifier is_supported_format is unbound.
────╯
Error: [4021]
    ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:91:16 ]
    │
 91 │   assert_false(is_supported_format(b""))
    │                ─────────┬─────────  
    │                         ╰─────────── The value identifier is_supported_format is unbound.
────╯
Warning: [0001]
     ╭─[ D:\src\MiniMax\Projects\MoonBit\moonbit-labeler\staging-moonbit-image\lib_test.mbt:197:4 ]
     │
 197 │ 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 13 warnings, 3 errors.
Error: failed to run check for target Native

Caused by:
    failed when checking project
