зеркало из https://github.com/mozilla/gecko-dev.git
144 строки
4.7 KiB
Markdown
144 строки
4.7 KiB
Markdown
# 1.2.0
|
|
|
|
- Fix typo: {Lower, Upper}Exp - {Lower, Upper}Hex ([#183])
|
|
|
|
- Add support for "unknown" bits ([#188])
|
|
|
|
[#183]: https://github.com/rust-lang-nursery/bitflags/pull/183
|
|
[#188]: https://github.com/rust-lang-nursery/bitflags/pull/188
|
|
|
|
# 1.1.0
|
|
|
|
This is a re-release of `1.0.5`, which was yanked due to a bug in the RLS.
|
|
|
|
# 1.0.5
|
|
|
|
- Use compiletest_rs flags supported by stable toolchain ([#171])
|
|
|
|
- Put the user provided attributes first ([#173])
|
|
|
|
- Make bitflags methods `const` on newer compilers ([#175])
|
|
|
|
[#171]: https://github.com/rust-lang-nursery/bitflags/pull/171
|
|
[#173]: https://github.com/rust-lang-nursery/bitflags/pull/173
|
|
[#175]: https://github.com/rust-lang-nursery/bitflags/pull/175
|
|
|
|
# 1.0.4
|
|
|
|
- Support Rust 2018 style macro imports ([#165])
|
|
|
|
```rust
|
|
use bitflags::bitflags;
|
|
```
|
|
|
|
[#165]: https://github.com/rust-lang-nursery/bitflags/pull/165
|
|
|
|
# 1.0.3
|
|
|
|
- Improve zero value flag handling and documentation ([#157])
|
|
|
|
[#157]: https://github.com/rust-lang-nursery/bitflags/pull/157
|
|
|
|
# 1.0.2
|
|
|
|
- 30% improvement in compile time of bitflags crate ([#156])
|
|
|
|
- Documentation improvements ([#153])
|
|
|
|
- Implementation cleanup ([#149])
|
|
|
|
[#156]: https://github.com/rust-lang-nursery/bitflags/pull/156
|
|
[#153]: https://github.com/rust-lang-nursery/bitflags/pull/153
|
|
[#149]: https://github.com/rust-lang-nursery/bitflags/pull/149
|
|
|
|
# 1.0.1
|
|
- Add support for `pub(restricted)` specifier on the bitflags struct ([#135])
|
|
- Optimize performance of `all()` when called from a separate crate ([#136])
|
|
|
|
[#135]: https://github.com/rust-lang-nursery/bitflags/pull/135
|
|
[#136]: https://github.com/rust-lang-nursery/bitflags/pull/136
|
|
|
|
# 1.0.0
|
|
- **[breaking change]** Macro now generates [associated constants](https://doc.rust-lang.org/reference/items.html#associated-constants) ([#24])
|
|
|
|
- **[breaking change]** Minimum supported version is Rust **1.20**, due to usage of associated constants
|
|
|
|
- After being broken in 0.9, the `#[deprecated]` attribute is now supported again ([#112])
|
|
|
|
- Other improvements to unit tests and documentation ([#106] and [#115])
|
|
|
|
[#24]: https://github.com/rust-lang-nursery/bitflags/pull/24
|
|
[#106]: https://github.com/rust-lang-nursery/bitflags/pull/106
|
|
[#112]: https://github.com/rust-lang-nursery/bitflags/pull/112
|
|
[#115]: https://github.com/rust-lang-nursery/bitflags/pull/115
|
|
|
|
## How to update your code to use associated constants
|
|
Assuming the following structure definition:
|
|
```rust
|
|
bitflags! {
|
|
struct Something: u8 {
|
|
const FOO = 0b01,
|
|
const BAR = 0b10
|
|
}
|
|
}
|
|
```
|
|
In 0.9 and older you could do:
|
|
```rust
|
|
let x = FOO.bits | BAR.bits;
|
|
```
|
|
Now you must use:
|
|
```rust
|
|
let x = Something::FOO.bits | Something::BAR.bits;
|
|
```
|
|
|
|
# 0.9.1
|
|
- Fix the implementation of `Formatting` traits when other formatting traits were present in scope ([#105])
|
|
|
|
[#105]: https://github.com/rust-lang-nursery/bitflags/pull/105
|
|
|
|
# 0.9.0
|
|
- **[breaking change]** Use struct keyword instead of flags to define bitflag types ([#84])
|
|
|
|
- **[breaking change]** Terminate const items with semicolons instead of commas ([#87])
|
|
|
|
- Implement the `Hex`, `Octal`, and `Binary` formatting traits ([#86])
|
|
|
|
- Printing an empty flag value with the `Debug` trait now prints "(empty)" instead of nothing ([#85])
|
|
|
|
- The `bitflags!` macro can now be used inside of a fn body, to define a type local to that function ([#74])
|
|
|
|
[#74]: https://github.com/rust-lang-nursery/bitflags/pull/74
|
|
[#84]: https://github.com/rust-lang-nursery/bitflags/pull/84
|
|
[#85]: https://github.com/rust-lang-nursery/bitflags/pull/85
|
|
[#86]: https://github.com/rust-lang-nursery/bitflags/pull/86
|
|
[#87]: https://github.com/rust-lang-nursery/bitflags/pull/87
|
|
|
|
# 0.8.2
|
|
- Update feature flag used when building bitflags as a dependency of the Rust toolchain
|
|
|
|
# 0.8.1
|
|
- Allow bitflags to be used as a dependency of the Rust toolchain
|
|
|
|
# 0.8.0
|
|
- Add support for the experimental `i128` and `u128` integer types ([#57])
|
|
- Add set method: `flags.set(SOME_FLAG, true)` or `flags.set(SOME_FLAG, false)` ([#55])
|
|
This may break code that defines its own set method
|
|
|
|
[#55]: https://github.com/rust-lang-nursery/bitflags/pull/55
|
|
[#57]: https://github.com/rust-lang-nursery/bitflags/pull/57
|
|
|
|
# 0.7.1
|
|
*(yanked)*
|
|
|
|
# 0.7.0
|
|
- Implement the Extend trait ([#49])
|
|
- Allow definitions inside the `bitflags!` macro to refer to items imported from other modules ([#51])
|
|
|
|
[#49]: https://github.com/rust-lang-nursery/bitflags/pull/49
|
|
[#51]: https://github.com/rust-lang-nursery/bitflags/pull/51
|
|
|
|
# 0.6.0
|
|
- The `no_std` feature was removed as it is now the default
|
|
- The `assignment_operators` feature was remove as it is now enabled by default
|
|
- Some clippy suggestions have been applied
|