- fixes internal soundness issues (e.g. one similar to rust-lang/rust#65719)
- renames
OnceCell::new
toOnceCell::uninit
andOnceCell::initialized
toOnceCell::new
- adds some convenience trait implementations and tightens some trait bounds (breaking)
- improved internal code structure and code re-usage, better facilitates monomorphic code usage
- updates docs to explicitly specify the concrete synchronization guarantees
- mostly internal refactorings
- adds the
noblock
module containing types which only allow non-blocking initialization raw
is renamed todoc
and hidden from documentation, but linked to from within the docs- the
Spin
marker type is no longer exported
- fixes an apparent regression, requiring a new compiler than the stated 1.36.0
- fixes potential UB due to insufficiently strict bounds on
Sync
implementation forOnceCell
(see Issue #3)
- improves and clarifies wording of public documentation
- improves internal documentation around all uses of unsafe code
- bumps MSRV to 1.49.0