All notable changes to this project will be documented in this file.
0.12.0 — 2025-02-21
- Add
all_named
andis_all_named
to theFlags
trait — (b472ff5) - Add custom error for when the enum have fields — (4be6862)
- (BREAKING) Rename
Flags::KNOWN_FLAGS
toFlags::NAMED_FLAGS
— (8d298d9) - Reduce a bit the size of the macro typed information — (c5b79d5)
- (BREAKING) Rename
extra_valid_bits
toreserved_bits
— (9a703a2)
- Add the changelog to the crate documentation — (4f59a54)
- A few rewording — (e35bf5f)
- Add specification documentation — (67c5cde)
- Add proper documentation for the crate features. — (68d2f5b)
- Modify the changelog format a bit to avoid rustdoc
unresolved link
issues — (f418c2b) - Do not run doctest on the spec file — (4ab8cc4)
- Update syntax section of
bitflag
macro and fix some typos — (87c021d) - Document the custom
Debug
implementation on thebitflag
macro — (4e094f0) - Clarify internal item — (17a6fb8)
- Expand the crate entry documentation — (7958b99)
- Expand parser module documentation — (773be5a)
- Clarify some parts — (3b2eac6)
- Add example without using the
bitflag
macro — (561a362) - Re-organize some example code — (189a86b)
- Add a example for deriving Default — (f566240)
- Example for external flags — (777caf6)
- Small tweaks — (fdf7562)
- Better naming on examples — (d6114b3)
0.11.1 — 2025-02-14
- Improve error on using the attribute on something that is not a enum — (6521cd9)
- Add method to create a value with all the named flags. — (d029a1d)
- Generate
contains_unnamed_bits
method — (5eddbf6)
- Fix compilation issue on CI — (b59475d)
0.11.0 — 2025-02-14
- Add inline on some generated functions — (3c1d446)
- (BREAKING) Debug outputs octal and hex as well — (c72b604)
- Add method
clear
for the generated type and theFlags
trait — (0e20342)
- Fix typos — (15da0fb)
- Add some doc alias — (1e16e82)
- Fix missing links to
bitflags
macro docs — (40387f9) - Document newly accepted types in the bitflag attribute — (c79c418)
0.10.1 — 2025-02-14
- Handle full path of custom external derives — (708097e)
- Accept more well known types and full-path — (47b3dca)
0.10.0 — 2025-02-14
- (BREAKING) Specify all traits we use on generated code on `BitsPrimitive — (387e82d)
- Handle explicit
repr
on type definition — (aec8085) - (BREAKING) Handle
derive(Default)
onbitflag
macro — (cb0ee4e) - Error on
#[serde]
helper attributes — (61c217f) - Implement custom derive for
arbitrary::Arbitrary
for types usingbitflag
attribute macro — (54113c4) - Simplify more paths — (0ba0510)
- Add
bytemuck
support — (3274172) - Implement complete parsing for the
repr
attribute — (cd67362) - Simplify — (1c1437e)
- Fix extra
;
generated — (9334972) - Fix check — (4f4fa48)
- Pass external custom derives to the struct when without feature enabled — (64e8263)
- Use full namespace for
Option
andResult
on generated code — (7df850d) - Process static assert error string in the macro — (051fe86)
- Another compilation error rest annoying difference of span reporting between stable and nightly — (fbb3d70)
- Add better tests for serde feature — (2c57bd5)
- Check all features — (5f77b41)
- Fix testing toolchain versions — (0dea689)
- Update docs flags — (ccdfe4f)
0.9.0 — 2025-02-14
- Add ability to modify the all possible/valid bits. — (e0ad46a)
- Add way to configure the extra valid bits for externally defined flags — (faec7f4)
- (BREAKING) Move iterators and parsing from macro generated code to generic code in the
bitflag_attr
crate — (b1b82b9) - (BREAKING) Make debug bits representation always show all bits — (57db5d4)
- More fine grained with
alloc
crate feature — (d912abc) - Implement the
bitflag_match!
macro — (6ee32fd)
- Fix type name on doc string — (1cc2567)
- Fix debug impl not outputing text of human readable field when flags are empty — (a28372d)
- Refactor and clean the macro code — (582dd24)
- Make
truncate
generated method modify the value — (3f9461b) - Rename one of debug representations from
human_readable
toflags
— (ea0f932)
- Update docs examples — (421e26b)
- Add crate level docs based on bitflags — (666267e)
- Update and expand documentation — (fb21d79)
- Remove unneeded cloning — (889090f)
- Import tests from the bitflags crate — (b9b7e79)
0.8.2 — 2025-02-14
- Greatly reduce the amount of code generated — (bec2df6)
- Generate constants and methods in different impl blocks — (3cc9760)
- Simplify — (0ecaa69)
- Update generated example — (86907cc)
0.8.1 — 2025-02-14
- Help semantic highlight a bit more — (4990bf3)
0.8.0 — 2025-02-14
- (BREAKING) Use the type definition
#[define(...)]
arguments to check for required derives, and to decide if implement custom ones — (aeb82a9)
- Add
clone-impls
feature ofsyn
— (3c1790e)
0.7.4 — 2025-02-14
- Fix inserting documentation attributes where it shouldn't — (664fae3)
0.7.3 — 2025-02-14
- Preserve attributes on all variants repetition — (96016d1)
0.7.2 — 2025-02-14
- Properly handle no_std — (01eeb39)
0.7.1 — 2025-02-14
0.7.0 — 2025-02-14
- Make
set
,unset
andtoggle
const — (217cf58) - Move the attribute macro to crate specific to proc-macro — (dab23fb)
- Add support for custom types — (7ad35b6)
- Make generating const function with mutable reference behind a feature flag — (28aeb1b)
0.6.0 — 2025-02-14
- Implement generating iterators — (0553788)
- Add helpers for formatting — (6ac7b14)
- Implement
serde
feature — (70a8de0)
- Improve multi-bit flags on Debug impl — (14865d2)
- Fix generated public API visibility — (c1a5f0b)
- Fix code generation errors — (0032e12)
set
was doing an AND operation instead of OR — (b31dac7)- Fix code generation messing up semantic coloring of LSP — (9019278)
- Update docs — (0cda2e4)
0.5.0 — 2025-02-14
- Add
#[automatically_derived]
to generatedimpl Trait
blocks — (242abac) - Add option to not generate the
Debug
impl — (a3059e7) - Improve error message on parameters being repeated — (9fd17d8)
- Make sure trait implementation uses
core
traits — (74f84cd) - Allow 128 bit integers as types — (c7969c5)
- Clarify — (5f09260)
- Fix typos; clarify a few points — (6e36418)
- Add doc-alias to
set
andunset
— (b88a75e)
0.4.0 — 2025-02-14
- (BREAKING) Do not generate the the raw constants outside — (8d48b33)
0.3.1 — 2024-10-19
- Enable only the features that we need — (f530073)
0.3.0 — 2024-05-16
- Improve Debug implementation — (abacd20)
- Simplify generated Debug impl — (0b2a399)
0.2.0 — 2024-05-15
- Auto-derive
Clone
andCopy
traits — (22c20b4)
- Initial version — (ed4d623)