Bitcoin Core 0.11.0 released



Summary:

Bitcoin Core version 0.11.0 has been released, bringing new features and bug fixes. Users can report bugs using the issue tracker at Github and the entire distribution is available as a torrent. Upgrading and downgrading should be considered carefully when installing or uninstalling this version and it is recommended to make a backup of the data directory if intending to downgrade smoothly.One of the most significant changes in this release is block file pruning which allows for running a fully validating node without maintaining a copy of the raw block and undo data on disk. This release also improves the algorithm used for fee estimation and adds functionality to create a new circuit for every peer connection when the software is used with Tor. The context includes a list of changes made to the Bitcoin Core software across various areas such as configuration and command-line options, block and transaction handling, P2P protocol and network code, validation, build system, wallet, GUI, and tests.In the configuration and command-line options section, new options were added to allow self-signed root certificates, perform consistency checks for the block chain data structures, disable wallet transaction broadcast, implement stream isolation for Tor, add autoprune functionality, disable UPnP if proxy is set, and opt-out of alert system. Various changes were made in the block and transaction handling section such as performing all block index writes in a batch, checking against mandatory flags prior to accepting to mempool, rejecting headers that build on an invalid parent, implementing test for merkle tree malleability, clarifying obscure uses of EvalScript(), changing hardcoded character constants to descriptive named constants for db keys, adding more information to errors in ReadBlockFromDisk, using GetAncestor to compute new target, and adding additional block index consistency checks.In the P2P protocol and network code section, changes were made to prevent DOS attacks on in-flight data structures, sanitize command strings before logging them, add a NODE_GETUTXO service bit and document NODE_NETWORK, move nLastTry from CAddress to CAddrInfo, change download logic to allow calling getdata on inbound peers, replace absolute sleep with conditional wait, use equivalent PoW for non-main-chain requests, use SeedSpec6's rather than CAddress's for fixed seeds, add jonasschnellis DNS seeder, reduce download timeouts as blocks arrive, ignore getheaders requests when not synced, be stricter in processing unrequested blocks, and update hardcoded seeds.In the validation section, BIP62 rule 6 and BIP66 were implemented. In the build system section, various changes were made to add platforms like mips, mipsel, and aarch64 to depends platforms, add pkg-config support, fix 'make distcheck', build winshutdownmonitor.cpp on Windows only, update osx toolchain, bump build SDK to 10.9, use latest config.guess and config.sub, fix when compiling in c++11 mode, use static libstdc++ and disable reduced exports by default, add big endian support, verify all merge commits are signed, detect (and reject) LibreSSL, use the new bitcoin-detached-sigs git repo for OSX signatures, fix scheduler build with some boost versions, fix Boost 1.55 build on GCC 5, add a gitian-win-signer descriptor, fix build on FreeBSD, fix crash on shutdown when e.g.


Updated on: 2023-06-10T02:28:50.607601+00:00