
Radicle is a peer-to-peer, local-first code collaboration stack built on Git.
Radicle 1.2.1
17.07.2025The Radicle team is delighted to announce the release of Radicle 1.2.1 (29043134a). This release contains 50 commits by 11 contributors. It’s amazing to see that we continue to have contributors in the double digits – thank you for your time and effort ✨
Installation
curl -sSf https://radicle.xyz/install | sh -s -- --no-modify-path --version=1.2.1
Migration of Node DNS Names (Action Required)
The DNS names for seed.radicle.garden
and ash.radicle.garden
are being slowly migrated to iris.radicle.xyz
and rosa.radicle.xyz
, respectively. This in an effort to unify these nodes under their radicle.xyz
domain, leaving room for other things to live under radicle.garden
.
You will notice that if you still use the old DNS names, then you will get a warning during rad node status
or rad debug
. The old names will continue to work, but we encourage you to change these entries to avoid any future errors.
rad node connect <nid>
Did you hate specifying the node’s address when wanting to connect? For example:
rad node connect z6Mkmqogy2qEM2ummccUthFEaaHvyYmYBYh3dbe9W4ebScxo@rosa.radicle.xyz:8776
Well, with 1.2.1
you can now simply use the Node ID, i.e. z6Mkmqogy2qEM2ummccUthFEaaHvyYmYBYh3dbe9W4ebScxo
in the above, and it will attempt to look up the known address for that node and connect to it. One less thing to try and copy and paste 😌
Patch Review Improvements
The summaries of reviews on patches were lacking a little pizzazz. They have received some love to allow them have an edit history, as well as contain embeds.
Note: This change is backwards-compatible, however, there is no guarantee of forwards-compatibility. The evaluation of patches on previous versions may fail when they come across the improved edit action.
Improved Templates for Comments on Issues
When replying to or editing a comment in an issue, the comment text will now be prefilled with more helpful information, such as the the thread of comments you are replying to, including their author and ID. This should make it easier to contribute to a meaningful discussion.
JSON Schemas
We have published a developer tooling crate radicle-schemars for emitting the JSON schemas of the config.json
and the node’s command and command result types. For the former, you can generate it using rad config schema
. For the latter, a CLI can be installed using:
cargo install radicle-schemars
You can use it to generate all three:
radicle-schemars radicle::node::Command # generate schema for commands
radicle-schemars radicle::node::CommandResult # generate schema for command results
radicle-schemars radicle::profile::Config # generate schema for config
The idea for this crate and binary is to allow developers interacting with Radicle to generate types in their own languages – as opposed to a user facing tool.
Changelog
For a full list of changes, see below:
29043134a
radicle: hotfix release 0.16.1 fintan.halpenny@gmail.com4e08eef8d
radicle: add missingreview_react
methods me@sebastinez.dev3a4700357
radicle: add ReviewEdit getter methods fintan.halpenny@gmail.comb77809ae9
chore: prepare crates release fintan.halpenny@gmail.comfe6a11d0d
radicle: fix schemars macro on FetchPackSizeLimit fintan.halpenny@gmail.com4e429e440
radicle: Fix doctests erik@zirkular.io34939253f
radicle: improve reviews fintan.halpenny@gmail.comc30298fb8
radicle: implement std::error::Error for AnnouncerError fintan.halpenny@gmail.come965d9a2c
node: clean upUploadError
fintan.halpenny@gmail.comdb3b3b054
flake: Delete Apps lorenz.leutgeb@radicle.xyz5a840983a
node, cli: Refactor test environment lorenz@leutgeb.xyz9e010068e
docs: Add issue instructions yorgos.work@proton.me38ff2652b
radicle: remove unnecessary constraints fintan.halpenny@gmail.com895ca5d02
cli: rad node connect using only NodeId johannes.kuehlewindt@gmail.com76e00a34e
cli: change link direction symbols fintan.halpenny@gmail.com84427a56b
radicle-term: Use crossterm instead of termion lorenz.leutgeb@radicle.xyzee8ffcc79
radicle-term: Inlinetermion::get_tty
for Unix lorenz.leutgeb@radicle.xyzec47566cb
radicle-term: Remove custom pager lorenz.leutgeb@radicle.xyz570bfc3bb
debian: add missing env variables to debian build me@sebastinez.devdeb823f3b
flake: Fix path to crates lorenz.leutgeb@radicle.xyze39653afc
build: Rewrite tagging script lorenz@leutgeb.xyz6f34124d4
radicle: improve config errors fintan.halpenny@gmail.com6686f86c6
radicle: fix small typo me@sebastinez.devd8d00666d
chore: remove radicle-tools fintan.halpenny@gmail.com42285e71c
chore: remove radicle-crdt fintan.halpenny@gmail.com78ba263d0
radicle-cli/issue: Improve comment templating lorenz.leutgeb@radicle.xyzaf35e6f4d
radicle-cli: Warn when using old names of nodes lorenz.leutgeb@radicle.xyz727e4e72c
radicle-cli/debug: UseBTreeMap
for consistent ordering lorenz.leutgeb@radicle.xyz1df8cf102
radicle/bootstrap: Add rosa.radicle.xyz lorenz.leutgeb@radicle.xyza354686bb
chore: Removeseed.radicle.xyz
lorenz.leutgeb@radicle.xyze30e66e00
radicle: add .external_template(false) to all other libgit2 calls jakob.kirsch@web.deab62dce68
radicle: refactor Canonical fintan.halpenny@gmail.comb2bcd561c
radicle: store threshold in Canonical fintan.halpenny@gmail.comb614167bd
meta: relax radicle-git dependencies fintan.halpenny@gmail.com6e9517a18
fix Debian package building after crates have moved into a sub-dir liw@liw.fi5bc2dc677
repo: Move workspace crates intocrates
subdirectory lorenz.leutgeb@radicle.xyz6259a7032
cargo: Useworkspace.package
table lorenz.leutgeb@radicle.xyzeea6a9bc7
cargo: Clean up dependencies lorenz.leutgeb@radicle.xyzd50df68b7
chore: Remove dependencyonce_cell
lorenz.leutgeb@radicle.xyz3bc0db68f
doc: AddCHANGELOG.md
lorenz.leutgeb@radicle.xyz0fd8c8be4
github: Add README.md lorenz.leutgeb@radicle.xyzbac719da2
bootstrap: Migrate radicle.garden → radicle.xyz lorenz.leutgeb@radicle.xyz9d4aa59a1
radicle: add .external_template(false) to libgit2 call jakob.kirsch@web.dea8ab718b9
chore(debian/changelog): update package version to match upstream me@sebastinez.dev7380e2118
chore(debian/control): add sebastinez to Uploaders me@sebastinez.deveceb7f29c
cob: Simplify the ChangeGraph implementation leon.zach@posteo.de4cd0782f2
radicle-schemars: Add crate for utility binary lorenz.leutgeb@radicle.xyzfcd1acd1d
radicle/schemars: Annotate Commands and results lorenz.leutgeb@radicle.xyz05368e84f
cargo: Make schemars a workspace dependency lorenz.leutgeb@radicle.xyz9dae540c8
systemd: Provide user service for radicle-node tippfehlr@tippfehlr.devChecksums
08ba01a0c60599a97ef7ed117585c3d9ff2ffe3820e8adb63f45e0e4fb5ac3f3 radicle-1.2.1-aarch64-unknown-linux-musl.tar.xz
e3df804ef2d94e2b3d4b1ba9e6077f7c1a4c61881f1be6d1bd33179293d25c5a radicle-1.2.1-x86_64-unknown-linux-musl.tar.xz
dcd246d6917a2d95cc8763b060ecf060236d4d37f1ea28bbf0d55fb952b8c2d7 radicle-1.2.1-x86_64-apple-darwin.tar.xz
45c46e1bd88d20a3ef14bde6d331bed229f2c8b2ff3a2e84dbd7274ef6b8a296 radicle-1.2.1-aarch64-apple-darwin.tar.xz