Skip to content

crabslab v0.7.0

Choose a tag to compare

@schell schell released this 17 Oct 20:46
· 1 commit to main since this release
a944c0f

crabslab workspace release wave

crabslab-derive 0.4.7

  • Rewritten derive for the unified CPU/GPU SlabItem trait (SLAB_SIZE, Array,
    to_array/from_array/array_container)
  • Fieldless #[repr(u32)] enums serialize their variant position in one slot;
    #[default] variants make the unknown-discriminant fallback agree on both sides

crabslab 0.7.0 (BREAKING)

  • GPU side ported from rust-gpu/SPIR-V to wgsl-rs 0.1.0-beta.5; rust-gpu support is dropped
  • One #[derive(SlabItem)] now covers both sides: the CPU derive, plus the
    SlabItemExt wgsl-rs extension generating the same serialization in WGSL
  • New dual-world slab_read!/slab_write! macros, usable on CPU and in shaders
  • Unified SlabItem trait shape (breaking vs 0.6.x)
  • Docs rewritten for the wgsl-rs era; #![warn(missing_docs)] enforced; zero
    cargo doc warnings; GPU tests + doctests run in CI on macOS (Metal)

craballoc 0.5.0 (BREAKING)

  • Arena/Value API (the old SlabAllocator/Hybrid API is gone; last published: 0.3.1)
  • BREAKING: the four Value::into_* direction changes return Result - only a
    value's sole live handle may switch direction; with clones present they fail
    and return the original
  • Value::set_gpu_sync deprecated in favor of the into_* methods
  • README's end-to-end example builds its pipeline with wgsl-rs-linkage-wgpu and
    runs as a GPU doctest in CI