[28.x] Further backports and rc2 #30827

pull achow101 wants to merge 10 commits into bitcoin:28.x from achow101:rc2-backports changing 37 files +817 −129
  1. achow101 commented at 10:30 pm on September 5, 2024: member
  2. DrahtBot commented at 10:30 pm on September 5, 2024: contributor

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

    Code Coverage

    For detailed information about the code coverage, see the test coverage report.

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    ACK stickies-v, hebasto
    Stale ACK furszy

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

  3. DrahtBot added the label Backport on Sep 5, 2024
  4. achow101 marked this as a draft on Sep 5, 2024
  5. test: Work around boost compilation error
    Github-Pull: bitcoin/bitcoin#30834
    Rebased-From: fa9d7d5d205ada8915cbbc29599ab8e7bf1fffe0
    598415bcc1
  6. in src/txmempool.h:31 in a4b8a716c6 outdated
    22@@ -23,7 +23,17 @@
    23 #include <util/result.h>
    24 #include <util/feefrac.h>
    25 
    26+// This works around a bug in Boost <= 1.80.0 when using Clang >=18.
    27+// See https://github.com/bitcoin/bitcoin/issues/30751.
    28+#if defined(__clang__)
    29+#pragma clang diagnostic push
    30+#pragma clang diagnostic ignored "-Wenum-constexpr-conversion"
    31+#endif
    


    maflcko commented at 7:42 am on September 6, 2024:
    Not sure if this is the right fix. It may avoid an error when using specific versions of Clang in combination with specific versions of boost. However, it may also result in a new warning with specific versions of Clang: #30821 (comment)

    fanquake commented at 2:06 pm on September 6, 2024:
    This can now be swapped out for #30834.

    achow101 commented at 3:32 pm on September 6, 2024:
    Backported fa9d7d5d205ada8915cbbc29599ab8e7bf1fffe0
  7. achow101 force-pushed on Sep 6, 2024
  8. hebasto approved
  9. hebasto commented at 4:41 pm on September 6, 2024: member
    ACK 37a6739203ea3da394acef38b18a794e67543a90.
  10. DrahtBot added the label CI failed on Sep 7, 2024
  11. achow101 added this to the milestone 28.0 on Sep 10, 2024
  12. DrahtBot removed the label CI failed on Sep 11, 2024
  13. assumeUTXO: fix peers disconnection during sync
    Because AssumeUTXO nodes prioritize tip synchronization, they relay their local
    address through the network before completing the background chain sync.
    This, combined with the advertising of full-node service (NODE_NETWORK), can
    result in an honest peer in IBD connecting to the AssumeUTXO node (while syncing)
    and requesting an historical block the node does not have. This behavior leads to
    an abrupt disconnection due to perceived unresponsiveness (lack of response)
    from the AssumeUTXO node.
    
    This lack of response occurs because nodes ignore getdata requests when they do
    not have the block data available (further discussion can be found in PR 30385).
    
    Fix this by refraining from signaling full-node service support while the
    background chain is being synced. During this period, the node will only
    signal 'NODE_NETWORK_LIMITED' support. Then, full-node ('NODE_NETWORK')
    support will be re-enabled once the background chain sync is completed.
    
    Github-Pull: bitcoin/bitcoin#30807
    Rebased-From: 6d5812e5c852c233bd7ead2ceef051f8567619ed
    c6b5db1d59
  14. test: add coverage for assumeUTXO honest peers disconnection
    Exercising and verifying the following points:
    
    1. An IBD node can sync headers from an AssumeUTXO node at
       any time.
    
    2. IBD nodes do not request historical blocks from AssumeUTXO
       nodes while they are syncing the background-chain.
    
    3. The assumeUTXO node dynamically adjusts the network services
       it offers according to its state.
    
    4. IBD nodes can fully sync from AssumeUTXO nodes after they
       finish the background-chain sync.
    
    Github-Pull: bitcoin/bitcoin#30807
    Rebased-From: 992f83bb6f4b29b44f4eaace1d1a2c0001d43cac
    b329ed739b
  15. achow101 force-pushed on Sep 11, 2024
  16. achow101 marked this as ready for review on Sep 11, 2024
  17. furszy commented at 7:26 pm on September 11, 2024: member
    utACK b97323c7aaa06bda8c76dfc754c90f9de44f4898
  18. DrahtBot requested review from hebasto on Sep 11, 2024
  19. DrahtBot added the label CI failed on Sep 12, 2024
  20. test: Wait for local services to update in feature_assumeutxo
    Github-Pull: bitcoin/bitcoin#30880
    Rebased-From: 19f4a7c95a99162122068d4badffeea240967a65
    d39262e5d4
  21. achow101 force-pushed on Sep 12, 2024
  22. hebasto commented at 10:30 am on September 13, 2024: member
  23. gui: fix crash when closing wallet
    The crash occurs because 'WalletController::removeAndDeleteWallet' is called
    twice for the same wallet model: first in the GUI's button connected function
    'WalletController::closeWallet', and then again when the backend emits the
    'WalletModel::unload' signal.
    
    This causes the issue because 'removeAndDeleteWallet' inlines an
    erase(std::remove()). So, if 'std::remove' returns an iterator to the end
    (indicating the element wasn't found because it was already erased), the
    subsequent call to 'erase' leads to an undefined behavior.
    
    Github-Pull: bitcoin-core/gui#835
    Rebased-From: a965f2bc07a3588f8c2b8d6a542961562e3f5d0e
    674dded875
  24. achow101 force-pushed on Sep 13, 2024
  25. achow101 commented at 3:33 pm on September 13, 2024: member

    @achow101

    Could you please add bitcoin-core/gui#835 as well?

    Done

  26. hebasto commented at 4:14 pm on September 13, 2024: member

    @achow101

    Feel free to pick this translation update, which resolves #30897 and includes new translations made over the nearly 3 weeks since #30715.

  27. fanquake commented at 4:18 pm on September 13, 2024: member

    Feel free to pick this translation update

    There’s not so much of a rush here that this should bypass the normal PR & review process. This should first be PR’d and merged into master and then backported. Otherwise any broken string are still in master. There is at least one other change waiting for 28.x, so rc2 also needs to either wait for that, or we’ll be having an rc3 (which can include the ts update) in any case.

  28. hebasto commented at 4:24 pm on September 13, 2024: member

    There’s not so much of a rush here that this should bypass the normal PR & review process.

    Sure.

    This should first be PR’d and merged into master and then backported.

    After branching off, the Transifex.com has translations for the version branches only. Fetching 28x translations into the master branch does not look reasonable.

    Otherwise any broken string are still in master.

    Maybe this case is a special one.

  29. hebasto commented at 4:27 pm on September 13, 2024: member

    There’s not so much of a rush here that this should bypass the normal PR & review process.

    Sure.

    Please see #30899.

  30. DrahtBot removed the label CI failed on Sep 13, 2024
  31. fanquake referenced this in commit 37679b856c on Sep 16, 2024
  32. qt: Translations update
    The recent translations from Transifex.com 28.x fetched with the
    bitcoin-maintainer-tools/update-translations.py tool.
    
    Github-Pull: bitcoin/bitcoin#30899
    Rebased-From: ae0529576147a1a5bee992574e2cefc8a1fa37d0
    1b853fdb0a
  33. achow101 force-pushed on Sep 16, 2024
  34. achow101 marked this as a draft on Sep 16, 2024
  35. streams: cache file position within AutoFile
    Github-Pull: bitcoin/bitcoin#30884
    Rebased-From: e624a9bef16b6335fd119c10698352b59bf2930a
    8229e98116
  36. streams: remove AutoFile::Get() entirely
    Co-Authored-By: David Gumberg <davidzgumberg@gmail.com>
    
    Github-Pull: bitcoin/bitcoin#30884
    Rebased-From: a240e150e837b5a95ed19765a2e8b7c5b6013f35
    ff95cb31da
  37. build: Bump to 28.0rc2 5315886bf5
  38. doc: Generate manpages 06a7df70df
  39. achow101 force-pushed on Sep 17, 2024
  40. achow101 marked this as ready for review on Sep 17, 2024
  41. stickies-v approved
  42. stickies-v commented at 11:26 am on September 17, 2024: contributor

    ACK 06a7df70df30879e0b691d1a252636f703b8cdfb

    I verified that all backports are clean, except:

    • b329ed739b7311b3b47cae1ef8d576a90e0a36a1 backported from 992f83bb6f4b29b44f4eaace1d1a2c0001d43cac: merge conflict due to a difference in sha256sum_file import, trivially resolved

    I didn’t review each commit in-depth since they’re clean, but the changes backported seem sensible.

  43. DrahtBot requested review from furszy on Sep 17, 2024
  44. hebasto approved
  45. hebasto commented at 3:12 pm on September 17, 2024: member
    ACK 06a7df70df30879e0b691d1a252636f703b8cdfb, I’ve backported the listed PRs locally. The only merge conflict I faced was in #30807. It was trivial to resolve.
  46. fanquake merged this on Sep 17, 2024
  47. fanquake closed this on Sep 17, 2024


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: 2024-09-29 01:12 UTC

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