88b525f93adc713dc69a6af94f3b9fd4474595d4 qt: 25.1rc1 translations update (Hennadii Stepanov)
Pull request description:
This PR pulls the recent translations from the [Transifex.com](https://www.transifex.com/bitcoin/bitcoin) using the [`bitcoin-maintainer-tools/update-translations.py`](https://github.com/bitcoin-core/bitcoin-maintainer-tools/blob/main/update-translations.py) tool.
According to our [Release Process docs](https://github.com/bitcoin/bitcoin/blob/master/doc/release-process.md#before-every-release-candidate), it is supposed to be merged before `v25.1rc1` tagging.
Changes in "Chinese (China) (zh_CN)" translation were manually discarded as they have too many removals (it looks like a vandalism).
ACKs for top commit:
stickies-v:
re-ACK 88b525f93adc713dc69a6af94f3b9fd4474595d4
jarolrod:
ACK 88b525f93adc713dc69a6af94f3b9fd4474595d4
Tree-SHA512: 007d3e00f92d2450f99d1a84b53dc929fd80b7ebb7939271b67969bf99bb3b0ae7426428f6c63f1dbdfa88b90cb237e7614f7b2239f9773b84424b544bf106af
e.g. sh(addr(ADDR)) or sh(raw(HEX)) are invalid descriptors.
Making sh and wsh top level functions to return addr/raw descriptors when
the subscript inference fails.
Github-Pull: #28067
Rebased-From: cc781a21800a6ce13875feefd0cb14ab0a84524c
addressbook records with no associated label could be
treated as change. And we don't want that for external
addresses.
Github-Pull: #28038
Rebased-From: a277f8357ad8b0eb26f33fc36f919d868c06847b
b8ad3220a9068f10c2b3b14b40f211372aeece31 Unconditionally return when compact block status == READ_STATUS_FAILED (Greg Sanders)
cdd3de08e301ec309c179796bedfa2be29042128 Add tests for parallel compact block downloads (Greg Sanders)
e66a5cbb56db3dffc119e110472ab1176ea3fe99 Support up to 3 parallel compact block txn fetchings (Greg Sanders)
d1a93f5d41f7385af28cee3863976fd75f27415b Only request full blocks from the peer we thought had the block in-flight (Greg Sanders)
38e3af9fad1eb8ef7d6a9d812ded412668b650e3 Convert mapBlocksInFlight to a multimap (Greg Sanders)
a45159b8e2a198219d7c46baeb647ff5d18436bf Remove nBlocksInFlight (Greg Sanders)
722361e129342078376b6d30b9d80de17ca7ddfb alias BlockDownloadMap for mapBlocksInFlight (Greg Sanders)
Pull request description:
Backports:
* https://github.com/bitcoin/bitcoin/pull/27626
* https://github.com/bitcoin/bitcoin/pull/27743
ACKs for top commit:
instagibbs:
utACK b8ad3220a9
ajtowns:
ACK b8ad3220a9068f10c2b3b14b40f211372aeece31 ; confirmed patches are clean cherry-picks from master, and already tested patches prior to 25.0 release
Tree-SHA512: 438901496a5ed927662e62f936e3d1e7ffb727cb235869854983e8e29a68e144eb3bff307d9fc3ae785fb276b67a216b1cce397689252ca49c5d761efc1380ac
A single outbound slot is required, so if the first two slots
are taken by inbound in-flights, the node will reject additional
unless they are coming from outbound.
This means in the case where a fast sybil peer is attempting to
stall out a node, a single high bandwidth outbound peer can
mitigate the attack.
Github-Pull: #27626
Rebased-From: 03423f8bd12b95a06a4a9d8377e781625dd38aae
This is a change in behavior so that if for some reason we request a block from a peer, we don't allow an unsolicited CMPCT_BLOCK announcement for that same block to cause a request for a full block from the uninvited peer (as some type of request is already outstanding from the original peer)
Github-Pull: #27626
Rebased-From: 13f9b20b4cb2f3f26e81184a77e9cf1f626d4f57
This should avoid a race where the kill is not done when spinning up the
new container. podman stop waits 10 seconds by default.
Github-Pull: #27844
Rebased-From: faaa62754e84417baa917f20db379db78146687d
9dc58484928693a42e4163d8eaef3f8b47f1d3d8 build: disable boost multi index safe mode (willcl-ark)
Pull request description:
Backports https://github.com/bitcoin/bitcoin/pull/27724 to `25.x`.
ACKs for top commit:
stickies-v:
ACK 9dc584849
Tree-SHA512: 5f156424bbd86caac6ace933b807cd62a21067bcfa7f572d6efeff2622ba0b15401038a3b06fe00d84cf62b5d9b8a9e101650d145683a21fa890c18a9c2bd4b6
Disable boost multi index safe mode by default when configuring with
--enable-debug.
This option can cause transactions to take a long time to be accepted
into the mempool under certain conditions; iterator destruction takes
O(n) time vs O(1) as they are stored in a singly linked list. See
27586 for more information.
Re-enable it on the CI builds which previously had it enabled.
Re-enable it on the msan fuzz target so that we have fuzz tasks testing
with it enabeld and disabled in this repo.
Github-Pull: #27724
Rebased-From: 59c89447499bd9d6202269879555b8bc37373aa2
6ee3881551f2cd411c4e4d8b0ccedf0f0416d8c2 doc: update release notes for 25.0 (fanquake)
51195ea570a84b4eec37936465c0d880aa663ab9 doc: update manual pages for 25.0 (fanquake)
8f7db443e9c475225de234b7ab7b649f1305a844 build: bump version to v25.0 final (fanquake)
Pull request description:
Final changes for v25.0.
PR for bitcoincore.org is here: https://github.com/bitcoin-core/bitcoincore.org/pull/970.
ACKs for top commit:
dergoegge:
ACK 6ee3881551f2cd411c4e4d8b0ccedf0f0416d8c2
Tree-SHA512: 7325e7d2747fbbeaa7efa9ceebfef56121d6866441fc4f3f9e95e67ab8ad7d4e518db4f545c214f1b677eaea84f28c1ea4f790aaf993a20904c76c3592406fd6
If transactions are being added to the mempool at a rate faster than 7tx/s
(INVENTORY_BROADCAST_PER_SECOND) then peers' inventory_to_send queue can
become relatively large. If this happens, increase the number of txids
we include in an INV message (normally capped at 35) by 5 for each 1000
txids in the queue.
This will tend to clear a temporary excess out reasonably quickly; an
excess of 4000 invs to send will be cleared down to 1000 in about 30
minutes, while an excess of 20000 invs would be cleared down to 1000 in
about 60 minutes.
Github-Pull: #27610
Rebased-From: 5b3406094f2679dfb3763de4414257268565b943
We use CompareDepthAndScore to choose an order of txs to inv. Rather
than sorting txs that have been evicted from the mempool at the end
of the list, sort them at the beginning so they are removed from
the queue immediately.
Github-Pull: #27610
Rebased-From: 228e9201efb5574b1b96bb924de1d2e8dd1317f3
20c076d0567da56637e69a26a8cc4e7d99124ebd qt: 25.0rc2 translations update (Hennadii Stepanov)
Pull request description:
This PR follows our [Release Process](https://github.com/bitcoin/bitcoin/blob/master/doc/release-process.md#before-every-release-candidate) and pulls the recent translations from the [Transifex.com](https://www.transifex.com/bitcoin/bitcoin) using the [`bitcoin-maintainer-tools/update-translations.py`](https://github.com/bitcoin-core/bitcoin-maintainer-tools/blob/main/update-translations.py) tool.
Unfortunately, it wasn't done before `v25.0rc1` tagging. Therefore, it is expected to be merged just before the `v25.0rc2` tag (I commit to keep this PR updated on a daily basis).
All developers with non-English native languages are welcome to skim through their language translation files and look for any malicious content, such as "official technical support for a stuck transaction", etc.
ACKs for top commit:
jarolrod:
ACK 20c076d0567da56637e69a26a8cc4e7d99124ebd
Tree-SHA512: a96856b059ec8e2d05eb03f7b2d6505e8fe384e7139e0ad7781b38e4f90b37ec8cb89d822a10467a45e5397d5fe82bb68d5675b6ad9749df71e8c219a28f901a
cf5850688d431e663e01a595b8547ff0d2902b69 doc: generate example bitcoin.conf for v25.0rc1 (fanquake)
51af8957c54753c7a6987b0f16dff4850490f743 doc: generate manual pages for v25.0rc1 (fanquake)
46accc76172943aba23d0c0c76a088d64cd2f5f0 doc: point release-notes.md to the dev wiki (fanquake)
7a807eb7355f354edad10595d2f11cfe6a6bc47d doc: update version number in bips.md to v25.0 (fanquake)
0ff26b8c0fda206b501947d056455ee8dc581fbf build: bump version to v25.0rc1 (fanquake)
Pull request description:
Bump the version number.
Generate the man pages.
Generate example bitcoin.conf.
Point release-notes.md to the wiki: https://github.com/bitcoin-core/bitcoin-devwiki/wiki/25.0-Release-Notes-Draft.
Bump the version number in bips.md.
ACKs for top commit:
achow101:
ACK cf5850688d431e663e01a595b8547ff0d2902b69
Tree-SHA512: 0f8065b33aff8d39f5ab969eea22c0161ebc984cff90f0f9496706af3b1199f4c8ec06e67d7db68cf103550f0d1f5c0f1aba493acf27f65f341f7865b152b293
9c24826e7b58722d7b0ddb8f18f985ba6f17b106 doc: Remove 25.0 release note fragments (Andrew Chow)
088a93dce8e0f406e2c09d1df181fb8aa31532a4 build: Bump to 25.99 (Andrew Chow)
Pull request description:
Pre-25.x branch off version bump and release note fragments removal.
The 25.0 draft release notes are in the dev wiki: https://github.com/bitcoin-core/bitcoin-devwiki/wiki/25.0-Release-Notes-Draft
ACKs for top commit:
fanquake:
ACK 9c24826e7b58722d7b0ddb8f18f985ba6f17b106
Tree-SHA512: f7c7b04aa904e946bc672b5b07082a819b9d76ebccda0838bc27d0e6179cfb88b8f110500d5ea815f711580916bcfa0275774ec50a7298a4c66e645647111125
31b1798d2c3fa3c479eb2d1896240e0b7fad600b p2p: update hardcoded mainnet seeds for 25.x (Jon Atack)
04dd1d3926cdc6bb9d836686cc9060320911d27a contrib: make-seeds updates for 25.x (Jon Atack)
f5c87886286473177a67a576d8eac0b32e7f5b97 p2p: update manual tor/i2p/cjdns mainnet seeds for 25.x (Jon Atack)
Pull request description:
Update the hardcoded P2P network seeds for 25.x after updating the manual seeds and the generation script as necessary. Previous update was #25911.
The manual seeds are selected for reachability, uptime and service bit 1 and/or curated trusted peers. We need more Tor and CJDNS seeds and some of the current Tor and I2P seeds are no longer reachable.
Can be tested by following the steps in `contrib/seeds/README.md` and verifying the manual seeds by checking their presence and services in getnodeaddresses and/or connecting to them and checking their services with getpeerinfo and behavior with -netinfo.
Tool output:
```
$ python3 makeseeds.py -a asmap-filled.dat -s seeds_main.txt > nodes_main.txt
Loading asmap database "asmap-filled.dat"…Done.
Loading and parsing DNS seeds…Done.
IPv4 IPv6 Onion Pass
3972 1118 0 Initial
3972 1118 0 Skip entries with invalid address
3972 1118 0 After removing duplicates
3946 1112 0 Enforce minimal number of blocks
3946 1112 0 Require service bit 1
2791 798 0 Require minimum uptime
2757 788 0 Require a known and recent user agent
2757 788 0 Filter out hosts with multiple bitcoin ports
512 289 0 Look up ASNs and limit results per ASN and per net```
ACKs for top commit:
achow101:
ACK 31b1798d2c3fa3c479eb2d1896240e0b7fad600b
mzumsande:
reACK 31b1798d2c3fa3c479eb2d1896240e0b7fad600b
Tree-SHA512: 40cdd0ac74e3d26975ab688ee4af09bedcf15f6e02311757b27c91aafdc4da16cca2be90fee767207bb4ccd542ad19197e4d5e00011185018239de35da19c174