💬 maflcko commented on pull request "build: Require C++20 compiler":
(https://github.com/bitcoin/bitcoin/pull/28349#issuecomment-1845050631)
Rebased.
Once and if this is merged, I'll follow-up with a `fs.h` cleanup.
(https://github.com/bitcoin/bitcoin/pull/28349#issuecomment-1845050631)
Rebased.
Once and if this is merged, I'll follow-up with a `fs.h` cleanup.
💬 fanquake commented on pull request "guix: update time-machine":
(https://github.com/bitcoin/bitcoin/pull/28580#issuecomment-1845087846)
Does Guix work normally?
Does it work with any other build, or is it only the arm64-apple-darwin that is not working?
(https://github.com/bitcoin/bitcoin/pull/28580#issuecomment-1845087846)
Does Guix work normally?
Does it work with any other build, or is it only the arm64-apple-darwin that is not working?
⚠️ maflcko opened an issue: "./contrib/guix/guix-build does not work on riscv64"
(https://github.com/bitcoin/bitcoin/issues/29020)
Steps to reproduce:
```
# dpkg --print-architecture && HOSTS="arm64-apple-darwin" V=1 VERBOSE=1 MAX_JOBS=$(nproc) ./contrib/guix/guix-build
riscv64
Found macOS SDK at '/bitcoin-core/depends/SDKs/Xcode-12.2-12B45b-extracted-SDK-with-libcxx-headers', using...
Checking that we can connect to the guix-daemon...
Hint: If this hangs, you may want to try turning your guix-daemon off and on
again.
accepted connection from pid 2870003, user root
make: Entering directory '/bitcoin-co
...
(https://github.com/bitcoin/bitcoin/issues/29020)
Steps to reproduce:
```
# dpkg --print-architecture && HOSTS="arm64-apple-darwin" V=1 VERBOSE=1 MAX_JOBS=$(nproc) ./contrib/guix/guix-build
riscv64
Found macOS SDK at '/bitcoin-core/depends/SDKs/Xcode-12.2-12B45b-extracted-SDK-with-libcxx-headers', using...
Checking that we can connect to the guix-daemon...
Hint: If this hangs, you may want to try turning your guix-daemon off and on
again.
accepted connection from pid 2870003, user root
make: Entering directory '/bitcoin-co
...
💬 maflcko commented on issue "./contrib/guix/guix-build does not work on riscv64":
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845096426)
guix itself seems to be working:
```
# type rustc && rustc --version
rustc is hashed (/var/guix/profiles/per-user/root/guix-profile/bin/rustc)
rustc 1.60.0
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845096426)
guix itself seems to be working:
```
# type rustc && rustc --version
rustc is hashed (/var/guix/profiles/per-user/root/guix-profile/bin/rustc)
rustc 1.60.0
💬 maflcko commented on pull request "guix: update time-machine":
(https://github.com/bitcoin/bitcoin/pull/28580#issuecomment-1845097342)
Yeah, it works. Let's move the discussion to https://github.com/bitcoin/bitcoin/issues/29020
(https://github.com/bitcoin/bitcoin/pull/28580#issuecomment-1845097342)
Yeah, it works. Let's move the discussion to https://github.com/bitcoin/bitcoin/issues/29020
👍 TheCharlatan approved a pull request: "Get rid of shutdown.cpp/shutdown.h, use SignalInterrupt directly"
(https://github.com/bitcoin/bitcoin/pull/28051#pullrequestreview-1769799324)
Re-ACK 4a3a2651420ca1808cb25aed8a33d57dfcd627f5
(https://github.com/bitcoin/bitcoin/pull/28051#pullrequestreview-1769799324)
Re-ACK 4a3a2651420ca1808cb25aed8a33d57dfcd627f5
💬 fanquake commented on issue "./contrib/guix/guix-build does not work on riscv64":
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845101692)
Is it only the apple cross-compiles that aren't working, or all builds? I assume it's only the apple cross-compiles given that is what is being shown here.
> guix itself seems to be working:
What is the Guix version?
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845101692)
Is it only the apple cross-compiles that aren't working, or all builds? I assume it's only the apple cross-compiles given that is what is being shown here.
> guix itself seems to be working:
What is the Guix version?
💬 dergoegge commented on issue "fuzz: Fix stability, determinism issues":
(https://github.com/bitcoin/bitcoin/issues/29018#issuecomment-1845103910)
oss-fuzz has a table for the afl++ jobs: https://oss-fuzz.com/fuzzer-stats?group_by=by-fuzzer&date_start=2023-08-31&date_end=2023-12-06&fuzzer=afl&job=afl_asan_bitcoin-core&project=bitcoin-core

(https://github.com/bitcoin/bitcoin/issues/29018#issuecomment-1845103910)
oss-fuzz has a table for the afl++ jobs: https://oss-fuzz.com/fuzzer-stats?group_by=by-fuzzer&date_start=2023-08-31&date_end=2023-12-06&fuzzer=afl&job=afl_asan_bitcoin-core&project=bitcoin-core

💬 Retropex commented on pull request "datacarriersize: Match more datacarrying":
(https://github.com/bitcoin/bitcoin/pull/28408#issuecomment-1845105629)
> Next move?
Standardize the new spam method.
(https://github.com/bitcoin/bitcoin/pull/28408#issuecomment-1845105629)
> Next move?
Standardize the new spam method.
💬 maflcko commented on issue "./contrib/guix/guix-build does not work on riscv64":
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845106572)
The other targets seem to be affected as well. (Tested Windows as well, so far)
The guix version is 1.4, but that shouldn't matter, because of the time-machine.
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845106572)
The other targets seem to be affected as well. (Tested Windows as well, so far)
The guix version is 1.4, but that shouldn't matter, because of the time-machine.
💬 dergoegge commented on pull request "wip: Split fuzz binary":
(https://github.com/bitcoin/bitcoin/pull/29010#issuecomment-1845118486)
> What does this mean? I'm seeing file sizes of 448MB (with fuzzing enabled) and 146MB (with a normal build) for test/fuzz/fuzz.
If you build this pull request you should see a binary per fuzz harness in `src/test/fuzz` (e.g. `src/test/fuzz/process_message`), as well as the usual fuzz binary `src/test/fuzz/fuzz`. If you sum up the size of the individual per harness binaries (assuming you compile with LTO) you should end up with roughly 3.6GB (maybe this depends on compiler version etc.). The
...
(https://github.com/bitcoin/bitcoin/pull/29010#issuecomment-1845118486)
> What does this mean? I'm seeing file sizes of 448MB (with fuzzing enabled) and 146MB (with a normal build) for test/fuzz/fuzz.
If you build this pull request you should see a binary per fuzz harness in `src/test/fuzz` (e.g. `src/test/fuzz/process_message`), as well as the usual fuzz binary `src/test/fuzz/fuzz`. If you sum up the size of the individual per harness binaries (assuming you compile with LTO) you should end up with roughly 3.6GB (maybe this depends on compiler version etc.). The
...
💬 maflcko commented on pull request "wip: Split fuzz binary":
(https://github.com/bitcoin/bitcoin/pull/29010#discussion_r1418771429)
Is the change in this header file needed for your approach? If there is only one fuzz target per file, and only one file is compiled, you wouldn't need to check whether it needs to be compiled, no?
(https://github.com/bitcoin/bitcoin/pull/29010#discussion_r1418771429)
Is the change in this header file needed for your approach? If there is only one fuzz target per file, and only one file is compiled, you wouldn't need to check whether it needs to be compiled, no?
💬 dergoegge commented on pull request "wip: Split fuzz binary":
(https://github.com/bitcoin/bitcoin/pull/29010#discussion_r1418785689)
Right, I think once building all the individual binaries is optional, this could be used to build just one of the individual binaries, e.g.:
```
CPPFLAGS="-DFUZZ_HARNESS=process_message" ./configure --enable-fuzz
make
```
which would produce `src/test/fuzz/fuzz` that only has the `process_message` harness. Building and linking just one harness is faster than all of them, maybe useful when reproducing testcases?
Maybe there is a better way of accomplishing this?
(https://github.com/bitcoin/bitcoin/pull/29010#discussion_r1418785689)
Right, I think once building all the individual binaries is optional, this could be used to build just one of the individual binaries, e.g.:
```
CPPFLAGS="-DFUZZ_HARNESS=process_message" ./configure --enable-fuzz
make
```
which would produce `src/test/fuzz/fuzz` that only has the `process_message` harness. Building and linking just one harness is faster than all of them, maybe useful when reproducing testcases?
Maybe there is a better way of accomplishing this?
📝 maflcko opened a pull request: "refactor: rpc: Pass CBlockIndex by reference instead of pointer "
(https://github.com/bitcoin/bitcoin/pull/29021)
Follow-up to https://github.com/bitcoin/bitcoin/pull/29003#issuecomment-1841435462
(https://github.com/bitcoin/bitcoin/pull/29021)
Follow-up to https://github.com/bitcoin/bitcoin/pull/29003#issuecomment-1841435462
💬 fanquake commented on issue "./contrib/guix/guix-build does not work on riscv64":
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845149984)
> The guix version is 1.4, but that shouldn't matter, because of the time-machine.
I'm not sure we should make that assumption here. If the version of Guix (1.4), can't properly setup containers on the system (which looks like it could be the issue), and the fixes only landed after 1.4, then builds will still fail. It would be good to get a smaller reproducer of the issue. Does something like `guix shell --container --pure some_package` work?
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845149984)
> The guix version is 1.4, but that shouldn't matter, because of the time-machine.
I'm not sure we should make that assumption here. If the version of Guix (1.4), can't properly setup containers on the system (which looks like it could be the issue), and the fixes only landed after 1.4, then builds will still fail. It would be good to get a smaller reproducer of the issue. Does something like `guix shell --container --pure some_package` work?
💬 maflcko commented on pull request "wip: Split fuzz binary":
(https://github.com/bitcoin/bitcoin/pull/29010#discussion_r1418793132)
> Building and linking just one harness is faster than all of them, maybe useful when reproducing testcases?
Not sure. This isn't supported for any other tests (bench, unit, ...), so maybe leave as a follow-up.
If building takes a long time, you can use more CPUs or a populated `ccache`.
Also, it could be done easier inside the makefile by just skipping over the other files, if needed?
(https://github.com/bitcoin/bitcoin/pull/29010#discussion_r1418793132)
> Building and linking just one harness is faster than all of them, maybe useful when reproducing testcases?
Not sure. This isn't supported for any other tests (bench, unit, ...), so maybe leave as a follow-up.
If building takes a long time, you can use more CPUs or a populated `ccache`.
Also, it could be done easier inside the makefile by just skipping over the other files, if needed?
💬 maflcko commented on issue "./contrib/guix/guix-build does not work on riscv64":
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845156614)
```
# guix shell --container --pure hello
accepted connection from pid 3269077, user root
Backtrace:
19 (apply-smob/0 #<thunk 3f887712e0>)
In ice-9/boot-9.scm:
724:2 18 (call-with-prompt _ _ #<procedure default-prompt-handle?>)
In ice-9/eval.scm:
619:8 17 (_ #(#(#<directory (guile-user) 3f88776c80>)))
In guix/ui.scm:
2275:7 16 (run-guix . _)
2238:10 15 (run-guix-command _ . _)
In ice-9/boot-9.scm:
1752:10 14 (with-exception-handler _ _ #:unwind? _ # _)
1
...
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845156614)
```
# guix shell --container --pure hello
accepted connection from pid 3269077, user root
Backtrace:
19 (apply-smob/0 #<thunk 3f887712e0>)
In ice-9/boot-9.scm:
724:2 18 (call-with-prompt _ _ #<procedure default-prompt-handle?>)
In ice-9/eval.scm:
619:8 17 (_ #(#(#<directory (guile-user) 3f88776c80>)))
In guix/ui.scm:
2275:7 16 (run-guix . _)
2238:10 15 (run-guix-command _ . _)
In ice-9/boot-9.scm:
1752:10 14 (with-exception-handler _ _ #:unwind? _ # _)
1
...
💬 fanquake commented on issue "./contrib/guix/guix-build does not work on riscv64":
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845157887)
Ok. So the issue is a bug in Guix. How many weeks will it take to run a `guix pull`?
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845157887)
Ok. So the issue is a bug in Guix. How many weeks will it take to run a `guix pull`?
💬 maflcko commented on issue "./contrib/guix/guix-build does not work on riscv64":
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845164211)
Happy to try it, but if that works, then there is a bug in the time-machine, which seems unlikely.
```
# guix time-machine --commit=77386bdbfe6b0c649c05ab37f08051d1ab3e5074 -- shell --container --pure bash
accepted connection from pid 3269629, user root
accepted connection from pid 3269629, user root
Backtrace:
18 (primitive-load "/root/.cache/guix/inferiors/4wrulds2lx?")
In guix/ui.scm:
2324:7 17 (run-guix . _)
2287:10 16 (run-guix-command _ . _)
In ice-9/boot-9.scm:
...
(https://github.com/bitcoin/bitcoin/issues/29020#issuecomment-1845164211)
Happy to try it, but if that works, then there is a bug in the time-machine, which seems unlikely.
```
# guix time-machine --commit=77386bdbfe6b0c649c05ab37f08051d1ab3e5074 -- shell --container --pure bash
accepted connection from pid 3269629, user root
accepted connection from pid 3269629, user root
Backtrace:
18 (primitive-load "/root/.cache/guix/inferiors/4wrulds2lx?")
In guix/ui.scm:
2324:7 17 (run-guix . _)
2287:10 16 (run-guix-command _ . _)
In ice-9/boot-9.scm:
...
💬 Sjors commented on pull request "wallet: rpc to add automatically generated descriptors":
(https://github.com/bitcoin/bitcoin/pull/25907#issuecomment-1845165287)
You could also test `createwalletdescriptor` by creating a descriptor wallet using a pre-taproot version. You can check the xpub in the resulting descriptor using #22341. That way all the key rotation stuff and the new records can be done in another PR.
(https://github.com/bitcoin/bitcoin/pull/25907#issuecomment-1845165287)
You could also test `createwalletdescriptor` by creating a descriptor wallet using a pre-taproot version. You can check the xpub in the resulting descriptor using #22341. That way all the key rotation stuff and the new records can be done in another PR.