release-notes-0.20.2.md
1 0.20.2 Release Notes 2 ==================== 3 4 Bitcoin Core version 0.20.2 is now available from: 5 6 <https://bitcoincore.org/bin/bitcoin-core-0.20.2/> 7 8 This minor release includes various bug fixes and performance 9 improvements, as well as updated translations. 10 11 Please report bugs using the issue tracker at GitHub: 12 13 <https://github.com/bitcoin/bitcoin/issues> 14 15 To receive security and update notifications, please subscribe to: 16 17 <https://bitcoincore.org/en/list/announcements/join/> 18 19 How to Upgrade 20 ============== 21 22 If you are running an older version, shut it down. Wait until it has completely 23 shut down (which might take a few minutes in some cases), then run the 24 installer (on Windows) or just copy over `/Applications/Bitcoin-Qt` (on Mac) 25 or `bitcoind`/`bitcoin-qt` (on Linux). 26 27 Upgrading directly from a version of Bitcoin Core that has reached its EOL is 28 possible, but it might take some time if the data directory needs to be migrated. Old 29 wallet versions of Bitcoin Core are generally supported. 30 31 Compatibility 32 ============== 33 34 Bitcoin Core is supported and extensively tested on operating systems 35 using the Linux kernel, macOS 10.12+, and Windows 7 and newer. Bitcoin 36 Core should also work on most other Unix-like systems but is not as 37 frequently tested on them. It is not recommended to use Bitcoin Core on 38 unsupported systems. 39 40 From Bitcoin Core 0.20.0 onwards, macOS versions earlier than 10.12 are no 41 longer supported. Additionally, Bitcoin Core does not yet change appearance 42 when macOS "dark mode" is activated. 43 44 Known Bugs 45 ========== 46 47 The process for generating the source code release ("tarball") has changed in an 48 effort to make it more complete, however, there are a few regressions in 49 this release: 50 51 - The generated `configure` script is currently missing, and you will need to 52 install autotools and run `./autogen.sh` before you can run 53 `./configure`. This is the same as when checking out from git. 54 55 - Instead of running `make` simply, you should instead run 56 `BITCOIN_GENBUILD_NO_GIT=1 make`. 57 58 Notable changes 59 =============== 60 61 Changes regarding misbehaving peers 62 ----------------------------------- 63 64 Peers that misbehave (e.g. send us invalid blocks) are now referred to as 65 discouraged nodes in log output, as they're not (and weren't) strictly banned: 66 incoming connections are still allowed from them, but they're preferred for 67 eviction. 68 69 Furthermore, a few additional changes are introduced to how discouraged 70 addresses are treated: 71 72 - Discouraging an address does not time out automatically after 24 hours 73 (or the `-bantime` setting). Depending on traffic from other peers, 74 discouragement may time out at an indeterminate time. 75 76 - Discouragement is not persisted over restarts. 77 78 - There is no method to list discouraged addresses. They are not returned by 79 the `listbanned` RPC. That RPC also no longer reports the `ban_reason` 80 field, as `"manually added"` is the only remaining option. 81 82 - Discouragement cannot be removed with the `setban remove` RPC command. 83 If you need to remove a discouragement, you can remove all discouragements by 84 stop-starting your node. 85 86 Notification changes 87 -------------------- 88 89 `-walletnotify` notifications are now sent for wallet transactions that are 90 removed from the mempool because they conflict with a new block. These 91 notifications were sent previously before the v0.19 release, but had been 92 broken since that release (bug 93 [#18325](https://github.com/bitcoin/bitcoin/issues/18325)). 94 95 PSBT changes 96 ------------ 97 98 PSBTs will contain both the non-witness utxo and the witness utxo for segwit 99 inputs in order to restore compatibility with wallet software that are now 100 requiring the full previous transaction for segwit inputs. The witness utxo 101 is still provided to maintain compatibility with software which relied on its 102 existence to determine whether an input was segwit. 103 104 0.20.2 change log 105 ================= 106 107 ### P2P protocol and network code 108 109 - #19620 Add txids with non-standard inputs to reject filter (sdaftuar) 110 - #20146 Send post-verack handshake messages at most once (MarcoFalke) 111 112 ### Wallet 113 114 - #19740 Simplify and fix CWallet::SignTransaction (achow101) 115 116 ### RPC and other APIs 117 118 - #19836 Properly deserialize txs with witness before signing (MarcoFalke) 119 - #20731 Add missing description of vout in getrawtransaction help text (benthecarman) 120 121 ### Build system 122 123 - #20142 build: set minimum required Boost to 1.48.0 (fanquake) 124 - #20298 use the new plistlib API (jonasschnelli) 125 - #20880 gitian: Use custom MacOS code signing tool (achow101) 126 - #22190 Use latest signapple commit (achow101) 127 128 ### Tests and QA 129 130 - #19839 Set appveyor vm version to previous Visual Studio 2019 release. (sipsorcery) 131 - #19842 Update the vcpkg checkout commit ID in appveyor config. (sipsorcery) 132 - #20562 Test that a fully signed tx given to signrawtx is unchanged (achow101) 133 134 ### Miscellaneous 135 136 - #19192 Extract net permissions doc (MarcoFalke) 137 - #19777 Correct description for getblockstats's txs field (shesek) 138 - #20080 Strip any trailing / in -datadir and -blocksdir paths (hebasto) 139 - #20082 fixes read buffer to use min rather than max (EthanHeilman) 140 - #20141 Avoid the use of abs64 in timedata (sipa) 141 - #20756 Add missing field (permissions) to the getpeerinfo help (amitiuttarwar) 142 - #20861 BIP 350: Implement Bech32m and use it for v1+ segwit addresses (sipa) 143 - #22124 Update translations after closing 0.20.x on Transifex (hebasto) 144 - #21471 fix bech32_encode calls in gen_key_io_test_vectors.py (sipa) 145 - #22837 mention bech32m/BIP350 in doc/descriptors.md (sipa) 146 147 Credits 148 ======= 149 150 Thanks to everyone who directly contributed to this release: 151 152 - Aaron Clauson 153 - Amiti Uttarwar 154 - Andrew Chow 155 - Ethan Heilman 156 - fanquake 157 - Hennadii Stepanov 158 - Jonas Schnelli 159 - MarcoFalke 160 - Nadav Ivgi 161 - Pieter Wuille 162 - Suhas Daftuar 163 164 As well as to everyone that helped with translations on 165 [Transifex](https://www.transifex.com/bitcoin/bitcoin/).