release-notes-0.20.1.md
1 0.20.1 Release Notes 2 ==================== 3 4 Bitcoin Core version 0.20.1 is now available from: 5 6 <https://bitcoincore.org/bin/bitcoin-core-0.20.1/> 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.1 change log 105 ================= 106 107 ### Mining 108 - #19019 Fix GBT: Restore "!segwit" and "csv" to "rules" key (luke-jr) 109 110 ### P2P protocol and network code 111 - #19219 Replace automatic bans with discouragement filter (sipa) 112 113 ### Wallet 114 - #19300 Handle concurrent wallet loading (promag) 115 - #18982 Minimal fix to restore conflicted transaction notifications (ryanofsky) 116 117 ### RPC and other APIs 118 - #19524 Increment input value sum only once per UTXO in decodepsbt (fanquake) 119 - #19517 psbt: Increment input value sum only once per UTXO in decodepsbt (achow101) 120 - #19215 psbt: Include and allow both non_witness_utxo and witness_utxo for segwit inputs (achow101) 121 122 ### GUI 123 - #19097 Add missing QPainterPath include (achow101) 124 - #19059 update Qt base translations for macOS release (fanquake) 125 126 ### Build system 127 - #19152 improve build OS configure output (skmcontrib) 128 - #19536 qt, build: Fix QFileDialog for static builds (hebasto) 129 130 ### Tests and QA 131 - #19444 Remove cached directories and associated script blocks from appveyor config (sipsorcery) 132 - #18640 appveyor: Remove clcache (MarcoFalke) 133 134 ### Miscellaneous 135 - #19194 util: Don't reference errno when pthread fails (miztake) 136 - #18700 Fix locking on WSL using flock instead of fcntl (meshcollider) 137 138 Credits 139 ======= 140 141 Thanks to everyone who directly contributed to this release: 142 143 - Aaron Clauson 144 - Andrew Chow 145 - fanquake 146 - Hennadii Stepanov 147 - João Barbosa 148 - Luke Dashjr 149 - MarcoFalke 150 - MIZUTA Takeshi 151 - Pieter Wuille 152 - Russell Yanofsky 153 - sachinkm77 154 - Samuel Dobson 155 - Wladimir J. van der Laan 156 157 As well as to everyone that helped with translations on 158 [Transifex](https://www.transifex.com/bitcoin/bitcoin/).