Skip to content

Latest commit

 

History

History
324 lines (203 loc) · 21.7 KB

CHANGELOG.md

File metadata and controls

324 lines (203 loc) · 21.7 KB

Changelog

All notable changes to this project will be documented in this file.

0.12.0 — 2025-02-21

🚀 Features

  • Add all_named and is_all_named to the Flags trait — (b472ff5)
  • Add custom error for when the enum have fields — (4be6862)

🚜 Refactor

  • (BREAKING) Rename Flags::KNOWN_FLAGS to Flags::NAMED_FLAGS — (8d298d9)
  • Reduce a bit the size of the macro typed information — (c5b79d5)
  • (BREAKING) Rename extra_valid_bits to reserved_bits — (9a703a2)

📚 Documentation

  • 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 the bitflag 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

🚀 Features

  • 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)

🐞 Bug Fixes

  • Fix compilation issue on CI — (b59475d)

0.11.0 — 2025-02-14

🚀 Features

  • Add inline on some generated functions — (3c1d446)
  • (BREAKING) Debug outputs octal and hex as well — (c72b604)
  • Add method clear for the generated type and the Flags trait — (0e20342)

🚜 Refactor

  • Inline small function — (728630a)
  • Simplify code generation a bit — (7b5e02a)

📚 Documentation

  • 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

🚀 Features

  • Handle full path of custom external derives — (708097e)
  • Accept more well known types and full-path — (47b3dca)

📚 Documentation

0.10.0 — 2025-02-14

🚀 Features

  • (BREAKING) Specify all traits we use on generated code on `BitsPrimitive — (387e82d)
  • Handle explicit repr on type definition — (aec8085)
  • (BREAKING) Handle derive(Default) on bitflag macro — (cb0ee4e)
  • Error on #[serde] helper attributes — (61c217f)
  • Implement custom derive for arbitrary::Arbitrary for types using bitflag attribute macro — (54113c4)
  • Simplify more paths — (0ba0510)
  • Add bytemuck support — (3274172)
  • Implement complete parsing for the repr attribute — (cd67362)
  • Simplify — (1c1437e)

🐞 Bug Fixes

  • Fix extra ; generated — (9334972)
  • Fix check — (4f4fa48)
  • Pass external custom derives to the struct when without feature enabled — (64e8263)
  • Use full namespace for Optionand Result on generated code — (7df850d)
  • Process static assert error string in the macro — (051fe86)

🚜 Refactor

📚 Documentation

🧪 Testing

  • Another compilation error rest annoying difference of span reporting between stable and nightly — (fbb3d70)
  • Add better tests for serde feature — (2c57bd5)

⚙️ Continuous Integration

  • Check all features — (5f77b41)
  • Fix testing toolchain versions — (0dea689)
  • Update docs flags — (ccdfe4f)

0.9.0 — 2025-02-14

🚀 Features

  • 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)

🐞 Bug Fixes

  • Fix type name on doc string — (1cc2567)
  • Fix debug impl not outputing text of human readable field when flags are empty — (a28372d)

🚜 Refactor

  • Refactor and clean the macro code — (582dd24)
  • Make truncate generated method modify the value — (3f9461b)
  • Rename one of debug representations from human_readable to flags — (ea0f932)

📚 Documentation

  • Update docs examples — (421e26b)
  • Add crate level docs based on bitflags — (666267e)
  • Update and expand documentation — (fb21d79)

⚡ Performance

  • Remove unneeded cloning — (889090f)

🧪 Testing

  • Import tests from the bitflags crate — (b9b7e79)

0.8.2 — 2025-02-14

🚀 Features

  • Greatly reduce the amount of code generated — (bec2df6)
  • Generate constants and methods in different impl blocks — (3cc9760)

🚜 Refactor

📚 Documentation

  • Update generated example — (86907cc)

0.8.1 — 2025-02-14

🐞 Bug Fixes

  • Help semantic highlight a bit more — (4990bf3)

0.8.0 — 2025-02-14

🚀 Features

  • (BREAKING) Use the type definition #[define(...)] arguments to check for required derives, and to decide if implement custom ones — (aeb82a9)

💼 Other

  • Add clone-impls feature of syn — (3c1790e)

📚 Documentation

  • Update docs with the previous commit changes — (6187b9f)
  • Update expanded example — (18a961a)

0.7.4 — 2025-02-14

🐞 Bug Fixes

  • Fix inserting documentation attributes where it shouldn't — (664fae3)

0.7.3 — 2025-02-14

🐞 Bug Fixes

  • Preserve attributes on all variants repetition — (96016d1)

⚙️ Continuous Integration

  • Fix typo — (525b180)
  • Enable miri checks for some tests — (23a282b)

0.7.2 — 2025-02-14

🐞 Bug Fixes

  • Properly handle no_std — (01eeb39)

0.7.1 — 2025-02-14

📚 Documentation

  • Document BitflagPrimitive trait — (18301d1)
  • Update generated example for docs — (143cdd5)

0.7.0 — 2025-02-14

🚀 Features

  • Make set, unset and toggle 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)

🧪 Testing

  • Add test for no_std — (0f40255)
  • Add some tests for generated functionality — (bb3c5cc)

0.6.0 — 2025-02-14

🚀 Features

  • Implement generating iterators — (0553788)
  • Add helpers for formatting — (6ac7b14)
  • Implement serde feature — (70a8de0)

🐞 Bug Fixes

  • 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)

🚜 Refactor

  • Always implement the iterators — (de52cd8)
  • Refactor Debug impl generation — (a81b43f)

📚 Documentation

0.5.0 — 2025-02-14

🚀 Features

  • Add #[automatically_derived] to generated impl 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)

📚 Documentation

  • Clarify — (5f09260)
  • Fix typos; clarify a few points — (6e36418)
  • Add doc-alias to set and unset — (b88a75e)

0.4.0 — 2025-02-14

🚀 Features

  • (BREAKING) Do not generate the the raw constants outside — (8d48b33)

0.3.1 — 2024-10-19

🏗️ Build Logic

  • Enable only the features that we need — (f530073)

0.3.0 — 2024-05-16

🚀 Features

  • Improve Debug implementation — (abacd20)

🚜 Refactor

  • Simplify generated Debug impl — (0b2a399)

0.2.0 — 2024-05-15

🚀 Features

  • Auto-derive Clone and Copy traits — (22c20b4)

⚙️ Continuous Integration

  • Remove disnecessary stuff — (9de2ae5)
  • Update lowest rust version — (f149a55)

0.1.0 — 2024-05-15

🚀 Features