2025-09-08T09:46:18,897 Created temporary directory: /tmp/pip-build-tracker-k9v00j8m 2025-09-08T09:46:18,897 Initialized build tracking at /tmp/pip-build-tracker-k9v00j8m 2025-09-08T09:46:18,897 Created build tracker: /tmp/pip-build-tracker-k9v00j8m 2025-09-08T09:46:18,898 Entered build tracker: /tmp/pip-build-tracker-k9v00j8m 2025-09-08T09:46:18,898 Created temporary directory: /tmp/pip-wheel-ouxpuc7z 2025-09-08T09:46:18,901 Created temporary directory: /tmp/pip-ephem-wheel-cache-7zt37k_n 2025-09-08T09:46:18,959 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-08T09:46:18,961 2 location(s) to search for versions of perseuspy: 2025-09-08T09:46:18,961 * https://pypi.org/simple/perseuspy/ 2025-09-08T09:46:18,961 * https://www.piwheels.org/simple/perseuspy/ 2025-09-08T09:46:18,961 Fetching project page and analyzing links: https://pypi.org/simple/perseuspy/ 2025-09-08T09:46:18,962 Getting page https://pypi.org/simple/perseuspy/ 2025-09-08T09:46:18,963 Found index url https://pypi.org/simple/ 2025-09-08T09:46:19,108 Fetched page https://pypi.org/simple/perseuspy/ as application/vnd.pypi.simple.v1+json 2025-09-08T09:46:19,114 Found link https://files.pythonhosted.org/packages/19/9a/5215149bebaeebffadf58c35b31a237f2590655cd58a3f596e139f61f7f5/perseuspy-0.1.1.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.1.1 2025-09-08T09:46:19,114 Found link https://files.pythonhosted.org/packages/a4/8a/7d7ff5d43cb6921abdb19baa17b2c4ab38a82039072af9c6a657f6246a61/perseuspy-0.1.2.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.1.2 2025-09-08T09:46:19,115 Found link https://files.pythonhosted.org/packages/6b/ef/9a3eb1c12a0a19a4c3d305625650cc863724f4a3a816b41a0fb075c4194d/perseuspy-0.1.3.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.1.3 2025-09-08T09:46:19,115 Found link https://files.pythonhosted.org/packages/80/fb/1bfe85d0ee5661fa52c06de944408edd0eba4b1cad70f020e7f5ab709a9e/perseuspy-0.1.4.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.1.4 2025-09-08T09:46:19,116 Found link https://files.pythonhosted.org/packages/3e/5d/0b4d942ec38a310ea8b5a5024b6b0cd9d04a466547cccd99a66d4df33b97/perseuspy-0.2.0.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.2.0 2025-09-08T09:46:19,116 Found link https://files.pythonhosted.org/packages/0d/2c/b7a4fd71c38142f472074afa20ad07ac430a124444d6b7d5bcfc48d3924c/perseuspy-0.2.1.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.2.1 2025-09-08T09:46:19,117 Found link https://files.pythonhosted.org/packages/e5/6c/7d31ceb508a66aab6d0a2e7de40448c3bd20c1fdb77f17fceaf6441b2209/perseuspy-0.3.1.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.3.1 2025-09-08T09:46:19,117 Found link https://files.pythonhosted.org/packages/1c/37/5385b9f914a2e26d296023a4e8f406ec1a63024525253a29ef4086707fb2/perseuspy-0.3.2.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.3.2 2025-09-08T09:46:19,118 Found link https://files.pythonhosted.org/packages/03/82/996e6cf4e18c0f204907ccdefa096ca69d55d75d3e83c057fc4355f83628/perseuspy-0.3.3.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.3.3 2025-09-08T09:46:19,118 Found link https://files.pythonhosted.org/packages/fc/ec/2d6a5e03dcd78bf18622ac711db45f2165e5b22c4377be5ca387219f568b/perseuspy-0.3.4.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.3.4 2025-09-08T09:46:19,119 Found link https://files.pythonhosted.org/packages/27/59/7128305476c35650cb7e6ef68c3873ca7bf816a6a5d6cf2b583bb8dc31d9/perseuspy-0.3.5.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.3.5 2025-09-08T09:46:19,119 Found link https://files.pythonhosted.org/packages/13/35/5e45be31902cf4fcc04265ab672bf35d23ab758b6f6409f262c69149e481/perseuspy-0.3.6.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.3.6 2025-09-08T09:46:19,119 Found link https://files.pythonhosted.org/packages/22/f8/af900b4adcdaeee239be8cff64b18e96937aae29ddbdbeac0d9a095bb611/perseuspy-0.3.7.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.3.7 2025-09-08T09:46:19,120 Skipping link: No binaries permitted for perseuspy: https://files.pythonhosted.org/packages/1f/0a/b9e1ee3f61e0d45e6c3e465bb5208a89d577806d1455d3e32ea105e30f8b/perseuspy-0.3.8-py3-none-any.whl (from https://pypi.org/simple/perseuspy/) 2025-09-08T09:46:19,120 Found link https://files.pythonhosted.org/packages/c5/e9/c35be0a54af966b12b5a0fce6c515f6661fdb88c87a51f78a6ac0a4cd956/perseuspy-0.3.8.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.3.8 2025-09-08T09:46:19,121 Skipping link: No binaries permitted for perseuspy: https://files.pythonhosted.org/packages/cf/66/e2c5737567b6e7c369d1d75e2ba2fa03243e4dcea3fb46a31353fa734d7b/perseuspy-0.3.9-py3-none-any.whl (from https://pypi.org/simple/perseuspy/) 2025-09-08T09:46:19,121 Found link https://files.pythonhosted.org/packages/ef/08/d06a48ecaad76657df941f1f616fcbc37e8526e4c08092fe3ce3b1b09c05/perseuspy-0.3.9.linux-x86_64.tar.gz (from https://pypi.org/simple/perseuspy/), version: 0.3.9.linux-x86_64 2025-09-08T09:46:19,122 Fetching project page and analyzing links: https://www.piwheels.org/simple/perseuspy/ 2025-09-08T09:46:19,122 Getting page https://www.piwheels.org/simple/perseuspy/ 2025-09-08T09:46:19,124 Found index url https://www.piwheels.org/simple/ 2025-09-08T09:46:19,211 Fetched page https://www.piwheels.org/simple/perseuspy/ as text/html 2025-09-08T09:46:19,214 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.3.9-py3-none-any.whl#sha256=8929f196aa864fad2997d17d139f560a7ab8418c3c5ba11d74d3cee3df1e18b8 (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,215 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.3.8-py3-none-any.whl#sha256=81e93067704ecddf0ed6baccf6ca43e668ea6ccd2ea71da71c014449aa296841 (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,215 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.3.7-py3-none-any.whl#sha256=997f13ff234653b24fd06b5dc9ccdf35a198887da3bd0c50c916cd41534ef062 (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,215 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.3.6-py3-none-any.whl#sha256=1bccfa4d62f72da7d28c6da425cb0aa39b2c7a93bd0cc4770c169ee0ef0e1b6c (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,215 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.3.5-py3-none-any.whl#sha256=86dde619c17bddf97a9d2be8fdc9d35a55e592008f1193c2df5932e9c61f3bdf (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,215 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.3.4-py3-none-any.whl#sha256=e8ef6bd801b93ffe3daf40dee649954a143ee4119d753c9469b73b55120e0664 (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,215 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.3.3-py3-none-any.whl#sha256=d35b7dea549b3a56be7121f3533de6e2b1a9e749930cdb9ba5a96dcf68626564 (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,216 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.3.2-py3-none-any.whl#sha256=26501757982075f2acc3bae81e3b101523a24bfc12e9a7bc213a24a4b7e1d1e2 (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,216 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.3.1-py3-none-any.whl#sha256=9d930f3ce8cb28a8290aea9749f4f5f74af72691541054fe8066c7ec4dfe79d3 (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,216 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.2.1-py3-none-any.whl#sha256=d777fd1409ef3050c35fc23b15798b8adb5b984b6d0673071b8ebd9bec93261e (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,216 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.1.4-py3-none-any.whl#sha256=80fea0e9af27511902cfd6ba1baa74a7e47f8be9e458334f138aa371de9ede3b (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,216 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.1.3-py3-none-any.whl#sha256=fb0c77d2a863de61b1df42172e20830c72c98d140a176ef817dfce2aacc890c3 (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,216 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.1.2-py3-none-any.whl#sha256=1800674e9f051bbfd388fc22835d3558c07c4c624b37b57a061ff821e76b794c (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,216 Skipping link: No binaries permitted for perseuspy: https://archive1.piwheels.org/simple/perseuspy/perseuspy-0.1.1-py3-none-any.whl#sha256=7d220765247df558bfe289c533eeb52b9a257eb414fc8526f58a54f7cbedca73 (from https://www.piwheels.org/simple/perseuspy/) 2025-09-08T09:46:19,217 Skipping link: not a file: https://www.piwheels.org/simple/perseuspy/ 2025-09-08T09:46:19,217 Skipping link: not a file: https://pypi.org/simple/perseuspy/ 2025-09-08T09:46:19,241 Given no hashes to check 1 links for project 'perseuspy': discarding no candidates 2025-09-08T09:46:19,243 Collecting perseuspy==0.2.0 2025-09-08T09:46:19,244 Created temporary directory: /tmp/pip-unpack-__jnyr7f 2025-09-08T09:46:19,380 Downloading perseuspy-0.2.0.tar.gz (10 kB) 2025-09-08T09:46:19,412 Added perseuspy==0.2.0 from https://files.pythonhosted.org/packages/3e/5d/0b4d942ec38a310ea8b5a5024b6b0cd9d04a466547cccd99a66d4df33b97/perseuspy-0.2.0.tar.gz to build tracker '/tmp/pip-build-tracker-k9v00j8m' 2025-09-08T09:46:19,413 Running setup.py (path:/tmp/pip-wheel-ouxpuc7z/perseuspy_825790c9bab046f191a455bade6d97d1/setup.py) egg_info for package perseuspy 2025-09-08T09:46:19,414 Created temporary directory: /tmp/pip-pip-egg-info-u3x3mwtm 2025-09-08T09:46:19,414 Preparing metadata (setup.py): started 2025-09-08T09:46:19,415 Running command python setup.py egg_info 2025-09-08T09:46:19,926 Traceback (most recent call last): 2025-09-08T09:46:19,928 File "", line 2, in 2025-09-08T09:46:19,928 exec(compile(''' 2025-09-08T09:46:19,928 ~~~~^^^^^^^^^^^^ 2025-09-08T09:46:19,928 # This is -- a caller that pip uses to run setup.py 2025-09-08T09:46:19,928 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T09:46:19,928 ...<32 lines>... 2025-09-08T09:46:19,928 exec(compile(setup_py_code, filename, "exec")) 2025-09-08T09:46:19,928 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T09:46:19,928 ''' % ('/tmp/pip-wheel-ouxpuc7z/perseuspy_825790c9bab046f191a455bade6d97d1/setup.py',), "", "exec")) 2025-09-08T09:46:19,929 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T09:46:19,929 File "", line 35, in 2025-09-08T09:46:19,929 File "/tmp/pip-wheel-ouxpuc7z/perseuspy_825790c9bab046f191a455bade6d97d1/setup.py", line 3, in 2025-09-08T09:46:19,929 from perseuspy import __version__ 2025-09-08T09:46:19,929 File "/tmp/pip-wheel-ouxpuc7z/perseuspy_825790c9bab046f191a455bade6d97d1/perseuspy/__init__.py", line 9, in 2025-09-08T09:46:19,929 import perseuspy.dependent_peptides 2025-09-08T09:46:19,929 File "/tmp/pip-wheel-ouxpuc7z/perseuspy_825790c9bab046f191a455bade6d97d1/perseuspy/dependent_peptides.py", line 7, in 2025-09-08T09:46:19,929 import pandas as pd 2025-09-08T09:46:19,930 ModuleNotFoundError: No module named 'pandas' 2025-09-08T09:46:20,013 ERROR: python setup.py egg_info exited with 1 2025-09-08T09:46:20,024 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2025-09-08T09:46:20,024 exec(compile('"'"''"'"''"'"' 2025-09-08T09:46:20,024 # This is -- a caller that pip uses to run setup.py 2025-09-08T09:46:20,024 # 2025-09-08T09:46:20,024 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-08T09:46:20,024 # import from `distutils.core` to work with newer packaging standards. 2025-09-08T09:46:20,024 # - It provides a clear error message when setuptools is not installed. 2025-09-08T09:46:20,024 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-08T09:46:20,024 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-08T09:46:20,024 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-08T09:46:20,024 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-08T09:46:20,024 import os, sys, tokenize, traceback 2025-09-08T09:46:20,024 2025-09-08T09:46:20,024 try: 2025-09-08T09:46:20,024 import setuptools 2025-09-08T09:46:20,024 except ImportError: 2025-09-08T09:46:20,024 print( 2025-09-08T09:46:20,024 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-08T09:46:20,024 "the build environment with exception:", 2025-09-08T09:46:20,024 file=sys.stderr, 2025-09-08T09:46:20,024 ) 2025-09-08T09:46:20,024 traceback.print_exc() 2025-09-08T09:46:20,024 sys.exit(1) 2025-09-08T09:46:20,024 2025-09-08T09:46:20,024 __file__ = %r 2025-09-08T09:46:20,024 sys.argv[0] = __file__ 2025-09-08T09:46:20,024 2025-09-08T09:46:20,024 if os.path.exists(__file__): 2025-09-08T09:46:20,024 filename = __file__ 2025-09-08T09:46:20,024 with tokenize.open(__file__) as f: 2025-09-08T09:46:20,024 setup_py_code = f.read() 2025-09-08T09:46:20,024 else: 2025-09-08T09:46:20,024 filename = "" 2025-09-08T09:46:20,024 setup_py_code = "from setuptools import setup; setup()" 2025-09-08T09:46:20,024 2025-09-08T09:46:20,024 exec(compile(setup_py_code, filename, "exec")) 2025-09-08T09:46:20,024 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-ouxpuc7z/perseuspy_825790c9bab046f191a455bade6d97d1/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-u3x3mwtm[/] 2025-09-08T09:46:20,025 [bold magenta]cwd[/]: /tmp/pip-wheel-ouxpuc7z/perseuspy_825790c9bab046f191a455bade6d97d1/ 2025-09-08T09:46:20,025 Preparing metadata (setup.py): finished with status 'error' 2025-09-08T09:46:20,026 ERROR: metadata generation failed 2025-09-08T09:46:20,030 Exception information: 2025-09-08T09:46:20,030 Traceback (most recent call last): 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 63, in generate_metadata 2025-09-08T09:46:20,030 call_subprocess( 2025-09-08T09:46:20,030 ~~~~~~~~~~~~~~~^ 2025-09-08T09:46:20,030 args, 2025-09-08T09:46:20,030 ^^^^^ 2025-09-08T09:46:20,030 ...<2 lines>... 2025-09-08T09:46:20,030 spinner=spinner, 2025-09-08T09:46:20,030 ^^^^^^^^^^^^^^^^ 2025-09-08T09:46:20,030 ) 2025-09-08T09:46:20,030 ^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 209, in call_subprocess 2025-09-08T09:46:20,030 raise error 2025-09-08T09:46:20,030 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2025-09-08T09:46:20,030 2025-09-08T09:46:20,030 The above exception was the direct cause of the following exception: 2025-09-08T09:46:20,030 2025-09-08T09:46:20,030 Traceback (most recent call last): 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-08T09:46:20,030 status = _inner_run() 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-08T09:46:20,030 return self.run(options, args) 2025-09-08T09:46:20,030 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-08T09:46:20,030 return func(self, options, args) 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2025-09-08T09:46:20,030 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve 2025-09-08T09:46:20,030 result = self._result = resolver.resolve( 2025-09-08T09:46:20,030 ~~~~~~~~~~~~~~~~^ 2025-09-08T09:46:20,030 collected.requirements, max_rounds=limit_how_complex_resolution_can_be 2025-09-08T09:46:20,030 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T09:46:20,030 ) 2025-09-08T09:46:20,030 ^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve 2025-09-08T09:46:20,030 state = resolution.resolve(requirements, max_rounds=max_rounds) 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve 2025-09-08T09:46:20,030 self._add_to_criteria(self.state.criteria, r, parent=None) 2025-09-08T09:46:20,030 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria 2025-09-08T09:46:20,030 if not criterion.candidates: 2025-09-08T09:46:20,030 ^^^^^^^^^^^^^^^^^^^^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__ 2025-09-08T09:46:20,030 return bool(self._sequence) 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__ 2025-09-08T09:46:20,030 self._bool = any(self) 2025-09-08T09:46:20,030 ~~~^^^^^^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in 2025-09-08T09:46:20,030 return (c for c in iterator if id(c) not in self._incompatible_ids) 2025-09-08T09:46:20,030 ^^^^^^^^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 37, in _iter_built 2025-09-08T09:46:20,030 candidate = func() 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link 2025-09-08T09:46:20,030 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2025-09-08T09:46:20,030 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T09:46:20,030 link, template, name, version 2025-09-08T09:46:20,030 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T09:46:20,030 ) 2025-09-08T09:46:20,030 ^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link 2025-09-08T09:46:20,030 self._link_candidate_cache[link] = LinkCandidate( 2025-09-08T09:46:20,030 ~~~~~~~~~~~~~^ 2025-09-08T09:46:20,030 link, 2025-09-08T09:46:20,030 ^^^^^ 2025-09-08T09:46:20,030 ...<3 lines>... 2025-09-08T09:46:20,030 version=version, 2025-09-08T09:46:20,030 ^^^^^^^^^^^^^^^^ 2025-09-08T09:46:20,030 ) 2025-09-08T09:46:20,030 ^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 306, in __init__ 2025-09-08T09:46:20,030 super().__init__( 2025-09-08T09:46:20,030 ~~~~~~~~~~~~~~~~^ 2025-09-08T09:46:20,030 link=link, 2025-09-08T09:46:20,030 ^^^^^^^^^^ 2025-09-08T09:46:20,030 ...<4 lines>... 2025-09-08T09:46:20,030 version=version, 2025-09-08T09:46:20,030 ^^^^^^^^^^^^^^^^ 2025-09-08T09:46:20,030 ) 2025-09-08T09:46:20,030 ^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__ 2025-09-08T09:46:20,030 self.dist = self._prepare() 2025-09-08T09:46:20,030 ~~~~~~~~~~~~~^^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare 2025-09-08T09:46:20,030 dist = self._prepare_distribution() 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 317, in _prepare_distribution 2025-09-08T09:46:20,030 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2025-09-08T09:46:20,030 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in prepare_linked_requirement 2025-09-08T09:46:20,030 return self._prepare_linked_requirement(req, parallel_builds) 2025-09-08T09:46:20,030 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 647, in _prepare_linked_requirement 2025-09-08T09:46:20,030 dist = _get_prepared_distribution( 2025-09-08T09:46:20,030 req, 2025-09-08T09:46:20,030 ...<3 lines>... 2025-09-08T09:46:20,030 self.check_build_deps, 2025-09-08T09:46:20,030 ) 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2025-09-08T09:46:20,030 abstract_dist.prepare_distribution_metadata( 2025-09-08T09:46:20,030 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T09:46:20,030 finder, build_isolation, check_build_deps 2025-09-08T09:46:20,030 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T09:46:20,030 ) 2025-09-08T09:46:20,030 ^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 69, in prepare_distribution_metadata 2025-09-08T09:46:20,030 self.req.prepare_metadata() 2025-09-08T09:46:20,030 ~~~~~~~~~~~~~~~~~~~~~~~~~^^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 581, in prepare_metadata 2025-09-08T09:46:20,030 self.metadata_directory = generate_metadata_legacy( 2025-09-08T09:46:20,030 ~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T09:46:20,030 build_env=self.build_env, 2025-09-08T09:46:20,030 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T09:46:20,030 ...<3 lines>... 2025-09-08T09:46:20,030 details=details, 2025-09-08T09:46:20,030 ^^^^^^^^^^^^^^^^ 2025-09-08T09:46:20,030 ) 2025-09-08T09:46:20,030 ^ 2025-09-08T09:46:20,030 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 70, in generate_metadata 2025-09-08T09:46:20,030 raise MetadataGenerationFailed(package_details=details) from error 2025-09-08T09:46:20,030 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2025-09-08T09:46:20,052 Removed perseuspy==0.2.0 from https://files.pythonhosted.org/packages/3e/5d/0b4d942ec38a310ea8b5a5024b6b0cd9d04a466547cccd99a66d4df33b97/perseuspy-0.2.0.tar.gz from build tracker '/tmp/pip-build-tracker-k9v00j8m' 2025-09-08T09:46:20,053 Removed build tracker: '/tmp/pip-build-tracker-k9v00j8m'