Skip to content

0.7.6

Latest

Choose a tag to compare

@mjp41 mjp41 released this 02 Oct 09:56
f126f1c

What's Changed

This release fixes allocator correctness issues in overflow handling, remote deallocation, and Windows process teardown. It also improves concurrent queue draining, adds RISC-V timing support, prepares the Rust crates for 0.7.6, fixes Rust build configuration and header-only integration documentation, and refreshes CI and contributor guidance.

Bug Fixes

  • Detect reallocarr multiplication overflow before handling zero-size allocations by @devnexen in #863
  • Initialize PalTimer link state for non-static timers by @devnexen in #865
  • Preserve batched remote deallocations with pointer-domesticating configurations by @sblessing in #877
  • Prevent Windows process-shutdown crashes by retaining VirtualVector reservations, while continuing to release them when a DLL is explicitly unloaded with FreeLibrary, by @mjp41 with @Copilot in #886

Allocator Internals and Performance

  • Improve concurrent freelist MPSC queue draining and reduce message-passing overhead by @mjp41 in #881

Platform Support

Rust

  • Prepare snmalloc-rs and snmalloc-sys version 0.7.5 for publication by @mjp41 in #868
  • Stop build_cc from defining snmalloc options that are set to OFF by @athei in #873
  • Prepare snmalloc-rs and snmalloc-sys version 0.7.6 for publication by @mjp41 in #887

Documentation and Contributor Guidance

  • Fix the header-only CMake integration recipe in BUILDING.md by @lenamonj in #878
  • Simplify AI contribution instructions and clarify build and test guidance by @mjp41 in #888

Testing

  • Correct the usable-size expectations for GWP-ASan secondary allocations by @mjp41 in #882

Build and CI

New Contributors

Full Changelog: 0.7.5...0.7.6