Fixes#976. Joinmarket will allow, but warn, when
non-zero change values (which are not included in
the transaction) result from sweeps (due to the
impossibility of knowing the exact value in advance).
However, prior to this commit, if that estimation
inaccuracy resulted in a negative change value that
was to be ignored, there was a crash due to the fact
that `jmbitcoin.amount_to_str` does not allow negative
values. Hence we instead print the number in the warning
without going through this formatting function.
Adds tests case for negative sweep change.
Before this commit, attempting to spend in a taker-
side Joinmarket coinjoin, a utxo which is of the
tiemelock type (after its timelock expired), had
a potential to crash, because it would be selected
for the generation of a PoDLE but this cannot be
supported (even with taker-side code changes, the
maker could not reconstruct it).
After this commit, any non-standard wallet-type
scriptPubKey is filtered out of being a candidate
for PoDLE generation.
Also a trivial variable name typo is fixed (too-old).
Also the test framework `DummyWallet` now inherits
from `LegacyWallet` because its utxos are of that
type; a future commit should update to `SegwitWallet`.
Also add tests cases for no custom-script PoDLEs.
Before this commit, while sending from mixdepth
zero in a sweep, where 1 or more p2wsh timelock
type outputs (now past their timelock), were present,
was working correctly, non-sweep sends in the same
circumstances were failing due to a key error.
This is now fixed.
ce08a0c Fix year 2038 problem in ob-watcher /fidelitybonds (chris-belcher)
58d3e59 Fix Export Orders page on ob-watcher (chris-belcher)
Tree-SHA512: 77db761eb325d8bda363015414aa8b8c947f4c809be8ce06f730fbe7bff17c92c66ac31d54d820b48df8ff52efb6a324a6c0640bd155dfbb3426102526fa07ab
1bf9f85164 Update link to irc logs to https (Luke)
Pull request description:
Since few months the website offers HTTPS
ACKs for top commit:
kristapsk:
ACK 1bf9f85164. Trivial, tested, so merging.
Tree-SHA512: aa8702e7f41d79c1b6d9383dbed2cd0d47de17aabb3ecb6ef2b90af5b1d80115a6f2d8eba6dd90df1210dfe7aa598e35af4d88d1ccc4e7c6158b24198055391e
a090293 Emphasize the sybil protection gained by takers (chris-belcher)
cea80e2 Suggest use of coin control in fidelity-bond.md (chris-belcher)
87f36c2 Fix error in simplified equation in fidelity-bond (chris-belcher)
Tree-SHA512: 1802be8e3879d2ba8f3da7a0baa97f5209cec4d5726c96382ac5f65af026df01b340f54584be3c051a7699d2e0eb2f785e8ecfd5149d75da626cc88cf065b03d
f9ea973be9 fix overflow error on 32bit ARM (openoms)
Pull request description:
Fixes#953
Tested on a 32bit Odroid running Armbian:
`Linux odroidxu4 4.14.222-odroidxu4 #2 SMP PREEMPT armv7l GNU/Linux`
based on #857 as suggested in https://github.com/JoinMarket-Org/joinmarket-clientserver/issues/953#issuecomment-890519047
ACKs for top commit:
kristapsk:
re-ACK f9ea973be9
Tree-SHA512: a8c1e46c7350b8871f88a92b111b1d77c2ac817d6357da852c055849206bd53bbbf8b90000a88fc8198e85a3b7eaab48fc5970c80f5072d10a785632f72f704e
Previous to this commit, the Qt app had a monitoring
loop that triggered every 5 seconds, recalculating the
wallet view; this turns out to be expensive enough to
create a CPU bound that is noticeable to the user, for
any reasonably large wallet.
After this commit, the view is only updated when a new
transaction comes into the wallet.
7be5e5dfa0 By default auto-expand mixdepth 0 (Kristaps Kaupe)
Pull request description:
Restore pre-#934 behaviour in this regard. See discussion in #937.
Top commit has no ACKs.
Tree-SHA512: 932e1ef6e3ec386dab965925e8bffdae89333ac95c0b1da45f727e46810fb1d19684e7f07f20706cd22751c1b0f899acaf9152973a7efb2e97a512c48de5054c
0e2850acf2 Auto expand internal addresses that has non zero balances, and only auto expand the external addresses of mix depth 0. (Wukong)
Pull request description:
1. For internal addresses that has non zero balances, auto expand them as user will most likely be interested in checking the details of those addresses
2. For external addresses, only auto-expand for mixdepth 0 as that's where user will most likely make deposits to.
ACKs for top commit:
kristapsk:
ACK 0e2850acf2
Tree-SHA512: 6cd397ff276e16a925d0668466bc013d53a3806e37d57c1a933429d6b8dfa761799c1e5f8fd81e28df7ac655583a42afc17db541f1015b2c280de60cd0f03e58
c70b12f For timelock addrs use new pubkey foreach locktime (chris-belcher)
3dc8d86 Fix importprivkey on fidelity bond wallets (chris-belcher)
bbd3d1b Print privacy warning when showing timelocked addr (chris-belcher)
1ea62a7 Fix bug with timelocked addrs in receive payjoin (chris-belcher)
4868343 Fix showutxos wallettool method for fidelity bonds (chris-belcher)
81bade7 Update ygrunner to use fidelity bonds (Adam Gibson)
a3b775b Increase default fee by 4x (chris-belcher)
e970a01 Create release notes section for fidelity bonds (chris-belcher)
6cf4162 Add fidelity bond protocol tests (chris-belcher)
199b571 Consider fidelity bonds when choosing makers (chris-belcher)
97b8b3b Show fidelity bonds on orderbook watch html page (chris-belcher)
7a50c76 Announce yieldgenerator's fidelity bond (chris-belcher)
6b6fc4a Handle fidelity bonds in client-server protocol (chris-belcher)
662f097 Write and update fidelity bond docs (chris-belcher)
eb0a738 Add interest rate option to config file (chris-belcher)
d4b3f70 Enable creation of fidelity bond wallets on cli (chris-belcher)
b9eab6e Increase max locktime of fidelity bond wallets (chris-belcher)
a3b3cd4 Make fidelity bond wallets be native segwit (chris-belcher)
9a372fd Add getblockhash RPC method (chris-belcher)
e6c0847 Add calculate fidelity bond value function + tests (chris-belcher)
Tree-SHA512: d2ffde2b752f66c5fd0d3100670e69d0357fc27bd3c50f9438cef9b261a17b0554c14ee56567ca1980937f889ac8be75ecc96517b1a77c7370ed33f8b5650cc7