Skip to content

Releases: ibraheemdev/seize

0.4.0

17 Apr 18:29
Compare
Choose a tag to compare
  • Guards are now abstracted with a Guard trait.
  • Guard renamed to LocalGuard.
  • Added OwnedGuard, a guard that implements Send and Sync.
  • Moved unprotected guard to functionality to the UnprotectedGuard type.
  • Removed Collector::ptr_eq and added Guard::belongs_to.

0.3.0

12 Mar 22:14
Compare
Choose a tag to compare

Migration

  • When migrating to 0.3.0, the type that is passed to a reclaimer is now *mut Link instead of Link. This means that any instances of link.cast::<T>() must be changed to link.cast::<Linked<T>>(), or Link::cast::<Linked<T>>(link). Any old reclaimers may now silently call ptr::cast instead of Link::cast, resulting in undefined behavior.

Changes

  • Support for dynamically sized types through the AsLink trait.
  • Guard::flush renamed to Guard::refresh, and a new Guard::flush operation added.
  • Linked::into_inner was removed as value is now a public field.
  • The seize::AtomicPtr alias has been removed.

0.2.0

20 Feb 20:15
Compare
Choose a tag to compare
  • Added seize::AtomicPtr<T>, a type alias for std::AtomicPtr<Linked<T>>.
  • Epoch tracking is now optional.
  • Added Guard::flush.
  • Retirement can now be delayed for the lifetime of a guard (Guard::retire).
  • Added Linked::eq, Linked::into_inner.
  • Added Collector::ptr_eq.
  • Guard::unprotected is now const.

0.1.0

04 Feb 01:06
Compare
Choose a tag to compare

Initial release 🎉