NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #4193 most downloaded on crates.io
Volatile wrapper types for raw pointers
Last release 2 years ago
no release in 18 months
Release timing varies
gaps range from 4 weeks to 1.5 years
Most releases are documented
notes for 15 of 23 stable releases
1 version withdrawn
withdrawn after publishing
10 years old
26 releases · first in 2016
chore: Release volatile version 0.6.1
chore: Release volatile version 0.6.1
chore: Release volatile version 0.6.0
chore: Release volatile version 0.6.0
RestrictAccess<To> and generalize restrict to all access types by @mkroening in https://github.com/rust-osdev/volatile/pull/60#[must_use] to volatile types, read, and as_raw_ptr by @mkroening in https://github.com/rust-osdev/volatile/pull/58Full Changelog: https://github.com/rust-osdev/volatile/compare/v0.5.4...0.6.0
One column per quarter.
chore: Release volatile version 0.5.4
chore: Release volatile version 0.5.4
#[repr(align(N))] in #[derive(VolatileFieldAccess)] macro by @mkroening in https://github.com/rust-osdev/volatile/pull/57chore: Release volatile version 0.5.3
chore: Release volatile version 0.5.3
#[derive(VolatileFieldAccess)] for easy, access-limited field-based access to structs by @mkroening in https://github.com/rust-osdev/volatile/pull/49VolatileRef::restrict and VolatilePtr::restrict by @mkroening in https://github.com/rust-osdev/volatile/pull/47VolatileRef::borrow and VolatileRef::borrow_mut by @mkroening in https://github.com/rust-osdev/volatile/pull/46map_field operations by @phil-opp in https://github.com/rust-osdev/volatile/pull/50NonNull imports by @mkroening in https://github.com/rust-osdev/volatile/pull/48chore: Release volatile version 0.5.3-rc.2
chore: Release volatile version 0.5.3-rc.2
Nothing published for this version
Add implementations for fmt::Pointer, PartialEq, Eq, PartialOrd, Ord and Hash.
fmt::Pointer, PartialEq, Eq, PartialOrd, Ord and Hash.very_unstable feature to latest nightlySized requirement for Send and Sync impls on VolatileRefFix: Add missing documentation of the map macro
map macroBreaking: New design based on raw pointers
VolatilePtr and VolatileRefVolatilePtr provides safe read and write access to volatile values. Like raw pointers, it implements Copy and is !Sync.VolatileRef is a pointer type that respects Rust's aliasing rules. It doesn't implement Copy, requires a &mut reference for modification, and implements Sync. It can converted to temporary VolatilePtr instances through the as_ptr/as_mut_ptr methods.map! macro for struct field projection. These advanced features are gated behind a cargo feature named "unstable".Fix UB in slice methods when Deref returns different references
Remove the const_generics feature flag
const_generics feature flag (#25)Replace feature "range_bounds_assert_len" with "slice_range"
unstable feature on the latest nightly.- Add methods to restrict access
Change slice::check_range to RangeBounds::assert_len
slice::check_range to RangeBounds::assert_len (#16)
Small documentation and metadata improvements
Breaking: Rewrite crate to operate on reference values
Breaking: Remove Debug and Clone derives for WriteOnly
Debug and Clone derives for WriteOnly (#12)Derive Default for Volatile, WriteOnly and ReadOnly
Default for Volatile, WriteOnly and ReadOnly (#10)Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →