]> git.lizzy.rs Git - enumset.git/blob - RELEASES.md
Fix travis tests.
[enumset.git] / RELEASES.md
1 # Version 1.0.0 (2020-04-01) - Unreleased
2 * **[WARNING: Potential silent breaking change]** Changed `EnumSet::insert` to
3   return whether a value was newly  inserted, rather than whether the value
4   already existed in the set. This corresponds better with the behavior of
5   `HashSet::insert` and `BTreeSet::insert`.
6 * Renamed `to_bits`/`from_bits` to `to_u128`/`from_u128` and added additional
7   methods for other built-in numeric types. 
8 * `EnumSet::bit_width` and `EnumSet::variant_count` now return a `u32` instead
9   of a `u8` for future-proofing.
10
11 # Version 0.4.5 (2020-02-19)
12 * Fixed a bug where compilation failed when the `serde` flag was enabled, and
13   another trait that defined `serialize` or `deserialize` was in scope.
14
15 # Version 0.4.4 (2019-10-12)
16 * Fixed a bug where `#[enumset(serialize_as_list)]` did not work when `Result`
17   is shadowed.
18
19 # Version 0.4.3 (2019-10-08)
20 * Implemented `Extend` and `FromIterator` for `EnumSet<T>`.
21
22 # Version 0.4.2 (2019-09-28)
23 * Fixed a bug preventing empty enums and enums with one value from compiling.
24
25 # Version 0.4.1 (2019-09-27)
26 * Fixed bug in `EnumSetIter::size_hint`.
27
28 # Version 0.4.0 (2019-05-06)
29 * Removed outdated macros and attributes.
30 * All attributes for the custom derive are now written as `#[enumset(...)]`
31 * Implemented `#[enumset(serialize_deny_unknown)]`
32 * Implemented `#[enumset(serialize_repr="...")]`
33 * `#[derive(EnumSetType)]` now only implements `Copy`, `Clone`, `PartialEq` and
34   `Eq` automatically.
35
36 # Version 0.3.19 (2019-05-02)
37 * Fix a bug when deserializing enums containing invalid bits set.
38
39 # Version 0.3.18 (2019-03-11)
40 * Fix an off-by-one error causing enums with 9, 17, 33, etc variants to behave
41   unexpectedly.
42
43 # Version 0.3.17 (2019-03-11)
44 * Add an `#[enumset_serialize_as_list]` attribute to cause the `Deserialize`
45   and `Serialize` implementations for `EnumSet<T>` to serialize it as a seq
46   of `T`s rather than an integer bitmask.
47
48 # Version 0.3.16 (2019-02-04)
49 * Added `Default` implementation for `EnumSet<T>` that returns an empty map.
50
51 # Version 0.3.15 (2019-01-08)
52 * Added optional `serde` support.
53
54 # Version 0.3.14 (2018-11-09)
55
56 * Deprecated the `enum_set_type!` macro in favor of a custom derive.
57 * Added a way to avoid the automatic operator overloads derived from
58   EnumSetTypes.
59 * Fixed a major issue that would have prevented `enumset` from being used in
60   `#[no_std]` crates.
61 * Minimum required version is now 1.30.0+. There should be no more need to
62   bump the minimum Rust version in the forseeable future.
63
64 # Prior versions
65
66 No release notes were kept for prior versions.