2025-09-09T21:58:29,852 Created temporary directory: /tmp/pip-build-tracker-3qlsmcxq 2025-09-09T21:58:29,852 Initialized build tracking at /tmp/pip-build-tracker-3qlsmcxq 2025-09-09T21:58:29,853 Created build tracker: /tmp/pip-build-tracker-3qlsmcxq 2025-09-09T21:58:29,853 Entered build tracker: /tmp/pip-build-tracker-3qlsmcxq 2025-09-09T21:58:29,853 Created temporary directory: /tmp/pip-wheel-_ffsjqac 2025-09-09T21:58:29,856 Created temporary directory: /tmp/pip-ephem-wheel-cache-59lqhpfp 2025-09-09T21:58:29,914 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-09T21:58:29,916 2 location(s) to search for versions of wemulate-api: 2025-09-09T21:58:29,916 * https://pypi.org/simple/wemulate-api/ 2025-09-09T21:58:29,916 * https://www.piwheels.org/simple/wemulate-api/ 2025-09-09T21:58:29,916 Fetching project page and analyzing links: https://pypi.org/simple/wemulate-api/ 2025-09-09T21:58:29,917 Getting page https://pypi.org/simple/wemulate-api/ 2025-09-09T21:58:29,918 Found index url https://pypi.org/simple/ 2025-09-09T21:58:30,075 Fetched page https://pypi.org/simple/wemulate-api/ as application/vnd.pypi.simple.v1+json 2025-09-09T21:58:30,080 Found link https://files.pythonhosted.org/packages/ce/a9/398519249169f78df6c5c70af7ea3a3a9ffb264f676597f8f0c0220dbd6b/wemulate-api-0.0.1.tar.gz (from https://pypi.org/simple/wemulate-api/), version: 0.0.1 2025-09-09T21:58:30,081 Skipping link: No binaries permitted for wemulate-api: https://files.pythonhosted.org/packages/95/4d/3e6b79ed489d0115cd7398ee4d6b3c07eeef7795242ae1ee66743b60968c/wemulate_api-0.0.1-py3-none-any.whl (from https://pypi.org/simple/wemulate-api/) 2025-09-09T21:58:30,081 Found link https://files.pythonhosted.org/packages/a6/16/3b1a4184874b7ab1d7e40dd6c7563bcb5e2bc35181ec6a3290929c5c98a2/wemulate-api-0.0.1.post1.tar.gz (from https://pypi.org/simple/wemulate-api/), version: 0.0.1.post1 2025-09-09T21:58:30,081 Skipping link: No binaries permitted for wemulate-api: https://files.pythonhosted.org/packages/fd/29/a27944819e7aec6bbd1bcbc9da8cf92b14ef7a7d3e6ab3ab95a65db7c388/wemulate_api-0.0.1.post1-py3-none-any.whl (from https://pypi.org/simple/wemulate-api/) 2025-09-09T21:58:30,082 Found link https://files.pythonhosted.org/packages/55/d3/65ac4fc33feee653e6e539bfe22a4a3217fa478470ebc251d0a391ed0bc5/wemulate-api-0.0.1.post2.tar.gz (from https://pypi.org/simple/wemulate-api/), version: 0.0.1.post2 2025-09-09T21:58:30,082 Skipping link: No binaries permitted for wemulate-api: https://files.pythonhosted.org/packages/8b/ef/7fb431a834d0eba95cd178327c18f270b555e0b956fc3e90b84cad3c87b9/wemulate_api-0.0.1.post2-py3-none-any.whl (from https://pypi.org/simple/wemulate-api/) 2025-09-09T21:58:30,082 Found link https://files.pythonhosted.org/packages/95/d5/1f49b5ba5b77991a1eebe4f6350a935371c0b845c3754b6e136201d491ac/wemulate-api-0.0.1.post3.tar.gz (from https://pypi.org/simple/wemulate-api/), version: 0.0.1.post3 2025-09-09T21:58:30,083 Skipping link: No binaries permitted for wemulate-api: https://files.pythonhosted.org/packages/7d/f2/d6177dc802def17845674e2bfefce1e7a696c5c85a7041cec53f50d23f70/wemulate_api-0.0.1.post3-py3-none-any.whl (from https://pypi.org/simple/wemulate-api/) 2025-09-09T21:58:30,083 Found link https://files.pythonhosted.org/packages/80/f9/f1b99d1b0fa36bf794bb4bf2f72f889dd18ef41319de0cb16f4c4daf6be5/wemulate-api-0.0.1.post4.tar.gz (from https://pypi.org/simple/wemulate-api/), version: 0.0.1.post4 2025-09-09T21:58:30,083 Skipping link: No binaries permitted for wemulate-api: https://files.pythonhosted.org/packages/71/d4/57e67c41925034a4aebaa3068421a198d917c16fbe1888e296086d267215/wemulate_api-0.0.1.post4-py3-none-any.whl (from https://pypi.org/simple/wemulate-api/) 2025-09-09T21:58:30,083 Found link https://files.pythonhosted.org/packages/6d/23/340d9df5414e6a286e06597a3fd9f4f37e3df1986e1a8191c5dd01be8873/wemulate-api-0.0.1.post5.tar.gz (from https://pypi.org/simple/wemulate-api/), version: 0.0.1.post5 2025-09-09T21:58:30,084 Skipping link: No binaries permitted for wemulate-api: https://files.pythonhosted.org/packages/78/78/bf83be0989cbbd4d91277cf55c59ec62b43b40523429b74120262c1d1116/wemulate_api-0.0.1.post5-py3-none-any.whl (from https://pypi.org/simple/wemulate-api/) 2025-09-09T21:58:30,084 Found link https://files.pythonhosted.org/packages/14/e4/9746696ff20f8deb6aef83502df977828c36a487291ce522ef698937fc27/wemulate-api-0.0.1.post6.tar.gz (from https://pypi.org/simple/wemulate-api/), version: 0.0.1.post6 2025-09-09T21:58:30,084 Skipping link: No binaries permitted for wemulate-api: https://files.pythonhosted.org/packages/c2/4e/1413a28f68e6346f4109813218405289743da53724c95be5e8f07a0d39e0/wemulate_api-0.0.1.post6-py3-none-any.whl (from https://pypi.org/simple/wemulate-api/) 2025-09-09T21:58:30,084 Found link https://files.pythonhosted.org/packages/79/07/81aa12a51810e96755d7f9f52a05831843ae5dd79183b3544723a3ef09c7/wemulate-api-0.0.1.post7.tar.gz (from https://pypi.org/simple/wemulate-api/), version: 0.0.1.post7 2025-09-09T21:58:30,085 Skipping link: No binaries permitted for wemulate-api: https://files.pythonhosted.org/packages/07/64/a0c9dd86d25e7c8ca2503918bad63000f81f5b1151e21a34edaf23a7b305/wemulate_api-0.0.1.post7-py3-none-any.whl (from https://pypi.org/simple/wemulate-api/) 2025-09-09T21:58:30,086 Found link https://files.pythonhosted.org/packages/20/23/a5cebdfbec715b61184d9f2586bf65e567806b2be77985b42d668503ecf3/wemulate-api-2.0.0.tar.gz (from https://pypi.org/simple/wemulate-api/) (requires-python:>=3.8,<4.0), version: 2.0.0 2025-09-09T21:58:30,086 Skipping link: No binaries permitted for wemulate-api: https://files.pythonhosted.org/packages/a7/0d/7d046e61e2b452c08c2effa76b74ae2a2cd066c661dec8fa18585c3d1b99/wemulate_api-2.0.0-py3-none-any.whl (from https://pypi.org/simple/wemulate-api/) (requires-python:>=3.8,<4.0) 2025-09-09T21:58:30,086 Skipping link: No binaries permitted for wemulate-api: https://files.pythonhosted.org/packages/c0/9c/da09fbce107e77f75029144f3058518b32e9803278f77dc0b768e96383a0/wemulate_api-2.0.1-py3-none-any.whl (from https://pypi.org/simple/wemulate-api/) (requires-python:>=3.8,<4.0) 2025-09-09T21:58:30,087 Found link https://files.pythonhosted.org/packages/7b/1b/7fe3b1b9571d71e3eb0d25dcfa6a6cb470063ad9b1e911bd9dcead83c67a/wemulate_api-2.0.1.tar.gz (from https://pypi.org/simple/wemulate-api/) (requires-python:>=3.8,<4.0), version: 2.0.1 2025-09-09T21:58:30,087 Skipping link: No binaries permitted for wemulate-api: https://files.pythonhosted.org/packages/e9/25/d6ae6b84abd69782bf49f1068499606d7f939b27ff44c94c0c426d668d65/wemulate_api-2.0.2-py3-none-any.whl (from https://pypi.org/simple/wemulate-api/) (requires-python:>=3.8,<4.0) 2025-09-09T21:58:30,087 Found link https://files.pythonhosted.org/packages/ee/cc/ed602a464898ac96e7b54ec97ead188f186bc362db37a3ab40d5a87c3c4f/wemulate_api-2.0.2.tar.gz (from https://pypi.org/simple/wemulate-api/) (requires-python:>=3.8,<4.0), version: 2.0.2 2025-09-09T21:58:30,088 Fetching project page and analyzing links: https://www.piwheels.org/simple/wemulate-api/ 2025-09-09T21:58:30,088 Getting page https://www.piwheels.org/simple/wemulate-api/ 2025-09-09T21:58:30,089 Found index url https://www.piwheels.org/simple/ 2025-09-09T21:58:30,192 Fetched page https://www.piwheels.org/simple/wemulate-api/ as text/html 2025-09-09T21:58:30,194 Skipping link: No binaries permitted for wemulate-api: https://archive1.piwheels.org/simple/wemulate-api/wemulate_api-2.0.2-py3-none-any.whl#sha256=cceb4199dfe1500cbf68a865367cd609e7f08d907d689c97d58812a134eca1c8 (from https://www.piwheels.org/simple/wemulate-api/) (requires-python:>=3.8,<4.0) 2025-09-09T21:58:30,194 Skipping link: No binaries permitted for wemulate-api: https://archive1.piwheels.org/simple/wemulate-api/wemulate_api-2.0.1-py3-none-any.whl#sha256=868491ff6396af99029001c2cbd62dc7467cee7bfe56ed257bd7684ca91e44cd (from https://www.piwheels.org/simple/wemulate-api/) (requires-python:>=3.8,<4.0) 2025-09-09T21:58:30,194 Skipping link: No binaries permitted for wemulate-api: https://archive1.piwheels.org/simple/wemulate-api/wemulate_api-2.0.0-py3-none-any.whl#sha256=9dcfc589489621e7bc4bc75449b641c12582893ad4dca0ff85b65e30e2963f5a (from https://www.piwheels.org/simple/wemulate-api/) (requires-python:>=3.8,<4.0) 2025-09-09T21:58:30,194 Skipping link: not a file: https://www.piwheels.org/simple/wemulate-api/ 2025-09-09T21:58:30,194 Skipping link: not a file: https://pypi.org/simple/wemulate-api/ 2025-09-09T21:58:30,224 Given no hashes to check 1 links for project 'wemulate-api': discarding no candidates 2025-09-09T21:58:30,225 Collecting wemulate-api==0.0.1 2025-09-09T21:58:30,226 Created temporary directory: /tmp/pip-unpack-vku5pm14 2025-09-09T21:58:30,534 Downloading wemulate-api-0.0.1.tar.gz (2.4 kB) 2025-09-09T21:58:30,563 Added wemulate-api==0.0.1 from https://files.pythonhosted.org/packages/ce/a9/398519249169f78df6c5c70af7ea3a3a9ffb264f676597f8f0c0220dbd6b/wemulate-api-0.0.1.tar.gz to build tracker '/tmp/pip-build-tracker-3qlsmcxq' 2025-09-09T21:58:30,564 Running setup.py (path:/tmp/pip-wheel-_ffsjqac/wemulate-api_5c3c41c816b541038941d64e70ee2fe0/setup.py) egg_info for package wemulate-api 2025-09-09T21:58:30,564 Created temporary directory: /tmp/pip-pip-egg-info-xao871ug 2025-09-09T21:58:30,565 Preparing metadata (setup.py): started 2025-09-09T21:58:30,565 Running command python setup.py egg_info 2025-09-09T21:58:32,095 Traceback (most recent call last): 2025-09-09T21:58:32,095 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_file.py", line 587, in get_file_content 2025-09-09T21:58:32,096 with open(url, "rb") as f: 2025-09-09T21:58:32,096 ~~~~^^^^^^^^^^^ 2025-09-09T21:58:32,096 FileNotFoundError: [Errno 2] No such file or directory: 'requirements.txt' 2025-09-09T21:58:32,096 During handling of the above exception, another exception occurred: 2025-09-09T21:58:32,096 Traceback (most recent call last): 2025-09-09T21:58:32,099 File "", line 2, in 2025-09-09T21:58:32,099 exec(compile(''' 2025-09-09T21:58:32,099 ~~~~^^^^^^^^^^^^ 2025-09-09T21:58:32,099 # This is -- a caller that pip uses to run setup.py 2025-09-09T21:58:32,099 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,099 ...<32 lines>... 2025-09-09T21:58:32,099 exec(compile(setup_py_code, filename, "exec")) 2025-09-09T21:58:32,099 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,100 ''' % ('/tmp/pip-wheel-_ffsjqac/wemulate-api_5c3c41c816b541038941d64e70ee2fe0/setup.py',), "", "exec")) 2025-09-09T21:58:32,100 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,100 File "", line 35, in 2025-09-09T21:58:32,100 File "/tmp/pip-wheel-_ffsjqac/wemulate-api_5c3c41c816b541038941d64e70ee2fe0/setup.py", line 14, in 2025-09-09T21:58:32,100 for item in requirements: 2025-09-09T21:58:32,100 ^^^^^^^^^^^^ 2025-09-09T21:58:32,100 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_file.py", line 168, in parse_requirements 2025-09-09T21:58:32,100 for parsed_line in parser.parse(filename, constraint): 2025-09-09T21:58:32,101 ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,101 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_file.py", line 349, in parse 2025-09-09T21:58:32,101 yield from self._parse_and_recurse( 2025-09-09T21:58:32,101 filename, constraint, [{os.path.abspath(filename): None}] 2025-09-09T21:58:32,101 ) 2025-09-09T21:58:32,101 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_file.py", line 359, in _parse_and_recurse 2025-09-09T21:58:32,101 for line in self._parse_file(filename, constraint): 2025-09-09T21:58:32,102 ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,102 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_file.py", line 408, in _parse_file 2025-09-09T21:58:32,102 _, content = get_file_content(filename, self._session) 2025-09-09T21:58:32,102 ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,102 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_file.py", line 590, in get_file_content 2025-09-09T21:58:32,102 raise InstallationError(f"Could not open requirements file: {exc}") 2025-09-09T21:58:32,103 pip._internal.exceptions.InstallationError: Could not open requirements file: [Errno 2] No such file or directory: 'requirements.txt' 2025-09-09T21:58:32,279 ERROR: python setup.py egg_info exited with 1 2025-09-09T21:58:32,291 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2025-09-09T21:58:32,291 exec(compile('"'"''"'"''"'"' 2025-09-09T21:58:32,291 # This is -- a caller that pip uses to run setup.py 2025-09-09T21:58:32,291 # 2025-09-09T21:58:32,291 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-09T21:58:32,291 # import from `distutils.core` to work with newer packaging standards. 2025-09-09T21:58:32,291 # - It provides a clear error message when setuptools is not installed. 2025-09-09T21:58:32,291 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-09T21:58:32,291 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-09T21:58:32,291 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-09T21:58:32,291 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-09T21:58:32,291 import os, sys, tokenize, traceback 2025-09-09T21:58:32,291 2025-09-09T21:58:32,291 try: 2025-09-09T21:58:32,291 import setuptools 2025-09-09T21:58:32,291 except ImportError: 2025-09-09T21:58:32,291 print( 2025-09-09T21:58:32,291 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-09T21:58:32,291 "the build environment with exception:", 2025-09-09T21:58:32,291 file=sys.stderr, 2025-09-09T21:58:32,291 ) 2025-09-09T21:58:32,291 traceback.print_exc() 2025-09-09T21:58:32,291 sys.exit(1) 2025-09-09T21:58:32,291 2025-09-09T21:58:32,291 __file__ = %r 2025-09-09T21:58:32,291 sys.argv[0] = __file__ 2025-09-09T21:58:32,291 2025-09-09T21:58:32,291 if os.path.exists(__file__): 2025-09-09T21:58:32,291 filename = __file__ 2025-09-09T21:58:32,291 with tokenize.open(__file__) as f: 2025-09-09T21:58:32,291 setup_py_code = f.read() 2025-09-09T21:58:32,291 else: 2025-09-09T21:58:32,291 filename = "" 2025-09-09T21:58:32,291 setup_py_code = "from setuptools import setup; setup()" 2025-09-09T21:58:32,291 2025-09-09T21:58:32,291 exec(compile(setup_py_code, filename, "exec")) 2025-09-09T21:58:32,291 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-_ffsjqac/wemulate-api_5c3c41c816b541038941d64e70ee2fe0/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-xao871ug[/] 2025-09-09T21:58:32,291 [bold magenta]cwd[/]: /tmp/pip-wheel-_ffsjqac/wemulate-api_5c3c41c816b541038941d64e70ee2fe0/ 2025-09-09T21:58:32,291 Preparing metadata (setup.py): finished with status 'error' 2025-09-09T21:58:32,292 ERROR: metadata generation failed 2025-09-09T21:58:32,298 Exception information: 2025-09-09T21:58:32,298 Traceback (most recent call last): 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 63, in generate_metadata 2025-09-09T21:58:32,298 call_subprocess( 2025-09-09T21:58:32,298 ~~~~~~~~~~~~~~~^ 2025-09-09T21:58:32,298 args, 2025-09-09T21:58:32,298 ^^^^^ 2025-09-09T21:58:32,298 ...<2 lines>... 2025-09-09T21:58:32,298 spinner=spinner, 2025-09-09T21:58:32,298 ^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,298 ) 2025-09-09T21:58:32,298 ^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 209, in call_subprocess 2025-09-09T21:58:32,298 raise error 2025-09-09T21:58:32,298 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2025-09-09T21:58:32,298 2025-09-09T21:58:32,298 The above exception was the direct cause of the following exception: 2025-09-09T21:58:32,298 2025-09-09T21:58:32,298 Traceback (most recent call last): 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-09T21:58:32,298 status = _inner_run() 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-09T21:58:32,298 return self.run(options, args) 2025-09-09T21:58:32,298 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-09T21:58:32,298 return func(self, options, args) 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2025-09-09T21:58:32,298 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve 2025-09-09T21:58:32,298 result = self._result = resolver.resolve( 2025-09-09T21:58:32,298 ~~~~~~~~~~~~~~~~^ 2025-09-09T21:58:32,298 collected.requirements, max_rounds=limit_how_complex_resolution_can_be 2025-09-09T21:58:32,298 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,298 ) 2025-09-09T21:58:32,298 ^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve 2025-09-09T21:58:32,298 state = resolution.resolve(requirements, max_rounds=max_rounds) 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve 2025-09-09T21:58:32,298 self._add_to_criteria(self.state.criteria, r, parent=None) 2025-09-09T21:58:32,298 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria 2025-09-09T21:58:32,298 if not criterion.candidates: 2025-09-09T21:58:32,298 ^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__ 2025-09-09T21:58:32,298 return bool(self._sequence) 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__ 2025-09-09T21:58:32,298 self._bool = any(self) 2025-09-09T21:58:32,298 ~~~^^^^^^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in 2025-09-09T21:58:32,298 return (c for c in iterator if id(c) not in self._incompatible_ids) 2025-09-09T21:58:32,298 ^^^^^^^^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 37, in _iter_built 2025-09-09T21:58:32,298 candidate = func() 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link 2025-09-09T21:58:32,298 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2025-09-09T21:58:32,298 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-09T21:58:32,298 link, template, name, version 2025-09-09T21:58:32,298 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,298 ) 2025-09-09T21:58:32,298 ^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link 2025-09-09T21:58:32,298 self._link_candidate_cache[link] = LinkCandidate( 2025-09-09T21:58:32,298 ~~~~~~~~~~~~~^ 2025-09-09T21:58:32,298 link, 2025-09-09T21:58:32,298 ^^^^^ 2025-09-09T21:58:32,298 ...<3 lines>... 2025-09-09T21:58:32,298 version=version, 2025-09-09T21:58:32,298 ^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,298 ) 2025-09-09T21:58:32,298 ^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 306, in __init__ 2025-09-09T21:58:32,298 super().__init__( 2025-09-09T21:58:32,298 ~~~~~~~~~~~~~~~~^ 2025-09-09T21:58:32,298 link=link, 2025-09-09T21:58:32,298 ^^^^^^^^^^ 2025-09-09T21:58:32,298 ...<4 lines>... 2025-09-09T21:58:32,298 version=version, 2025-09-09T21:58:32,298 ^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,298 ) 2025-09-09T21:58:32,298 ^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__ 2025-09-09T21:58:32,298 self.dist = self._prepare() 2025-09-09T21:58:32,298 ~~~~~~~~~~~~~^^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare 2025-09-09T21:58:32,298 dist = self._prepare_distribution() 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 317, in _prepare_distribution 2025-09-09T21:58:32,298 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2025-09-09T21:58:32,298 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in prepare_linked_requirement 2025-09-09T21:58:32,298 return self._prepare_linked_requirement(req, parallel_builds) 2025-09-09T21:58:32,298 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 647, in _prepare_linked_requirement 2025-09-09T21:58:32,298 dist = _get_prepared_distribution( 2025-09-09T21:58:32,298 req, 2025-09-09T21:58:32,298 ...<3 lines>... 2025-09-09T21:58:32,298 self.check_build_deps, 2025-09-09T21:58:32,298 ) 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2025-09-09T21:58:32,298 abstract_dist.prepare_distribution_metadata( 2025-09-09T21:58:32,298 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-09T21:58:32,298 finder, build_isolation, check_build_deps 2025-09-09T21:58:32,298 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,298 ) 2025-09-09T21:58:32,298 ^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 69, in prepare_distribution_metadata 2025-09-09T21:58:32,298 self.req.prepare_metadata() 2025-09-09T21:58:32,298 ~~~~~~~~~~~~~~~~~~~~~~~~~^^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 581, in prepare_metadata 2025-09-09T21:58:32,298 self.metadata_directory = generate_metadata_legacy( 2025-09-09T21:58:32,298 ~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-09T21:58:32,298 build_env=self.build_env, 2025-09-09T21:58:32,298 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,298 ...<3 lines>... 2025-09-09T21:58:32,298 details=details, 2025-09-09T21:58:32,298 ^^^^^^^^^^^^^^^^ 2025-09-09T21:58:32,298 ) 2025-09-09T21:58:32,298 ^ 2025-09-09T21:58:32,298 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 70, in generate_metadata 2025-09-09T21:58:32,298 raise MetadataGenerationFailed(package_details=details) from error 2025-09-09T21:58:32,298 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2025-09-09T21:58:32,324 Removed wemulate-api==0.0.1 from https://files.pythonhosted.org/packages/ce/a9/398519249169f78df6c5c70af7ea3a3a9ffb264f676597f8f0c0220dbd6b/wemulate-api-0.0.1.tar.gz from build tracker '/tmp/pip-build-tracker-3qlsmcxq' 2025-09-09T21:58:32,324 Removed build tracker: '/tmp/pip-build-tracker-3qlsmcxq'