baa1d48 Add link to JoininBox to README (chris-belcher)
Tree-SHA512: ff1886e9dd03c58e7668753fbc305f9ac0f645502d57e6056644349a919cb7d5913be142ef7822bba24e84088aecbd1a075c85a57d143044e5eb96ce136b39c7
when checking for timed-out counterparties (or refreshing the
orderbook), stale entries are preserved because those peers
disconnected prematurely. This fix prevents that issue by
first removing all entries before requesting for the orderbook.
Fixes#967. In this test, if the randomized fee calculated from the
tx_fees field in the config happens to be at the bottom of the range,
it's possible that the calculated feerate is very close to 1.1 sats/vB,
but this can still vary slightly due to signature sizes, resulting in a
very rare case where this test could erroneously fail.
This is fixed by bumping the lowest minfeerate by 2%.
Fixes#1294.
Before this commit, calls to query_utxo_set with default arguments
would ignore the mempool and thus return utxos which were spent in
unconfirmed transactions. Thus, takers would continue negotiation of
coinjoins with makers who sent them already-spent utxos, leading to
failure at broadcast time. This was not intended behaviour; we want
takers to reject utxos that are double spent in the mempool.
This commit changes that default argument to True so that utxo set
changes in the mempool are accounted for. It also switches the name of
the includeunconf argument, which was misleading, to include_mempool,
with appropriately updated docstring.
Finally, in this commit we also ensure that callers of this function
check, where necessary, the returned confirmations field to disallow
unconfirmed utxos where that is necessary.
4d4cae5f0c docs: Creating Core wallet is required for v0.21+ (Kristaps Kaupe)
Pull request description:
It isn't anymore "recommended" for recent Bitcoin Core versions, as since v0.21 default wallet is not created automatically.
Top commit has no ACKs.
Tree-SHA512: 617c4af59449926be8873a0af54f4d4dca732862391915578c249f4022369b9dc6c5f3c0201bde1b6e70a8fe301946054d47f78456e092d17a32398ac7cf0013
PR #986 introduced two distinct balances at different levels of
the wallet tree; it serialized these balances for CLI and Qt display
but changed the RPC-API json output of the /display endpoint in a
suboptimal way. This commit fixes the json structure.
After this commit, the four levels (wallet, account, branch, entry) now
all still have balances reported under the same key as before #986, that
is, total_balance, account_balance, balance and amount, but the extra
information introduced by that PR, namely the 'available_balance' is
added as an extra key in the json dict.
Tests are added to check this structure.
e42f8290b2 docs: fix link in SOURCING-COMMITMENTS.md (Thebora Kompanioni)
Pull request description:
Redirect to PoDLE blog post is not properly working, hence the direct link to https://reyify.com is used.
ACKs for top commit:
kristapsk:
ACK e42f8290b2
Tree-SHA512: 13a62b3220202fe18c75ea4a502860eb81fe7b2b101dc97c74f7071e519a72c71b3cac5baad0adc7ed32a17fa8a1f5f33fbff8f997aee6836ee53cfa4b6c25d2
Before this commit, if Joinmarket-Qt or any other long running script
was started when a new utxo had been created in the wallet, but was not
yet in a block, the transition from unconfirmed to confirmed state would
not be registered, because when confirmation happened and the event was
seen in the transaction monitor, that txid was not in the active_txs
dict. This is now fixed.
For frozen balances, display a label "FROZEN" in the status notes.
For unconfirmed balances, display a label "PENDING" in the status notes.
Both FROZEN and LOCKED balances are considered unavailable balances, while PENDING balance is considered available balance.
Because it is possible to broadcast a transaction that spends unconfirmed balance, while a user has to manually unfreeze
the balance or wait until the timelock has expired before they can use FROZEN or LOCKED balances.
e4f249ad4b Show QR code for xpub (Wukong)
Pull request description:
Show QR code for xpub so that mobile client can easily import the xpub by scanning the QR code
ACKs for top commit:
kristapsk:
ACK e4f249ad4b
Tree-SHA512: d2b60155f03cc2787b9a71d232584a0b97bd54c4682905cffe2babf8dc726426af9544edce5bbabb5fb7833099e2784ec0487a4a860fc8432527c6f3edc48185
5e9044eb44 Install Tor binaries under /usr/local for --docker-install (Kristaps Kaupe)
Pull request description:
Fixes#1271. See discussion there for details. Affects `--docker-install`.
Top commit has no ACKs.
Tree-SHA512: 77ede509d64e968fa2873ad41ecce47016d35f6efa1c87b7e22a4c6009b6eb9d4c8be85210920e0d5c5528a6faeddb4bb8059941ddaf48fe1502cdd683a521f4
Fixes#1259.
This is done to support envisaged experimentation with significantly
larger counterparty counts than the current usually 10-12 maximum. IRC
notionally supports very large messages because we split messages into
chunks, but realistically, throttling usually causes
timeouts/interruptions if we try to use extremely large amounts of text.
In Joinmarket's communication protocol, the only time we need very large
messages is specifically to allow transfer of fully signed transactions
that need to be pushed to the bitcoin network. (See JMPushTx). So this
bump to the maximum allowable line length is specifically to support
that message, in case people want to try coinjoins with 20-40
participants. The comment indicates an extremely rough guesstimate of
maximum supported counterparty count based on this limit.
Note that users can always just broadcast the final tx themselves, of
course.