Fixed
- Install whiptail in maker and taker images so the jm-ng TUI works out of the box (72ea101e)
- Fix jmwalletd crash on startup in Flatpak (ModuleNotFoundError: No module named 'tumbler') (b4df30ff)
- Prevent a Sybil DoS where relayed !hp2 floods starved the maker's own post-ioauth commitment broadcasts and let the burned PoDLE commitment be reused against peers (0db9050a)
- Clamp descriptor scan ranges to Bitcoin Core's 1,000,000 limit instead of failing the whole import with "Range is too large" (236ed773)
- Honor --start-height when combined with --scan-depth in jm-wallet rescan (236ed773)
- Stop aborting CoinJoin sessions when a taker switches between (220e9c57)
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.0)
+++ config.toml.template (0.31.1)
@@ -159,9 +159,11 @@
# Initial descriptor scan range (max address index per branch) imported into
# Bitcoin Core's descriptor wallet. Defaults to 1000 and auto-expands as
-# addresses are used. To widen the range for an already-imported wallet (e.g.
-# migrated from legacy joinmarket-clientserver), run `jm-wallet rescan
-# --scan-depth N` once. See docs/technical/wallet-scanning.md.
+# addresses are used. Capped at 1000000, which is Bitcoin Core's per-descriptor
+# range limit (larger values are rejected with "Range is too large"). To widen
+# the range for an already-imported wallet (e.g. migrated from legacy
+# joinmarket-clientserver), run `jm-wallet rescan --scan-depth N` once.
+# See docs/technical/wallet-scanning.md.
# scan_range = 1000
# Dust threshold in satoshis