# 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.3.1] Released on 2024-01-11 ### Added - Implement `Debug` for `Initial` and add `Debug` as a supertrait of `Unique`. - They are displayed as "`impl Unique`". ## [0.3.0] Released on 2024-01-01. ### Added - `Initial` represents the initial unique type. - `with` uses the initial unique type in a closure. ### Changed - Turn `Unique::split` into the free function `split`. The crate no longer relies on RPITIT and therefore uses an older MSRV. (Thanks matt1992!) - Update the minimum supported Rust version to 1.56. ### Removed - `init` and `try_init` are made obsolete by the new design of the crate. Use `with` instead. ### Fixed - 0.1 is [unsound](https://codeberg.org/wackbyte/type-factory/issues/2). Redesign the crate using invariant lifetimes. (Thanks Dawn!) ## [0.1.3] Released on 2023-12-30. Yanked on 2024-01-01. ### Added - `split!` condenses many calls to `Unique::split` into one. ## [0.1.2] Released on 2023-12-29. Yanked on 2024-01-01. ### Added - `try_init` is a safe, checked alternative to `init`. ## [0.1.1] Released on 2023-12-29. Yanked on 2024-01-01. ### Fixed - 0.2 is [unsound](https://codeberg.org/wackbyte/type-factory/issues/1). Revert the interface of the crate to 0.1.0. ## [0.2.1] Released on 2023-12-29. Yanked on 2023-12-29. ### Changed - Improve the documentation. - Optimize the code generated by `unique!`. ## [0.2.0] Released on 2023-12-29. Yanked on 2023-12-29. ### Added - `unique!` creates and calls a function returning an `impl Unique` value. ### Changed - Update the minimum supported Rust version to 1.56. ### Removed - `init` is made obsolete by `unique!`. ## [0.1.0] Released on 2023-12-29. Yanked on 2024-01-01. ### Added - `Unique` is implemented for unique types. - `init` creates the initial `impl Unique` value. - `Unique::split` consumes an `impl Unique` value and returns two new ones. - The minimum supported Rust version is 1.75. [Unreleased]: https://codeberg.org/wackbyte/type-factory/compare/v0.3.1...trunk [0.3.1]: https://codeberg.org/wackbyte/type-factory/releases/tag/v0.3.1 [0.3.0]: https://codeberg.org/wackbyte/type-factory/releases/tag/v0.3.0 [0.1.3]: https://codeberg.org/wackbyte/type-factory/releases/tag/v0.1.3 [0.1.2]: https://codeberg.org/wackbyte/type-factory/releases/tag/v0.1.2 [0.1.1]: https://codeberg.org/wackbyte/type-factory/releases/tag/v0.1.1 [0.2.1]: https://codeberg.org/wackbyte/type-factory/releases/tag/v0.2.1 [0.2.0]: https://codeberg.org/wackbyte/type-factory/releases/tag/v0.2.0 [0.1.0]: https://codeberg.org/wackbyte/type-factory/releases/tag/v0.1.0 [Keep a Changelog]: https://keepachangelog.com/en/1.1.0/ [Semantic Versioning]: https://semver.org/spec/v2.0.0.html