LXMF-rs v0.8.0
LXMF-rs v0.8.0 Release Notes
Date: 2026-07-10
Release ref: v0.8.0
This feature release consolidates the large Reticulum and LXMF compatibility
train landed since v0.7.1. It introduces the in-process LXMF runtime,
substantially expands typed SDK and daemon RPC behavior, strengthens direct and
propagated delivery, and closes additional software-testable Reticulum parity
gaps. All public packages and GitHub bundles move together to 0.8.0.
Public API comparison against the published 0.7.1 crates found additive
changes only: no existing public items were removed or changed. The 0.8.0
version marks the breadth of the new feature train rather than an intentional
source-breaking API transition.
Highlights
- Adds the
lxmf-runtimecrate with an in-process backend over the existing
Reticulum transport, including direct delivery, link reuse, runtime state,
and typed capability negotiation. - Expands
lxmf-sdkwith delivery cancellation, delivery tickets and stamp
policy, propagation policy controls, typed propagation status, conversation
listing, richer lifecycle metadata, and corresponding ZeroMQ pipeline
methods. - Strengthens direct and opportunistic delivery with reusable backchannels,
receipt and delivery-trace metadata, duplicate and malformed inbound-drop
events, resource limits, and destination mismatch reporting. - Expands propagation behavior with control ACLs, convenience policy mutators,
selected-node wakeups, processed-marker expiry, status accounting, and
Python-compatible peer lifecycle handling. - Adds Reticulum daemon RPC coverage for targeted announces, path metadata,
link counts, blackholed identities, shared-instance status, path restore
accounting, and runtime interface mutation. - Persists blackholed identities across restarts and evicts cached paths tied
to newly blackholed identities. - Broadens hot-applied TCP server and UDP interface support to host-bound and
device-bound configurations, including Python-style IPv4 broadcast defaults
and device-selected IPv4/IPv6 TCP listeners. - Completes the pinned Python
Resolver.pysurface with an executable
reference probe while retaining Rust's additional cached identity resolver. - Improves mesh discovery, Reticulum transport configuration, path-table
persistence, AutoInterface behavior, Windows compatibility, ARM64 release
bundles, and Columba integration evidence.
Public Release Train
The following public packages are aligned at 0.8.0:
lxmflxmf-referencelxmf-wirelxmf-sdklxmf-runtimereticulum-rsreticulum-rs-corereticulum-rs-transportreticulum-rs-rpclxmf-embedded-minirns-embedded-corerns-embedded-runtimerns-embedded-ffirns-embedded-mininodelxmf-clireticulumdrns-tools
Validation
- Public API diffs against published
0.7.1found no removed or changed items
inlxmf-wire,lxmf-sdk,reticulum-rs-core,
reticulum-rs-transport, orreticulum-rs-rpc. - Workspace formatting and all-feature clippy pass with warnings denied.
- Full
reticulum-rs-rpc,reticulum-rs-transport, andreticulumdtest
suites pass. - Architecture, module-size, and dependency-boundary gates pass.
- Local TCP and Unix shared-instance, pinned-Python shared-instance, software
BLE management, and fake-TCP RNode prepared-host smokes pass.
Known Limits
- Full Python Reticulum/LXMF surface parity is not yet claimed; consult the
maintained parity matrices for the six remaining partial Reticulum rows. - Prepared-host RNode serial, TCP/Wi-Fi, and BLE reports are still required for
the strict interface parity audit. - Broader RNodeMulti, Weave, VR-N76, public I2P/network soak, and external
client evidence remains environment-dependent. - Python utility and CRNS command ecosystems are not yet reproduced in full.
What's Changed
- Fix Rust 1.97 xtask clippy by @brothercorvo in #453
- Fix/autointerface multicast race by @IgorShishkin12 in #398
- Fix Windows Rust 1.97 clippy gates by @brothercorvo in #454
- Split transport job tests below module gate by @brothercorvo in #455
- Avoid Windows Instant underflow in path test by @brothercorvo in #456
- Escape Windows paths in I2P TOML tests by @brothercorvo in #457
- Accept Windows executable name in rnsd help test by @brothercorvo in #458
- Add in-process LXMF runtime backend by @brothercorvo in #459
- Fix in-process runtime capability negotiation by @brothercorvo in #460
- Consolidate app-domain delivery cancellation by @brothercorvo in #461
- Consolidate typed LXMF event metadata by @brothercorvo in #462
- Gate propagation announce side effects by @brothercorvo in #405
- Add router policy convenience mutators by @brothercorvo in #407
- Add LXMF propagation control ACL parity by @brothercorvo in #410
- Hot-apply wildcard TCP server listeners by @brothercorvo in #411
- Expose delivery ticket generation over SDK by @brothercorvo in #414
- Expose conversation list over SDK envelope by @brothercorvo in #415
- Emit direct duplicate inbound drop events by @brothercorvo in #416
- Cover unsafe UDP reload restart policy by @brothercorvo in #417
- Expose delivery stamp policy over SDK by @brothercorvo in #418
- Hot-apply Pipe interface records by @brothercorvo in #419
- Expose path restore skip accounting by @brothercorvo in #420
- Validate propagation get transient IDs by @brothercorvo in #424
- Hot-apply UDP forward_ip shared port by @brothercorvo in #425
- Cover tunnel path restore status by @brothercorvo in #426
- Add announce-rate transport policy evidence by @brothercorvo in #428
- Cover prefer_ipv6 TCP server reload policy by @brothercorvo in #429
- Wake propagated outbound on selected node announce by @brothercorvo in #430
- Honor panic_on_interface_error config by @brothercorvo in #431
- Enforce direct delivery resource limit by @brothercorvo in #432
- Add Reticulum link_count RPC by @brothercorvo in #433
- Add targeted LXMF delivery announce RPC by @brothercorvo in #434
- Add LXMF delivery policy entry mutators by @brothercorvo in #435
- Add Reticulum blackholed identity RPCs by @brothercorvo in #436
- Expire LXMF processed transient markers by @brothercorvo in #437
- Add Reticulum next-hop path metadata RPCs by @brothercorvo in #438
- Add LXMF direct backchannel reuse by @brothercorvo in #439
- Expose Reticulum shared instance status by @brothercorvo in #440
- Cover opportunistic packet receipt metadata by @brothercorvo in #442
- Cover UDP hot-apply target validation by @brothercorvo in #443
- Flush Reticulum path table on shutdown by @brothercorvo in #444
- Expose typed LXMF propagation remote stats by @brothercorvo in #445
- Expose LXMF delivery trace envelope by @brothercorvo in #446
- Capture Columba external-client LXMF evidence by @brothercorvo in #447
- Expose propagated destination mismatch drop event by @brothercorvo in #448
- Emit direct duplicate delivery drop events by @brothercorvo in #450
- Emit paper duplicate drop events by @brothercorvo in #451
- Honor reticulum enable_transport toggle by @brothercorvo in #452
- Integrate outstanding parity PRs and compatibility hardening by @brothercorvo in #464
- Expose outbound stamp cost query by @brothercorvo in #406
- Hot-apply UDP multicast forward records by @brothercorvo in #408
- Isolate LXMF delivery announce side effects by @brothercorvo in #412
- Stop hot-applied TCP servers on removal by @brothercorvo in #413
- Close Reticulum parity gaps and prepare v0.8.0 by @brothercorvo in #465
Full Changelog: v0.7.1...v0.8.0