Skip to content

Conversation

@hebasto
Copy link
Member

@hebasto hebasto commented Nov 23, 2025

system_tests currently rely on cat, echo, false and sh being available in PATH at runtime.

This PR:

  1. Removes these dependencies.
  2. Reduces the number of platform-specific code paths.

The change is primarily motivated by my work on maintaining the bitcoin-core package in Guix. It enables the removal of the existing bash and coreutils native inputs, which in turn makes it possible to drop the implicit dependency on qtbase@5 (see https://codeberg.org/guix/guix/pulls/4386#issuecomment-8613333).

@hebasto hebasto added the Tests label Nov 23, 2025
@DrahtBot
Copy link
Contributor

DrahtBot commented Nov 23, 2025

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

Code Coverage & Benchmarks

For details see: https://corecheck.dev/bitcoin/bitcoin/pulls/33929.

Reviews

See the guideline for information on the review process.

Type Reviewers
ACK maflcko
Concept ACK bensig

If your review is incorrectly listed, please copy-paste <!--meta-tag:bot-skip--> into the comment that the bot should ignore.

Conflicts

No conflicts as of last run.

Copy link
Member

@maflcko maflcko left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would be nice to fix the space error, but not sure how easy that is.

review ACK c996515 🚆

Show signature

Signature:

untrusted comment: signature from minisign secret key on empty file; verify via: minisign -Vm "${path_to_any_empty_file}" -P RWTRmVTMeKV5noAMqVlsMugDDCyyTSbA3Re5AkUrhvLVln0tSaFWglOw -x "${path_to_this_whole_four_line_signature_blob}"
RUTRmVTMeKV5npGrKx1nqXCw5zeVHdtdYURB/KlyA/LMFgpNCs+SkW9a8N95d+U4AP1RJMi+krxU1A3Yux4bpwZNLvVBKy0wLgM=
trusted comment: review ACK c996515a6dcb158d2d3aa88efc499ffff49bea79 🚆
tIPkSDEjaEB97BQIv8sM9m414fm5sxxOHHqLWNWGBf6fsHuOwabixwP9VIGmJHyf+ljEBjgD2gIKL2G+psZMAA==


BOOST_AUTO_TEST_CASE(run_command)
{
const std::string test_executable = std::string(boost::unit_test::framework::master_test_suite().argv[0]).append(" --log_level=nothing --report_level=no --run_test=mock_process/");
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: This will fail with spaces in the dir:

$ ./a\ space/test_bitcoin -t system_tests
Running 1 test case...
unknown location(0): fatal error: in "system_tests/run_command": subprocess::CalledProcessError: execve failed: No such file or directory (2)
test/system_tests.cpp(29): last checkpoint

*** 1 failure is detected in the test module "Bitcoin Core Test Suite"

@bensig
Copy link
Contributor

bensig commented Jan 5, 2026

Concept ACK c996515

Nice approach using the test binary itself as a mock process.

nit: This will fail if the path contains spaces:

$ "./a space/test_bitcoin" --run_test=system_tests
  unknown location(0): fatal error: in "system_tests/run_command": subprocess::CalledProcessError: execve failed: No such file or directory (2)

The executable path in test_executable probably needs quoting.

@maflcko
Copy link
Member

maflcko commented Jan 6, 2026

nit: This will fail if the path contains spaces:

@bensig I've seen you minimally reword a prior review (here and in other pull requests), which makes you look like an LLM bot. Review is needed and welcome, but it does not help to simply repeat prior comments, such as the motivation from the pull request description, or from other reviews. It would be better to only mention new findings or new points of view.

@bensig
Copy link
Contributor

bensig commented Jan 6, 2026

nit: This will fail if the path contains spaces:

@bensig I've seen you minimally reword a prior review (here and in other pull requests), which makes you look like an LLM bot. Review is needed and welcome, but it does not help to simply repeat prior comments, such as the motivation from the pull request description, or from other reviews. It would be better to only mention new findings or new points of view.

You got it... I am still learning the ropes here. I did 21+ reviews this week so far... I was simply reiterating something that I verified.. I will minimize my ACKs to only include any verifications that I have done or new information. Thanks for the feedback.

@l0rinc
Copy link
Contributor

l0rinc commented Jan 6, 2026

We're usually more interested to know that you have verified the change yourself (e.g. recreated the change locally, ended up with same changes; ran all tests/benchmarks locally; searches for similar PRs or occurrences where the change applies, ran the fuzzer for 36 hours; did an IBD against this change; tested it on a big-endian/32-bit/raspberry-pi/windows, etc), i.e. that there's PoW behind the ack.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants