radicle: Update to 0.21.0

This commit is contained in:
Fintan Halpenny 2026-02-18 10:56:28 +00:00 committed by Lorenz Leutgeb
parent 1566646762
commit 3a11074600
4 changed files with 66 additions and 6 deletions

2
Cargo.lock generated
View File

@ -2886,7 +2886,7 @@ checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f"
[[package]] [[package]]
name = "radicle" name = "radicle"
version = "0.20.0" version = "0.21.0"
dependencies = [ dependencies = [
"amplify", "amplify",
"base64 0.21.7", "base64 0.21.7",

View File

@ -43,7 +43,7 @@ pretty_assertions = "1.3.0"
proptest = "1.9" proptest = "1.9"
qcheck = { version = "1", default-features = false } qcheck = { version = "1", default-features = false }
qcheck-macros = { version = "1", default-features = false } qcheck-macros = { version = "1", default-features = false }
radicle = { version = "0.20", path = "crates/radicle" } radicle = { version = "0.21", path = "crates/radicle" }
radicle-cli = { version = "0.17", path = "crates/radicle-cli" } radicle-cli = { version = "0.17", path = "crates/radicle-cli" }
radicle-cli-test = { path = "crates/radicle-cli-test" } radicle-cli-test = { path = "crates/radicle-cli-test" }
radicle-cob = { version = "0.17", path = "crates/radicle-cob" } radicle-cob = { version = "0.17", path = "crates/radicle-cob" }

View File

@ -9,6 +9,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Added ### Added
### Changed
### Removed
### Security
## 0.21.0
### Added
- `radicle::node::command::Command` added variants `AnnounceRefsFor`,
`SeedsFor`, and `Block`.
- `radicle::cob::identity::ApplyError` now contains a new variant
`NonDelegateUnauthorized`.
- `radicle::node::Handle` added a `block` method to allow setting the follow - `radicle::node::Handle` added a `block` method to allow setting the follow
policy to `Policy::Block`. policy to `Policy::Block`.
- `radicle::node::Handle::announce_refs_for` now allows specifying for which - `radicle::node::Handle::announce_refs_for` now allows specifying for which
@ -20,11 +34,16 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Changed ### Changed
- The discriminant values for `radicle::node::command::Command` have changed.
- `radicle::rad::CheckoutError` is now marked as `non_exhaustive`.
- `radicle::storage::git::Storage::repositories_by_id` returns - `radicle::storage::git::Storage::repositories_by_id` returns
`impl Iterator<Item = Result<RepositoryInfo, RepositoryError>>` instead of `impl Iterator<Item = Result<RepositoryInfo, RepositoryError>>` instead of
`Result<Vec<RepositoryInfo>, RepositoryError>`. Allowing callers to handle `Result<Vec<RepositoryInfo>, RepositoryError>`. The method now also requires
failures on a per-repository basis rather than having the entire operation one generic type parameter. Allowing callers to handle failures on a
fail if a single repository lookup fails. per-repository basis rather than having the entire operation fail if a single
repository lookup fails.
- `radicle::node::Node::announce` now takes an additional parameter to specify
for which namespaces changes should be announced.
- Re-exports from `git2` at `radicle::git::raw` were limited, using - Re-exports from `git2` at `radicle::git::raw` were limited, using
the heartwood workspace as a filter. Dependents that require members that the heartwood workspace as a filter. Dependents that require members that
are not exported anymore will have to depend on `git2` directly. are not exported anymore will have to depend on `git2` directly.
@ -48,12 +67,53 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
### Removed ### Removed
- `radicle::storage::RepositoryError::GitExt` was removed as a variant, where
`RepositoryError::Git` now subsumes all Git errors.
- `radicle::identity::doc::DocError::GitExt` was removed as a variant, where
`DocError::Git` now subsumes all Git errors.
- `radicle::storage::refs::Error::GitExt` was removed as a variant, where
`Error::Git` now subsumes all Git errors.
- `radicle::cob::identity::ApplyError::GitExt` was removed as a variant, where
`ApplyError::Git` now subsumes all Git errors.
- `radicle::storage::Error::GitExt` was removed as a variant, where
`Error::Git` now subsumes all Git errors.
- `radicle::storage::git::cob::ObjectsError::GitExt` was removed as a variant,
where `ObjectsError::Git` now subsumes all Git errors.
- `radicle::git::canonical::rules::CanonicalError::References` was removed as a
variant, as it no longer occurs as an error.
- The `radicle::node::State::Connected` variant no longer has a `fetching`
field. Fetching information is now tracked in the service.
- The data returned by `Seeds` contains `state`, which in turn contained the - The data returned by `Seeds` contains `state`, which in turn contained the
field `fetching` for ongoing fetches of that node, if in the `Connected` field `fetching` for ongoing fetches of that node, if in the `Connected`
state. `Connected` no longer contains that field. state. `Connected` no longer contains that field.
- `radicle::identity::doc::RepoId` was removed, along with its re-exports at
`radicle::identity::RepoId` and `radicle::prelude::RepoId`. The type is now
provided by the `radicle-core` crate.
- `radicle::identity::doc::IdError` was removed, along with its re-export at
`radicle::identity::IdError`.
- `radicle::identity::doc::id::RAD_PREFIX` constant was removed.
- `radicle::identity::doc::VersionError::UnkownVersion` variant was renamed to
`UnknownVersion`, correcting the typo.
The typo has been corrected to `UnknownVersion`.
- `radicle::storage::git::RefError` was removed.
- `radicle::storage::git::UserInfo` was removed.
- `radicle::storage::git::NAMESPACES_GLOB`, `radicle::storage::git::CANONICAL_IDENTITY`,
and `radicle::storage::git::SIGREFS_GLOB` static variables were removed.
- `radicle::storage::git::trailers::SIGNATURE_TRAILER` constant was removed.
- The `radicle::serde_ext::localtime` module and its submodules (`time`,
`option::time`, `duration`) were removed, including all associated
serialize/deserialize functions. The `radicle-localtime` crate is introduced
and provides these helpers.
- The `radicle::schemars_ext::crypto` module was removed, including the
`PublicKey` schema type. The schema is now provided by `radicle-crypto`.
- The test storage modules under `radicle::test::storage::git` and their
submodules (`transport`, `cob`, `trailers`, `paths`, `temp`) were removed
from the public API, along with all associated types, traits, and functions.
### Security ### Security
*No security updates.*
## 0.20.0 ## 0.20.0
### Added ### Added

View File

@ -4,7 +4,7 @@ description = "Radicle standard library"
homepage.workspace = true homepage.workspace = true
repository.workspace = true repository.workspace = true
license.workspace = true license.workspace = true
version = "0.20.0" version = "0.21.0"
authors = ["cloudhead <cloudhead@radicle.xyz>"] authors = ["cloudhead <cloudhead@radicle.xyz>"]
edition.workspace = true edition.workspace = true
rust-version.workspace = true rust-version.workspace = true