Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0

## Unreleased

## [0.5.0](https://github.com/dspicher/ur-rs/releases/tag/0.5.0) - 2026-07-02
- Added `ur::try_encode`, which returns an error for invalid custom UR types instead of panicking.
- Added `ur::Decoder::resolved_fragment_count` and `ur::Decoder::fragment_count` for reporting multipart decode progress.
- Added `fountain::Decoder::resolved_fragment_count` and `fountain::Decoder::fragment_count` for reporting fountain decode progress.
- Validate custom UR types during single-part encoding, multipart encoder construction, and decoding. Custom types must be non-empty and contain only ASCII letters, ASCII digits, or `-`.
- Validate multipart UR indices more strictly: indices must be non-zero and the URI path indices must match the encoded fountain part metadata.
- Added `fountain::Error::InvalidChecksum` and checksum verification for decoded fountain messages.
- Added `fountain::Error::InvalidSequence` for fountain parts with sequence number `0`.
- Return `bytewords::Error::InvalidWord` for malformed bytewords whose hash collides with a valid byte value but whose spelling is invalid.
- Updated the crate to Rust 2024 edition.
- Updated public `minicbor` error types to `minicbor` 2.0.

## [0.4.1](https://github.com/dspicher/ur-rs/releases/tag/0.4.1) - 2023-10-16
- Take a reference to custom UR type identifiers

Expand Down
2 changes: 1 addition & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ default = ["std"]
std = []

[dependencies]
bitcoin_hashes = { version = "0.20", default-features = false }
bitcoin_hashes = { version = "1.0.0", default-features = false }
crc = "3"
minicbor = { version = "2.0", features = ["alloc"] }
rand_xoshiro = "0.8"
Expand Down
Loading