Skip to content

fix(ci): stabilize allocation probe on macOS MSRV - #71

Merged
jcwal1516 merged 1 commit into
mainfrom
fix/alloc-probe-msrv-flake
Aug 4, 2026
Merged

fix(ci): stabilize allocation probe on macOS MSRV#71
jcwal1516 merged 1 commit into
mainfrom
fix/alloc-probe-msrv-flake

Conversation

@jcwal1516

Copy link
Copy Markdown
Member

Summary

  • allocate the exact-count probe directly as boxed slice storage
  • keep the Rayon pool uninitialized while allocator self-tests run
  • preserve the exact one-allocation and one-deallocation assertions

Root cause

The post-merge full-validation run failed only on macOS with Rust 1.96. In a debug build, Box::new on the large inline array could introduce an additional allocator-backed temporary. The eager Rayon pool broadcast could also contribute unrelated worker activity to the intentionally process-wide meter, making the exact-count self-test nondeterministic.

Validation

  • reproduced the original failure with cargo +1.96 test -p j2k-alloc-probe --test allocation_probe
  • passed 20 consecutive focused Rust 1.96 runs
  • passed the focused test under Rust 1.96 with CARGO_PROFILE_DEV_DEBUG=full
  • passed the focused test under stable Rust with CARGO_PROFILE_DEV_DEBUG=full
  • cargo xtask fmt
  • cargo xtask clippy
  • cargo xtask clippy-strict
  • cargo xtask test

Failed run: https://github.com/frames-sg/j2k/actions/runs/30873033592/job/91878736880

@jcwal1516
jcwal1516 marked this pull request as ready for review August 4, 2026 03:55
@jcwal1516
jcwal1516 merged commit 6400fcd into main Aug 4, 2026
49 checks passed
@jcwal1516
jcwal1516 deleted the fix/alloc-probe-msrv-flake branch August 4, 2026 03:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant