Overview
On-track for an internal Heartwood release in January.
- 50 PRs merged in
heartwood
andradicle-git
. - 30 PRs merged on
radicle-interface
.
Contributors
Web: @sebastinez, @rudolfs
Heartwood: @slackcoder, @dave, @fintohaps, @keepsimple,
@adaszko, @cloudhead, @jorge, @erikli, @dr_orlovsky, @sophia
Products
Web
- New custom router implementation
- Allows IPFS deployments using hash routing
- Markdown files can be switched between rendered and raw markdown
- Twemojis everywhere
- Code font switching
- Load time improvements via chunked loading
- More elaborate end-to-end testing with Playwright
CLI
- Most of
radicle-cli
ported to Heartwoodpatch
,issue
,init
,auth
,push
,edit
,ls
, etc.
- Work
rad delegate
for managing project delegates
Technology
Collaborative Objects
- Port of collaborative objects backend to Heartwood (
heartwood/radicle-cob
) - New Radicle CRDTs crate to replace Automerge (
heartwood/radicle-crdt
)- Last-Write-Wins Set/Map
- Last-Write-Wins Register
- Redactable
- Min/Max
- Lamport clock
- Port of
Patch
andIssue
to Radicle CRDTs
Git
- Redesign of
radicle-surf
partly done- API and performance improvements
Research
- RIP 2: Storage Layout
- Currently in draft, being reviewed
- DID Keri
- Prototype of a potential identity system for Radicle
Seed Infrastructure
Node
- Noise XK handshake protocol implementation (integration in-progress)
- Basic sybil resistance via proof-of-work on node announcements
- Routing table pruning
- Reconnection logic
HTTP API
- Git & API merged into single HTTP daemon (
heartwood/radicle-httpd
) - Git & API can both run on same port now
- Greatly simplifies deployment
Changes in our codebase
Before
radicle-link
(deprecated)radicle-cli
(deprecated)radicle-client-services
(deprecated)radicle-keystore
(deprecated)
After
heartwood
radicle-cli/
(command-line interface)radicle-node/
(peer-to-peer node)radicle-httpd/
(git bridge & http api)radicle-ssh/
(SSH-agent support)radicle-cob/
(Collaborative objects backend)radicle-crdt/
(Radicle CRDTs)radicle-crypto/
(Crypto primitives)
radicle-git
(generic git libraries)
Next
- Finalize node integration with Noise XK
- Finalize node integration with Tor, via SOCKS5
- Finalize surf redesign
- Port Dockerfiles to
heartwood
, prepare for deployment