2025-09-08T20:55:45,460 Created temporary directory: /tmp/pip-build-tracker-c4qvr9w0 2025-09-08T20:55:45,461 Initialized build tracking at /tmp/pip-build-tracker-c4qvr9w0 2025-09-08T20:55:45,461 Created build tracker: /tmp/pip-build-tracker-c4qvr9w0 2025-09-08T20:55:45,461 Entered build tracker: /tmp/pip-build-tracker-c4qvr9w0 2025-09-08T20:55:45,461 Created temporary directory: /tmp/pip-wheel-j5pxvvj7 2025-09-08T20:55:45,464 Created temporary directory: /tmp/pip-ephem-wheel-cache-zrj08tu7 2025-09-08T20:55:45,526 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-08T20:55:45,528 2 location(s) to search for versions of ain-worker: 2025-09-08T20:55:45,528 * https://pypi.org/simple/ain-worker/ 2025-09-08T20:55:45,528 * https://www.piwheels.org/simple/ain-worker/ 2025-09-08T20:55:45,529 Fetching project page and analyzing links: https://pypi.org/simple/ain-worker/ 2025-09-08T20:55:45,529 Getting page https://pypi.org/simple/ain-worker/ 2025-09-08T20:55:45,530 Found index url https://pypi.org/simple/ 2025-09-08T20:55:45,600 Fetched page https://pypi.org/simple/ain-worker/ as application/vnd.pypi.simple.v1+json 2025-09-08T20:55:45,603 Found link https://files.pythonhosted.org/packages/b9/36/5bc91f3c260c50289cab893d6f4a58a48a78b0c2ba62f87408c8e38ce120/ain-worker-1.0.tar.gz (from https://pypi.org/simple/ain-worker/), version: 1.0 2025-09-08T20:55:45,604 Found link https://files.pythonhosted.org/packages/66/a1/86b2fbb17c74d279f9b974a1e6133a817bca6a48f2b06387869c752af9f1/ain-worker-1.1.tar.gz (from https://pypi.org/simple/ain-worker/), version: 1.1 2025-09-08T20:55:45,604 Found link https://files.pythonhosted.org/packages/66/b4/f621fd5a2b1f93481eb826f37b65961d7ff053ee085c5b4397e275beb58c/ain-worker-1.2.tar.gz (from https://pypi.org/simple/ain-worker/), version: 1.2 2025-09-08T20:55:45,604 Found link https://files.pythonhosted.org/packages/cb/ac/1559fea043932a1f66bb9eb4c6e0878a58a4cb4a7783993ba048de40e62a/ain-worker-1.3.tar.gz (from https://pypi.org/simple/ain-worker/), version: 1.3 2025-09-08T20:55:45,604 Found link https://files.pythonhosted.org/packages/1c/87/a77f6d7c60fb26ee7a49a47b114e2c041a2669ac3e61107dca8de1411e3c/ain-worker-1.4.tar.gz (from https://pypi.org/simple/ain-worker/), version: 1.4 2025-09-08T20:55:45,605 Found link https://files.pythonhosted.org/packages/b6/27/1ce6859a92711684a91e30ab5c05bb27e6f7e3680a4c5dea2b6ae1bd97ef/ain-worker-1.4.40.tar.gz (from https://pypi.org/simple/ain-worker/), version: 1.4.40 2025-09-08T20:55:45,605 Found link https://files.pythonhosted.org/packages/69/34/adcf92421523200a8a2dfb10165898ba4ebb9cb8824111918d4ce0a649cd/ain-worker-1.5.tar.gz (from https://pypi.org/simple/ain-worker/), version: 1.5 2025-09-08T20:55:45,605 Found link https://files.pythonhosted.org/packages/fa/ea/8496b6ac860a7d6de75cbec5f4ed8461f0e5930c1751b8f014ba9caa56db/ain-worker-1.6.tar.gz (from https://pypi.org/simple/ain-worker/), version: 1.6 2025-09-08T20:55:45,605 Found link https://files.pythonhosted.org/packages/a5/10/4f7cbbb9e08a37c26764b6079e87d12dcde091fe00460183fef4d2aa2edf/ain-worker-1.7.tar.gz (from https://pypi.org/simple/ain-worker/), version: 1.7 2025-09-08T20:55:45,605 Found link https://files.pythonhosted.org/packages/11/05/22c69eb66b62c9d37192280325edae0139a901570d5c70f87d73e9fe9ebd/ain-worker-1.8.tar.gz (from https://pypi.org/simple/ain-worker/), version: 1.8 2025-09-08T20:55:45,606 Found link https://files.pythonhosted.org/packages/40/96/b1125baaef9a23a917335b1e7507b8e8b174d072a59cf5aa47e6f28e2ac8/ain-worker-1.9.tar.gz (from https://pypi.org/simple/ain-worker/), version: 1.9 2025-09-08T20:55:45,606 Found link https://files.pythonhosted.org/packages/ff/bf/b620f3b8e603546ead04e4781fd4ece92d1dc2ad286f0f59dc337d7c0afd/ain-worker-2.0.0.tar.gz (from https://pypi.org/simple/ain-worker/), version: 2.0.0 2025-09-08T20:55:45,606 Found link https://files.pythonhosted.org/packages/e9/e8/78b0b1f0a4e5f3f9bd5ecc7e6d9624da0bf0d07b11184b4fb3b3216c1344/ain-worker-2.0.1.tar.gz (from https://pypi.org/simple/ain-worker/), version: 2.0.1 2025-09-08T20:55:45,606 Found link https://files.pythonhosted.org/packages/15/ce/a3fd2cb412f40ec14b7539ab58252f3210c8be535a3c347af29940d5e8fc/ain-worker-2.0.2.tar.gz (from https://pypi.org/simple/ain-worker/), version: 2.0.2 2025-09-08T20:55:45,606 Found link https://files.pythonhosted.org/packages/a1/ab/5b533f8611026dbafdba9e30f46ec02e9acc39ad9d31f83caffdfae59fe1/ain-worker-2.0.3.tar.gz (from https://pypi.org/simple/ain-worker/), version: 2.0.3 2025-09-08T20:55:45,607 Found link https://files.pythonhosted.org/packages/71/45/961d1a5a686d8863589595c1b5a6126883adc663dcb01864e5e8d16548bc/ain-worker-2.0.4.tar.gz (from https://pypi.org/simple/ain-worker/), version: 2.0.4 2025-09-08T20:55:45,607 Found link https://files.pythonhosted.org/packages/3b/47/20cbd6f8b4c6731db976a17b1dbd15845eb55dcef41d8e776a514e08a862/ain-worker-2.0.5.tar.gz (from https://pypi.org/simple/ain-worker/), version: 2.0.5 2025-09-08T20:55:45,607 Found link https://files.pythonhosted.org/packages/0b/62/48c9ac33d19a8dffee66e254587e251a5b51c5d4e2ef8c1c90ddb2d5ae9a/ain-worker-2.0.6.tar.gz (from https://pypi.org/simple/ain-worker/), version: 2.0.6 2025-09-08T20:55:45,607 Found link https://files.pythonhosted.org/packages/d6/79/4bacfc26930aa701944d6b2766fe6acbbe727e9c181dae045f8ef773ef05/ain-worker-2.0.7.tar.gz (from https://pypi.org/simple/ain-worker/), version: 2.0.7 2025-09-08T20:55:45,608 Found link https://files.pythonhosted.org/packages/de/7f/437d21722dc7d4e36b3bab322391a1900e80edce9aa452739bc9de8c904c/ain-worker-2.0.8.tar.gz (from https://pypi.org/simple/ain-worker/), version: 2.0.8 2025-09-08T20:55:45,608 Found link https://files.pythonhosted.org/packages/e3/81/f9f501f401c4290fc0fab5bf872f312e6eb7067ad7d4aaf1a6483d5fb1e1/ain-worker-2.0.9.tar.gz (from https://pypi.org/simple/ain-worker/), version: 2.0.9 2025-09-08T20:55:45,608 Found link https://files.pythonhosted.org/packages/b8/af/3b137478f2e02a1e0ef2f538b0b1af795e31030e4384d6f638e9118f7319/ain-worker-2.0.10.tar.gz (from https://pypi.org/simple/ain-worker/), version: 2.0.10 2025-09-08T20:55:45,608 Fetching project page and analyzing links: https://www.piwheels.org/simple/ain-worker/ 2025-09-08T20:55:45,609 Getting page https://www.piwheels.org/simple/ain-worker/ 2025-09-08T20:55:45,609 Found index url https://www.piwheels.org/simple/ 2025-09-08T20:55:45,694 Fetched page https://www.piwheels.org/simple/ain-worker/ as text/html 2025-09-08T20:55:45,698 Skipping link: No binaries permitted for ain-worker: https://archive1.piwheels.org/simple/ain-worker/ain_worker-2.0.0-py3-none-any.whl#sha256=9a05df6684d9af90f9f0bf162d6dc717a40db121c41c1151b2e36239866ae4d0 (from https://www.piwheels.org/simple/ain-worker/) (requires-python:>=3) 2025-09-08T20:55:45,698 Skipping link: No binaries permitted for ain-worker: https://archive1.piwheels.org/simple/ain-worker/ain_worker-1.9-py3-none-any.whl#sha256=c2c8222dfc58036b15f56b76ba1273d17c8ab78142ef5db558ba96051e2c9890 (from https://www.piwheels.org/simple/ain-worker/) (requires-python:>=3) 2025-09-08T20:55:45,698 Skipping link: No binaries permitted for ain-worker: https://archive1.piwheels.org/simple/ain-worker/ain_worker-1.8-py3-none-any.whl#sha256=ad9cbf09bc4009dff744b0fba342f49e68336c8eda98e712e75fc642ad555202 (from https://www.piwheels.org/simple/ain-worker/) (requires-python:>=3) 2025-09-08T20:55:45,698 Skipping link: No binaries permitted for ain-worker: https://archive1.piwheels.org/simple/ain-worker/ain_worker-1.5-py3-none-any.whl#sha256=8995efd79f2c33d49ff69b316fc34cf35ca6050e18ce10374f78cbbb9eb467a7 (from https://www.piwheels.org/simple/ain-worker/) (requires-python:>=3) 2025-09-08T20:55:45,698 Skipping link: No binaries permitted for ain-worker: https://archive1.piwheels.org/simple/ain-worker/ain_worker-1.4.40-py3-none-any.whl#sha256=aa29e3520bf18989d4f4db9e8c4a8430b8eab41b62ce3263b6e502d26794ba72 (from https://www.piwheels.org/simple/ain-worker/) (requires-python:>=3) 2025-09-08T20:55:45,699 Skipping link: No binaries permitted for ain-worker: https://archive1.piwheels.org/simple/ain-worker/ain_worker-1.4-py3-none-any.whl#sha256=86224ae2e53b5a66c6ba3c8396c84350be21fa128ee084357ad2aad8e8e12cd1 (from https://www.piwheels.org/simple/ain-worker/) (requires-python:>=3) 2025-09-08T20:55:45,699 Skipping link: No binaries permitted for ain-worker: https://archive1.piwheels.org/simple/ain-worker/ain_worker-1.3-py3-none-any.whl#sha256=0e6ff0064378d1ff4a69ffa19a1f155bcca1fda0c394736fef11b6d62cd39938 (from https://www.piwheels.org/simple/ain-worker/) (requires-python:>=3) 2025-09-08T20:55:45,699 Skipping link: No binaries permitted for ain-worker: https://archive1.piwheels.org/simple/ain-worker/ain_worker-1.2-py3-none-any.whl#sha256=4f5caba304ba761fd80a416495f89873e84cb9bb37ff4f8f66ed08f8a18e6748 (from https://www.piwheels.org/simple/ain-worker/) (requires-python:>=3.6) 2025-09-08T20:55:45,699 Skipping link: No binaries permitted for ain-worker: https://archive1.piwheels.org/simple/ain-worker/ain_worker-1.1-py3-none-any.whl#sha256=fea21aec7a6509b4257f2af89b3a3894b47b6a6eb7c3c45d46646f345f8b26ad (from https://www.piwheels.org/simple/ain-worker/) (requires-python:>=3.6) 2025-09-08T20:55:45,699 Skipping link: No binaries permitted for ain-worker: https://archive1.piwheels.org/simple/ain-worker/ain_worker-1.0-py3-none-any.whl#sha256=4e4e729f1fdb198e18f7519aed40e8928d30da32909dfa10b4db38e68ae564ee (from https://www.piwheels.org/simple/ain-worker/) (requires-python:>=3.6) 2025-09-08T20:55:45,699 Skipping link: not a file: https://www.piwheels.org/simple/ain-worker/ 2025-09-08T20:55:45,700 Skipping link: not a file: https://pypi.org/simple/ain-worker/ 2025-09-08T20:55:45,727 Given no hashes to check 1 links for project 'ain-worker': discarding no candidates 2025-09-08T20:55:45,728 Collecting ain-worker==2.0.4 2025-09-08T20:55:45,730 Created temporary directory: /tmp/pip-unpack-nrn06o9q 2025-09-08T20:55:45,866 Downloading ain-worker-2.0.4.tar.gz (4.4 kB) 2025-09-08T20:55:45,894 Added ain-worker==2.0.4 from https://files.pythonhosted.org/packages/71/45/961d1a5a686d8863589595c1b5a6126883adc663dcb01864e5e8d16548bc/ain-worker-2.0.4.tar.gz to build tracker '/tmp/pip-build-tracker-c4qvr9w0' 2025-09-08T20:55:45,895 Running setup.py (path:/tmp/pip-wheel-j5pxvvj7/ain-worker_652f7fdfc5224225bfe37f20d8e20cf0/setup.py) egg_info for package ain-worker 2025-09-08T20:55:45,896 Created temporary directory: /tmp/pip-pip-egg-info-yu0s9gul 2025-09-08T20:55:45,896 Preparing metadata (setup.py): started 2025-09-08T20:55:45,897 Running command python setup.py egg_info 2025-09-08T20:55:46,431 Traceback (most recent call last): 2025-09-08T20:55:46,433 File "", line 2, in 2025-09-08T20:55:46,433 exec(compile(''' 2025-09-08T20:55:46,433 ~~~~^^^^^^^^^^^^ 2025-09-08T20:55:46,433 # This is -- a caller that pip uses to run setup.py 2025-09-08T20:55:46,433 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,433 ...<32 lines>... 2025-09-08T20:55:46,434 exec(compile(setup_py_code, filename, "exec")) 2025-09-08T20:55:46,434 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,434 ''' % ('/tmp/pip-wheel-j5pxvvj7/ain-worker_652f7fdfc5224225bfe37f20d8e20cf0/setup.py',), "", "exec")) 2025-09-08T20:55:46,434 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,434 File "", line 35, in 2025-09-08T20:55:46,434 File "/tmp/pip-wheel-j5pxvvj7/ain-worker_652f7fdfc5224225bfe37f20d8e20cf0/setup.py", line 3, in 2025-09-08T20:55:46,434 import dotenv 2025-09-08T20:55:46,434 ModuleNotFoundError: No module named 'dotenv' 2025-09-08T20:55:46,519 ERROR: python setup.py egg_info exited with 1 2025-09-08T20:55:46,531 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2025-09-08T20:55:46,531 exec(compile('"'"''"'"''"'"' 2025-09-08T20:55:46,531 # This is -- a caller that pip uses to run setup.py 2025-09-08T20:55:46,531 # 2025-09-08T20:55:46,531 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-08T20:55:46,531 # import from `distutils.core` to work with newer packaging standards. 2025-09-08T20:55:46,531 # - It provides a clear error message when setuptools is not installed. 2025-09-08T20:55:46,531 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-08T20:55:46,531 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-08T20:55:46,531 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-08T20:55:46,531 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-08T20:55:46,531 import os, sys, tokenize, traceback 2025-09-08T20:55:46,531 2025-09-08T20:55:46,531 try: 2025-09-08T20:55:46,531 import setuptools 2025-09-08T20:55:46,531 except ImportError: 2025-09-08T20:55:46,531 print( 2025-09-08T20:55:46,531 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-08T20:55:46,531 "the build environment with exception:", 2025-09-08T20:55:46,531 file=sys.stderr, 2025-09-08T20:55:46,531 ) 2025-09-08T20:55:46,531 traceback.print_exc() 2025-09-08T20:55:46,531 sys.exit(1) 2025-09-08T20:55:46,531 2025-09-08T20:55:46,531 __file__ = %r 2025-09-08T20:55:46,531 sys.argv[0] = __file__ 2025-09-08T20:55:46,531 2025-09-08T20:55:46,531 if os.path.exists(__file__): 2025-09-08T20:55:46,531 filename = __file__ 2025-09-08T20:55:46,531 with tokenize.open(__file__) as f: 2025-09-08T20:55:46,531 setup_py_code = f.read() 2025-09-08T20:55:46,531 else: 2025-09-08T20:55:46,531 filename = "" 2025-09-08T20:55:46,531 setup_py_code = "from setuptools import setup; setup()" 2025-09-08T20:55:46,531 2025-09-08T20:55:46,531 exec(compile(setup_py_code, filename, "exec")) 2025-09-08T20:55:46,531 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-j5pxvvj7/ain-worker_652f7fdfc5224225bfe37f20d8e20cf0/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-yu0s9gul[/] 2025-09-08T20:55:46,531 [bold magenta]cwd[/]: /tmp/pip-wheel-j5pxvvj7/ain-worker_652f7fdfc5224225bfe37f20d8e20cf0/ 2025-09-08T20:55:46,532 Preparing metadata (setup.py): finished with status 'error' 2025-09-08T20:55:46,532 ERROR: metadata generation failed 2025-09-08T20:55:46,537 Exception information: 2025-09-08T20:55:46,537 Traceback (most recent call last): 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 63, in generate_metadata 2025-09-08T20:55:46,537 call_subprocess( 2025-09-08T20:55:46,537 ~~~~~~~~~~~~~~~^ 2025-09-08T20:55:46,537 args, 2025-09-08T20:55:46,537 ^^^^^ 2025-09-08T20:55:46,537 ...<2 lines>... 2025-09-08T20:55:46,537 spinner=spinner, 2025-09-08T20:55:46,537 ^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,537 ) 2025-09-08T20:55:46,537 ^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 209, in call_subprocess 2025-09-08T20:55:46,537 raise error 2025-09-08T20:55:46,537 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2025-09-08T20:55:46,537 2025-09-08T20:55:46,537 The above exception was the direct cause of the following exception: 2025-09-08T20:55:46,537 2025-09-08T20:55:46,537 Traceback (most recent call last): 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-08T20:55:46,537 status = _inner_run() 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-08T20:55:46,537 return self.run(options, args) 2025-09-08T20:55:46,537 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-08T20:55:46,537 return func(self, options, args) 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2025-09-08T20:55:46,537 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve 2025-09-08T20:55:46,537 result = self._result = resolver.resolve( 2025-09-08T20:55:46,537 ~~~~~~~~~~~~~~~~^ 2025-09-08T20:55:46,537 collected.requirements, max_rounds=limit_how_complex_resolution_can_be 2025-09-08T20:55:46,537 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,537 ) 2025-09-08T20:55:46,537 ^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve 2025-09-08T20:55:46,537 state = resolution.resolve(requirements, max_rounds=max_rounds) 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve 2025-09-08T20:55:46,537 self._add_to_criteria(self.state.criteria, r, parent=None) 2025-09-08T20:55:46,537 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria 2025-09-08T20:55:46,537 if not criterion.candidates: 2025-09-08T20:55:46,537 ^^^^^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__ 2025-09-08T20:55:46,537 return bool(self._sequence) 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__ 2025-09-08T20:55:46,537 self._bool = any(self) 2025-09-08T20:55:46,537 ~~~^^^^^^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in 2025-09-08T20:55:46,537 return (c for c in iterator if id(c) not in self._incompatible_ids) 2025-09-08T20:55:46,537 ^^^^^^^^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 37, in _iter_built 2025-09-08T20:55:46,537 candidate = func() 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link 2025-09-08T20:55:46,537 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2025-09-08T20:55:46,537 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T20:55:46,537 link, template, name, version 2025-09-08T20:55:46,537 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,537 ) 2025-09-08T20:55:46,537 ^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link 2025-09-08T20:55:46,537 self._link_candidate_cache[link] = LinkCandidate( 2025-09-08T20:55:46,537 ~~~~~~~~~~~~~^ 2025-09-08T20:55:46,537 link, 2025-09-08T20:55:46,537 ^^^^^ 2025-09-08T20:55:46,537 ...<3 lines>... 2025-09-08T20:55:46,537 version=version, 2025-09-08T20:55:46,537 ^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,537 ) 2025-09-08T20:55:46,537 ^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 306, in __init__ 2025-09-08T20:55:46,537 super().__init__( 2025-09-08T20:55:46,537 ~~~~~~~~~~~~~~~~^ 2025-09-08T20:55:46,537 link=link, 2025-09-08T20:55:46,537 ^^^^^^^^^^ 2025-09-08T20:55:46,537 ...<4 lines>... 2025-09-08T20:55:46,537 version=version, 2025-09-08T20:55:46,537 ^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,537 ) 2025-09-08T20:55:46,537 ^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__ 2025-09-08T20:55:46,537 self.dist = self._prepare() 2025-09-08T20:55:46,537 ~~~~~~~~~~~~~^^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare 2025-09-08T20:55:46,537 dist = self._prepare_distribution() 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 317, in _prepare_distribution 2025-09-08T20:55:46,537 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2025-09-08T20:55:46,537 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in prepare_linked_requirement 2025-09-08T20:55:46,537 return self._prepare_linked_requirement(req, parallel_builds) 2025-09-08T20:55:46,537 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 647, in _prepare_linked_requirement 2025-09-08T20:55:46,537 dist = _get_prepared_distribution( 2025-09-08T20:55:46,537 req, 2025-09-08T20:55:46,537 ...<3 lines>... 2025-09-08T20:55:46,537 self.check_build_deps, 2025-09-08T20:55:46,537 ) 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2025-09-08T20:55:46,537 abstract_dist.prepare_distribution_metadata( 2025-09-08T20:55:46,537 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T20:55:46,537 finder, build_isolation, check_build_deps 2025-09-08T20:55:46,537 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,537 ) 2025-09-08T20:55:46,537 ^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 69, in prepare_distribution_metadata 2025-09-08T20:55:46,537 self.req.prepare_metadata() 2025-09-08T20:55:46,537 ~~~~~~~~~~~~~~~~~~~~~~~~~^^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 581, in prepare_metadata 2025-09-08T20:55:46,537 self.metadata_directory = generate_metadata_legacy( 2025-09-08T20:55:46,537 ~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T20:55:46,537 build_env=self.build_env, 2025-09-08T20:55:46,537 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,537 ...<3 lines>... 2025-09-08T20:55:46,537 details=details, 2025-09-08T20:55:46,537 ^^^^^^^^^^^^^^^^ 2025-09-08T20:55:46,537 ) 2025-09-08T20:55:46,537 ^ 2025-09-08T20:55:46,537 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 70, in generate_metadata 2025-09-08T20:55:46,537 raise MetadataGenerationFailed(package_details=details) from error 2025-09-08T20:55:46,537 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2025-09-08T20:55:46,558 Removed ain-worker==2.0.4 from https://files.pythonhosted.org/packages/71/45/961d1a5a686d8863589595c1b5a6126883adc663dcb01864e5e8d16548bc/ain-worker-2.0.4.tar.gz from build tracker '/tmp/pip-build-tracker-c4qvr9w0' 2025-09-08T20:55:46,558 Removed build tracker: '/tmp/pip-build-tracker-c4qvr9w0'