Releases: inkandswitch/darn
v0.6.2 (nightly 2026-03-31)
darn v0.6.2 — Nightly Build
Date: 2026-03-31
Commit: f354a3bb
CLI Binaries
| Platform | File |
|---|---|
| Linux x86_64 | darn-linux-x86_64-0.6.2 |
| Linux x86_64 (static) | darn-linux-x86_64-musl-0.6.2 |
| Linux aarch64 | darn-linux-aarch64-0.6.2 |
| Linux aarch64 (static) | darn-linux-aarch64-musl-0.6.2 |
| macOS aarch64 (Apple Silicon) | darn-macos-aarch64-0.6.2 |
| Windows x86_64 | darn-windows-x86_64-0.6.2.exe |
v0.6.2 (nightly 2026-03-30)
darn v0.6.2 — Nightly Build
Date: 2026-03-30
Commit: 24026d60
CLI Binaries
| Platform | File |
|---|---|
| Linux x86_64 | darn-linux-x86_64-0.6.2 |
| Linux x86_64 (static) | darn-linux-x86_64-musl-0.6.2 |
| Linux aarch64 | darn-linux-aarch64-0.6.2 |
| Linux aarch64 (static) | darn-linux-aarch64-musl-0.6.2 |
| macOS aarch64 (Apple Silicon) | darn-macos-aarch64-0.6.2 |
| Windows x86_64 | darn-windows-x86_64-0.6.2.exe |
v0.6.1
v0.6.1 (nightly 2026-03-27)
darn v0.6.1 — Nightly Build
Date: 2026-03-27
Commit: 55684ede
CLI Binaries
| Platform | File |
|---|---|
| Linux x86_64 | darn-linux-x86_64-0.6.1 |
| Linux x86_64 (static) | darn-linux-x86_64-musl-0.6.1 |
| Linux aarch64 | darn-linux-aarch64-0.6.1 |
| Linux aarch64 (static) | darn-linux-aarch64-musl-0.6.1 |
| macOS aarch64 (Apple Silicon) | darn-macos-aarch64-0.6.1 |
| Windows x86_64 | darn-windows-x86_64-0.6.1.exe |
v0.6.0 (nightly 2026-03-27)
darn v0.6.0 — Nightly Build
Date: 2026-03-27
Commit: f75dd2de
CLI Binaries
| Platform | File |
|---|---|
| Linux x86_64 | darn-linux-x86_64-0.6.0 |
| Linux x86_64 (static) | darn-linux-x86_64-musl-0.6.0 |
| Linux aarch64 | darn-linux-aarch64-0.6.0 |
| Linux aarch64 (static) | darn-linux-aarch64-musl-0.6.0 |
| macOS aarch64 (Apple Silicon) | darn-macos-aarch64-0.6.0 |
| Windows x86_64 | darn-windows-x86_64-0.6.0.exe |
v0.6.0 "Dapper Denim"
Dependency upgrade release — updates all Subduction and Sedimentree crates to their latest versions and adapts to the new APIs. This has breaking changes under the hood.
What changed
Dependency upgrades
| Crate | Old | New |
|---|---|---|
sedimentree_core |
0.5 | 0.6 |
sedimentree_fs_storage |
0.5 | 0.6 |
subduction_core |
0.5 | 0.7 |
subduction_crypto |
0.2 | 0.2.1 |
subduction_iroh |
0.2 | 0.4 |
subduction_websocket |
0.5 | 0.7 |
API migration
- SubductionBuilder:
Subduction::new()replaced by a builder with
type-level required fields; hydration is now manual (load from storage into
aShardedMapand pass via.sedimentrees()). - Connection management:
register()→add_connection()(takes
Authenticated<C, F>);Connectiontrait no longer exposespeer_id()—
peer identity lives on theAuthenticatedwrapper. - Sync methods:
full_sync()→full_sync_with_all_peers(),
sync_all()→sync_with_all_peers(). - Error types:
AttachError/RegistrationErrorreplaced by
AddConnectionError. - Storage:
load_*methods now returnVerifiedMeta<T>wrappers; use
into_full_parts().1to extract inner values. - Import paths:
AudienceandDiscoveryIdmoved to
connection::handshake::audiencesubmodule.
Improvements
- Iroh listener/sender task error logs now include the
peer_idfield,
making it possible to correlate failures with a specific remote peer when
multiple connections are active. - Homebrew formula updated for v0.6.0.
Upgrading
No user-facing changes — workspaces, .darn config files, peers, and storage
are all forward-compatible. Just install the new binary.
v0.6.0 (nightly 2026-03-15)
darn v0.6.0 — Nightly Build
Date: 2026-03-15
Commit: 728cd6fe
CLI Binaries
| Platform | File |
|---|---|
| Linux x86_64 | darn-linux-x86_64-0.6.0 |
| Linux x86_64 (static) | darn-linux-x86_64-musl-0.6.0 |
| Linux aarch64 | darn-linux-aarch64-0.6.0 |
| Linux aarch64 (static) | darn-linux-aarch64-musl-0.6.0 |
| macOS aarch64 (Apple Silicon) | darn-macos-aarch64-0.6.0 |
| Windows x86_64 | darn-windows-x86_64-0.6.0.exe |
v0.5.1
v0.5.1 (nightly 2026-03-13)
darn v0.5.1 — Nightly Build
Date: 2026-03-13
Commit: 2badcfc5
CLI Binaries
| Platform | File |
|---|---|
| Linux x86_64 | darn-linux-x86_64-0.5.1 |
| Linux x86_64 (static) | darn-linux-x86_64-musl-0.5.1 |
| Linux aarch64 | darn-linux-aarch64-0.5.1 |
| Linux aarch64 (static) | darn-linux-aarch64-musl-0.5.1 |
| macOS aarch64 (Apple Silicon) | darn-macos-aarch64-0.5.1 |
| Windows x86_64 | darn-windows-x86_64-0.5.1.exe |
v0.5.0 "Cropped Cashmere"
v0.5.0 "Cabled Cashmere"
Highlights
Immutable String Type
Files matching dist/**, build/**, and other configurable patterns are now stored as immutable strings (LWW — last-writer-wins) rather than character CRDTs. This is the correct merge strategy for build artifacts, minified bundles, and other generated files that should be replaced wholesale rather than character-merged.
Per-Workspace Peers
Peer configuration is now scoped per workspace instead of global, allowing different projects to sync with different collaborators.
Document Editing
New darn doc edit command for appending to and clearing lists in Automerge documents, enabling lightweight structured-data workflows from the CLI.
Quiet & Silent Modes
New --quiet and --silent flags control output verbosity independently of --porcelain:
| Flag | Spinners | Detail | Summaries | Errors |
|---|---|---|---|---|
| (default) | yes | yes | yes | yes |
--quiet |
no | no | yes | yes |
--silent |
no | no | no | stderr |
Improved Concurrency
- File ingestion now uses I/O-tuned parallelism (
cores × 4) instead of CPU-bound limits - Network operations use a flat cap of 128 concurrent tasks
- New
darn_core::concurrencymodule exposes these defaults
Changes
- Immutable string file type for last-writer-wins merge semantics
dist/**andbuild/**added to default immutable patterns- Per-workspace peer storage — peers are no longer global
darn doc editsubcommand (append/clear lists in Automerge docs)--quiet/--silentverbosity flags- Porcelain wire format documented accurately (
<level>\t<message>) - I/O-tuned concurrency for file ingestion and network sync
- Immutable content preserved through file lifetime (no spurious type coercion)
- Strict
automerge:URL format — plain base58 fallback removed result_large_errfix —SedimentreeErrorboxed inFileProcessError- Feature-gated imports — builds cleanly with
--no-default-features --features rustls
Testing
- 143 unit, 40 integration, 13 CLI, and 2 doc tests
- New property-based tests (bolero) for serialization roundtrips, hash consistency, and sync stats
- Known-answer vectors for
content_hash(blake3) - 15 redundant tests removed