Bitcoin Core Github
43 subscribers
122K links
Download Telegram
💬 hebasto commented on pull request "build: Switch to Qt 6":
(https://github.com/bitcoin/bitcoin/pull/30997#discussion_r2005525735)
Otherwise, it fails to find XCB:
```
$ make -C depends -j 16 qt
...
CMake Error at qtbase/cmake/QtBuildInformation.cmake:522 (message):
Feature "xcb": Forcing to "ON" breaks its condition:

QT_FEATURE_thread AND TARGET XCB::XCB AND TEST_xcb_syslibs AND QT_FEATURE_xkbcommon_x11

Condition values dump:

QT_FEATURE_thread = "ON"
TARGET XCB::XCB found
TEST_xcb_syslibs = "1"
QT_FEATURE_xkbcommon_x11 = "OFF"

Call Stack (most recent call first):
qtb
...
💬 Eunovo commented on pull request "[EXPERIMENTAL] Schnorr batch verification for blocks":
(https://github.com/bitcoin/bitcoin/pull/29491#discussion_r2005563093)
https://github.com/bitcoin/bitcoin/pull/29491/commits/6055f3a6f530818e2805d11debb1fb2ce81fc5c0: This leaves the master thread to do all the "Pubkey recovery"(I think that's what its called?) work in each `batch.Add` call, which is substantial. We can call "secp256k1_xonly_pubkey_parse" when collecting the signatures so the master thread is not stuck doing all the work to parse the XOnlyPubkey.
📝 willcl-ark opened a pull request: "Accept unordered tracepoints in interface_usdt_utxocache.py"
(https://github.com/bitcoin/bitcoin/pull/32101)
We have encountered an instance where the tracepoints were not collected in the same order they were fired (#31951).

Tracepoint ordering is not guaranteed in userspace for a number of reasons.

As this test does not require a strict collection/processing order collect `expected` and `actual` events into dicts and compare them.

This will gracefully handle both the number of events, and out-of-order events should they reoccur in the future.

Fixes: #31951
⚠️ mabu44 opened an issue: "Write access to Testing Guide for 29.0 RC"
(https://github.com/bitcoin/bitcoin/issues/32102)
I am currently working on improving the Testing Guide: Bitcoin Core 29.0 Release Candidate.
I would like to request permission to edit the Wiki so I can contribute.
Specifically, I would like to add a section about the new ephemeral dust feature.
Thank you!
💬 Chand-ra commented on issue "test: No unit test covers BIP342 tapscript signatures":
(https://github.com/bitcoin/bitcoin/issues/32012#issuecomment-2740381794)
> [@Chand-ra](https://github.com/Chand-ra) The taproot script unit tests are largely, and don't live in this repository. You need to clone the QA assets repository (https://github.com/bitcoin-core/qa-assets) and then specify the location of its `unit_test_data` directory in the `DIR_UNIT_TEST_DATA` environment variable when running the unit test binary.

You're right, cloning the qa-asserts repo and executing the following command:

`$ DIR_UNIT_TEST_DATA=./qa-assets/unit_test_data ./build/bin/te
...
🚀 ryanofsky merged a pull request: "test, refactor: Add TestNode.binaries to hold binary paths"
(https://github.com/bitcoin/bitcoin/pull/31866)
👍 dergoegge approved a pull request: "fuzz: Use immediate task runner to increase fuzz stability"
(https://github.com/bitcoin/bitcoin/pull/31841#pullrequestreview-2702662698)
Code review ACK fa4fb6a8f15c295a2a3d3ffd737e115b8be46c1f

The only downside to this is that we diverge from the production setup and e.g. bugs that only occur when fuzzing and using the `SerialTaskRunner` would be masked by this change. We could consider having a compile or runtime option to enable the serial runner and run both versions in CI.
📝 willcl-ark opened a pull request: "ci: run test-each-commit on merge to master"
(https://github.com/bitcoin/bitcoin/pull/32103)
Previously this CI job was checking out the head ref, which meant it is **not** being run on the result of merging into master.

Use the default checkout action `ref` (merge into default branch) to avoid this. Increment the checkout depth to HEAD~~ to compensate for the new merge commit.

This would have likely helped avoid both failures reported in #31946, and seems to me to be a more robust way of running this test job in any case.

(Probably) closes: #31946

cc @maflcko: Is there a hi
...
👍 hodlinator approved a pull request: "contrib: Make deterministic-coverage error messages more readable"
(https://github.com/bitcoin/bitcoin/pull/32074#pullrequestreview-2700285606)
ACK fab6fe3c1676202bd9469c3e9f9454911c92602b

Removes the use of `assert!()`s, `expect()`, `unwrap_or_else()`, error backtraces and `exit(1)` in favor of more Rust-idiomatic *user/environment error handling* through `Result<>`.

Heavy use of `map_err()` and `?` to enable early returns on error results in quite a small diff and pleasant code.

#### Testing

Tested running fuzz-util on non-existent build-dir with expected error. Tried running fuzz executable without coverage support (see i
...
💬 hodlinator commented on pull request "contrib: Make deterministic-coverage error messages more readable":
(https://github.com/bitcoin/bitcoin/pull/32074#discussion_r2004389857)
nit:
Tried running without coverage support compiled in:
```
₿ cargo run --manifest-path ./contrib/devtools/deterministic-fuzz-coverage/Cargo.toml -- $PWD/build_fuzz ../qa-assets/fuzz_corpora/ process_message
Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.03s
Running `contrib/devtools/deterministic-fuzz-coverage/target/debug/deterministic-fuzz-coverage /home/hodlinator/bitcoin/build_fuzz ../qa-assets/fuzz_corpora/ process_message`
Check if using libFuzzer ...
Che
...
💬 hodlinator commented on pull request "contrib: Make deterministic-coverage error messages more readable":
(https://github.com/bitcoin/bitcoin/pull/32074#discussion_r2004339782)
Thread https://github.com/bitcoin/bitcoin/pull/32074#discussion_r2004194037:
I like shadowing for `if let Some(foo) = foo`, in other cases it ups the code complexity in my book.

But this is not an egregious case. Fine with leaving as-is unless others agree with me.
💬 hodlinator commented on pull request "contrib: Make deterministic-coverage error messages more readable":
(https://github.com/bitcoin/bitcoin/pull/32074#discussion_r2004343979)
Thread https://github.com/bitcoin/bitcoin/pull/32074#discussion_r2004196829:
If you want to implement some version of it I'm happy to review, or we can defer it, not sure when I'll be able to get it into good shape.
💬 sipa commented on pull request "cluster mempool: introduce TxGraph":
(https://github.com/bitcoin/bitcoin/pull/31363#issuecomment-2740492781)
Rebased after the merge of #31519.
💬 instagibbs commented on pull request "cluster mempool: introduce TxGraph":
(https://github.com/bitcoin/bitcoin/pull/31363#discussion_r2005673107)
> so the only reasonable strategy I can see is to do:

The other reason to not follow this strategy, aside from reorgs, is "kindred eviction", where the caller is in charge of gathering sufficient information try to get back to an un-oversized state in the staging area, using non-oversized main stage information as a guiding tool.
🤔 maflcko reviewed a pull request: "ci: run test-each-commit on merge to master"
(https://github.com/bitcoin/bitcoin/pull/32103#pullrequestreview-2702829350)
Not sure I understand the goal nor the changes here.

It looks like you are trying to change the task to test changes merged into master to avoid running into issues fixed previously.

However, you check out the previous commit, so overall this change is a no-op , unless I am missing something?

Maybe you wanted to instead *rebase* the changes onto master? However, this is not possible in general, as some commits are not possible to rebase. For example, a subtree merge commit is not possib
...
💬 maflcko commented on pull request "ci: run test-each-commit on merge to master":
(https://github.com/bitcoin/bitcoin/pull/32103#discussion_r2005694622)
wouldn't this also need to increase fetch depth?
💬 vasild commented on pull request "i2p: make a time gap between creating transient sessions and using them":
(https://github.com/bitcoin/bitcoin/pull/32065#issuecomment-2740570834)
`48a636cdde...859c259092`: fix CI
💬 maflcko commented on issue "test: intermittent issue in p2p_1p1c_network.py":
(https://github.com/bitcoin/bitcoin/issues/31946#issuecomment-2740571721)
Sorry for missing the ping. The goal of the `test-each-commit` is to check for bisect errors on the original commits. Thus, it will be susceptible to intermittent issues that were fixed in current master.

Maybe the docs could be improved to mention this?

Other than than, I'd recommend to just rebase on master when a known/fixed issue is hit in the `test-each-commit` task, or to re-run the task.
💬 hebasto commented on pull request "build: Switch to Qt 6":
(https://github.com/bitcoin/bitcoin/pull/30997#discussion_r2005731535)
> semi-related: I wonder if Windows can be bumped to Windows 10 either way.

Addressed in https://github.com/bitcoin/bitcoin/pull/31172.
💬 maflcko commented on pull request "fuzz: Use immediate task runner to increase fuzz stability":
(https://github.com/bitcoin/bitcoin/pull/31841#issuecomment-2740599566)
> The only downside to this is that we diverge from the production setup and e.g. bugs that only occur when fuzzing and using the `SerialTaskRunner` would be masked by this change.

Right, but I wonder what type of bug this could possibly uncover, given that the fuzz targets are mostly single threaded and require some kind of sync (like `SyncWithValidationInterfaceQueue`) when they use the task runner.

Obviously, bugs in `CScheduler` itself could be missed. Though, if we are worried about t
...