[29.x] More backports #32589

pull fanquake wants to merge 22 commits into bitcoin:29.x from fanquake:more_29_backports changing 31 files +175 −42
  1. fanquake commented at 1:57 pm on May 22, 2025: member

    Backports

    Closes #32625.

  2. cmake: Add missed `SSE41_CXXFLAGS`
    Github-Pull: #32551
    Rebased-From: 800b7cc42ca63f2a6b245a4d327c7092289da6e1
    142153ee42
  3. fanquake added this to the milestone 29.1 on May 22, 2025
  4. DrahtBot commented at 1:57 pm on May 22, 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/32589.

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK instagibbs, willcl-ark
    Stale ACK glozow, theuni

    If your review is incorrectly listed, please react with 👎 to this comment and the bot will ignore it on the next update.

    LLM Linter (✨ experimental)

    Possible typos and grammar issues:

    • accomodate -> accommodate [correct spelling]
    • into -> in [use correct preposition for “ends up in the best chain”]

    drahtbot_id_4_m

  5. DrahtBot added the label Backport on May 22, 2025
  6. guix: accomodate migration to codeberg
    See https://guix.gnu.org/blog/2025/migrating-to-codeberg/.
    
    When interacting with the old repo you may now also see:
    ```bash
    warning: redirecting to https://codeberg.org/guix/guix/
    ```
    
    Github-Pull: #32439
    Rebased-From: c8d9baae942c94d64ce47ae8f67d3710e6a296bd
    e34b6fbcad
  7. fanquake force-pushed on May 28, 2025
  8. doc: Add missing top-level description to pruneblockchain RPC
    Previously, the `pruneblockchain` RPC help output included only the method signature and arguments, with no top-level description explaining its purpose or constraints.
    
    This PR adds a concise top-level description, improving documentation consistency and alerting users to the potential impacts of using the command.
    
    Github-Pull: #32333
    Rebased-From: 135a0f0aa711b95c50aa4cbe0c38d82d647f1c8b
    17b31fc802
  9. test: fix sync function in rpc_psbt.py
    It currently only syncs between the first two nodes,
    which may do nothing when the block is created on the
    third node.
    
    Github-Pull: #32630
    Rebased-From: 4df4df45d7bc2e8be99325d40cda936aab87c083
    646fa1d028
  10. fanquake force-pushed on May 29, 2025
  11. depends: use "mkdir -p" when installing xproto
    It looks like the mkdir detection in xproto is broken on Alpine. Ensure
    we always use `mkdir -p`.
    
    Fixes #32494.
    
    Github-Pull: #32568
    Rebased-From: df9ebbf659d5d1282289f36d7f9ee7103aa33a17
    4a1143b083
  12. fanquake force-pushed on Jun 3, 2025
  13. doc: update tor docs to use bitcoind binary from path
    Github-Pull: #32679
    Rebased-From: 4ce53495e5e18370b7935551b3b8700faa720a33
    247ee59f55
  14. rpc: Note in fundrawtransaction doc, fee rate is for package
    Github-Pull: #32607
    Rebased-From: f98e1aaf34e347088caa54403521e3b5cb55dd40
    c899334e36
  15. fanquake force-pushed on Jun 9, 2025
  16. rpc, doc: update `listdescriptors` RCP help
    This RPC lists all the descriptors present in the wallet, not only
    the ones that were imported, but also the ones generated when a
    new wallet is created.
    
    It can be verified by creating a new wallet and calling the
    `listdescriptors` RPC, which will contain 8 ranged descriptors that
    are created for every new wallet.
    
    Github-Pull: #32708
    Rebased-From: b44514b876333a94ae242da8b1e4cee439c2d37e
    78688c8413
  17. fanquake force-pushed on Jun 10, 2025
  18. doc: add missing packages for BSDs (cmake, gmake, curl) to depends/README.md
    Github-Pull: #32711
    Rebased-From: 89526deddf87904619b26319e8d149cf97466868
    876a7b2db5
  19. fanquake force-pushed on Jun 10, 2025
  20. guix: warn and abort when SOURCE_DATE_EPOCH is set
    Current behaviour will by-default use SOURCE_DATE_EPOCH from the
    environment without warning. This breaks the default reproducibility
    from a guix build.
    
    Warn when and exit when this variable is set, and
    FORCE_SOURCE_DATE_EPOCH is unset.
    
    Github-Pull: #32678
    Rebased-From: 5c4a0f8009cef758be9412428515bfed57b0c923
    23e76ef520
  21. fanquake force-pushed on Jun 10, 2025
  22. doc: make `-DWITH_ZMQ=ON` explicit on `build-unix.md`
    Github-Pull: #32696
    Rebased-From: 32d4e92b9ac81858d754487bfec2fef6bed13a57
    aea8a394b1
  23. fanquake force-pushed on Jun 10, 2025
  24. fanquake force-pushed on Jun 11, 2025
  25. fanquake force-pushed on Jun 13, 2025
  26. fanquake marked this as ready for review on Jun 17, 2025
  27. achow101 commented at 8:47 pm on June 17, 2025: member
    Could add #31757
  28. fanquake commented at 8:49 pm on June 17, 2025: member
    @achow101 is that ok to backport? See #32625 (comment)
  29. achow101 commented at 8:55 pm on June 17, 2025: member

    @achow101 is that ok to backport? See #32625 (comment)

    Yes. https://github.com/bitcoin-core/gui/pull/864 is a fix for the root cause of some unclean shutdowns, it’s otherwise unrelated to #31757.

  30. in doc/release-notes.md:64 in c7c090b490 outdated
    57@@ -57,6 +58,11 @@ Notable changes
    58 - #32356 cmake: Respect user-provided configuration-specific flags
    59 - #32437 crypto: disable ASan for sha256_sse4 with Clang
    60 - #32469 cmake: Allow WITH_DBUS on all Unix-like systems
    61+- #32439 guix: accomodate migration to codeberg
    62+- #32551 cmake: Add missed SSE41_CXXFLAGS
    


    glozow commented at 9:28 pm on June 17, 2025:
    Noting this was edited to be the commit message from the cherry-pick instead of the PR title
  31. in src/wallet/rpc/backup.cpp:1784 in 78688c8413 outdated
    1780@@ -1781,7 +1781,7 @@ RPCHelpMan listdescriptors()
    1781 {
    1782     return RPCHelpMan{
    1783         "listdescriptors",
    1784-        "\nList descriptors imported into a descriptor-enabled wallet.\n",
    1785+        "\nList all descriptors present in a descriptor-enabled wallet.\n",
    


    glozow commented at 9:36 pm on June 17, 2025:
    Noting you left “descriptor-enabled” since it’s not the only kind existing in 29.x
  32. furszy commented at 0:28 am on June 18, 2025: member
    I probably didn’t explain it well; what I meant on #32625 (comment) is that the unclean shutdown fixed by https://github.com/bitcoin-core/gui/pull/864 was triggering the issue addressed by #31757.
  33. fanquake force-pushed on Jun 18, 2025
  34. fanquake commented at 8:45 am on June 18, 2025: member
    Pulled in #31757.
  35. glozow commented at 2:26 pm on June 18, 2025: member

    lightly tested ACK b1ca5b7c623258bd29eca8447006d26aefb8686f

    Did the same backports, the conflict resolutions look correct to me. Release notes look correct. It would be great if someone could do the OpenBSD multiprocess build, as I did not test that.

  36. theuni commented at 6:44 pm on June 18, 2025: member
    I think we either want #32760 or #31998.
  37. theuni approved
  38. theuni commented at 7:31 pm on June 18, 2025: member

    utACK b1ca5b7c623258bd29eca8447006d26aefb8686f

    Backported the commits referenced in the descriptions and ended up with the same results after fixing merge conflicts.

    Only conflict I didn’t agree with 100% was capnproto, which conflicted because we had an extra patch in master, then dropped it in favor of a version bump. See comment above about potentially taking one of those PRs.

  39. depends: fix SHA256SUM command on OpenBSD (use GNU mode output)
    On OpenBSD, the `sha256` command by default outputs hashsums on files in
    "BSD" mode, looking like this:
    
    $ sha256 ~/.vimrc
    SHA256 (/home/thestack/.vimrc) = 6ba69d100e8c5ca0488ded6293d4e5f740a6a5d5ace96cbcf0599c18d27389e4
    
    This is not compatible with our depends commands, which expect the
    hashes to be on the first column (to be extracted via `cut -d" " -f1`).
    Fix this by switching to GNU mode output, looking like this:
    
    $ sha256 -r ~/.vimrc
    6ba69d100e8c5ca0488ded6293d4e5f740a6a5d5ace96cbcf0599c18d27389e4 /home/thestack/.vimrc
    
    Without this change, the multiprocess depends build fails with the following output:
    
    $ gmake -C depends MULTIPROCESS=1 NO_BOOST=1 NO_LIBEVENT=1 NO_QT=1 NO_QR=1 NO_WALLET=1 NO_ZMQ=1 NO_USDT=1
    [ ..... ]
    Extracting native_libmultiprocess...
    sha256: /home/thestack/bitcoin/depends/work/build/x86_64-unknown-openbsd7.7/native_libmultiprocess/-2bc902f4693/.src-ipc-libmultiprocess.tar.hash: no properly formatted checksum lines found
    gmake: *** [funcs.mk:342: /home/thestack/bitcoin/depends/work/build/x86_64-unknown-openbsd7.7/native_libmultiprocess/-2bc902f4693/.stamp_extracted] Error 1
    
    Github-Pull: #32690
    Rebased-From: 8713e8060d504f561fed705b4aa5af7b96c36e75
    1b51d750ad
  40. doc, windows: CompanyName "Bitcoin" => "Bitcoin Core project"
    Matches /share/setup.nsi.in:14
    
    Github-Pull: #32719
    Rebased-From: 239fc4d62e73511b3ef5117706d4c5131a921955
    27c533052c
  41. build: patch cmake min version on freetype
    Patch cmake_minimum_required version for freetype, using the version from
    https://gitlab.freedesktop.org/freetype/freetype/-/merge_requests/352/diffs
    
    This fixes a failure when building with CMake 4, where compatibility
    with CMake versions < 3.5 has been removed (see https://cmake.org/cmake/help/latest/release/4.0.html#deprecated-and-removed-features)
    
    Github-Pull: #32693
    Rebased-From: d7c37906e7b1dc1513439056d0cdb2bd341d00f1
    7264459c0d
  42. wallet: fix crash on double block disconnection
    The wallet crashes if it processes the same block disconnection event twice in a row due
    to an incompatible coinbase transaction state.
    This happens because 'disconnectBlock' provides 'TxStateInactive' without the "abandoned"
    flag for coinbase transactions to 'SyncTransaction', while 'AddToWallet()' internally
    modifies it to retain the abandoned state.
    
    The flow is as follows:
    1) On the first disconnection, the transaction state transitions from "confirmed" to
    "inactive," bypassing the state equality check since the provided state differs. Then,
    'AddToWallet' internally updates the state to "inactive + abandoned"
    
    2) On the second disconnection, as we provide only the "inactive" state
    to 'SyncTransaction()', the state equality assertion fails and crashes the wallet.
    
    Github-Pull: #31757
    Rebased-From: 9ef429b6ae65f6ad3e9ac11c2d9c0a6c52beb865
    a18085a18b
  43. test: wallet, coverage for crash on dup block disconnection during unclean shutdown
    Co-authored-by: furszy <matiasfurszyfer@protonmail.com>
    
    Github-Pull: #31757
    Rebased-From: 11f8ab140fe63857f6a93b81021efda8f90ceeda
    8246c6a65f
  44. depends: capnp 1.2.0
    Github-Pull: #32760
    Rebased-From: c7eaac326ac20a745d1bc6dbc6bc48c1b5eb46f8
    ef6111bd18
  45. fanquake force-pushed on Jun 19, 2025
  46. fanquake commented at 9:51 am on June 19, 2025: member

    I think we either want #32760 or #31998.

    Sure. Pulled in #32760, and made #32690 partial (just 8713e8060d504f561fed705b4aa5af7b96c36e75).

  47. doc: taproot became always active in v24.0
    Github-Pull: #32776
    Rebased-From: 8ee8a951c205c5365f7557253b8fffc12e6e670c
    616baf3c27
  48. doc: fix transifex 404s
    Github-Pull: #32777
    Rebased-From: 53a996f122663e271efa52c45b173613b8ac635e
    3e23b47a6f
  49. fanquake force-pushed on Jun 19, 2025
  50. test: Fix list index out of range error in feature_bip68_sequence.py
    Github-Pull: #32765
    Rebased-From: e285e691b7a311e278f89e9fe423716de1ee268b
    4c7ed36c96
  51. fanquake force-pushed on Jun 19, 2025
  52. contrib: tracing: Correctly read msg type in p2p_monitor.py
    Github-Pull: #32771
    Rebased-From: 3473986fe10e2689fe36cc93e1e50013649ac14b
    5697605414
  53. fanquake force-pushed on Jun 23, 2025
  54. doc: update release notes for 29.x 0922f6bbc3
  55. fanquake force-pushed on Jun 23, 2025
  56. instagibbs approved
  57. instagibbs commented at 4:52 pm on June 24, 2025: member
    ACK 0922f6bbc33ac2abe3f3d9dc98dade896718864f
  58. DrahtBot requested review from theuni on Jun 24, 2025
  59. DrahtBot requested review from glozow on Jun 24, 2025
  60. willcl-ark approved
  61. willcl-ark commented at 9:54 am on June 25, 2025: member

    ACK 0922f6bbc33ac2abe3f3d9dc98dade896718864f

    Checked all backports are clean and match their parent commits. All backports which include a Github-Pull: #xxxxx line in the commit message are mentioned in release-notes.md.

  62. fanquake merged this on Jun 25, 2025
  63. fanquake closed this on Jun 25, 2025

  64. fanquake deleted the branch on Jun 25, 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-07-07 06:13 UTC

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