ci: Put space and non-ASCII char in scratch dir #34614

pull maflcko wants to merge 3 commits into bitcoin:master from maflcko:2602-ci-space changing 6 files +25 βˆ’17
  1. maflcko commented at 1:48 pm on February 18, 2026: member

    It seems unlikely that many users have a space in their paths, but it seems a use-case worth enough to be tested by CI, so that it does not have to be done manually. Ref #33929 (review)

    So do that here, and also add a non-ASCII char while touching.

    Also, fix all tests that are broken and assume no space exists in paths.

  2. DrahtBot renamed this:
    ci: Put space and non-ASCII char in scratch dir
    ci: Put space and non-ASCII char in scratch dir
    on Feb 18, 2026
  3. DrahtBot added the label Tests on Feb 18, 2026
  4. DrahtBot commented at 1:48 pm on February 18, 2026: contributor

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

    Reviews

    See the guideline for information on the review process.

    Type Reviewers
    Concept ACK hebasto

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

  5. ci: Require $FILE_ENV
    The ci fails when $FILE_ENV is not set, so fail early with a clearer
    error message by setting nounset:
    
    > bash: FILE_ENV: unbound variable
    fab40cb3a1
  6. ci: Put space and non-ASCII char in scratch dir
    Also, add a missing quote around -DCMAKE_INSTALL_PREFIX to avoid word
    splitting.
    Otherwise, cmake would warn:
    
    ```
    + cmake -S /home/runner/work/_temp -B /home/runner/work/_temp/build -DCMAKE_COMPILE_WARNING_AS_ERROR=ON -DBUILD_BENCH=ON -DBUILD_FUZZ_BINARY=ON -DCMAKE_INSTALL_PREFIX=/home/runner/work/_temp/ci/scratch_ β‚ΏπŸ§ͺ_/out -Werror=dev --preset=dev-mode -DSANITIZERS=address,float-divide-by-zero,integer,undefined -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_FLAGS=-ftrivial-auto-var-init=pattern -DCMAKE_CXX_FLAGS=-ftrivial-auto-var-init=pattern -DCMAKE_EXE_LINKER_FLAGS=-fuse-ld=mold -DAPPEND_CXXFLAGS=-std=c++23 '-DAPPEND_CPPFLAGS=-DARENA_DEBUG -DDEBUG_LOCKORDER'
    CMake Warning:
      Ignoring extra path from command line:
       "β‚ΏπŸ§ͺ_/out"
    ```
    
    Also, allow spaces in the debug log file regex in a test.
    Otherwise, the test would fail:
    
    ```
    TestFramework (ERROR): Unexpected exception:
    Traceback (most recent call last):
      File "./test/functional/test_framework/test_framework.py", line 142, in main
        self.run_test()
        ~~~~~~~~~~~~~^^
      File "./test/functional/feature_logging.py", line 40, in run_test
        self.nodes[0].assert_start_raises_init_error([f"-debuglogfile={invalidname}"], exp_stderr, match=ErrorMatch.FULL_REGEX)
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "./test/functional/test_framework/test_node.py", line 743, in assert_start_raises_init_error
        self._raise_assertion_error(
        ~~~~~~~~~~~~~~~~~~~~~~~~~~~^
            'Expected message "{}" does not fully match stderr:\n"{}"'.format(expected_msg, stderr))
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      File "./test/functional/test_framework/test_node.py", line 229, in _raise_assertion_error
        raise AssertionError(self._node_msg(msg))
    AssertionError: [node 0] Expected message "Error: Could not open debug log file \S+$" does not fully match stderr:
    "Error: Could not open debug log file /Users/runner/work/bitcoin-core-with-ci/bitcoin-core-with-ci/repo_archive/ci/scratch_ β‚ΏπŸ§ͺ_/test_runner/test_runner_β‚Ώ_πŸƒ_20260218_095938/feature_logging_31/node0/regtest/foo/foo.log"
    ```
    
    Also, add missing quotes in a test. Otherwise, the test would fail:
    
    ```
    455/455 - feature_notifications.py failed, Duration: 402 s
    stdout:
    TestFramework (INFO): Initializing test directory /home/runner/work/_temp/ci/scratch_ β‚ΏπŸ§ͺ_/test_runner/test_runner_β‚Ώ_πŸƒ_20260218_113529/feature_notifications_128
    TestFramework (INFO): test -blocknotify
    TestFramework.utils (ERROR): wait_until() failed. Predicate: ''''
            self.wait_until(lambda: len(os.listdir(self.blocknotify_dir)) == block_count, timeout=10)
    '''
    faf3b17938
  7. maflcko force-pushed on Feb 19, 2026
  8. maflcko force-pushed on Feb 19, 2026
  9. DrahtBot added the label CI failed on Feb 19, 2026
  10. maflcko force-pushed on Feb 19, 2026
  11. maflcko force-pushed on Feb 19, 2026
  12. maflcko force-pushed on Feb 19, 2026
  13. maflcko force-pushed on Feb 19, 2026
  14. ci: Use path with spaces on windows as well fab390aa0e
  15. maflcko force-pushed on Feb 19, 2026
  16. DrahtBot removed the label CI failed on Feb 19, 2026
  17. hebasto commented at 3:31 pm on February 19, 2026: member
    Concept ACK.
  18. maflcko commented at 3:33 pm on February 19, 2026: member
    Sorry for the force pushes, but building on Windows with a space in the path is not possible, it seems, so I’ve just put a space in the functional test runner temp dir.
  19. hebasto commented at 4:26 pm on February 19, 2026: member

    … but building on Windows with a space in the path is not possible, it seems…

    True, though that appears to be a vcpkg-related issue rather than one on our end :)

    A workaround is already documented here.

    Feel free to grab changes from https://github.com/hebasto/bitcoin/commit/90470acdb9f3a8f27ab669824c37b1db816ca1dd, which is based on the previous iteration of this PR.

    UPDATE

    From the CI:

    0rpc_signer.py                                                                    | βœ– Failed  | 1 s
    1wallet_signer.py                                                                 | βœ– Failed  | 1 s
    

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2026-02-22 18:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me