Skip to content

backport: Merge bitcoin/bitcoin#30291, 30397, 22729, 29633, 29459#7300

Draft
vijaydasmp wants to merge 5 commits intodashpay:developfrom
vijaydasmp:May_2026_04
Draft

backport: Merge bitcoin/bitcoin#30291, 30397, 22729, 29633, 29459#7300
vijaydasmp wants to merge 5 commits intodashpay:developfrom
vijaydasmp:May_2026_04

Conversation

@vijaydasmp
Copy link
Copy Markdown

bitcoin backports

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Apr 30, 2026

⚠️ Potential Merge Conflicts Detected

This PR has potential conflicts with the following open PRs:

Please coordinate with the authors of these PRs to avoid merge conflicts.

@vijaydasmp vijaydasmp changed the title backport: Merge bitcoin/bitcoin#26662 backport: Merge bitcoin/bitcoin#28264,30291,30397,2279,29459 May 8, 2026
achow101 and others added 5 commits May 8, 2026 20:47
ad06e68 test: write functional test results to csv (tdb3)

Pull request description:

  Adds argument `--resultsfile` to test_runner.py.
  Enables functional test results to be written to a (csv) file for processing by other applications (or for historical archiving).
  Test name, status, and duration are written to the file provided with the argument.

  Since `test_runner.py` is being touched, also fixes a misspelling (linter warning).   Can split into its own commit if desired.

  #### Notes
   - Total runtime of functional tests has seemed to have increased on my development machines over the past few months (more tests added, individual test runtime increase, etc.).  Was interested in recording test runtime data over time to detect trends.  Initially searched `doc/benchmarking.md`, existing PRs, and Issues, but didn't immediately see this type of capability or alternate solutions (please chime in if you know of one!).  Thought it would be beneficial to add this capability to `test_runner` to facilitate this type of data analysis (and potentially other use cases)
   - Saw https://github.com/bitcoin/bitcoin/blob/master/test/functional/README.md#benchmarking-with-perf, and this PR's higher level data seems complimentary.
   - Was on the fence as to whether to expand `print_results()` (i.e. take advantage of the same loop over `test_results`) or implement in a separate `write_results()` function.  Decided on the latter for now, but interested in reviewers' thoughts.

  #### Example 1: all tests pass
  ```
  $ test/functional/test_runner.py --resultsfile functional_test_results.csv --cachedir=/mnt/tmp/cache --tmpdir=/mnt/tmp feature_blocksdir wallet_startup feature_config_args mempool_accept
  Temporary test directory at /mnt/tmp/test_runner_₿_🏃_20240614_201625
  Test results will be written to functional_test_results.csv
  ...

  $ cat functional_test_results.csv
  test,status,duration(seconds)
  feature_blocksdir.py,Passed,1
  feature_config_args.py,Passed,29
  mempool_accept.py,Passed,9
  wallet_startup.py,Passed,2
  ALL,Passed,29
  ```

  #### Example 2: one test failure
  ```
  $ cat functional_test_results.csv
  test,status,duration(seconds)
  feature_blocksdir.py,Passed,1
  feature_config_args.py,Passed,28
  wallet_startup.py,Passed,2
  mempool_accept.py,Failed,1
  ALL,Failed,28
  ```

ACKs for top commit:
  maflcko:
    re-ACK ad06e68
  kevkevinpal:
    tACK [ad06e68](bitcoin@ad06e68)
  achow101:
    ACK ad06e68
  rkrux:
    tACK [ad06e68](bitcoin@ad06e68)
  brunoerg:
    ACK ad06e68
  marcofleon:
    Good idea, tested ACK ad06e68

Tree-SHA512: 561194406cc744905518aa5ac6850c07c4aaecdaf5d4d8b250671b6e90093d4fc458f050e8a85374e66359cc0e0eaceba5eb24092c55f0d8f349d744a32ef76c
…l/net.cpp

e233ec0 refactor: Use designated initializer (Hodlinator)

Pull request description:

  Block was recently touched (e2d1f84) and the codebase recently switched to C++20 which allows this to improve robustness.

  Follow-up suggested in bitcoin#29625 (comment)

ACKs for top commit:
  maflcko:
    ACK e233ec0

Tree-SHA512: ce3a18f513421e923710a43c8f97db1badb7ff5c6bdbfd62d9543312d2225731db5c14bef16feb47c43b84fad4dc24485086634b680feba422d2b7b363e13fa6
…startup on bind failure

bca346a net: require P2P binds to succeed (Vasil Dimov)
af55253 net: report an error if unable to bind on the Tor listening addr:port (Vasil Dimov)
9a7e5f4 net: don't extra bind for Tor if binds are restricted (Vasil Dimov)

Pull request description:

  Make it possible to disable the Tor binding on `127.0.0.1:8334` and stop startup if any P2P bind fails instead of "if all P2P binds fail".

  Fixes bitcoin#22726
  Fixes bitcoin#22727

ACKs for top commit:
  achow101:
    ACK bca346a
  cbergqvist:
    ACK bca346a
  pinheadmz:
    ACK bca346a

Tree-SHA512: fabef89a957191eea4f3e3b6109d2b8389f27ecc74440a920b0c10f31fff00a85bcfd1eb3c91826c7169c618f4de8a8d0a260e2caf40fd854f07ea9a980d8603
d0e6564 log: Remove error() reference (Fabian Jahr)

Pull request description:

  Mini-followup to bitcoin#29236 that was just merged. Removes a reference to `error()` that was missed in a comment.

ACKs for top commit:
  ryanofsky:
    Code review ACK d0e6564. Just dropped LogPrintf reference since last review
  stickies-v:
    ACK d0e6564
  Empact:
    ACK bitcoin@d0e6564

Tree-SHA512: 8abe4895951013c2ceca9a57743aacabaf8af831d07eee9ae8372c121c16e88b7226f0e537200c3464792e19ac7e03b57ba0be31f43add8802753972b0aefc48
bf264e0 test: check_mempool_result negative feerate (kevkevin)

Pull request description:

  Adds test coverage in `mempool_accept.py` to check if a negative `maxfeerate` is input into `check_mempool_result`
  Asserts "Amount out of range" error message and `-3` error code

  Motivated by this [comment](https://github.com/bitcoin/bitcoin/pull/29434/files#r1491112250)

ACKs for top commit:
  maflcko:
    lgtm ACK bf264e0
  brunoerg:
    nice, utACK bf264e0
  davidgumberg:
    Looks great, ACK bitcoin@bf264e0

Tree-SHA512: 58931b774cc887c616f2fd91af3ee65cc5db55acd8e2875c76de448c80bd4e020b057c5f4f85556431377f0d0e7553771fb285d1ec20cf64f64ec92a47776b78
@vijaydasmp vijaydasmp changed the title backport: Merge bitcoin/bitcoin#28264,30291,30397,2279,29459 backport: Merge bitcoin/bitcoin#30291,30397,2279,29459 May 8, 2026
@vijaydasmp vijaydasmp changed the title backport: Merge bitcoin/bitcoin#30291,30397,2279,29459 backport: Merge bitcoin/bitcoin#30291, 30397, 22729, 29633, 29459 May 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants