Bitcoin Core Github
44 subscribers
122K links
Download Telegram
💬 ismaelsadeeq commented on pull request "Add functional test for IPC interface":
(https://github.com/bitcoin/bitcoin/pull/33201#discussion_r2319334707)
In "tests: add functional tests for IPC interface" 592e253f76764f108e9c34fa0da32451091b946a

It will be nice if we use defined constants or use define new ones for the magic numbers, or use response from rpc
It will help in improving the readability of the test.
```diff
diff --git a/test/functional/interface_ipc.py b/test/functional/interface_ipc.py
index 6ff11cbe0f8..912fa3a459b 100755
--- a/test/functional/interface_ipc.py
+++ b/test/functional/interface_ipc.py
@@ -97,18 +97,21 @@ cla
...
💬 ismaelsadeeq commented on pull request "Add functional test for IPC interface":
(https://github.com/bitcoin/bitcoin/pull/33201#discussion_r2319240482)
In "test: add is_ipc_compiled() and skip_if_no_ipc() functions" a5e470e134b8fb60264c349d8580e6fb0175b7c2

nit:
's/compiled/enabled/g'
💬 maflcko commented on issue "CI: Cmake warnings should be errors":
(https://github.com/bitcoin/bitcoin/issues/31476#issuecomment-3249731950)
> Turning warnings into errors is the wrong approach.

The thinking behind this is that all warnings should be addressed in one way or another, otherwise there wouldn't be something to warn about.

One way to achieve this is by turning warnings into errors and then addressing the errors.
💬 m3dwards commented on issue "Revisiting us self-hosting parts of our CI":
(https://github.com/bitcoin/bitcoin/issues/31965#issuecomment-3249732228)
Further, a lot of the YAML is actually setting things up like caching which is not only essential for reasonable performance but also is vendor specific and so couldn't really exist in reproducible CI scripts either written as they are or in cmake.
🤔 ismaelsadeeq reviewed a pull request: "build: suggest -DENABLE_IPC=OFF when missing capnp"
(https://github.com/bitcoin/bitcoin/pull/33290#pullrequestreview-3181213833)
Concept ACK
💬 maflcko commented on pull request "ci: Migrate CI to hosted Cirrus Runners":
(https://github.com/bitcoin/bitcoin/pull/32989#issuecomment-3249777657)
> To complete migration from self-hosted to hosted for this repo, the backport branches `27.x`, `28.x` and `29.x` would also need their CI ported, but these are left for followups to this change (and pending review/changes here first).

27.x looks close to EOL in one month, according to https://bitcoincore.org/en/lifecycle/, so I guess it could just die with the old CI?
💬 fanquake commented on pull request "ci: Migrate CI to hosted Cirrus Runners":
(https://github.com/bitcoin/bitcoin/pull/32989#issuecomment-3249782168)
Yea. I think it's fine to leave `27.x` as is, this just needs backporting to `29.x` & `28.x`.
📝 fanquake opened a pull request: "[29.x] *san CI backports"
(https://github.com/bitcoin/bitcoin/pull/33294)
Backports:
* #32999
* #33099
* #33258
💬 maflcko commented on pull request "Add functional test for IPC interface":
(https://github.com/bitcoin/bitcoin/pull/33201#discussion_r2319395069)
"enabled" feels a bit like it can change at runtime, but this is a check about whether it has been compiled in, so I think the name is correct
💬 maflcko commented on pull request "Add functional test for IPC interface":
(https://github.com/bitcoin/bitcoin/pull/33201#discussion_r2319397753)
> currently

I don't think it will ever be possible to run them with tidy, also it doesn't make sense to do?
💬 purpleKarrot commented on pull request "cmake: fatal error when PIE not supported":
(https://github.com/bitcoin/bitcoin/pull/33282#issuecomment-3249812522)
Where is it defined or documented why `CMAKE_POSITION_INDEPENDENT_CODE` is set to `ON` in the first place?

A better approach would be to not override user preferences at all and set the `POSITION_INDEPENDENT_CODE` target property explicitly on targets that need it.
💬 maflcko commented on pull request "build: set ENABLE_IPC to OFF when fuzzing":
(https://github.com/bitcoin/bitcoin/pull/33235#issuecomment-3249828430)
lgtm

Should be fine either way and shouldn't matter much, because the set of devs without capnp doing fuzzing is limited
💬 purpleKarrot commented on issue "Revisiting us self-hosting parts of our CI":
(https://github.com/bitcoin/bitcoin/issues/31965#issuecomment-3249833121)
> Further, a lot of the YAML is actually setting things up like caching which is not only essential for reasonable performance but also is vendor specific and so couldn't really exist in reproducible CI scripts either written as they are or in cmake.

I don't see how setting up a cache could require YAML in a way that is not possible to reproduce in the cmake language. I explicitly covered caching in my presentation.
💬 purpleKarrot commented on issue "CI: Cmake warnings should be errors":
(https://github.com/bitcoin/bitcoin/issues/31476#issuecomment-3249855202)
> It is not possible for errors to exist, because pull requests will not be merged when errors exist in the CI.

This is just a matter of configuration. The same mechanism that prevents merging when errors exist could be used to prevent merging when warnings exist.
💬 stickies-v commented on pull request "cmake: fatal error when PIE not supported":
(https://github.com/bitcoin/bitcoin/pull/33282#issuecomment-3249932464)
> A better approach would be to not override user preferences at all

Thanks for the review. I think I agree. I already tried to improve that behaviour by not overriding `CMAKE_POSITION_INDEPENDENT_CODE` when it was set by the user, but it seems better to not change it at all, as you say.

I've force-pushed to use our existing `core_interface` to propagate `INTERFACE_POSITION_INDEPENDENT_CODE` to all our targets, since I think the current behaviour of using PIE for all targets is sensible. W
...
💬 purpleKarrot commented on pull request "cmake: fatal error when PIE not supported":
(https://github.com/bitcoin/bitcoin/pull/33282#issuecomment-3249972507)
> I think the current behaviour of using PIE for all targets is sensible

I am not convinced and I really would like to know the rationale for that. Maybe @hebasto or @theuni knows?
💬 mzumsande commented on issue "Enable PCP by default?":
(https://github.com/bitcoin/bitcoin/issues/31663#issuecomment-3249980322)
I see unconditional log messages `[net:warning] pcp: Could not receive response: Connection refused (111)` every 5 minutes (in an environment where PCP is expected to not work), and it's a bit spammy. How about a exponential backoff, similar to how it's done in `torcontrol.cpp`?
💬 darosior commented on issue "Enable PCP by default?":
(https://github.com/bitcoin/bitcoin/issues/31663#issuecomment-3250010277)
Good idea. I got annoyed by it as well, and @instagibbs also mentions it above.
💬 Sjors commented on pull request "Add functional test for IPC interface":
(https://github.com/bitcoin/bitcoin/pull/33201#discussion_r2319596500)
It looks like the maintainer wants to be replaced. Since people have been opening pull requests, hopefully they'll find a replacement.

So far `pycapnp` seems to work fine up to Python 3.12 and we support a minimum of 3.10, so we have some time.
💬 Sjors commented on pull request "Add functional test for IPC interface":
(https://github.com/bitcoin/bitcoin/pull/33201#discussion_r2319606567)
Right, we use _enable_ in cmake to decide if we want to _compile_. The test suite care about whether it was compiled.