- Add
hex!macro for const hex literal parsing. - Bump the MSRV
- Remove
doc_auto_cfg
- Removed niche reexports from root
- Various documentation improvements
- A few test improvements
- Removed iterator API that got published by accident
- Exports
decode_to_array,decode_to_vec, and all error types.
The goal of this release is to enable library authors to use hex-conservative, exposing error types from this library in their own APIs, and not need to worry that they will face API breakage because of this.
Future minor releases will add encoding support and a more expansive set of traits.
- Re-implement
HexWriter#113 - Fix
Displaywidth and precision ofDisplayByteSlice#114 - Encoding performance improvements #117
- Relax bounds of
BytesToHexIter#118 - Add case to
BytesToHexIter#120 - Encapsulate unsafe code inside the table module #121
- Fix
HexToBytesIter::size_hint#122 - Restrict
BufEncoderto uniform case encoding #119 - Remove the
core2dependency #105 - Introduce more serde utilities #92
- Add
impl_fmt_traitsmacro #90 - Enable serialization of byte slices #96
- Bump MSRV to Rust
1.63.0#102 - Store position of invalid char in
InvalidCharError#107 - Only encode the bytes formatted in the hex string #108
- Add a new
impl_fmt_traitsmacro that can be used to implementfmt::{LowerHex, UpperHex, Display, Debug}#90
There are a bunch of breaking changes in this release, including:
- Bump MSRV to 1.56.1
- For improved ergonomics, add a prelude module #36
- Add a
serdemodule #37 - Remove arbitrary padding limit #41
- Make
fmt_hex_exacthonourFormatter::precision#81
- Update the derives on error types #31
- Hide error internal #44
- Return specific error from
HexToByesIter::new#62
- Fix bug in output of
InvalidError#88.
- Add
test_hex_unwraphex parsing macro for test usage. - Improve formatting hex for bytes slices e.g., support padding.
- Import code from the
bitcoin_hashesandbitcoin-internalscrates. - Add
Iteratorimplementations