Skip to content

Build failure: conan #491011

@jonasherzfeld

Description

@jonasherzfeld

Nixpkgs version

  • Stable (25.11)

Steps to reproduce

conan package is not building under aarch64-linux and x86_64-linux while aarch64-darwin works fine.

I setup a minimal test for the build failure here https://github.com/jonasherzfeld/nix-conan-test-issue

see failed job https://github.com/jonasherzfeld/nix-conan-test-issue/actions/runs/22061228202/job/63741700387

Can Hydra reproduce this build failure?

Yes, Hydra can reproduce this build failure.

Link to Hydra build job

https://hydra.nixos.org/build/320918253

Relevant log output

======== Installing packages ========

-------- Installing package pip_hello_test/0.1 (1 of 1) --------
pip_hello_test/0.1: Building from source
pip_hello_test/0.1: Package pip_hello_test/0.1:da39a3ee5e6b4b0d3255bfef95601890afd80709
pip_hello_test/0.1: Copying sources to build folder
pip_hello_test/0.1: Building your package in /build/tmp_kw_u4plconans/pathwithoutspaces/.conan2/p/b/pip_h40a7049aa1430/b
pip_hello_test/0.1: Generating aggregated env files
pip_hello_test/0.1: Generated aggregated env files: ['conanbuild.sh', 'conanrun.sh']
pip_hello_test/0.1: Package 'da39a3ee5e6b4b0d3255bfef95601890afd80709' built
pip_hello_test/0.1: Build folder /build/tmp_kw_u4plconans/pathwithoutspaces/.conan2/p/b/pip_h40a7049aa1430/b/build
pip_hello_test/0.1: Generating the package
pip_hello_test/0.1: Packaging in folder /build/tmp_kw_u4plconans/pathwithoutspaces/.conan2/p/b/pip_h40a7049aa1430/p
pip_hello_test/0.1: package(): WARN: No files in this package!
pip_hello_test/0.1: Created package revision 0ba8627bd47edc3a501e8f0eb9a79e5e
pip_hello_test/0.1: Package 'da39a3ee5e6b4b0d3255bfef95601890afd80709' created
pip_hello_test/0.1: Full package reference: pip_hello_test/0.1#b1280b23d09958e480f318444053d3ce:da39a3ee5e6b4b0d3255bfef95601890afd80709#0ba8627bd47edc3a501e8f0eb9a79e5e
pip_hello_test/0.1: Package folder /build/tmp_kw_u4plconans/pathwithoutspaces/.conan2/p/b/pip_h40a7049aa1430/p
pip_hello_test/0.1: Calling finalize()
pip_hello_test/0.1: RUN: /build/tmp_kw_u4plconans/pathwithoutspaces/.conan2/p/b/pip_h40a7049aa1430/f/pip_venv_pip_hello_test/bin/python -m pip install --disable-pip-version-check '/build/tmp3v2b6orlconans/path with spaces'
Processing /build/tmp3v2b6orlconans/path with spaces
  Installing build dependencies: started
  Installing build dependencies: finished with status 'error'
