2025-09-08T13:31:41,377 Created temporary directory: /tmp/pip-build-tracker-czlcnebb 2025-09-08T13:31:41,377 Initialized build tracking at /tmp/pip-build-tracker-czlcnebb 2025-09-08T13:31:41,377 Created build tracker: /tmp/pip-build-tracker-czlcnebb 2025-09-08T13:31:41,378 Entered build tracker: /tmp/pip-build-tracker-czlcnebb 2025-09-08T13:31:41,378 Created temporary directory: /tmp/pip-wheel-p7opsyc3 2025-09-08T13:31:41,381 Created temporary directory: /tmp/pip-ephem-wheel-cache-m382pmji 2025-09-08T13:31:41,444 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-08T13:31:41,446 2 location(s) to search for versions of middleware-test: 2025-09-08T13:31:41,446 * https://pypi.org/simple/middleware-test/ 2025-09-08T13:31:41,446 * https://www.piwheels.org/simple/middleware-test/ 2025-09-08T13:31:41,447 Fetching project page and analyzing links: https://pypi.org/simple/middleware-test/ 2025-09-08T13:31:41,447 Getting page https://pypi.org/simple/middleware-test/ 2025-09-08T13:31:41,448 Found index url https://pypi.org/simple/ 2025-09-08T13:31:41,518 Fetched page https://pypi.org/simple/middleware-test/ as application/vnd.pypi.simple.v1+json 2025-09-08T13:31:41,521 Found link https://files.pythonhosted.org/packages/37/2d/fd48ac9c1bfdc6b0028a12124561683b4f237b3a59f02730a3966000e50c/middleware_test-1.1.2.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.2 2025-09-08T13:31:41,521 Found link https://files.pythonhosted.org/packages/2c/e8/798de99e3bd1e8ba2a5625d9181a427ab3a16d2b9bb45e5375e5328aca62/middleware_test-1.1.3.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.3 2025-09-08T13:31:41,521 Found link https://files.pythonhosted.org/packages/a3/14/0648a1da05212d232821f9dc02ab3000fe39cd8aabc920abe0459ae2bf87/middleware_test-1.1.4.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.4 2025-09-08T13:31:41,522 Found link https://files.pythonhosted.org/packages/d4/10/4ec68c8a2b231f20b9734355fb9eac55b1b5c9cd81719d5441b32ef8f104/middleware_test-1.1.5.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.5 2025-09-08T13:31:41,522 Found link https://files.pythonhosted.org/packages/3c/ec/6e0d09496314d0bb97795f2145063525b26feb73b98755f67265b9ff5c1b/middleware_test-1.1.6.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.6 2025-09-08T13:31:41,522 Found link https://files.pythonhosted.org/packages/66/c9/ee7615246a791c0e3435788db12f58d023414cb57081461329bf2ae30cf8/middleware_test-1.1.7.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.7 2025-09-08T13:31:41,522 Found link https://files.pythonhosted.org/packages/27/75/88a030dc18161d199cd5f354f28f6a4799f75cb01664d9eb5b17315b935a/middleware_test-1.1.8.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.8 2025-09-08T13:31:41,522 Found link https://files.pythonhosted.org/packages/a9/f1/272f864eb235a57ecb8d238adb6bad7aabcaa85c5dd5c94a5ef6feee337a/middleware_test-1.1.9.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.9 2025-09-08T13:31:41,523 Found link https://files.pythonhosted.org/packages/06/3a/bea50eb112e41b89e8fc2599593a8d8a8e615407a8036f5d52a695514806/middleware_test-1.1.10.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.10 2025-09-08T13:31:41,523 Found link https://files.pythonhosted.org/packages/35/a8/a834237738b8a7414278a3688a7403fad9722af23818da52af06970e97b4/middleware_test-1.1.11.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.11 2025-09-08T13:31:41,523 Found link https://files.pythonhosted.org/packages/db/0d/442828f2937733d35b030e98494dfb10e79e796cc93b37ec327883acd116/middleware_test-1.1.12.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.12 2025-09-08T13:31:41,523 Found link https://files.pythonhosted.org/packages/de/a6/3e6b50b494a8c45613ea265c1acd72ee28d4a08dbfa3c1f0a86c77d3fa60/middleware_test-1.1.13.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.13 2025-09-08T13:31:41,524 Found link https://files.pythonhosted.org/packages/b8/d1/1a4f2c5b02841814138c78d9f366621ad258f9429cf1b4f45b60aa1b2c1c/middleware_test-1.1.14.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.14 2025-09-08T13:31:41,524 Found link https://files.pythonhosted.org/packages/9f/ea/3f1b17dcd2702da7d6820862ddce7ba997ba89cf0e0b20cbd862ce5b93a9/middleware_test-1.1.15.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.1.15 2025-09-08T13:31:41,524 Found link https://files.pythonhosted.org/packages/59/12/ef873b54e97834974db1b2fac41a8281fcae32a9df2807447ace1f8d224f/middleware_test-1.2.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.2 2025-09-08T13:31:41,524 Found link https://files.pythonhosted.org/packages/20/48/ba23f5eb3963d09b0220c8056c71c67f1253d0501bc0180b21eae79a9683/middleware_test-1.2.1.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.2.1 2025-09-08T13:31:41,524 Found link https://files.pythonhosted.org/packages/40/63/e0ba6b73de0145b93a355a20e987ad6f42c9d30009dc9be60f42801f785e/middleware_test-1.2.2.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.2.2 2025-09-08T13:31:41,525 Found link https://files.pythonhosted.org/packages/76/34/5cf5f937facd627ff825887798ffd4f09af821682accc6dd602005ed354f/middleware_test-1.2.3.tar.gz (from https://pypi.org/simple/middleware-test/), version: 1.2.3 2025-09-08T13:31:41,525 Found link https://files.pythonhosted.org/packages/4f/3b/98e812673b8695f169c389ec6100ad8d272b2f45138e7f23b2069a804cb0/middleware_test-2.0.tar.gz (from https://pypi.org/simple/middleware-test/), version: 2.0 2025-09-08T13:31:41,525 Found link https://files.pythonhosted.org/packages/42/c5/dde4f32ea09d4f000527aab7b1b0076c887d0aa98d129f0616a4dff1ce54/middleware_test-2.1.tar.gz (from https://pypi.org/simple/middleware-test/), version: 2.1 2025-09-08T13:31:41,525 Fetching project page and analyzing links: https://www.piwheels.org/simple/middleware-test/ 2025-09-08T13:31:41,526 Getting page https://www.piwheels.org/simple/middleware-test/ 2025-09-08T13:31:41,527 Found index url https://www.piwheels.org/simple/ 2025-09-08T13:31:41,617 Fetched page https://www.piwheels.org/simple/middleware-test/ as text/html 2025-09-08T13:31:41,619 Skipping link: No binaries permitted for middleware-test: https://archive1.piwheels.org/simple/middleware-test/middleware_test-1.1.13-py3-none-any.whl#sha256=41cff76ec411c9a367299c6a3c217145f35ac7801aa39fc8005cc3cb70a0aa47 (from https://www.piwheels.org/simple/middleware-test/) 2025-09-08T13:31:41,619 Skipping link: No binaries permitted for middleware-test: https://archive1.piwheels.org/simple/middleware-test/middleware_test-1.1.12-py3-none-any.whl#sha256=a42b81137896f8d8fb6ef866fe08e873988eedbd40aa9cb24e8596ce037c6864 (from https://www.piwheels.org/simple/middleware-test/) 2025-09-08T13:31:41,619 Skipping link: No binaries permitted for middleware-test: https://archive1.piwheels.org/simple/middleware-test/middleware_test-1.1.11-py3-none-any.whl#sha256=85174815e8abc04ed92319d3650db25ca0c13bcf958b43e5f571e97c06ffeb03 (from https://www.piwheels.org/simple/middleware-test/) 2025-09-08T13:31:41,619 Skipping link: No binaries permitted for middleware-test: https://archive1.piwheels.org/simple/middleware-test/middleware_test-1.1.10-py3-none-any.whl#sha256=da9177eb8a61b9635b44bb4a2a48013a1204a42d161d4cb1b86a1c4915efb0fb (from https://www.piwheels.org/simple/middleware-test/) 2025-09-08T13:31:41,619 Skipping link: No binaries permitted for middleware-test: https://archive1.piwheels.org/simple/middleware-test/middleware_test-1.1.9-py3-none-any.whl#sha256=d49d3ddba0a8909fccdd3dd9bdf003edc1531099e9cd6f487d1b4b04ec2174b6 (from https://www.piwheels.org/simple/middleware-test/) 2025-09-08T13:31:41,619 Skipping link: No binaries permitted for middleware-test: https://archive1.piwheels.org/simple/middleware-test/middleware_test-1.1.8-py3-none-any.whl#sha256=860169ef42937789c91919868504f9382b6014c586521d9827a981466e0cffe4 (from https://www.piwheels.org/simple/middleware-test/) 2025-09-08T13:31:41,619 Skipping link: No binaries permitted for middleware-test: https://archive1.piwheels.org/simple/middleware-test/middleware_test-1.1.7-py3-none-any.whl#sha256=7496006606210d85833c43f8b55984e092b7358ff20e554c9d745005a8afd0e2 (from https://www.piwheels.org/simple/middleware-test/) 2025-09-08T13:31:41,620 Skipping link: not a file: https://www.piwheels.org/simple/middleware-test/ 2025-09-08T13:31:41,620 Skipping link: not a file: https://pypi.org/simple/middleware-test/ 2025-09-08T13:31:41,644 Given no hashes to check 1 links for project 'middleware-test': discarding no candidates 2025-09-08T13:31:41,645 Collecting middleware-test==1.2.2 2025-09-08T13:31:41,646 Created temporary directory: /tmp/pip-unpack-20xeen3g 2025-09-08T13:31:41,785 Downloading middleware_test-1.2.2.tar.gz (23 kB) 2025-09-08T13:31:41,828 Added middleware-test==1.2.2 from https://files.pythonhosted.org/packages/40/63/e0ba6b73de0145b93a355a20e987ad6f42c9d30009dc9be60f42801f785e/middleware_test-1.2.2.tar.gz to build tracker '/tmp/pip-build-tracker-czlcnebb' 2025-09-08T13:31:41,829 Running setup.py (path:/tmp/pip-wheel-p7opsyc3/middleware-test_61c73d8e1c6d4d86af3b518d1d44c936/setup.py) egg_info for package middleware-test 2025-09-08T13:31:41,830 Created temporary directory: /tmp/pip-pip-egg-info-so8cmo8y 2025-09-08T13:31:41,830 Preparing metadata (setup.py): started 2025-09-08T13:31:41,831 Running command python setup.py egg_info 2025-09-08T13:31:42,349 Traceback (most recent call last): 2025-09-08T13:31:42,351 File "", line 2, in 2025-09-08T13:31:42,351 exec(compile(''' 2025-09-08T13:31:42,351 ~~~~^^^^^^^^^^^^ 2025-09-08T13:31:42,351 # This is -- a caller that pip uses to run setup.py 2025-09-08T13:31:42,351 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,351 ...<32 lines>... 2025-09-08T13:31:42,352 exec(compile(setup_py_code, filename, "exec")) 2025-09-08T13:31:42,352 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,352 ''' % ('/tmp/pip-wheel-p7opsyc3/middleware-test_61c73d8e1c6d4d86af3b518d1d44c936/setup.py',), "", "exec")) 2025-09-08T13:31:42,352 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,352 File "", line 35, in 2025-09-08T13:31:42,352 File "/tmp/pip-wheel-p7opsyc3/middleware-test_61c73d8e1c6d4d86af3b518d1d44c936/setup.py", line 9, in 2025-09-08T13:31:42,352 from middleware import config 2025-09-08T13:31:42,353 File "/tmp/pip-wheel-p7opsyc3/middleware-test_61c73d8e1c6d4d86af3b518d1d44c936/middleware/config.py", line 12, in 2025-09-08T13:31:42,353 from tornado.options import ( 2025-09-08T13:31:42,353 define, options, parse_command_line, parse_config_file 2025-09-08T13:31:42,353 ) 2025-09-08T13:31:42,353 ModuleNotFoundError: No module named 'tornado' 2025-09-08T13:31:42,436 ERROR: python setup.py egg_info exited with 1 2025-09-08T13:31:42,448 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2025-09-08T13:31:42,448 exec(compile('"'"''"'"''"'"' 2025-09-08T13:31:42,448 # This is -- a caller that pip uses to run setup.py 2025-09-08T13:31:42,448 # 2025-09-08T13:31:42,448 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-08T13:31:42,448 # import from `distutils.core` to work with newer packaging standards. 2025-09-08T13:31:42,448 # - It provides a clear error message when setuptools is not installed. 2025-09-08T13:31:42,448 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-08T13:31:42,448 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-08T13:31:42,448 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-08T13:31:42,448 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-08T13:31:42,448 import os, sys, tokenize, traceback 2025-09-08T13:31:42,448 2025-09-08T13:31:42,448 try: 2025-09-08T13:31:42,448 import setuptools 2025-09-08T13:31:42,448 except ImportError: 2025-09-08T13:31:42,448 print( 2025-09-08T13:31:42,448 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-08T13:31:42,448 "the build environment with exception:", 2025-09-08T13:31:42,448 file=sys.stderr, 2025-09-08T13:31:42,448 ) 2025-09-08T13:31:42,448 traceback.print_exc() 2025-09-08T13:31:42,448 sys.exit(1) 2025-09-08T13:31:42,448 2025-09-08T13:31:42,448 __file__ = %r 2025-09-08T13:31:42,448 sys.argv[0] = __file__ 2025-09-08T13:31:42,448 2025-09-08T13:31:42,448 if os.path.exists(__file__): 2025-09-08T13:31:42,448 filename = __file__ 2025-09-08T13:31:42,448 with tokenize.open(__file__) as f: 2025-09-08T13:31:42,448 setup_py_code = f.read() 2025-09-08T13:31:42,448 else: 2025-09-08T13:31:42,448 filename = "" 2025-09-08T13:31:42,448 setup_py_code = "from setuptools import setup; setup()" 2025-09-08T13:31:42,448 2025-09-08T13:31:42,448 exec(compile(setup_py_code, filename, "exec")) 2025-09-08T13:31:42,448 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-p7opsyc3/middleware-test_61c73d8e1c6d4d86af3b518d1d44c936/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-so8cmo8y[/] 2025-09-08T13:31:42,449 [bold magenta]cwd[/]: /tmp/pip-wheel-p7opsyc3/middleware-test_61c73d8e1c6d4d86af3b518d1d44c936/ 2025-09-08T13:31:42,449 Preparing metadata (setup.py): finished with status 'error' 2025-09-08T13:31:42,450 ERROR: metadata generation failed 2025-09-08T13:31:42,456 Exception information: 2025-09-08T13:31:42,456 Traceback (most recent call last): 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 63, in generate_metadata 2025-09-08T13:31:42,456 call_subprocess( 2025-09-08T13:31:42,456 ~~~~~~~~~~~~~~~^ 2025-09-08T13:31:42,456 args, 2025-09-08T13:31:42,456 ^^^^^ 2025-09-08T13:31:42,456 ...<2 lines>... 2025-09-08T13:31:42,456 spinner=spinner, 2025-09-08T13:31:42,456 ^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,456 ) 2025-09-08T13:31:42,456 ^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 209, in call_subprocess 2025-09-08T13:31:42,456 raise error 2025-09-08T13:31:42,456 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2025-09-08T13:31:42,456 2025-09-08T13:31:42,456 The above exception was the direct cause of the following exception: 2025-09-08T13:31:42,456 2025-09-08T13:31:42,456 Traceback (most recent call last): 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-08T13:31:42,456 status = _inner_run() 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-08T13:31:42,456 return self.run(options, args) 2025-09-08T13:31:42,456 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-08T13:31:42,456 return func(self, options, args) 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2025-09-08T13:31:42,456 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve 2025-09-08T13:31:42,456 result = self._result = resolver.resolve( 2025-09-08T13:31:42,456 ~~~~~~~~~~~~~~~~^ 2025-09-08T13:31:42,456 collected.requirements, max_rounds=limit_how_complex_resolution_can_be 2025-09-08T13:31:42,456 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,456 ) 2025-09-08T13:31:42,456 ^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve 2025-09-08T13:31:42,456 state = resolution.resolve(requirements, max_rounds=max_rounds) 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve 2025-09-08T13:31:42,456 self._add_to_criteria(self.state.criteria, r, parent=None) 2025-09-08T13:31:42,456 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria 2025-09-08T13:31:42,456 if not criterion.candidates: 2025-09-08T13:31:42,456 ^^^^^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__ 2025-09-08T13:31:42,456 return bool(self._sequence) 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__ 2025-09-08T13:31:42,456 self._bool = any(self) 2025-09-08T13:31:42,456 ~~~^^^^^^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in 2025-09-08T13:31:42,456 return (c for c in iterator if id(c) not in self._incompatible_ids) 2025-09-08T13:31:42,456 ^^^^^^^^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 37, in _iter_built 2025-09-08T13:31:42,456 candidate = func() 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link 2025-09-08T13:31:42,456 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2025-09-08T13:31:42,456 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T13:31:42,456 link, template, name, version 2025-09-08T13:31:42,456 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,456 ) 2025-09-08T13:31:42,456 ^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link 2025-09-08T13:31:42,456 self._link_candidate_cache[link] = LinkCandidate( 2025-09-08T13:31:42,456 ~~~~~~~~~~~~~^ 2025-09-08T13:31:42,456 link, 2025-09-08T13:31:42,456 ^^^^^ 2025-09-08T13:31:42,456 ...<3 lines>... 2025-09-08T13:31:42,456 version=version, 2025-09-08T13:31:42,456 ^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,456 ) 2025-09-08T13:31:42,456 ^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 306, in __init__ 2025-09-08T13:31:42,456 super().__init__( 2025-09-08T13:31:42,456 ~~~~~~~~~~~~~~~~^ 2025-09-08T13:31:42,456 link=link, 2025-09-08T13:31:42,456 ^^^^^^^^^^ 2025-09-08T13:31:42,456 ...<4 lines>... 2025-09-08T13:31:42,456 version=version, 2025-09-08T13:31:42,456 ^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,456 ) 2025-09-08T13:31:42,456 ^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__ 2025-09-08T13:31:42,456 self.dist = self._prepare() 2025-09-08T13:31:42,456 ~~~~~~~~~~~~~^^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare 2025-09-08T13:31:42,456 dist = self._prepare_distribution() 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 317, in _prepare_distribution 2025-09-08T13:31:42,456 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2025-09-08T13:31:42,456 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in prepare_linked_requirement 2025-09-08T13:31:42,456 return self._prepare_linked_requirement(req, parallel_builds) 2025-09-08T13:31:42,456 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 647, in _prepare_linked_requirement 2025-09-08T13:31:42,456 dist = _get_prepared_distribution( 2025-09-08T13:31:42,456 req, 2025-09-08T13:31:42,456 ...<3 lines>... 2025-09-08T13:31:42,456 self.check_build_deps, 2025-09-08T13:31:42,456 ) 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2025-09-08T13:31:42,456 abstract_dist.prepare_distribution_metadata( 2025-09-08T13:31:42,456 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T13:31:42,456 finder, build_isolation, check_build_deps 2025-09-08T13:31:42,456 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,456 ) 2025-09-08T13:31:42,456 ^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 69, in prepare_distribution_metadata 2025-09-08T13:31:42,456 self.req.prepare_metadata() 2025-09-08T13:31:42,456 ~~~~~~~~~~~~~~~~~~~~~~~~~^^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 581, in prepare_metadata 2025-09-08T13:31:42,456 self.metadata_directory = generate_metadata_legacy( 2025-09-08T13:31:42,456 ~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T13:31:42,456 build_env=self.build_env, 2025-09-08T13:31:42,456 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,456 ...<3 lines>... 2025-09-08T13:31:42,456 details=details, 2025-09-08T13:31:42,456 ^^^^^^^^^^^^^^^^ 2025-09-08T13:31:42,456 ) 2025-09-08T13:31:42,456 ^ 2025-09-08T13:31:42,456 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 70, in generate_metadata 2025-09-08T13:31:42,456 raise MetadataGenerationFailed(package_details=details) from error 2025-09-08T13:31:42,456 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2025-09-08T13:31:42,478 Removed middleware-test==1.2.2 from https://files.pythonhosted.org/packages/40/63/e0ba6b73de0145b93a355a20e987ad6f42c9d30009dc9be60f42801f785e/middleware_test-1.2.2.tar.gz from build tracker '/tmp/pip-build-tracker-czlcnebb' 2025-09-08T13:31:42,478 Removed build tracker: '/tmp/pip-build-tracker-czlcnebb'