# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog], and this project adheres to [Semantic Versioning]. ## [Unreleased] ## [0.6.0] - 2023-12-29 ### Changed - Minimum Supported Rust Version: 1.75 - `zeroed` is now `const`. ## [0.5.0] - 2023-07-29 ### Changed - Minimum Supported Rust Version: 1.71 - `assume_init_read` is now `const`. ## [0.4.0] - 2023-05-07 ### Removed - `AssumeInitExt`, `SafeAssumeInitExt`, and `UninitExt`. - The `prelude` module. ## [0.3.0] - 2023-04-18 ### Added - The `assume_init` module, featuring the `AssumeInit` trait. - The `safe_assume_init` module, featuring the `SafeAssumeInit` trait. - The `uninit` module, featuring the `Uninit` trait. - The `AssumeInitExt`, `SafeAssumeInitExt`, and `UninitExt` traits. - The `prelude` module. - `Uninit` implementations for tuples of arity 1-12. - A `nightly` feature flag that makes many functions `const`, requiring the nightly toolchain. - The following functions: - `?const fn safe_assume_init` - `?const fn safe_assume_init_ref` - `?const fn safe_assume_init_mut` - `const` to the following functions when the `nightly` feature flag is enabled: - `?const fn zeroed` - `?const fn new` - `?const fn write` - `?const fn as_mut_ptr` - `?const unsafe fn assume_init` - `?const unsafe fn assume_init_ref` - `?const unsafe fn assume_init_mut` - `?const unsafe fn assume_init_read` ### Changed - Refactored `MaybeUninitExt` into `AssumeInit` and `Uninit`. - Changed the trait bound of each function from `MaybeUninitExt` to either `AssumeInit` or `Uninit`, depending on which it requires. - Moved each function to the module that corresponds with its new trait bound. - `write` no longer drops the old value. ### Removed - The `MaybeUninitExt` trait. - Functions re-exported at the crate level. ## [0.2.0] - 2023-04-08 ### Added - Minimum Supported Rust Version: 1.61 - The following functions: - `fn zeroed` - `fn new` - `const fn as_ptr` - `fn as_mut_ptr` - `unsafe fn assume_init_read` - `unsafe fn assume_init_drop` - `fn write` ### Changed - `assume_init_ref` is now `const`. - `uninit` now has `#[must_use]`. ## [0.1.0] - 2023-04-07 ### Added - The following functions: - `const fn uninit` - `unsafe fn assume_init` - `unsafe fn assume_init_ref` - `unsafe fn assume_init_mut` - The `MaybeUninitExt` trait. - The following `MaybeUninitExt` implementations: - `MaybeUninit` - `()` - `[T; N]` where `T: MaybeUninitExt` - `PhantomData` where `T: ?Sized` - `PhantomPinned` - `Cell` where `T: MaybeUninitExt` - `UnsafeCell` where `T: MaybeUninitExt` - `ManuallyDrop` where `T: MaybeUninitExt` [Unreleased]: https://gitlab.com/wackbyte/maybe-uninit-ext/-/compare/v0.6.0...trunk [0.6.0]: https://gitlab.com/wackbyte/maybe-uninit-ext/-/compare/v0.5.0...v0.6.0 [0.5.0]: https://gitlab.com/wackbyte/maybe-uninit-ext/-/compare/v0.4.0...v0.5.0 [0.4.0]: https://gitlab.com/wackbyte/maybe-uninit-ext/-/compare/v0.3.0...v0.4.0 [0.3.0]: https://gitlab.com/wackbyte/maybe-uninit-ext/-/compare/v0.2.0...v0.3.0 [0.2.0]: https://gitlab.com/wackbyte/maybe-uninit-ext/-/compare/v0.1.0...v0.2.0 [0.1.0]: https://gitlab.com/wackbyte/maybe-uninit-ext/-/tags/v0.1.0 [Keep a Changelog]: https://keepachangelog.com/en/1.0.0/ [Semantic Versioning]: https://semver.org/spec/v2.0.0.html