0.18.1
P2P protocol and network code
- Add tests and documentation for blocksonly
- Avoid logging transaction decode errors to stderr
- fix: tor: Call `event_base_loopbreak` from the event's callback
- Make poll in InterruptibleRecv only filter for POLLIN events
Wallet
- Add -ignorepartialspends to list of ignored wallet options
RPC and other APIs
- Bugfix: fix pruneblockchain returned prune height
- Document iswitness flag and fix bug in converttopsbt
- Ensure that uncompressed public keys in a multisig always returns a legacy address
- Disallow extended encoding for non-witness transactions
- add 2nd arg to signrawtransactionwithkey examples
- signrawtransactionwithkey: report error when missing redeemScript/witnessScript
GUI
- fix the bug of OPEN CONFIGURATION FILE on Mac
- Show "No wallets available" in open menu instead of nothing
- Enable open wallet menu on setWalletController
- Set progressDialog to nullptr
- Fix open wallet menu initialization order
- Set `AA_EnableHighDpiScaling` attribute early
- Enable console line edit on setClientModel
- Assert QMetaObject::invokeMethod result
Build system
- Add test for GCC bug 90348
- Install bitcoin-wallet manpage
- build with -fstack-reuse=none
Tests and QA
- Pure python EC
- Add test for superfluous witness record in deserialization
- Bugfix: test/functional/rpc_psbt: Remove check for specific error message that depends on uncertain assumptions
- Add test that addmultisigaddress fails for watchonly addresses
Documentation
- Remove text about txes always relayed from -whitelist
Miscellaneous
- Catch by reference not value in wallettool
- Replace fprintf with tfm::format
Bitcoin is a decentralized P2P electronic cash system without a central
server or trusted parties. Users hold the crypto keys to their own money
and transact directly with each other, with the help of the network to
check for double-spending.