Changed
- Neutrino TLS migration guidance added: if upgrading from HTTP, switch
neutrino_urltohttps://and setneutrino_tls_certplusneutrino_auth_token_file(orneutrino_auth_token). Manual install docs now include where to copytls.certandauth_tokenfrom neutrino-api.
Added
- Add directory heartbeat probes and idle peer eviction using PING/PONG with legacy maker fallback (2a33f7f7)
Fixed
- Propagate neutrino TLS/auth settings across all CLI backend codepaths and reduce duplicate pinning logs (e5d5ca1a)
- Fix TLS hostname mismatch when connecting to neutrino via Docker service names (31740b71)
Configuration Changes
Existing config.toml files are not updated automatically. Review the bundled template changes below and apply the relevant options manually.
--- config.toml.template (0.24.0)
+++ config.toml.template (0.25.0)
@@ -97,10 +97,14 @@
#
# Path to the neutrino-api TLS certificate (PEM). Enables HTTPS with
# certificate pinning (trust-on-first-use).
-# neutrino_tls_cert = "/data/neutrino/tls.cert"
+# neutrino_tls_cert = "~/.joinmarket-ng/neutrino/tls.cert"
#
# API bearer token for neutrino-api authentication.
# neutrino_auth_token = ""
+#
+# Path to a file containing the auth token (alternative to neutrino_auth_token).
+# Useful in Docker environments where the token is generated into a shared volume.
+# neutrino_auth_token_file = "~/.joinmarket-ng/neutrino/auth_token"
# ============================================================================
# Network Settings
@@ -377,6 +381,12 @@
# Message of the day
# motd = "JoinMarket NG Directory Server https://github.com/joinmarket-ng/joinmarket-ng/"
+# Heartbeat liveness detection (PING/PONG protocol, compatible with joinmarket-rs)
+# heartbeat_sweep_interval = 60.0 # Seconds between heartbeat sweeps
+# heartbeat_idle_threshold = 600.0 # Seconds idle before probing (10 min)
+# heartbeat_hard_evict = 1500.0 # Seconds idle before unconditional eviction (25 min)
+# heartbeat_pong_wait = 30.0 # Seconds to wait for PONG after PING
+
# ============================================================================
# Orderbook Watcher Settings
# ============================================================================