WARNING: The directory '/homeless-shelter/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag.
  error: subprocess-exited-with-error
  
  × installing build dependencies did not run successfully.
  │ exit code: 1
  ╰─> [8 lines of output]
      WARNING: The directory '/homeless-shelter/.cache/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag.
      WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0xfffff51a1550>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/setuptools/
      WARNING: Retrying (Retry(total=3, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0xfffff53520d0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/setuptools/
      WARNING: Retrying (Retry(total=2, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0xfffff5352350>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/setuptools/
      WARNING: Retrying (Retry(total=1, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0xfffff53525d0>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/setuptools/
      WARNING: Retrying (Retry(total=0, connect=None, read=None, redirect=None, status=None)) after connection broken by 'NewConnectionError('<pip._vendor.urllib3.connection.HTTPSConnection object at 0xfffff5352850>: Failed to establish a new connection: [Errno -3] Temporary failure in name resolution')': /simple/setuptools/
      ERROR: Could not find a version that satisfies the requirement setuptools>=40.8.0 (from versions: none)
      ERROR: No matching distribution found for setuptools>=40.8.0
      [end of output]
  
  note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed to build 'file:///build/tmp3v2b6orlconans/path%20with%20spaces' when installing build dependencies

ERROR: pip_hello_test/0.1: Error in finalize() method, line 19
        PipEnv(self, self.package_folder).install(["/build/tmp3v2b6orlconans/path with spaces"])
        ConanException: Error 1 while executing


================================== Traceback: ==================================
Traceback (most recent call last):
  File "/build/source/conan/internal/errors.py", line 35, in conanfile_exception_formatter
    yield
  File "/build/source/conan/internal/graph/installer.py", line 477, in _call_finalize_method
    conanfile.finalize()
    ~~~~~~~~~~~~~~~~~~^^
  File "/build/tmp_kw_u4plconans/pathwithoutspaces/.conan2/p/pip_h9bf782c8f369a/e/conanfile.py", line 19, in finalize
    PipEnv(self, self.package_folder).install(["/build/tmp3v2b6orlconans/path with spaces"])
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/build/source/conan/tools/system/pip_manager.py", line 43, in install
    return self._conanfile.run(command)
           ~~~~~~~~~~~~~~~~~~~^^^^^^^^^
  File "/build/source/conan/internal/model/conan_file.py", line 396, in run
    raise ConanException("Error %d while executing" % retcode)
conan.errors.ConanException: Error 1 while executing

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/build/source/conan/test/utils/tools.py", line 555, in _run_cli
    command.run(args)
    ~~~~~~~~~~~^^^^^^
  File "/build/source/conan/cli/cli.py", line 193, in run
    command.run(self._conan_api, args[0][1:])
    ~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/build/source/conan/cli/command.py", line 183, in run
    info = self._method(conan_api, parser, *args)
  File "/build/source/conan/cli/commands/create.py", line 101, in create
    conan_api.install.install_binaries(deps_graph=deps_graph, remotes=remotes)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/build/source/conan/api/subapi/install.py", line 30, in install_binaries
    installer.install(deps_graph, remotes, install_order=install_order)
    ~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/build/source/conan/internal/graph/installer.py", line 259, in install
    self._handle_package(package, install_reference, handled_count, package_count)
    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/build/source/conan/internal/graph/installer.py", line 344, in _handle_package
    self._call_finalize_method(conanfile, package_layout.finalize())
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/build/source/conan/internal/graph/installer.py", line 474, in _call_finalize_method
    with conanfile_exception_formatter(conanfile, "finalize"):
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/nix/store/jzdlbnr23z8c05w0ss4ck91cwrgs48x0-python3-3.13.11/lib/python3.13/contextlib.py", line 162, in __exit__
    self.gen.throw(value)
    ~~~~~~~~~~~~~~^^^^^^^
  File "/build/source/conan/internal/errors.py", line 45, in conanfile_exception_formatter
    raise ConanException(m)
conan.errors.ConanException: pip_hello_test/0.1: Error in finalize() method, line 19
        PipEnv(self, self.package_folder).install(["/build/tmp3v2b6orlconans/path with spaces"])
        ConanException: Error 1 while executing

___________ TestToolCopy.test_linked_folder_copy_from_linked_folder ____________
[gw1] linux -- Python 3.13.11 /nix/store/jzdlbnr23z8c05w0ss4ck91cwrgs48x0-python3-3.13.11/bin/python3.13

self = <test.unittests.tools.files.test_tool_copy.TestToolCopy object at 0xffffee370170>

    @pytest.mark.skipif(platform.system() == "Windows", reason="Requires Symlinks")
    def test_linked_folder_copy_from_linked_folder(self):
        # https://github.com/conan-io/conan/issues/5114
        folder1 = temp_folder(path_with_spaces=False)
        sub_src = os.path.join(folder1, "sub/src")
    
        src = os.path.join(folder1, "src")
        src_dir = os.path.join(folder1, "src/dir")
        src_dir_link = os.path.join(folder1, "src/dir_link")
        src_dir_file = os.path.join(src_dir, "file.txt")
    
        dst = os.path.join(folder1, "dst")
        dst_dir = os.path.join(folder1, "dst/dir")
        dst_dir_link = os.path.join(folder1, "dst/dir_link")
        dst_dir_file = os.path.join(dst_dir, "file.txt")
    
        os.makedirs(dst)
        os.makedirs(sub_src)
        # input src folder should be a symlink
        os.symlink(sub_src, src)
        # folder, file and folder link to copy
        os.mkdir(src_dir)
        save(src_dir_file, "file")
        os.symlink(src_dir, src_dir_link)
    
        copied = copy(None, "dir/*", src, dst)
    
        # The pattern "dir/*" doesn't match to the symlink file "dir_link" so it is not copied
        assert copied == [dst_dir_file]
        assert not os.path.exists(dst_dir_link)
    
        # This pattern "dir*" match both the symlink "dir_link" and the folder "dir/"
        copied = copy(None, "dir*", src, dst)
    
        assert copied == [dst_dir_file, dst_dir_link]
>       assert os.listdir(dst) == os.listdir(src)
E       AssertionError: assert ['dir', 'dir_link'] == ['dir_link', 'dir']
E         
E         At index 0 diff: 'dir' != 'dir_link'
E         Use -v to get more diff

test/unittests/tools/files/test_tool_copy.py:145: AssertionError
=========================== short test summary info ============================
FAILED test/functional/tools/system/pip_manager_test.py::test_create_pip_manager - Failed: /build/source/test/functional/tools/system/pip_manager_test.py:111
FAILED test/unittests/tools/files/test_tool_copy.py::TestToolCopy::test_linked_folder_copy_from_linked_folder - AssertionError: assert ['dir', 'dir_link'] == ['dir_link', 'dir']
====== 2 failed, 4519 passed, 123 skipped, 1 xpassed in 241.29s (0:04:01) ======

Additional context

No response

System metadata

  • system: "x86_64-linux"
  • host os: Linux 6.14.0-1017-azure, Ubuntu, 24.04.3 LTS (Noble Numbat), nobuild
  • multi-user?: no
  • sandbox: yes
  • version: nix-env (Nix) 2.33.0
  • nixpkgs: not found

Notify maintainers

@HaoZeke


Note for maintainers: Please tag this issue in your pull request description. (i.e. Resolves #ISSUE.)

I assert that this issue is relevant for Nixpkgs

Is this issue important to you?

Add a 👍 reaction to issues you find important.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions