release-notes-0.17.1.md
1 Bitcoin Core version 0.17.1 is now available from: 2 3 <https://bitcoincore.org/bin/bitcoin-core-0.17.1/> 4 5 or through BitTorrent: 6 7 magnet:?xt=urn:btih:c56c87ccfaa8e6fbccc90d549121e61efd97cb6f&dn=bitcoin-core-0.17.1&tr=udp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Fzer0day.ch%3A1337&tr=udp%3A%2F%2Fexplodie.org%3A6969 8 9 This is a new minor version release, with various bugfixes 10 and performance improvements, as well as updated translations. 11 12 Please report bugs using the issue tracker at GitHub: 13 14 <https://github.com/bitcoin/bitcoin/issues> 15 16 To receive security and update notifications, please subscribe to: 17 18 <https://bitcoincore.org/en/list/announcements/join/> 19 20 How to Upgrade 21 ============== 22 23 If you are running an older version, shut it down. Wait until it has completely 24 shut down (which might take a few minutes for older versions), then run the 25 installer (on Windows) or just copy over `/Applications/Bitcoin-Qt` (on Mac) 26 or `bitcoind`/`bitcoin-qt` (on Linux). 27 28 If your node has a txindex, the txindex db will be migrated the first time you run 0.17.0 or newer, which may take up to a few hours. Your node will not be functional until this migration completes. 29 30 The first time you run version 0.15.0 or newer, your chainstate database will be converted to a 31 new format, which will take anywhere from a few minutes to half an hour, 32 depending on the speed of your machine. 33 34 Note that the block database format also changed in version 0.8.0 and there is no 35 automatic upgrade code from before version 0.8 to version 0.15.0. Upgrading 36 directly from 0.7.x and earlier without redownloading the blockchain is not supported. 37 However, as usual, old wallet versions are still supported. 38 39 Downgrading warning 40 ------------------- 41 42 The chainstate database for this release is not compatible with previous 43 releases, so if you run 0.15 and then decide to switch back to any 44 older version, you will need to run the old release with the `-reindex-chainstate` 45 option to rebuild the chainstate data structures in the old format. 46 47 If your node has pruning enabled, this will entail re-downloading and 48 processing the entire blockchain. 49 50 Compatibility 51 ============== 52 53 Bitcoin Core is extensively tested on multiple operating systems using 54 the Linux kernel, macOS 10.10+, and Windows 7 and newer (Windows XP is not supported). 55 56 Bitcoin Core should also work on most other Unix-like systems but is not 57 frequently tested on them. 58 59 From 0.17.0 onwards macOS <10.10 is no longer supported. 0.17.0 is built using Qt 5.9.x, which doesn't 60 support versions of macOS older than 10.10. 61 62 Notable changes 63 =============== 64 65 `listtransactions` label support 66 -------------------------------- 67 68 The `listtransactions` RPC `account` parameter which was deprecated in 0.17.0 69 and renamed to `dummy` has been un-deprecated and renamed again to `label`. 70 71 When bitcoin is configured with the `-deprecatedrpc=accounts` setting, specifying 72 a label/account/dummy argument will return both outgoing and incoming 73 transactions. Without the `-deprecatedrpc=accounts` setting, it will only return 74 incoming transactions (because it used to be possible to create transactions 75 spending from specific accounts, but this is no longer possible with labels). 76 77 When `-deprecatedrpc=accounts` is set, it's possible to pass the empty string "" 78 to list transactions that don't have any label. Without 79 `-deprecatedrpc=accounts`, passing the empty string is an error because returning 80 only non-labeled transactions is not generally useful behavior and can cause 81 confusion. 82 83 0.17.1 change log 84 ================= 85 86 ### P2P protocol and network code 87 - #14685 `9406502` Fix a deserialization overflow edge case (kazcw) 88 - #14728 `b901578` Fix uninitialized read when stringifying an addrLocal (kazcw) 89 90 ### Wallet 91 - #14441 `5150acc` Restore ability to list incoming transactions by label (jnewbery) 92 - #13546 `91fa15a` Fix use of uninitialized value `bnb_used` in CWallet::CreateTransaction(…) (practicalswift) 93 - #14310 `bb90695` Ensure wallet is unlocked before signing (gustavonalle) 94 - #14690 `5782fdc` Throw error if CPubKey is invalid during PSBT keypath serialization (instagibbs) 95 - #14852 `2528443` backport: [tests] Add `wallet_balance.py` (MarcoFalke) 96 - #14196 `3362a95` psbt: always drop the unnecessary utxo and convert non-witness utxo to witness when necessary (achow101) 97 - #14588 `70ee1f8` Refactor PSBT signing logic to enforce invariant and fix signing bug (gwillen) 98 - #14424 `89a9a9d` Stop requiring imported pubkey to sign non-PKH schemes (sipa, MeshCollider) 99 100 ### RPC and other APIs 101 - #14417 `fb9ad04` Fix listreceivedbyaddress not taking address as a string (etscrivner) 102 - #14596 `de5e48a` Bugfix: RPC: Add `address_type` named param for createmultisig (luke-jr) 103 - #14618 `9666dba` Make HTTP RPC debug logging more informative (practicalswift) 104 - #14197 `7bee414` [psbt] Convert non-witness UTXOs to witness if witness sig created (achow101) 105 - #14377 `a3fe125` Check that a separator is found for psbt inputs, outputs, and global map (achow101) 106 - #14356 `7a590d8` Fix converttopsbt permitsigdata arg, add basic test (instagibbs) 107 - #14453 `75b5d8c` Fix wallet unload during walletpassphrase timeout (promag) 108 109 ### GUI 110 - #14403 `0242b5a` Revert "Force TLS1.0+ for SSL connections" (real-or-random) 111 - #14593 `df5131b` Explicitly disable "Dark Mode" appearance on macOS (fanquake) 112 113 ### Build system 114 - #14647 `7edebed` Remove illegal spacing in darwin.mk (ch4ot1c) 115 - #14698 `ec71f06` Add bitcoin-tx.exe into Windows installer (ken2812221) 116 117 ### Tests and QA 118 - #13965 `29899ec` Fix extended functional tests fail (ken2812221) 119 - #14011 `9461f98` Disable wallet and address book Qt tests on macOS minimal platform (ryanofsky) 120 - #14180 `86fadee` Run all tests even if wallet is not compiled (MarcoFalke) 121 - #14122 `8bc1bad` Test `rpc_help.py` failed: Check whether ZMQ is enabled or not (Kvaciral) 122 - #14101 `96dc936` Use named args in validation acceptance tests (MarcoFalke) 123 - #14020 `24d796a` Add tests for RPC help (promag) 124 - #14052 `7ff32a6` Add some actual witness in `rpc_rawtransaction` (MarcoFalke) 125 - #14215 `b72fbab` Use correct python index slices in example test (sdaftuar) 126 - #14024 `06544fa` Add `TestNode::assert_debug_log` (MarcoFalke) 127 - #14658 `60f7a97` Add test to ensure node can generate all rpc help texts at runtime (MarcoFalke) 128 - #14632 `96f15e8` Fix a comment (fridokus) 129 - #14700 `f9db08e` Avoid race in `p2p_invalid_block` by waiting for the block request (MarcoFalke) 130 - #14845 `67225e2` Add `wallet_balance.py` (jnewbery) 131 132 ### Documentation 133 - #14161 `5f51fd6` doc/descriptors.md tweaks (ryanofsky) 134 - #14276 `85aacc4` Add autogen.sh in ARM Cross-compilation (walterwhite81) 135 136 Credits 137 ======= 138 139 Thanks to everyone who directly contributed to this release: 140 141 - Andrew Chow 142 - Chun Kuan Lee 143 - David A. Harding 144 - Eric Scrivner 145 - fanquake 146 - fridokus 147 - Glenn Willen 148 - Gregory Sanders 149 - gustavonalle 150 - John Newbery 151 - Jon Layton 152 - Jonas Schnelli 153 - João Barbosa 154 - Kaz Wesley 155 - Kvaciral 156 - Luke Dashjr 157 - MarcoFalke 158 - MeshCollider 159 - Pieter Wuille 160 - practicalswift 161 - Russell Yanofsky 162 - Sjors Provoost 163 - Suhas Daftuar 164 - Tim Ruffing 165 - Walter 166 - Wladimir J. van der Laan 167 168 As well as everyone that helped translating on [Transifex](https://www.transifex.com/projects/p/bitcoin/).