/ doc / release-notes / release-notes-0.20.2.md
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/).