Skip to content

v0.2.4 — AVX2 cfg build fix for macOS x86_64

Choose a tag to compare

@ohdearquant ohdearquant released this 25 May 05:03
· 50 commits to main since this release
aa111bd

Highlights

Build fix for macOS x86_64. v0.2.3 fails to compile on macOS x86_64 (Intel Mac, GitHub Actions macos-13 runners, cross-compile from aarch64-macos). The AVX2 microkernel imported TILE_I/J/K constants that are gated out on macOS in tiled.rs, but the import gate in tiled_avx2.rs did not exclude macOS. This release fixes the cfg mismatch.

The bug surfaced when downstream crates (khive-storage) pulled lattice-inference 0.2.3 and hit E0432: unresolved imports super::tiled::TILE_I, TILE_J, TILE_K.

Fix

  • AVX2 cfg-gating alignmentcrates/inference/src/forward/cpu/tiled_avx2.rs: changed #[cfg(target_arch = "x86_64")] to #[cfg(all(target_arch = "x86_64", not(target_os = "macos")))], matching the existing pattern in tiled_neon.rs and the master switch in tiled.rs. The AVX2 microkernel is dead code on macOS regardless (Accelerate path is selected), so gating it out is correct.

No behavioral change on any platform that compiled v0.2.3 successfully. Pure build-fix release.

Crates Published

  • lattice-inference 0.2.4
  • lattice-embed 0.2.4
  • lattice-fann 0.2.4
  • lattice-tune 0.2.4
  • lattice-transport 0.2.4

Note on v0.2.3

v0.2.3 was published to crates.io on 2026-05-24 and yanked on 2026-05-25 — it shipped the AVX2 cfg-mismatch above, breaking cargo build on macOS x86_64 targets. v0.2.4 is the first release with a working build matrix across all supported targets. Use 0.2.4 or later. The GitHub tag v0.2.3 remains for history; no fresh crates.io installs from it.

Diff Stats

1 file changed (tiled_avx2.rs), 3 cfg attributes updated. Pure cfg-fix; no SIMD logic or semantics changed.