Return-Path: Received: from smtp1.osuosl.org (smtp1.osuosl.org [IPv6:2605:bc80:3010::138]) by lists.linuxfoundation.org (Postfix) with ESMTP id 2FFC5C002D for ; Mon, 25 Apr 2022 14:07:00 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by smtp1.osuosl.org (Postfix) with ESMTP id 1E5EF817A4 for ; Mon, 25 Apr 2022 14:07:00 +0000 (UTC) X-Virus-Scanned: amavisd-new at osuosl.org X-Spam-Flag: NO X-Spam-Score: -2.101 X-Spam-Level: X-Spam-Status: No, score=-2.101 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no Authentication-Results: smtp1.osuosl.org (amavisd-new); dkim=pass (2048-bit key) header.d=protonmail.com Received: from smtp1.osuosl.org ([127.0.0.1]) by localhost (smtp1.osuosl.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id tBuUfz5BP_zA for ; Mon, 25 Apr 2022 14:06:58 +0000 (UTC) X-Greylist: domain auto-whitelisted by SQLgrey-1.8.0 Received: from mail-4322.protonmail.ch (mail-4322.protonmail.ch [185.70.43.22]) by smtp1.osuosl.org (Postfix) with ESMTPS id 159DC815AB for ; Mon, 25 Apr 2022 14:06:57 +0000 (UTC) Date: Mon, 25 Apr 2022 14:06:49 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=protonmail.com; s=protonmail2; t=1650895614; bh=xaF0RsH68PdQ66n+CeNwQUmDzDglQM6FLWKhOlzDQhM=; h=Date:To:From:Reply-To:Subject:Message-ID:Feedback-ID:From:To:Cc: Date:Subject:Reply-To:Feedback-ID:Message-ID; b=l2qOy5nvvdm3gHRtzF6Y5TpKek9xBqedY3uFyGRuRAf4BOfpBF1zP18ZXzelf7+1C j/C1EgDPTWRyGGmNnLuLsLD4bXcgth/MwTCz6YxVW6/MKShlSrsqQyBH0pPe/Qp+6/ TczvrntBP54ErZO5NU/FBdgD/TRXO8x3NOaGjtQ3VbRLVPhq+QDqVKemQ++wjkjtBa hsOhaMb1lSIFwM5vls5KVRUQjHBl3M56NfkNVqkSGZ2Ifi/+FqFvMfToPPKdJVu/c5 fZMY3DBcDDRtSHE2jr8MWHxxKuzV5PgrZzShvcFcD+KiYBuAcXTdcRAfakcEbejtAe z28nGYB2VVAnQ== To: Bitcoin development mailing list , Bitcoin Core development mailing list From: "W. J. van der Laan" Reply-To: "W. J. van der Laan" Message-ID: Feedback-ID: 591568:user:proton MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Mailman-Approved-At: Mon, 25 Apr 2022 14:10:35 +0000 Subject: [bitcoin-dev] Bitcoin Core 23.0 released X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 25 Apr 2022 14:07:00 -0000 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA512 Bitcoin Core version 23.0 is now available from: Or through BitTorrent: magnet:?xt=3Durn:btih:32bc317cce76b966a26bdb53d42f64d66d595954&dn=3Dbitc= oin-core-23.0&tr=3Dudp%3A%2F%2Ftracker.openbittorrent.com%3A80&tr=3Dudp%3A%= 2F%2Ftracker.opentrackr.org%3A1337%2Fannounce&tr=3Dudp%3A%2F%2Ftracker.copp= ersurfer.tk%3A6969%2Fannounce&tr=3Dudp%3A%2F%2Ftracker.leechers-paradise.or= g%3A6969%2Fannounce&tr=3Dudp%3A%2F%2Fexplodie.org%3A6969%2Fannounce&tr=3Dud= p%3A%2F%2Ftracker.torrent.eu.org%3A451%2Fannounce&tr=3Dudp%3A%2F%2Ftracker.= bitcoin.sprovoost.nl%3A6969 This release includes new features, various bug fixes and performance improvements, as well as updated translations. Please report bugs using the issue tracker at GitHub: To receive security and update notifications, please subscribe to: How to Upgrade =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D If you are running an older version, shut it down. Wait until it has comple= tely shut down (which might take a few minutes in some cases), then run the installer (on Windows) or just copy over `/Applications/Bitcoin-Qt` (on Mac= ) or `bitcoind`/`bitcoin-qt` (on Linux). Upgrading directly from a version of Bitcoin Core that has reached its EOL = is possible, but it might take some time if the data directory needs to be mig= rated. Old wallet versions of Bitcoin Core are generally supported. Compatibility =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Bitcoin Core is supported and extensively tested on operating systems using the Linux kernel, macOS 10.15+, and Windows 7 and newer. Bitcoin Core should also work on most other Unix-like systems but is not as frequently tested on them. It is not recommended to use Bitcoin Core on unsupported systems. Notable changes =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D P2P and network changes - ----------------------- - - A bitcoind node will no longer rumour addresses to inbound peers by def= ault. They will become eligible for address gossip after sending an ADDR, ADDRV= 2, or GETADDR message. (#21528) - - Before this release, Bitcoin Core had a strong preference to try to con= nect only to peers that listen on port 8333. As a result of that, Bitcoin n= odes listening on non-standard ports would likely not get any Bitcoin Core = peers connecting to them. This preference has been removed. (#23542) - - Full support has been added for the CJDNS network. See the new option `= -cjdnsreachable` and [doc/cjdns.md](https://github.com/bitcoin/bitcoin/tree= /23.x/doc/cjdns.md) (#23077) Fee estimation changes - ---------------------- - - Fee estimation now takes the feerate of replacement (RBF) transactions = into account. (#22539) Rescan startup parameter removed - -------------------------------- The `-rescan` startup parameter has been removed. Wallets which require rescanning due to corruption will still be rescanned on startup. Otherwise, please use the `rescanblockchain` RPC to trigger a rescan. (#231= 23) Tracepoints and Userspace, Statically Defined Tracing support - ------------------------------------------------------------- Bitcoin Core release binaries for Linux now include experimental tracepoint= s which act as an interface for process-internal events. These can be used for revi= ew, debugging, monitoring, and more. The tracepoint API is semi-stable. While t= he API is tested, process internals might change between releases requiring change= s to the tracepoints. Information about the existing tracepoints can be found under [doc/tracing.md](https://github.com/bitcoin/bitcoin/blob/23.x/doc/tracing.m= d) and usage examples are provided in [contrib/tracing/](https://github.com/bitcoi= n/bitcoin/tree/23.x/contrib/tracing). Updated RPCs - ------------ - - The `validateaddress` RPC now returns an `error_locations` array for in= valid addresses, with the indices of invalid character locations in the address= (if known). For example, this will attempt to locate up to two Bech32 errors,= and return their locations if successful. Success and correctness are only gu= aranteed if fewer than two substitution errors have been made. The error message returned in the `error` field now also returns more spe= cific errors when decoding fails. (#16807) - - The `-deprecatedrpc=3Daddresses` configuration option has been removed.= RPCs `gettxout`, `getrawtransaction`, `decoderawtransaction`, `decodescript`, `gettransaction verbose=3Dtrue` and REST endpoints `/rest/tx`, `/rest/get= utxos`, `/rest/block` no longer return the `addresses` and `reqSigs` fields, whic= h were previously deprecated in 22.0. (#22650) - - The `getblock` RPC command now supports verbosity level 3 containing tr= ansaction inputs' `prevout` information. The existing `/rest/block/` REST endpoint is modi= fied to contain this information too. Every `vin` field will contain an additional `prevo= ut` subfield describing the spent output. `prevout` contains the following keys: - `generated` - true if the spent coins was a coinbase. - `height` - `value` - `scriptPubKey` - - The top-level fee fields `fee`, `modifiedfee`, `ancestorfees` and `desc= endantfees` returned by RPCs `getmempoolentry`,`getrawmempool(verbose=3Dtrue)`, `getmempoolancestors(verbose=3Dtrue)` and `getmempooldescendants(verbose= =3Dtrue)` are deprecated and will be removed in the next major version (use `-deprecated=3Dfees` if needed in this version). The same fee fields can = be accessed through the `fees` object in the result. WARNING: deprecated fields `ancestorfees` and `descendantfees` are denominated in sats, where= as all fields in the `fees` object are denominated in BTC. (#22689) - - Both `createmultisig` and `addmultisigaddress` now include a `warnings` field, which will show a warning if a non-legacy address type is requeste= d when using uncompressed public keys. (#23113) Changes to wallet related RPCs can be found in the Wallet section below. New RPCs - -------- - - Information on soft fork status has been moved from `getblockchaininfo` to the new `getdeploymentinfo` RPC which allows querying soft fork status= at any block, rather than just at the chain tip. Inclusion of soft fork status in `getblockchaininfo` can currently be restored using the configuration `-deprecatedrpc=3Dsoftforks`, but this will be removed in a future release. Note that in either case, the `status` field now reflects the status of the current block rather than the next block. (#23508) Files - ----- * On startup, the list of banned hosts and networks (via `setban` RPC) in `banlist.dat` is ignored and only `banlist.json` is considered. Bitcoin C= ore version 22.x is the only version that can read `banlist.dat` and also wri= te it to `banlist.json`. If `banlist.json` already exists, version 22.x will= not try to translate the `banlist.dat` into json. After an upgrade, `listbann= ed` can be used to double check the parsed entries. (#22570) Updated settings - ---------------- - - In previous releases, the meaning of the command line option `-persistmempool` (without a value provided) incorrectly disabled mempool persistence. `-persistmempool` is now treated like other boolean options= to mean `-persistmempool=3D1`. Passing `-persistmempool=3D0`, `-persistmempo= ol=3D1` and `-nopersistmempool` is unaffected. (#23061) - - `-maxuploadtarget` now allows human readable byte units [k|K|m|M|g|G|t|= T]. E.g. `-maxuploadtarget=3D500g`. No whitespace, +- or fractions allowed. Default is `M` if no suffix provided. (#23249) - - If `-proxy=3D` is given together with `-noonion` then the provided prox= y will not be set as a proxy for reaching the Tor network. So it will not be possible to open manual connections to the Tor network for example with t= he `addnode` RPC. To mimic the old behavior use `-proxy=3D` together with `-onlynet=3D` listing all relevant networks except `onion`. (#22834) Tools and Utilities - ------------------- - - Update `-getinfo` to return data in a user-friendly format that also re= duces vertical space. (#21832) - - CLI `-addrinfo` now returns a single field for the number of `onion` ad= dresses known to the node instead of separate `torv2` and `torv3` fields, as supp= ort for Tor V2 addresses was removed from Bitcoin Core in 22.0. (#22544) Wallet - ------ - - Descriptor wallets are now the default wallet type. Newly created walle= ts will use descriptors unless `descriptors=3Dfalse` is set during `createwa= llet`, or the `Descriptor wallet` checkbox is unchecked in the GUI. Note that wallet RPC commands like `importmulti` and `dumpprivkey` cannot= be used with descriptor wallets, so if your client code relies on these comm= ands without specifying `descriptors=3Dfalse` during wallet creation, you will= need to update your code. - - Newly created descriptor wallets will contain an automatically generate= d `tr()` descriptor which allows for creating single key Taproot receiving address= es. - - `upgradewallet` will now automatically flush the keypool if upgrading from a non-HD wallet to an HD wallet, to immediately start using the newly-generated HD keys. (#23093) - - a new RPC `newkeypool` has been added, which will flush (entirely clear and refill) the keypool. (#23093) - - `listunspent` now includes `ancestorcount`, `ancestorsize`, and `ancestorfees` for each transaction output that is still in the mempool. (#12677) - - `lockunspent` now optionally takes a third parameter, `persistent`, whi= ch causes the lock to be written persistently to the wallet database. This allows UTXOs to remain locked even after node restarts or crashes. (#2306= 5) - - `receivedby` RPCs now include coinbase transactions. Previously, the following wallet RPCs excluded coinbase transactions: `getreceivedbyaddre= ss`, `getreceivedbylabel`, `listreceivedbyaddress`, `listreceivedbylabel`. Thi= s release changes this behaviour and returns results accounting for receive= d coins from coinbase outputs. The previous behaviour can be restored using= the configuration `-deprecatedrpc=3Dexclude_coinbase`, but may be removed in = a future release. (#14707) - - A new option in the same `receivedby` RPCs, `include_immature_coinbase` (default=3D`false`), determines whether to account for immature coinbase transactions. Immature coinbase transactions are coinbase transactions th= at have 100 or fewer confirmations, and are not spendable. (#14707) GUI changes - ----------- - - UTXOs which are locked via the GUI are now stored persistently in the wallet database, so are not lost on node shutdown or crash. (#23065) - - The Bech32 checkbox has been replaced with a dropdown for all address t= ypes, including the new Bech32m (BIP-350) standard for Taproot enabled wall= ets. Low-level changes =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D RPC - --- - - `getblockchaininfo` now returns a new `time` field, that provides the c= hain tip time. (#22407) Tests - ----- - - For the `regtest` network the activation heights of several softforks w= ere set to block height 1. They can be changed by the runtime setting `-testactivationheight=3Dname@height`. (#22818) Credits =3D=3D=3D=3D=3D=3D=3D Thanks to everyone who directly contributed to this release: - - 0xb10c - - 0xree - - Aaron Clauson - - Adrian-Stefan Mares - - agroce - - aitorjs - - Alex Groce - - amadeuszpawlik - - Amiti Uttarwar - - Andrew Chow - - Andrew Poelstra - - Andrew Toth - - anouar kappitou - - Anthony Towns - - Antoine Poinsot - - Arnab Sen - - Ben Woosley - - benthecarman - - Bitcoin Hodler - - BitcoinTsunami - - brianddk - - Bruno Garcia - - CallMeMisterOwl - - Calvin Kim - - Carl Dong - - Cory Fields - - Cuong V. Nguyen - - Darius Parvin - - Dhruv Mehta - - Dimitri Deijs - - Dimitris Apostolou - - Dmitry Goncharov - - Douglas Chimento - - eugene - - Fabian Jahr - - fanquake - - Florian Baumgartl - - fyquah - - Gleb Naumenko - - glozow - - Gregory Sanders - - Heebs - - Hennadii Stepanov - - hg333 - - HiLivin - - Igor Cota - - Jadi - - James O'Beirne - - Jameson Lopp - - Jarol Rodriguez - - Jeremy Rand - - Jeremy Rubin - - Joan Karadimov - - John Newbery - - Jon Atack - - Jo=C3=A3o Barbosa - - josibake - - junderw - - Karl-Johan Alm - - katesalazar - - Kennan Mell - - Kiminuo - - Kittywhiskers Van Gogh - - Klement Tan - - Kristaps Kaupe - - Kuro - - Larry Ruane - - lsilva01 - - lucash-dev - - Luke Dashjr - - MarcoFalke - - Martin Leitner-Ankerl - - Martin Zumsande - - Matt Corallo - - Matt Whitlock - - MeshCollider - - Michael Dietz - - Murch - - naiza - - Nathan Garabedian - - Nelson Galdeman - - NikhilBartwal - - Niklas G=C3=B6gge - - node01 - - nthumann - - Pasta - - Patrick Kamin - - Pavel Safronov - - Pavol Rusnak - - Perlover - - Pieter Wuille - - practicalswift - - pradumnasaraf - - pranabp-bit - - Prateek Sancheti - - Prayank - - Rafael Sadowski - - rajarshimaitra - - randymcmillan - - ritickgoenka - - Rob Fielding - - Rojar Smith - - Russell Yanofsky - - S3RK - - Saibato - - Samuel Dobson - - sanket1729 - - seaona - - Sebastian Falbesoner - - sh15h4nk - - Shashwat - - Shorya - - ShubhamPalriwala - - Shubhankar Gambhir - - Sjors Provoost - - sogoagain - - sstone - - stratospher - - Suriyaa Rocky Sundararuban - - Taeik Lim - - TheCharlatan - - Tim Ruffing - - Tobin Harding - - Troy Giorshev - - Tyler Chambers - - Vasil Dimov - - W. J. van der Laan - - w0xlt - - willcl-ark - - William Casarin - - zealsham - - Zero-1729 As well as to everyone that helped with translations on [Transifex](https://www.transifex.com/bitcoin/bitcoin/). -----BEGIN PGP SIGNATURE----- iQEzBAEBCgAdFiEEnerg3HBjJJ+wVHRoHkrtYphs0l0FAmJmqnkACgkQHkrtYphs 0l3ACQgAzwMtfxcPBOX4MEO0ioKoPmlHUGqa8Ak9nli3RUUHJB3dduTpqKZsbDjt L8i4iOJpLMH6Irkgl8XWVoqTASMnkOdPQmSOBvOqVATCnpWbZmaGWlAkHammmLdD mTo5TouJZI4C6QT7xQj2MhqYjI6dlXbYU8VSQFrp6D921fHTFJON+evNsGH11c4y sa0KQfEiO2CBVlvQl+qhq6w/I/Y8ug+iHe50fr/9qolNab4+urZRzr2pBBxHYS3z Y6XEkUVsVMvBnH956O6FA+u4svbt2nvSfFhk2/xVP68WayxlL8v5N6VeUKyXkVKU 8BjcJ+bQNfckn6WfxhUazTUKXLfRCg=3D=3D =3D/aFR -----END PGP SIGNATURE-----