3 Commits
Author SHA1 Message Date
swaits 7d18f3791c chore: repoint URLs at git.swaits.com and bump for release
CI / check (push) Canceled after 0s
Rewrites remaining github.com / git.sr.ht references to git.swaits.com,
translating GitHub URL shapes to Gitea's (/blob/<ref>/ -> /src/branch/<ref>/,
/tree/<tag> -> /src/tag/<tag>, /actions/workflows/X -> /actions?workflow=X,
/edit/ -> /_edit/).

Left pointing at GitHub on purpose: pull-request links (PRs were not migrated)
and GitHub-only surfaces Gitea lacks (security advisories, discussions).
2026-08-31 17:58:28 -06:00
swaits 3b2c2b94dd chore: point repository at git.swaits.com
CI / check (push) Canceled after 0s
2026-08-31 17:19:31 -06:00
swaits e47e378769 release 3.0.1: pull rendezvous 0.2.1 (fast PublishFailing recovery)
CI / check (push) Canceled after 0s
2026-05-11 16:18:40 -06:00
5 changed files with 27 additions and 12 deletions

No files matched your search

+15
View File
@@ -1,5 +1,20 @@
# Changelog
## [3.0.1] - 2026-05-11
### Fixed
- **DHT `PublishFailing` no longer wedges the swarm for minutes at a
time.** Pulls in `iroh-gossip-rendezvous` 0.2.1, which retries
failed publishes on a 15 s cadence (default) and bypasses the
`1/(n+1)` write-probability gate while the DHT is unhealthy. Prior
to this, a single failed publish parked the bridge in
`PublishFailing` for at least `write_period` (5 min) and on
average `(n + 1) × write_period` — half an hour with a populated
active view — before the next retry attempt. Recovery is now
bounded by `failure_retry_period × consecutive_failures` and
flips back to `Ready` the instant a write lands.
## [3.0.0] - 2026-05-11
### Breaking
Generated
+3 -3
View File
@@ -999,7 +999,7 @@ dependencies = [
[[package]]
name = "donglora-bridge"
version = "3.0.0"
version = "3.0.1"
dependencies = [
"anyhow",
"blake3",
@@ -2111,9 +2111,9 @@ dependencies = [
[[package]]
name = "iroh-gossip-rendezvous"
version = "0.2.0"
version = "0.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dba62c212a2f56a4d078935a958c1e4e1e91a13fde63a36f0f4640d67620fb53"
checksum = "48e5cc352847aff677cf4da3adb0e673b59cf70428866591ae25ef3eae42756d"
dependencies = [
"async-trait",
"blake3",
+4 -4
View File
@@ -1,12 +1,12 @@
[package]
name = "donglora-bridge"
version = "3.0.0"
version = "3.0.2"
edition = "2024"
authors = ["Stephen Waits <steve@waits.net>"]
license = "MIT"
description = "Peer-to-peer LoRa bridge using iroh and DongLoRa"
repository = "https://github.com/donglora/bridge"
homepage = "https://github.com/donglora/bridge"
repository = "https://git.swaits.com/donglora/bridge"
homepage = "https://git.swaits.com/donglora/bridge"
keywords = ["lora", "bridge", "gossip", "p2p", "iot"]
categories = ["network-programming", "command-line-utilities"]
readme = "README.md"
@@ -17,7 +17,7 @@ exclude = [".jj/", ".github/"]
donglora-client = "1"
iroh = "=1.0.0-rc.0"
iroh-gossip = "0.99"
iroh-gossip-rendezvous = "0.2"
iroh-gossip-rendezvous = "0.2.1"
tokio = { version = "1", features = ["full"] }
clap = { version = "4", features = ["derive"] }
serde = { version = "1", features = ["derive"] }
+4 -4
View File
@@ -1,6 +1,6 @@
# donglora-bridge
[![CI](https://github.com/donglora/bridge/actions/workflows/ci.yml/badge.svg)](https://github.com/donglora/bridge/actions/workflows/ci.yml)
[![CI](https://git.swaits.com/donglora/bridge/actions/workflows/ci.yml/badge.svg)](https://git.swaits.com/donglora/bridge/actions?workflow=ci.yml)
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE)
![Rust](https://img.shields.io/badge/rust-1.94.1%2B-orange)
@@ -25,12 +25,12 @@ through an encrypted peer-to-peer gossip swarm.
### 1. A DongLoRa radio
[DongLoRa](https://github.com/donglora/firmware) is open-source firmware that
[DongLoRa](https://git.swaits.com/donglora/firmware) is open-source firmware that
turns a supported LoRa development board (such as a Heltec WiFi LoRa 32 or
similar ESP32+SX1262 board) into a USB LoRa dongle. You will need to:
1. **Get a board** -- any ESP32 board with an SX1262 LoRa radio that DongLoRa
supports. See the [DongLoRa README](https://github.com/donglora/firmware) for
supports. See the [DongLoRa README](https://git.swaits.com/donglora/firmware) for
the full list.
2. **Flash the DongLoRa firmware** onto the board. Instructions are in the
DongLoRa repository.
@@ -68,7 +68,7 @@ mise use -g cargo:donglora-bridge
Or build from source:
```sh
git clone https://github.com/donglora/bridge.git
git clone https://git.swaits.com/donglora/bridge.git
cd donglora-bridge
cargo build --release
```
+1 -1
View File
@@ -3,7 +3,7 @@
The DHT partition-healing algorithm specification is now maintained as part
of the `iroh-gossip-rendezvous` crate:
**<https://github.com/swaits/iroh-gossip-rendezvous/blob/main/PROTOCOL.md>**
**<https://git.swaits.com/swaits/iroh-gossip-rendezvous/src/branch/main/PROTOCOL.md>**
The bridge pins a specific `iroh-gossip-rendezvous` version; the spec that
matches whatever version you're running is in