2025-09-09T21:59:41,451 Created temporary directory: /tmp/pip-build-tracker-1eeaui8m 2025-09-09T21:59:41,452 Initialized build tracking at /tmp/pip-build-tracker-1eeaui8m 2025-09-09T21:59:41,453 Created build tracker: /tmp/pip-build-tracker-1eeaui8m 2025-09-09T21:59:41,454 Entered build tracker: /tmp/pip-build-tracker-1eeaui8m 2025-09-09T21:59:41,454 Created temporary directory: /tmp/pip-wheel-rkeirjyt 2025-09-09T21:59:41,461 Created temporary directory: /tmp/pip-ephem-wheel-cache-c6eyrt88 2025-09-09T21:59:41,582 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-09T21:59:41,588 2 location(s) to search for versions of wemulate-api: 2025-09-09T21:59:41,588 * https://pypi.org/simple/wemulate-api/ 2025-09-09T21:59:41,588 * https://www.piwheels.org/simple/wemulate-api/ 2025-09-09T21:59:41,589 Fetching project page and analyzing links: https://pypi.org/simple/wemulate-api/ 2025-09-09T21:59:41,590 Getting page https://pypi.org/simple/wemulate-api/ 2025-09-09T21:59:41,592 Found index url https://pypi.org/simple/ 2025-09-09T21:59:41,726 Fetched page https://pypi.org/simple/wemulate-api/ as application/vnd.pypi.simple.v1+json 2025-09-09T21:59:41,732 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:59:41,733 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:59:41,734 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:59:41,735 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:59:41,735 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:59:41,736 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:59:41,737 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:59:41,737 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:59:41,738 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:59:41,739 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:59:41,739 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:59:41,740 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:59:41,741 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:59:41,742 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:59:41,742 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:59:41,743 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:59:41,745 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:59:41,746 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:59:41,747 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:59:41,747 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:59:41,748 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:59:41,749 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:59:41,750 Fetching project page and analyzing links: https://www.piwheels.org/simple/wemulate-api/ 2025-09-09T21:59:41,750 Getting page https://www.piwheels.org/simple/wemulate-api/ 2025-09-09T21:59:41,753 Found index url https://www.piwheels.org/simple/ 2025-09-09T21:59:41,890 Fetched page https://www.piwheels.org/simple/wemulate-api/ as text/html 2025-09-09T21:59:41,893 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:59:41,894 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:59:41,894 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:59:41,895 Skipping link: not a file: https://www.piwheels.org/simple/wemulate-api/ 2025-09-09T21:59:41,896 Skipping link: not a file: https://pypi.org/simple/wemulate-api/ 2025-09-09T21:59:41,947 Given no hashes to check 1 links for project 'wemulate-api': discarding no candidates 2025-09-09T21:59:41,950 Collecting wemulate-api==0.0.1.post2 2025-09-09T21:59:41,953 Created temporary directory: /tmp/pip-unpack-9if4wkq7 2025-09-09T21:59:42,142 Downloading wemulate-api-0.0.1.post2.tar.gz (2.6 kB) 2025-09-09T21:59:42,182 Added wemulate-api==0.0.1.post2 from https://files.pythonhosted.org/packages/55/d3/65ac4fc33feee653e6e539bfe22a4a3217fa478470ebc251d0a391ed0bc5/wemulate-api-0.0.1.post2.tar.gz to build tracker '/tmp/pip-build-tracker-1eeaui8m' 2025-09-09T21:59:42,184 Running setup.py (path:/tmp/pip-wheel-rkeirjyt/wemulate-api_e2ed03215d85478c9da53efb0068ac62/setup.py) egg_info for package wemulate-api 2025-09-09T21:59:42,185 Created temporary directory: /tmp/pip-pip-egg-info-pu6hfgv_ 2025-09-09T21:59:42,186 Preparing metadata (setup.py): started 2025-09-09T21:59:42,188 Running command python setup.py egg_info 2025-09-09T21:59:45,170 Traceback (most recent call last): 2025-09-09T21:59:45,171 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_file.py", line 587, in get_file_content 2025-09-09T21:59:45,172 with open(url, "rb") as f: 2025-09-09T21:59:45,172 ~~~~^^^^^^^^^^^ 2025-09-09T21:59:45,173 FileNotFoundError: [Errno 2] No such file or directory: 'requirements.txt' 2025-09-09T21:59:45,174 During handling of the above exception, another exception occurred: 2025-09-09T21:59:45,174 Traceback (most recent call last): 2025-09-09T21:59:45,180 File "", line 2, in 2025-09-09T21:59:45,180 exec(compile(''' 2025-09-09T21:59:45,181 ~~~~^^^^^^^^^^^^ 2025-09-09T21:59:45,181 # This is -- a caller that pip uses to run setup.py 2025-09-09T21:59:45,182 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,182 ...<32 lines>... 2025-09-09T21:59:45,183 exec(compile(setup_py_code, filename, "exec")) 2025-09-09T21:59:45,183 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,184 ''' % ('/tmp/pip-wheel-rkeirjyt/wemulate-api_e2ed03215d85478c9da53efb0068ac62/setup.py',), "", "exec")) 2025-09-09T21:59:45,184 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,185 File "", line 35, in 2025-09-09T21:59:45,186 File "/tmp/pip-wheel-rkeirjyt/wemulate-api_e2ed03215d85478c9da53efb0068ac62/setup.py", line 14, in 2025-09-09T21:59:45,186 for item in requirements: 2025-09-09T21:59:45,186 ^^^^^^^^^^^^ 2025-09-09T21:59:45,187 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_file.py", line 168, in parse_requirements 2025-09-09T21:59:45,187 for parsed_line in parser.parse(filename, constraint): 2025-09-09T21:59:45,188 ~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,188 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_file.py", line 349, in parse 2025-09-09T21:59:45,189 yield from self._parse_and_recurse( 2025-09-09T21:59:45,189 filename, constraint, [{os.path.abspath(filename): None}] 2025-09-09T21:59:45,190 ) 2025-09-09T21:59:45,190 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_file.py", line 359, in _parse_and_recurse 2025-09-09T21:59:45,191 for line in self._parse_file(filename, constraint): 2025-09-09T21:59:45,191 ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,192 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_file.py", line 408, in _parse_file 2025-09-09T21:59:45,192 _, content = get_file_content(filename, self._session) 2025-09-09T21:59:45,193 ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,193 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_file.py", line 590, in get_file_content 2025-09-09T21:59:45,194 raise InstallationError(f"Could not open requirements file: {exc}") 2025-09-09T21:59:45,194 pip._internal.exceptions.InstallationError: Could not open requirements file: [Errno 2] No such file or directory: 'requirements.txt' 2025-09-09T21:59:45,532 ERROR: python setup.py egg_info exited with 1 2025-09-09T21:59:45,555 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2025-09-09T21:59:45,555 exec(compile('"'"''"'"''"'"' 2025-09-09T21:59:45,555 # This is -- a caller that pip uses to run setup.py 2025-09-09T21:59:45,555 # 2025-09-09T21:59:45,555 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-09T21:59:45,555 # import from `distutils.core` to work with newer packaging standards. 2025-09-09T21:59:45,555 # - It provides a clear error message when setuptools is not installed. 2025-09-09T21:59:45,555 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-09T21:59:45,555 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-09T21:59:45,555 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-09T21:59:45,555 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-09T21:59:45,555 import os, sys, tokenize, traceback 2025-09-09T21:59:45,555 2025-09-09T21:59:45,555 try: 2025-09-09T21:59:45,555 import setuptools 2025-09-09T21:59:45,555 except ImportError: 2025-09-09T21:59:45,555 print( 2025-09-09T21:59:45,555 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-09T21:59:45,555 "the build environment with exception:", 2025-09-09T21:59:45,555 file=sys.stderr, 2025-09-09T21:59:45,555 ) 2025-09-09T21:59:45,555 traceback.print_exc() 2025-09-09T21:59:45,555 sys.exit(1) 2025-09-09T21:59:45,555 2025-09-09T21:59:45,555 __file__ = %r 2025-09-09T21:59:45,555 sys.argv[0] = __file__ 2025-09-09T21:59:45,555 2025-09-09T21:59:45,555 if os.path.exists(__file__): 2025-09-09T21:59:45,555 filename = __file__ 2025-09-09T21:59:45,555 with tokenize.open(__file__) as f: 2025-09-09T21:59:45,555 setup_py_code = f.read() 2025-09-09T21:59:45,555 else: 2025-09-09T21:59:45,555 filename = "" 2025-09-09T21:59:45,555 setup_py_code = "from setuptools import setup; setup()" 2025-09-09T21:59:45,555 2025-09-09T21:59:45,555 exec(compile(setup_py_code, filename, "exec")) 2025-09-09T21:59:45,555 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-rkeirjyt/wemulate-api_e2ed03215d85478c9da53efb0068ac62/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-pu6hfgv_[/] 2025-09-09T21:59:45,555 [bold magenta]cwd[/]: /tmp/pip-wheel-rkeirjyt/wemulate-api_e2ed03215d85478c9da53efb0068ac62/ 2025-09-09T21:59:45,556 Preparing metadata (setup.py): finished with status 'error' 2025-09-09T21:59:45,558 ERROR: metadata generation failed 2025-09-09T21:59:45,570 Exception information: 2025-09-09T21:59:45,570 Traceback (most recent call last): 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 63, in generate_metadata 2025-09-09T21:59:45,570 call_subprocess( 2025-09-09T21:59:45,570 ~~~~~~~~~~~~~~~^ 2025-09-09T21:59:45,570 args, 2025-09-09T21:59:45,570 ^^^^^ 2025-09-09T21:59:45,570 ...<2 lines>... 2025-09-09T21:59:45,570 spinner=spinner, 2025-09-09T21:59:45,570 ^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,570 ) 2025-09-09T21:59:45,570 ^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 209, in call_subprocess 2025-09-09T21:59:45,570 raise error 2025-09-09T21:59:45,570 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2025-09-09T21:59:45,570 2025-09-09T21:59:45,570 The above exception was the direct cause of the following exception: 2025-09-09T21:59:45,570 2025-09-09T21:59:45,570 Traceback (most recent call last): 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-09T21:59:45,570 status = _inner_run() 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-09T21:59:45,570 return self.run(options, args) 2025-09-09T21:59:45,570 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-09T21:59:45,570 return func(self, options, args) 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2025-09-09T21:59:45,570 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve 2025-09-09T21:59:45,570 result = self._result = resolver.resolve( 2025-09-09T21:59:45,570 ~~~~~~~~~~~~~~~~^ 2025-09-09T21:59:45,570 collected.requirements, max_rounds=limit_how_complex_resolution_can_be 2025-09-09T21:59:45,570 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,570 ) 2025-09-09T21:59:45,570 ^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve 2025-09-09T21:59:45,570 state = resolution.resolve(requirements, max_rounds=max_rounds) 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve 2025-09-09T21:59:45,570 self._add_to_criteria(self.state.criteria, r, parent=None) 2025-09-09T21:59:45,570 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria 2025-09-09T21:59:45,570 if not criterion.candidates: 2025-09-09T21:59:45,570 ^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__ 2025-09-09T21:59:45,570 return bool(self._sequence) 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__ 2025-09-09T21:59:45,570 self._bool = any(self) 2025-09-09T21:59:45,570 ~~~^^^^^^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in 2025-09-09T21:59:45,570 return (c for c in iterator if id(c) not in self._incompatible_ids) 2025-09-09T21:59:45,570 ^^^^^^^^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 37, in _iter_built 2025-09-09T21:59:45,570 candidate = func() 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link 2025-09-09T21:59:45,570 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2025-09-09T21:59:45,570 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-09T21:59:45,570 link, template, name, version 2025-09-09T21:59:45,570 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,570 ) 2025-09-09T21:59:45,570 ^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link 2025-09-09T21:59:45,570 self._link_candidate_cache[link] = LinkCandidate( 2025-09-09T21:59:45,570 ~~~~~~~~~~~~~^ 2025-09-09T21:59:45,570 link, 2025-09-09T21:59:45,570 ^^^^^ 2025-09-09T21:59:45,570 ...<3 lines>... 2025-09-09T21:59:45,570 version=version, 2025-09-09T21:59:45,570 ^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,570 ) 2025-09-09T21:59:45,570 ^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 306, in __init__ 2025-09-09T21:59:45,570 super().__init__( 2025-09-09T21:59:45,570 ~~~~~~~~~~~~~~~~^ 2025-09-09T21:59:45,570 link=link, 2025-09-09T21:59:45,570 ^^^^^^^^^^ 2025-09-09T21:59:45,570 ...<4 lines>... 2025-09-09T21:59:45,570 version=version, 2025-09-09T21:59:45,570 ^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,570 ) 2025-09-09T21:59:45,570 ^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__ 2025-09-09T21:59:45,570 self.dist = self._prepare() 2025-09-09T21:59:45,570 ~~~~~~~~~~~~~^^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare 2025-09-09T21:59:45,570 dist = self._prepare_distribution() 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 317, in _prepare_distribution 2025-09-09T21:59:45,570 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2025-09-09T21:59:45,570 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in prepare_linked_requirement 2025-09-09T21:59:45,570 return self._prepare_linked_requirement(req, parallel_builds) 2025-09-09T21:59:45,570 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 647, in _prepare_linked_requirement 2025-09-09T21:59:45,570 dist = _get_prepared_distribution( 2025-09-09T21:59:45,570 req, 2025-09-09T21:59:45,570 ...<3 lines>... 2025-09-09T21:59:45,570 self.check_build_deps, 2025-09-09T21:59:45,570 ) 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2025-09-09T21:59:45,570 abstract_dist.prepare_distribution_metadata( 2025-09-09T21:59:45,570 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-09T21:59:45,570 finder, build_isolation, check_build_deps 2025-09-09T21:59:45,570 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,570 ) 2025-09-09T21:59:45,570 ^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 69, in prepare_distribution_metadata 2025-09-09T21:59:45,570 self.req.prepare_metadata() 2025-09-09T21:59:45,570 ~~~~~~~~~~~~~~~~~~~~~~~~~^^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 581, in prepare_metadata 2025-09-09T21:59:45,570 self.metadata_directory = generate_metadata_legacy( 2025-09-09T21:59:45,570 ~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-09T21:59:45,570 build_env=self.build_env, 2025-09-09T21:59:45,570 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,570 ...<3 lines>... 2025-09-09T21:59:45,570 details=details, 2025-09-09T21:59:45,570 ^^^^^^^^^^^^^^^^ 2025-09-09T21:59:45,570 ) 2025-09-09T21:59:45,570 ^ 2025-09-09T21:59:45,570 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 70, in generate_metadata 2025-09-09T21:59:45,570 raise MetadataGenerationFailed(package_details=details) from error 2025-09-09T21:59:45,570 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2025-09-09T21:59:45,621 Removed wemulate-api==0.0.1.post2 from https://files.pythonhosted.org/packages/55/d3/65ac4fc33feee653e6e539bfe22a4a3217fa478470ebc251d0a391ed0bc5/wemulate-api-0.0.1.post2.tar.gz from build tracker '/tmp/pip-build-tracker-1eeaui8m' 2025-09-09T21:59:45,622 Removed build tracker: '/tmp/pip-build-tracker-1eeaui8m'