github joinmarket-ng/joinmarket-ng 0.32.0

latest releases: 0.42.1, 0.42.0, 0.41.0...
5 months ago

Neutrino backend now has mempool support. Along with other improvements and bug fixes.

Added

  • Takers now switch to a direct maker connection mid-session once (a03e2ac5)
  • Show registered but unfunded fidelity bonds in list-bonds (d193bb15)
  • CLI commands now print help when invoked without required arguments (e5a23af5)
  • Add 'jm-wallet sync-bonds' to quickly refresh funded status of registered fidelity bonds (ecf396e9)
  • Use the neutrino-api watched mempool tracker when available so neutrino takers verify maker broadcasts and follow the configured broadcast policy, with a neutrino_include_mempool opt-out for chain-only behaviour (6b913cae)

Fixed

  • Exclude UTXOs locked by other in-flight CoinJoins from (ee23530f)
  • Fix jm-wallet info mislabeling plain wallet sends as CoinJoin outputs/change (6904da14)
  • Fix fidelity bond registry copying other wallets' bonds into a wallet's own per-wallet registry file (601ed69b)
  • Make offline list-bonds and registry-show use the configured wallet when no flags are given (691e11ad)
  • list-bonds is now offline-only; use recover-bonds to scan the blockchain (9ef23258)
  • Fix history CSV corruption from a reordered column header that hid CoinJoin fingerprints and left confirmed rounds stuck pending (93e8953a)
  • Notifications now include the full txid and an optional block explorer link (5032750f)
  • Maker now sends notifications when a CoinJoin enters the mempool and when it confirms (e4442fc8)
  • Secure the neutrino backend out-of-the-box with TLS trust-on-first-use pinning, default cert/token paths, automatic HTTPS, and a hard error on network mismatch (fd3e4d8c)

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.31.1)
+++ config.toml.template (0.32.0)
@@ -60,6 +60,9 @@
 # rpc_cookie_file = "~/.bitcoin/.cookie"

 # Neutrino backend settings (used by all components when backend_type = "neutrino")
+# URL of the neutrino-api server. Defaults to http://127.0.0.1:8334.
+# When an auth token is configured (see below), the URL is automatically
+# upgraded to https:// because neutrino-api serves HTTPS in authenticated mode.
 # neutrino_url = "http://127.0.0.1:8334"

 # Preferred neutrino peers (host:port) that should be tried first while still
@@ -98,24 +101,33 @@
 # Neutrino-api security settings (auto-TLS + API token authentication).
 # When neutrino-api starts for the first time it generates a self-signed TLS
 # certificate (tls.cert + tls.key) and a random API token (auth_token) in its
-# data directory.  Set these to enable encrypted, authenticated communication.
-# In Flatpak deployments these are wired automatically from the neutrino data dir.
-#
-# Path to the neutrino-api TLS certificate (PEM).  Enables HTTPS with
-# certificate pinning (trust-on-first-use).
-# Relative paths (e.g. "neutrino/tls.cert") are resolved against the data
-# directory ($JOINMARKET_DATA_DIR or --data-dir, default: ~/.joinmarket-ng),
-# so the same config.toml works regardless of where the data dir lives.
-# Absolute paths and paths starting with ~ are used as-is.
+# data directory.  Copy (or volume-mount) those into your JoinMarket data
+# directory under "neutrino/" and they are picked up automatically, no need to
+# uncomment anything below. In Flatpak deployments this is wired automatically.
+#
+# Path to the neutrino-api TLS certificate (PEM).  Default: "neutrino/tls.cert".
+# When the file exists it is pinned for HTTPS verification. When it is missing
+# but the server is HTTPS, the backend fetches and pins the certificate on first
+# use (trust-on-first-use) and writes it to this path. Relative paths resolve
+# against the data directory ($JOINMARKET_DATA_DIR or --data-dir, default
+# ~/.joinmarket-ng). Absolute paths and ~ paths are used as-is. Set to "" to
+# disable certificate pinning.
 # neutrino_tls_cert = "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.
-# Relative paths are resolved against the data directory (see neutrino_tls_cert).
+# Default: "neutrino/auth_token". Missing files are ignored. Relative paths
+# resolve against the data directory (see neutrino_tls_cert). Set to "" to
+# disable token authentication.
 # neutrino_auth_token_file = "neutrino/auth_token"
+#
+# Include unconfirmed entries from the neutrino-api watched mempool tracker in
+# UTXO listings, and overlay mempool spends on single-UTXO checks. Has no
+# effect against older neutrino-api builds without the tracker. Set to false
+# for chain-only behaviour.
+# neutrino_include_mempool = true

 # ============================================================================
 # Network Settings
@@ -235,6 +247,10 @@
 # component_name is set automatically by each component (Maker, Taker, etc.)
 # include_amounts = true
 # include_txids = false
+# When include_txids is enabled, set a block explorer base URL to turn txids
+# into clickable links (e.g. "https://mempool.space/signet" -> ".../tx/<txid>").
+# Leave empty to show the bare txid instead.
+# mempool_url = ""
 # include_nick = true
 # use_tor = true

Don't miss a new joinmarket-ng release

NewReleases is sending notifications on new releases.