. #32222

pull meliwa55 wants to merge 87 commits into bitcoin:master from meliwa55:f changing 112 files +12432 −2731
  1. meliwa55 commented at 7:54 am on April 5, 2025: none
    .
  2. build: bump version to v27.0rc1 7589ce3997
  3. doc: generate manual pages for v27.0rc1 b4fd211d2c
  4. doc: generate example bitcoin.conf for v27.0rc1 8f1b7e5cf9
  5. doc: point release-notes.md to the dev wiki
    See
    https://github.com/bitcoin-core/bitcoin-devwiki/wiki/27.0-Release-Notes-Draft.
    b6ff9c530d
  6. Merge bitcoin/bitcoin#29580: [27.x] Bump version to v27.0rc1
    b6ff9c530d83260049aa18452f4e77dd137b1a56 doc: point release-notes.md to the dev wiki (fanquake)
    8f1b7e5cf9d2c51c9348b7354f763e1bb6491354 doc: generate example bitcoin.conf for v27.0rc1 (fanquake)
    b4fd211d2c630a6c9cccc5dd5ea44ec2adfe8309 doc: generate manual pages for v27.0rc1 (fanquake)
    7589ce39972ef6d07e92f5e42ee9ad46144e129f build: bump version to v27.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/27.0-Release-Notes-Draft.
    
    ACKs for top commit:
      achow101:
        ACK b6ff9c530d83260049aa18452f4e77dd137b1a56
      willcl-ark:
        ACK b6ff9c530d83260049aa18452f4e77dd137b1a56
    
    Tree-SHA512: 914d95f18cb6393db17ed590f62e47f06d5baad0672f8674d6e71b38b9e54c8f9d9aec4631c66c9050e9da9c2a98d3120b6d7fb155ade7d4e5eb4a17fa7ef847
    c255fcb825
  7. serfloat: do not test encode(bits)=bits anymore
    Github-Pull: #29192
    Rebased-From: b45f1f56582fb3a0d17db5014ac57f1fb40a3611
    f4be4d7447
  8. serfloat: improve/simplify tests
    Github-Pull: #29192
    Rebased-From: 6e873df3478f3ab8f67d1b9339c7e990ae90e95b
    5d381cfb6f
  9. ci: Add workaround for Homebrew's python link error
    Promoting Homebrew's python@3.12 to the default python3 breaks symbolic
    links on macOS x86_64.
    
    This change adds a workaround for that issue.
    
    Also see: https://github.com/actions/runner-images/issues/9471 etc.
    
    Github-Pull: #29610
    Rebased-From: acc06bc91f80ddf4e015dcdf0b984bbdbfcb5ca3
    603f0368a5
  10. ci, macos: Use `--break-system-packages` with Homebrew's python
    Homebrew's python@3.12 is marked as externally managed (PEP 668),
    necessitating different approaches for installing Python packages.
    
    For more details, please refer to https://github.com/orgs/Homebrew/discussions/3404.
    
    Github-Pull: #29610
    Rebased-From: acc06bc91f80ddf4e015dcdf0b984bbdbfcb5ca3
    05f69b36d1
  11. ci: Bump msan to llvm-18
    Github-Pull: #29676
    Rebased-From: faecf3a7e6779c2cacadd91a6eba446431778849
    a7116c8feb
  12. Merge bitcoin/bitcoin#29693: [27.x] Further Backports
    a7116c8febb0747591b19a2f428d999984990873 ci: Bump msan to llvm-18 (MarcoFalke)
    05f69b36d1ecf0b0de8387572e2590536c0de74f ci, macos: Use `--break-system-packages` with Homebrew's python (Hennadii Stepanov)
    603f0368a5ad7fed69888af5446e565967f96d6a ci: Add workaround for Homebrew's python link error (Hennadii Stepanov)
    5d381cfb6f870788048a8900daa7fb6d7b70a6c1 serfloat: improve/simplify tests (Pieter Wuille)
    f4be4d7447c3b96f28f2bd2622979529fcc4b846 serfloat: do not test encode(bits)=bits anymore (Pieter Wuille)
    
    Pull request description:
    
      Currently:
      * https://github.com/bitcoin/bitcoin/pull/29192
      * https://github.com/bitcoin/bitcoin/pull/29610
      * https://github.com/bitcoin/bitcoin/pull/29676
    
    ACKs for top commit:
      stickies-v:
        ACK a7116c8febb0747591b19a2f428d999984990873 - all clean test backports
    
    Tree-SHA512: f3508a2c20d336c8647ba16886859d6a070584c4739fc8b5cfce2041a0662794775fb0ce89c9bf848a29e70089bae05ad1c921bbe45afe3fd5cac2a5c6b76baf
    b3cd952495
  13. doc: Suggest installing dev packages for debian/ubuntu qt5 build
    Pretty much all library packages were renamed in the 64-bit time_t
    migration to add `t64` (even on 64-bit platforms).
    
    Instead of complicating the doc with conditional package names, suggest
    installing the `-dev` packages which still have the same name, and
    besides that, are the right way to go about it as they contain the
    "user facing" C++ headers needed to build against Qt5.
    
    For Fedora, devel packages are already suggested.
    
    This affects Ubuntu 24.04 and Debian Testing.
    
    Github-Pull: #29764
    Rebased-From: a3c6a13cb23999fa70c428f1229acbf1b3883f11
    c4da61b323
  14. ci: Pull in qtbase5-dev instead of seperate low-level libraries
    Fix CI build for t64 migration.
    
    Github-Pull: #29764
    Rebased-From: 6c2990416e2dabd845f5ec50ec6ff138136c9b08
    753c68dc0f
  15. ci: Print tsan errors to stderr
    Github-Pull: #29740
    Rebased-From: fa22a438fa8f1c9cd4b4c44ff45cefd178bf5999
    bde54b7627
  16. Update the developer mailing list address.
    The developer mailing list was migrated to Google Groups in February 2024
    as announced in https://groups.google.com/g/bitcoindev/c/aewBuV6k-LI.
    
    The archives maintained by the Linux Foundation stopped updating in December
    2024. Thus, we point to the new archive maintained by gnusha.org.
    
    The codebase refers to old discussions linked to the Linux Foundation archives.
    Since all links are still active to this date, we keep them as they are.
    
    See #29782.
    
    Github-Pull: #29782
    Rebased-From: 0ead466a0c72bef0a8622749b84e9c7c5c37144f
    fe51aceeca
  17. doc: import release notes from devwiki
    https://github.com/bitcoin-core/bitcoin-devwiki/wiki/27.0-Release-Notes-Draft.
    9442ea82da
  18. build: bump version to v27.0 final 2d2a0a369e
  19. doc: update manual pages for v27.0 910e3e8728
  20. Merge bitcoin/bitcoin#29780: [27.x] More backports and finalize
    910e3e8728b258a38d38f8f9ddf6b23406e8d5ce doc: update manual pages for v27.0 (fanquake)
    2d2a0a369e13693fd0821fcd56a534e63c6b7baf build: bump version to v27.0 final (fanquake)
    9442ea82da1c9ff0ac8b1267e596af79cb04a249 doc: import release notes from devwiki (fanquake)
    fe51aceeca9471856191b4bfb2ecc483877a632b Update the developer mailing list address. (Edil Medeiros)
    bde54b76270a4fed45bedc40ee67ee5bfc89e8c4 ci: Print tsan errors to stderr (MarcoFalke)
    753c68dc0f02644f223d407b33000dce7a763056 ci: Pull in qtbase5-dev instead of seperate low-level libraries (laanwj)
    c4da61b323ce5215bee9296b1ef12f1ba1eca9f6 doc: Suggest installing dev packages for debian/ubuntu qt5 build (laanwj)
    
    Pull request description:
    
      Currently backports:
      * https://github.com/bitcoin/bitcoin/pull/29740
      * https://github.com/bitcoin/bitcoin/pull/29764
      * https://github.com/bitcoin/bitcoin/pull/29782
    
      Pulls release notes:  https://github.com/bitcoin-core/bitcoin-devwiki/wiki/27.0-Release-Notes-Draft.
      Finalizes `v27.0`.
    
    ACKs for top commit:
      achow101:
        ACK 910e3e8728b258a38d38f8f9ddf6b23406e8d5ce
      stickies-v:
        ACK 910e3e8728b258a38d38f8f9ddf6b23406e8d5ce - no changes except addressing nits
    
    Tree-SHA512: 5dd8c6adaab154699f8ad9a5bda26de54901d3d1d09034a5a6775a37f12b44274d2d5ce6e1a527a6c211b56a75fe154f3ccb37bcbc39882be8299a4f127bfe30
    d82283950f
  21. depends: fix mingw-w64 Qt DEBUG=1 build
    The issue is that compilation is done with `x86_64-w64-mingw32-g++-posix`,
    but then linking is done with `x86_64-w64-mingw32-g++`.
    
    I'm guessing this has been broken since #24131
    (01d1845a80ae48d741deea695ddce95d940ab0d8), but have not checked.
    
    Fixes #29734.
    Unblocks #29527 (now DEBUG=1 builds can be tested).
    
    Github-Pull: #29747
    Rebased-From: b7e7e727abd86104ee58beb648a94e2f453d1f6d
    a6862c50c5
  22. Change Luke Dashjr seed to dashjr-list-of-p2p-nodes.us
    To avoid issues with DNS blacklisting, I've setup a separate domain for my DNS seed.
    
    Github-Pull: #29691
    Rebased-From: 4f273ab4360c9aa72c2feb78787e1811ab58dc16
    20e6e8dc80
  23. ci: Bump s390x to ubuntu:24.04
    Re-enable feature_init
    
    Github-Pull: #29856
    Rebased-From: fadf7e90dc10e212e59bb294209bab2e73c47800
    602cfd580a
  24. [rpc, bugfix] Enforce maximum value for setmocktime
    Github-Pull: #29869
    Rebased-From: c2e0489b7125cceaeef355fc274dd8988822fff4
    897e5af58a
  25. doc: archive 27.0 release notes
    Github-Pull: #29886
    Rebased-From: c08754971d207bd2b60ba9c4faf34396a97bbc26
    5c097910e0
  26. test: Fix failing univalue float test
    Github-Pull: #29892
    Rebased-From: fa4c69669e079c38844ecea1ad3394aae3702ae1
    9277793b4e
  27. build: Fix false positive `CHECK_ATOMIC` test for clang-15
    Github-Pull: #29859
    Rebased-From: dd3e0fa12534c9e782dc9c24d2e30b70a0d73176
    364bf01ff2
  28. rpc: Reword SighashFromStr error message
    Github-Pull: #29870
    Rebased-From: fa6ab0d020d0b1492203f7eb2ccb8051812de086
    a6a59cfebc
  29. sign: don't assume we are parsing a sane Miniscript
    The script provided for signature might be externally provided, for
    instance by way of 'finalizepsbt'. Therefore the script might be
    ill-crafted, so don't assume pubkeys are always 32 bytes.
    
    Thanks to Niklas for finding this.
    
    Github-Pull: #29853
    Rebased-From: 4d8d21320eba54571ff63931509cd515c3e20339
    ae9a2ed40a
  30. Fix #29767, set m_synced = true after Commit()
    Github-Pull: #29776
    Rebased-From: bbe82c116e72ca0638751e063bf564cd1fe5c4d5
    0fcceefe22
  31. depends: Fix build of Qt for 32-bit platforms
    The 32 to 64-bit time_t transition causes a build failure in the built-in
    zlib about conflicting _TIME_BITS and _FILE_OFFSET_BITS.
    
    Note that zlib doesn't use time_t at all, so it is a false alarm.
    
    Take the following patch from upstream zlib:
    https://github.com/madler/zlib/commit/a566e156b3fa07b566ddbf6801b517a9dba04fa3.patch
    
    Closes #29980.
    
    Github-Pull: #29985
    Rebased-From: 2e266f33b5d2be5c233c2c692481f75785714fa1
    a995902d60
  32. doc: add LLVM instruction for macOS < 13
    Github-Pull: #29934
    Rebased-From: 22574046c90c0662f3aa9b1baea074aff54f92a9
    475aac41fb
  33. [WIP] doc: release notes for 27.x bd5860bc7a
  34. Merge bitcoin/bitcoin#29888: [27.x] Backports
    bd5860bc7a892c6bcffe313246dd6b81b973b9c6 [WIP] doc: release notes for 27.x (fanquake)
    475aac41fba0b55a487c7fe21a1f540d3f0bb7b6 doc: add LLVM instruction for macOS < 13 (Sjors Provoost)
    a995902d604c701be4f46087057b907de9a0ecca depends: Fix build of Qt for 32-bit platforms (laanwj)
    0fcceefe22532dc6389a95d2e058599e9496003b Fix #29767, set m_synced = true after Commit() (nanlour)
    ae9a2ed40a4f40bce822fb7cb47804c45e394e11 sign: don't assume we are parsing a sane Miniscript (Antoine Poinsot)
    a6a59cfebc81d82fefb69c6592f4c75fcdde902f rpc: Reword SighashFromStr error message (MarcoFalke)
    364bf01ff254f9fa01e14f24002af682a51b4883 build: Fix false positive `CHECK_ATOMIC` test for clang-15 (Hennadii Stepanov)
    9277793b4ee70a6f0d471cf3ff3051f2eebdbb15 test: Fix failing univalue float test (MarcoFalke)
    5c097910e03229150ed9b5fdae65173cfbf66740 doc: archive 27.0 release notes (fanquake)
    897e5af58a1a02e3b555c52eefb8f7cb61a7a91a [rpc, bugfix] Enforce maximum value for setmocktime (dergoegge)
    602cfd580a8f44a8f49b59b2a6660c54f6aec1ca ci: Bump s390x to ubuntu:24.04 (MarcoFalke)
    20e6e8dc805036730672b64b768ea771a1000fd8 Change Luke Dashjr seed to dashjr-list-of-p2p-nodes.us (Luke Dashjr)
    a6862c50c52f1606f8ad143da8d8f3c7e8f3f5c3 depends: fix mingw-w64 Qt DEBUG=1 build (fanquake)
    
    Pull request description:
    
      Backports:
      * https://github.com/bitcoin/bitcoin/pull/29691
      * https://github.com/bitcoin/bitcoin/pull/29747
      * https://github.com/bitcoin/bitcoin/pull/29776
      * https://github.com/bitcoin/bitcoin/pull/29853
      * https://github.com/bitcoin/bitcoin/pull/29856
      * https://github.com/bitcoin/bitcoin/pull/29859
      * https://github.com/bitcoin/bitcoin/pull/29869
      * https://github.com/bitcoin/bitcoin/pull/29870
      * https://github.com/bitcoin/bitcoin/pull/29886
      * https://github.com/bitcoin/bitcoin/pull/29892
      * https://github.com/bitcoin/bitcoin/pull/29934
      * https://github.com/bitcoin/bitcoin/pull/29985
    
    ACKs for top commit:
      willcl-ark:
        reACK bd5860bc7a892c6bcffe313246dd6b81b973b9c6
      stickies-v:
        re-ACK bd5860bc7a892c6bcffe313246dd6b81b973b9c6
      TheCharlatan:
        ACK bd5860bc7a892c6bcffe313246dd6b81b973b9c6
    
    Tree-SHA512: a1a40de70cf52b5fc01d9dcc772421751a18c6a48a726c4c05c0371c585a53a27902e17daed9e0d721ab7763c94bb32de05c146bd6bc73fd558edd08b31e8547
    c7885ecd77
  35. gui: fix create unsigned transaction fee bump
    Github-Pull: https://github.com/bitcoin-core/gui/pull/812
    Rebased-From: 671b7a32516d62e1e79393ded4b45910bd08010a
    d1289a1300
  36. gui: don't permit port in proxy IP option
    Fixes: #809
    
    Previously it was possible through the GUI to enter an IP address:port
    into the "Proxy IP" configuration box. After the node was restarted the
    errant setting would prevent the node starting back up until manually
    removed from settings.json.
    
    Github-Pull: https://github.com/bitcoin-core/gui/pull/813
    Rebased-From: 10c5275ba4532fb1bf54057d2f61fc35b51f1e85
    dedf319b08
  37. rpc: move UniValue in blockToJSON
    Without explicitly declaring the move, these UniValues get copied,
    causing increased memory usage. Fix this by explicitly moving the
    UniValue objects.
    
    Used by `rest_block` and `getblock` RPC.
    
    Github-Pull: #30094
    Rebased-From: b77bad309e92f176f340598eec056eb7bff86f5f
    0ba11cf908
  38. crypto: disable asan for sha256_sse4 with clang and -O0
    Clang is unable to compile the Transform function for that combination of
    options.
    
    Github-Pull: #30097
    Rebased-From: 141df0a28810470e53fdbc6d32d3cb4020fe3ca1
    3c26058da2
  39. p2p, bugfix: detect addnode cjdns peers in GetAddedNodeInfo()
    Addnode (manual) peers connected to us via the cjdns network are currently not
    detected by CConnman::GetAddedNodeInfo(), i.e. fConnected is always false.
    
    This causes the following issues:
    
    - RPC `getaddednodeinfo` incorrectly shows them as not connected
    
    - CConnman::ThreadOpenAddedConnections() continually retries to connect them
    
    Github-Pull: #30085
    Rebased-From: 684da9707040ce25d95b2954eda50b811136d92c
    9cdb9edfb8
  40. test: add GetAddedNodeInfo() CJDNS regression unit test
    Github-Pull: #30085
    Rebased-From: d0b047494c28381942c09d0cca45baa323bfcffc
    31adcfa171
  41. depends: Fetch miniupnpc sources from an alternative website
    The https://miniupnp.tuxfamily.org website is unavailable now.
    
    Github-Pull: #30151
    Rebased-From: 21b8a14d37c19ce292d5529597e0d52338db48a9
    77b2321ca0
  42. windeploy: Renew certificate
    Github-Pull: #30149
    Rebased-From: 9f4ff1e9659597307f62510f1885ad8da3a1d9a3
    423bd6dc68
  43. qt: 27.1rc1 translations update 80032d6917
  44. doc: update release-notes.md for 27.1 9b4640c4be
  45. build: bump version to 27.1rc1 9e919072bd
  46. doc: update manual pages for 27.1rc1 22701a4346
  47. Merge bitcoin/bitcoin#30092: [27.x] Backports and rc1
    22701a43464ab27ea83c8b49e2732ee647909a10 doc: update manual pages for 27.1rc1 (fanquake)
    9e919072bd76b0c2048ef9df6ba7171e8be0ccf4 build: bump version to 27.1rc1 (fanquake)
    9b4640c4bea984ebd496a4d6eb014fab7b6827fc doc: update release-notes.md for 27.1 (fanquake)
    80032d691702f1e5eccb27571066bfc9b2415742 qt: 27.1rc1 translations update (Hennadii Stepanov)
    423bd6dc68df1b023a699cb29825b946387a7b37 windeploy: Renew certificate (Ava Chow)
    77b2321ca03dcbd5f77060510dc8a19e7f4fdfa2 depends: Fetch miniupnpc sources from an alternative website (Hennadii Stepanov)
    31adcfa171c834a63237b4885ae19674fdff16f9 test: add GetAddedNodeInfo() CJDNS regression unit test (Jon Atack)
    9cdb9edfb8d1a4b0c1ba39cea0d5cee2e28e1d31 p2p, bugfix: detect addnode cjdns peers in GetAddedNodeInfo() (Jon Atack)
    3c26058da223b873094b62c30f2463ab0e629b6a crypto: disable asan for sha256_sse4 with clang and -O0 (Cory Fields)
    0ba11cf90869fb437f6dce0c9430be4f899c0ea1 rpc: move UniValue in blockToJSON (willcl-ark)
    dedf319b08d5b76dc1752d8bc4e14d38dc54e100 gui: don't permit port in proxy IP option (willcl-ark)
    d1289a13006f43afa812f7ee8956f3d59449cfd0 gui: fix create unsigned transaction fee bump (furszy)
    
    Pull request description:
    
      Backports:
      * https://github.com/bitcoin-core/gui/pull/812
      * https://github.com/bitcoin-core/gui/pull/813
      * https://github.com/bitcoin/bitcoin/pull/30085
      * https://github.com/bitcoin/bitcoin/pull/30094
      * https://github.com/bitcoin/bitcoin/pull/30097
      * https://github.com/bitcoin/bitcoin/pull/30149
      * https://github.com/bitcoin/bitcoin/pull/30151
    
      Bump to 27.1rc1.
    
    ACKs for top commit:
      stickies-v:
        re-ACK 22701a43464ab27ea83c8b49e2732ee647909a10
      willcl-ark:
        reACK 22701a43464ab27ea83c8b49e2732ee647909a10
      hebasto:
        re-ACK 22701a43464ab27ea83c8b49e2732ee647909a10.
    
    Tree-SHA512: 6eca44ba7e6664eb4677646597dfdaf56a241c8c3e95e0ab8929ee2fc3671303fc6c2634d359b4523dbd452ac5e54fd1f4c7c2bf7e9c5209395f8cb3b4753fb3
    fccd32efe6
  48. build: Fix building `fuzz` binary on on SunOS / illumos
    Github-Pull: #30216
    Rebased-From: 3299abce948f205bb1354993614b669189f9b89f
    ba35920542
  49. depends: Update Boost download link
    See: https://github.com/boostorg/boost-tasks/pull/3
    
    Github-Pull: #30217
    Rebased-From: ffbc173ca1ed6b93de8bf3f88b8aed0743f4916c
    f2e05cd2a9
  50. doc: update release notes for v27.1 final fcf1241971
  51. build: bump version to v27.1 final 93bb18f1c8
  52. doc: update manual pages for 27.1 d756a384d2
  53. Merge bitcoin/bitcoin#30222: [27.1] Finalize
    d756a384d2bebe85f2ce0d192e4d31bbbbe750a1 doc: update manual pages for 27.1 (fanquake)
    93bb18f1c837a90916bd02ac80bd4b639c17d904 build: bump version to v27.1 final (fanquake)
    fcf12419714218122e4abb3f6d7f008dadbf4ed9 doc: update release notes for v27.1 final (fanquake)
    f2e05cd2a9bdc42fa45d284a5162f1f670d07ab6 depends: Update Boost download link (Hennadii Stepanov)
    ba359205421e2f765391a8330e8a61055acd87fc build: Fix building `fuzz` binary on on SunOS / illumos (Hennadii Stepanov)
    
    Pull request description:
    
      Backports:
      * https://github.com/bitcoin/bitcoin/pull/30216
      * https://github.com/bitcoin/bitcoin/pull/30217
    
      I don't think either of these changes warrants an `rc2` cycle.
    
    ACKs for top commit:
      stickies-v:
        ACK d756a384d2bebe85f2ce0d192e4d31bbbbe750a1
      willcl-ark:
        ACK d756a384d2bebe85f2ce0d192e4d31bbbbe750a1
    
    Tree-SHA512: b5662143283a49156403d865dee25f3b6c22741345a4c8ff10f16845ea7a1a6d9d1319a70a44d07f31263bf1a6d85701146e9cc697b82a5a58922c48504a552c
    1088a98f5a
  54. ci: add IPV6 network to ci container
    Allows IPV6 functional tests to run inside the container
    
    Github-Pull: #30193
    Rebased-From: 4b527fa93b9763a33842069bc07446313cbf5e0f
    43c40dd808
  55. ci: move Asan / LSan / USDT job to Github Actions
    Moving it from Cirrus CI so it can be easier to maintain and used by forks
    
    Github-Pull: #30193
    Rebased-From: 9eea51d9058ad638861aa4b94c1c6e71caeb8765
    0d524b1484
  56. ci: remove unused bcc variable from workflow
    Github-Pull: #30299
    Rebased-From: 518b06c4b889d71a3fdd61f8fe38d519ea5e4a1b
    f34e44616d
  57. upnp: add compatibility for miniupnpc 2.2.8
    See: https://github.com/miniupnp/miniupnp/commit/c0a50ce33e3b99ce8a96fd43049bb5b53ffac62f
    
    The return value of 2 now indicates:
    "A valid connected IGD has been found but its IP address is reserved (non routable)"
    
    We continue to ignore any return value other than 1.
    
    Github-Pull: #30283
    Rebased-From: 8acdf66540834b9f9cf28f16d389e8b6a48516d5
    6338f92260
  58. doc: Update rel notes for 27.x b3093eb755
  59. Merge bitcoin/bitcoin#30305: [27.x] More backports
    b3093eb755c00f0dc6c71d8384c9078603ef4862 doc: Update rel notes for 27.x (fanquake)
    6338f92260523eaf7cd9c89300f4f088f9319b0d upnp: add compatibility for miniupnpc 2.2.8 (Cory Fields)
    f34e44616d24ad19f87fced8216d5ff23e5a27c8 ci: remove unused bcc variable from workflow (Max Edwards)
    0d524b14847f94d6e19413fde27f12e39e34694c ci: move Asan / LSan / USDT job to Github Actions (Max Edwards)
    43c40dd80835fe9b5194ac5ee1a343e5d9efe3ad ci: add IPV6 network to ci container (Max Edwards)
    
    Pull request description:
    
      Backports:
      * https://github.com/bitcoin/bitcoin/pull/30193
      * https://github.com/bitcoin/bitcoin/pull/30283
      * https://github.com/bitcoin/bitcoin/pull/30299
    
    ACKs for top commit:
      willcl-ark:
        ACK b3093eb755c00f0dc6c71d8384c9078603ef4862
      stickies-v:
        ACK b3093eb755c00f0dc6c71d8384c9078603ef4862
    
    Tree-SHA512: 325149f2b388072276e10fae2ebb7d8f3f5138d75f237c0182a09c631334fc2af9c2fe500db31bf41e94d4f154771e3cd386f8eb0d09d7a1ad656f637b71e735
    b6440f20f2
  60. psbt: Check non witness utxo outpoint early
    A common issue that our fuzzers keep finding is that outpoints don't
    exist in the non witness utxos. Instead of trying to track this down and
    checking in various individual places, do the check early during
    deserialization.
    
    Github-Pull: #29855
    Rebased-From: 9e13ccc50eec9d2efe0f472e6d50dc822df70d84
    fa90989503
  61. net: fix race condition in self-connect detection
    Initiating an outbound network connection currently involves the
    following steps after the socket connection is established (see
     `CConnman::OpenNetworkConnection` method):
        1. set up node state
        2. queue VERSION message
        3. add new node to vector `m_nodes`
    
    If we connect to ourself, it can happen that the sent VERSION message
    (step 2) is received and processed locally *before* the node object
    is added to the connection manager's `m_nodes` vector (step 3). In this
    case, the self-connect remains undiscovered, as the detection doesn't
    find the outbound peer in `m_nodes` yet (see `CConnman::CheckIncomingNonce`).
    
    Fix this by swapping the order of 2. and 3., by taking the `PushNodeVersion`
    call out of `InitializeNode` and doing that in the `SendMessages` method
    instead, which is only called for `CNode` instances in `m_nodes`.
    
    Thanks go to vasild, mzumsande, dergoegge and sipa for suggestions on
    how to fix this.
    
    Github-Pull: #30394
    Rebased-From: 66673f1c1302c986e344c7f44bb0b352213d5dc8
    0933cf53b4
  62. net: prevent sending messages in `NetEventsInterface::InitializeNode`
    Now that the queueing of the VERSION messages has been moved out of
    `InitializeNode`, there is no need to pass a mutable `CNode` reference any
    more. With a const reference, trying to send messages in this method would
    lead to a compile-time error, e.g.:
    
    ----------------------------------------------------------------------------------------------------------------------------------
    ...
    net_processing.cpp: In member function ‘virtual void {anonymous}::PeerManagerImpl::InitializeNode(const CNode&, ServiceFlags)’:
    net_processing.cpp:1683:21: error: binding reference of type ‘CNode&’ to ‘const CNode’ discards qualifiers
     1683 |     PushNodeVersion(node, *peer);
    ...
    ----------------------------------------------------------------------------------------------------------------------------------
    
    Github-Pull: #30394
    Rebased-From: 0dbcd4c14855fe2cba15a32245572b693dc18c4e
    064f214673
  63. Reapply "test: p2p: check that connecting to ourself leads to disconnect"
    This reverts commit 9ec2c53701a391629b55aeb2804e8060d2c453a4 with
    a tiny change included (identation of the wait_until call).
    
    Github-Pull: #30394
    Rebased-From: 16bd283b3ad05daa41259a062aee0fc05b463fa6
    ab42206652
  64. init: change shutdown order of load block thread and scheduler
    This avoids situations during a reindex in which shutdown
    doesn't finish since SyncWithValidationInterfaceQueue is
    called by the load block thread when the scheduler is already stopped.
    
    Github-Pull: #30435
    Rebased-From: 5fd48360198d2ac49e43b24cc1469557b03567b8
    05192ba84c
  65. wallet: fix FillPSBT errantly showing as complete
    Fix cases of calls to `FillPSBT` returning `complete=true` when it's not
    the case.
    
    This can happen when some inputs have been signed but the transaction is
    subsequently modified, e.g. in the context of PayJoins.
    
    Also fixes a related bug where a finalized hex string is attempted to be
    added during `walletprocesspsbt` but a CHECK_NONFATAL causes an abort.
    
    Reported in #30077.
    
    Github-Pull: #30357
    Rebased-From: 39cea21ec51b9838669c38fefa14f25c36ae7096
    f22b9ca70c
  66. test: add test for modififed walletprocesspsbt calls
    This test checks that we can successfully process PSBTs and opt out of
    finalization.
    
    Previously trying to call `walletprocesspsbt` would attempt to
    auto-finalize (as a convenience), and would not permit opt-out of
    finalization, instead aborting via `CHECK_NONFATAL`.
    
    Github-Pull: #30357
    Rebased-From: 7e36dca657c66bc70b04d5b850e5a335aecfb902
    54bb9b0541
  67. [WIP] doc: update release notes for 27.x 4f23c86364
  68. Merge bitcoin/bitcoin#30467: [27.x] More backports
    4f23c8636498f7e5adbe0264a0dc66a566c4b1b9 [WIP] doc: update release notes for 27.x (fanquake)
    54bb9b0541d44972726a187e382a6b267942f47a test: add test for modififed walletprocesspsbt calls (willcl-ark)
    f22b9ca70c867a02d6f578dc56d4997b7a4ff9c9 wallet: fix FillPSBT errantly showing as complete (willcl-ark)
    05192ba84c2d0ef727c9dbc1e6af4ce8a59458fa init: change shutdown order of load block thread and scheduler (Martin Zumsande)
    ab422066527992d53c92bb482c6b993f089b2999 Reapply "test: p2p: check that connecting to ourself leads to disconnect" (Sebastian Falbesoner)
    064f2146735c88823f73f7531fc36d21d1ddb6f3 net: prevent sending messages in `NetEventsInterface::InitializeNode` (Sebastian Falbesoner)
    0933cf53b48a160612873978f38ef4ff70e74847 net: fix race condition in self-connect detection (Sebastian Falbesoner)
    fa90989503494b77a0329390dc5e32d0c5e5c283 psbt: Check non witness utxo outpoint early (Ava Chow)
    
    Pull request description:
    
      Backports:
      * https://github.com/bitcoin/bitcoin/pull/29855
      * https://github.com/bitcoin/bitcoin/pull/30357
      * https://github.com/bitcoin/bitcoin/pull/30394 (modified test commit)
      * https://github.com/bitcoin/bitcoin/pull/30435
    
    ACKs for top commit:
      stickies-v:
        ACK 4f23c8636498f7e5adbe0264a0dc66a566c4b1b9
      willcl-ark:
        ACK 4f23c8636498f7e5adbe0264a0dc66a566c4b1b9
    
    Tree-SHA512: 5c26445f0855f9d14890369ce19873b0686804eeb659e7d6da36a6f404f64d019436e1e6471579eaa60a96ebf8f64311883b4aef9d0ed528a95bd610c101c079
    0cbdc6b380
  69. test: fix constructor of msg_tx
    In python, if the default value is a mutable object (here: a class)
    its shared over all instances, so that one instance being changed
    would affect others to be changed as well.
    This was likely the source of various intermittent bugs in the
    functional tests.
    
    Github-Pull: #30552
    Rebased-From: ec5e294e4b830766dcc4a80add0613d3705c1794
    500bba0561
  70. add missing #include <cstdint> for GCC 15
    Github-Pull: #30633
    Rebased-From: 138f8671569f7ebb8c84e9d80c44cddeda9e3845
    ccff378a28
  71. policy/feerate.h: avoid constraint self-dependency
    In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/format:48,
                     from /usr/lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/bits/chrono_io.h:39,
                     from /usr/lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/chrono:3362,
                     from ./util/time.h:9,
                     from ./primitives/block.h:12,
                     from ./blockencodings.h:8,
                     from blockencodings.cpp:5:
    /usr/lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/type_traits: In substitution of 'template<class _Up>  requires !(is_same_v<std::optional<_Tp>, typename std::remove_cvref<_It2>::type>) && (is_constructible_v<_Tp, const _Up&>) && (__construct_from_contained_value<_Up, typename std::remove_cv< <template-parameter-1-1> >::type>) constexpr std::optional<CFeeRate>::optional(const std::optional<_Tp>&) [with _Up = CFeeRate]':
    /usr/lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/type_traits:1140:25:   required by substitution of 'template<class _Tp, class ... _Args> using std::__is_constructible_impl = std::__bool_constant<__is_constructible(_Tp, _Args ...)> [with _Tp = CFeeRate; _Args = {std::optional<CFeeRate>&}]'
     1140 |       = __bool_constant<__is_constructible(_Tp, _Args...)>;
          |                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    /usr/lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/type_traits:1145:12:   required from 'struct std::is_constructible<CFeeRate, std::optional<CFeeRate>&>'
     1145 |     struct is_constructible
          |            ^~~~~~~~~~~~~~~~
    /usr/lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/type_traits:178:35:   required by substitution of 'template<class ... _Bn> std::__detail::__first_t<std::integral_constant<bool, false>, typename std::enable_if<(!(bool)(_Bn::value)), void>::type ...> std::__detail::__or_fn(int) [with _Bn = {std::is_constructible<CFeeRate, std::optional<CFeeRate>&>, std::is_convertible<std::optional<CFeeRate>&, CFeeRate>, std::is_constructible<CFeeRate, std::optional<CFeeRate> >, std::is_convertible<std::optional<CFeeRate>, CFeeRate>, std::is_constructible<CFeeRate, const std::optional<CFeeRate>&>, std::is_convertible<const std::optional<CFeeRate>&, CFeeRate>, std::is_constructible<CFeeRate, const std::optional<CFeeRate> >, std::is_convertible<const std::optional<CFeeRate>, CFeeRate>}]'
      178 |                                      __enable_if_t<!bool(_Bn::value)>...>;
          |                                                               ^~~~~
    /usr/lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/type_traits:196:41:   required from 'struct std::__or_<std::is_constructible<CFeeRate, std::optional<CFeeRate>&>, std::is_convertible<std::optional<CFeeRate>&, CFeeRate>, std::is_constructible<CFeeRate, std::optional<CFeeRate> >, std::is_convertible<std::optional<CFeeRate>, CFeeRate>, std::is_constructible<CFeeRate, const std::optional<CFeeRate>&>, std::is_convertible<const std::optional<CFeeRate>&, CFeeRate>, std::is_constructible<CFeeRate, const std::optional<CFeeRate> >, std::is_convertible<const std::optional<CFeeRate>, CFeeRate> >'
      196 |     : decltype(__detail::__or_fn<_Bn...>(0))
          |                ~~~~~~~~~~~~~~~~~~~~~~~~~^~~
    /usr/lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/optional:824:45:   required from 'constexpr const bool std::optional<CFeeRate>::__construct_from_contained_value<CFeeRate, CFeeRate>'
      824 |           = !__converts_from_optional<_Tp, _From>::value;
          |                                                    ^~~~~
    /usr/lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/optional:884:7:   required by substitution of 'template<class _Up>  requires !(is_same_v<std::optional<_Tp>, typename std::remove_cvref<_It2>::type>) && (is_constructible_v<_Tp, const _Up&>) && (__construct_from_contained_value<_Up, typename std::remove_cv< <template-parameter-1-1> >::type>) constexpr std::optional<CFeeRate>::optional(const std::optional<_Tp>&) [with _Up = CFeeRate]'
      884 |           && __construct_from_contained_value<_Up>
          |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ./validation.h:164:41:   required from here
      164 |         return MempoolAcceptResult(state);
          |                                         ^
    /usr/lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/optional:886:2:   required by the constraints of 'template<class _Tp> template<class _Up>  requires !(is_same_v<std::optional<_Tp>, typename std::remove_cvref<_It2>::type>) && (is_constructible_v<_Tp, const _Up&>) && (__construct_from_contained_value<_Up, typename std::remove_cv< <template-parameter-1-1> >::type>) constexpr std::optional<_Tp>::optional(const std::optional<_From>&)'
    /usr/lib/gcc/x86_64-pc-linux-gnu/15/include/g++-v15/optional:884:14: error: satisfaction of atomic constraint '__construct_from_contained_value<_Up, typename std::remove_cv< <template-parameter-1-1> >::type> [with _Tp = _Tp; _Up = _Up]' depends on itself
      884 |           && __construct_from_contained_value<_Up>
          |              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    
    Github-Pull: #30633
    Rebased-From: 055bc05792ff5d5b084563044818ebec12bfd748
    57de0f5e77
  72. [WIP] doc: update release notes for 27.x b06c4c6550
  73. Merge bitcoin/bitcoin#30558: [27.x] Even more backports
    b06c4c6550545351610fc3278dffdd63d5954cf8 [WIP] doc: update release notes for 27.x (fanquake)
    57de0f5e7722b2b3ed5b8f3ea4b19aa532e1dcd0 policy/feerate.h: avoid constraint self-dependency (Matt Whitlock)
    ccff378a284530d28506347db70db08eb53f6160 add missing #include <cstdint> for GCC 15 (Matt Whitlock)
    500bba0561cdae809cf550317ede867d3ffce662 test: fix constructor of msg_tx (Martin Zumsande)
    
    Pull request description:
    
      Backports:
      * https://github.com/bitcoin/bitcoin/pull/30552
      * https://github.com/bitcoin/bitcoin/pull/30633
    
    ACKs for top commit:
      stickies-v:
        ACK b06c4c6550545351610fc3278dffdd63d5954cf8
    
    Tree-SHA512: 1b669d1c7e0c6c2c2a1b123970c2b5b59a417a423ee1133296ebad2ecb50e5c3889a6ae8dc640f8ae464a969b1b0287a8005a3317ee7d7252b61d96e59c131a4
    84df30927a
  74. build: bump version to 27.2rc1 c338e43c6f
  75. doc: update manual pages for 27.2rc1 693403bed6
  76. doc: update for 27.2rc1 0cdfb7e45c
  77. Merge bitcoin/bitcoin#31101: [27.x] Prep for 27.2
    0cdfb7e45c623b89d37b5785cae8f2111cb450cc doc: update for 27.2rc1 (fanquake)
    693403bed6249315fc8c4965af923254ce9bbbcc doc: update manual pages for 27.2rc1 (fanquake)
    c338e43c6f0865903091c4eaaf4cff34a1a0c555 build: bump version to 27.2rc1 (fanquake)
    
    Pull request description:
    
      Prepare for 27.2.
    
    ACKs for top commit:
      stickies-v:
        ACK 0cdfb7e45c623b89d37b5785cae8f2111cb450cc
    
    Tree-SHA512: 2ccf7d9eb02450e254649d50188c15c754ce74fb94e5101324a1cde5839de5451b0dc7567eed135c84bf83fefcd1a6d37cb757094f27563cbff43969b9852b1b
    882e0d730d
  78. doc: use proper doxygen formatting for CTxMemPool::cs
    Having `@par title` followed by an empty line renders improperly in
    Doxygen - it results in a paragraph with a title but without a body.
    
    https://www.doxygen.nl/manual/commands.html#cmdpar
    
    This also results in a compiler warning (or error) with Clang 19:
    
    ```
    ./txmempool.h:368:34: error: empty paragraph passed to '@par' command [-Werror,-Wdocumentation]
      368 |      * @par Consistency guarantees
          |        ~~~~~~~~~~~~~~~~~~~~~~~~~~^
    1 error generated.
    ```
    
    Github-Pull: #30504
    Rebased-From: 6a5e9e40e1dd3d397020703feb9aa0b6f4577c98
    c838ce514f
  79. doc: finalise release notes for 27.2 6c09325757
  80. build: bump version to v27.2 final f42fcf6ad7
  81. doc: update manual pages for 27.2 dd1bf8bc4e
  82. Merge bitcoin/bitcoin#31154: [27.x] rc2 or final
    dd1bf8bc4ef75ef43c33bbf755c3e0d2c6c3c5f7 doc: update manual pages for 27.2 (fanquake)
    f42fcf6ad7a95b750a9cdc742b801e14a476f823 build: bump version to v27.2 final (fanquake)
    6c09325757b65191f7c3a44a039b65016dac9079 doc: finalise release notes for 27.2 (fanquake)
    c838ce514fe5a264b68e25b988988382302c6dfc doc: use proper doxygen formatting for CTxMemPool::cs (Vasil Dimov)
    
    Pull request description:
    
      This backports one other change (that doesn't warrant an rc), which fixes noisey output from newer versions of Clang (19+). Also makes the changes for 27.2 final.
    
      Bins for rc1 are available here: https://bitcoincore.org/bin/bitcoin-core-27.2/test.rc1/.
    
    ACKs for top commit:
      stickies-v:
        ACK dd1bf8bc4ef75ef43c33bbf755c3e0d2c6c3c5f7
    
    Tree-SHA512: 10599443bb8862dc5f238246e21ff817d572fc23174efc0fe27960e490a4e82501555bc859a1a84f465ea211b00c54a3e9125612ca2d98be6e1e8684d5c61a4b
    bf03c458e9
  83. test: fix MIN macro-redefinition
    Renames the `MIN` macro to `_TRACEPOINT_TEST_MIN`.
    
    From #31418:
    
    ```
    stderr:
    /virtual/main.c:70:9: warning: 'MIN' macro redefined [-Wmacro-redefined]
       70 | #define MIN(a,b) ({ __typeof__ (a) _a = (a); __typeof__ (b) _b = (b); _a < _b ? _a : _b; })
          |         ^
    include/linux/minmax.h:329:9: note: previous definition is here
      329 | #define MIN(a,b) __cmp(min,a,b)
          |         ^
    1 warning generated.
    ```
    
    fixes: https://github.com/bitcoin/bitcoin/issues/31418
    
    Github-Pull: #31419
    Rebased-From: 00c1dbd26ddb816e5541c5724397015a92a3d06b
    166fea73eb
  84. depends: Fix CXXFLAGS on NetBSD
    This change corrects an issue where CXXFLAGS were mistakenly overridden
    by CFLAGS.
    
    Github-Pull: #31502
    Rebased-From: a10bb400e8cb0da0030114ee59f2e7c8494aef42
    c70bd786f8
  85. depends: Fix spacing issue
    This change resolves an issue where a missing space caused the value of
    the `build_AR` variable to be concatenated with the "NM=" string. This
    resulted in subsequent calls to `${AR}` and `${NM}` failing.
    
    Github-Pull: #31627
    Rebased-From: 8a46286da667d19414c30350df48ebf245589e32
    a1db79c31d
  86. tracing: Rename the `MIN` macro to `_TRACEPOINT_TEST_MIN` in log_raw_p2p_msgs
    Inspired by: 00c1dbd26ddb816e5541c5724397015a92a3d06b (#31419)
    
    Github-Pull: #31623
    Rebased-From: f93f0c93961bbce413101c2a92300a7a29277506
    8588d5bbe0
  87. doc: update release notes 25f150304d
  88. Merge bitcoin/bitcoin#31422: [27.x] More backports
    25f150304d01940d7936125b7b4bf8e6c01d35aa doc: update release notes (fanquake)
    8588d5bbe01310b3549d1626791d51924c386e87 tracing: Rename the `MIN` macro to `_TRACEPOINT_TEST_MIN` in log_raw_p2p_msgs (0xb10c)
    a1db79c31d89facdb29e8ecd82264d93c3de3c66 depends: Fix spacing issue (Hennadii Stepanov)
    c70bd786f8971fc2f3e23ef35b29ec89e433959d depends: Fix CXXFLAGS on NetBSD (Hennadii Stepanov)
    166fea73eb1d194e4e80945bcd53e70179622c6e test: fix MIN macro-redefinition (0xb10c)
    
    Pull request description:
    
      Backports:
      * #31419
      * #31502
      * #31623
      * #31627
    
    ACKs for top commit:
      stickies-v:
        ACK 25f150304d01940d7936125b7b4bf8e6c01d35aa
    
    Tree-SHA512: 331027b176f5fd344a74d7b6d6668db5251ab2fec9f079977601499a37f71fe84cb6dee1cdee40a0570aa92d29839093c578e8eebde92188e4de534f4a6dee65
    1e7041a9f3
  89. DrahtBot commented at 7:54 am on April 5, 2025: contributor

    The following sections might be updated with supplementary metadata relevant to reviewers and maintainers.

    Code Coverage & Benchmarks

    For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/32222.

    Reviews

    See the guideline for information on the review process. A summary of reviews will appear here.

  90. fanquake closed this on Apr 5, 2025

  91. bitcoin locked this on Apr 5, 2025
  92. fanquake renamed this:
    F
    .
    on Apr 5, 2025

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2025-04-16 15:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me