2025-09-09T05:35:13,271 Created temporary directory: /tmp/pip-build-tracker-x_unqsl6 2025-09-09T05:35:13,272 Initialized build tracking at /tmp/pip-build-tracker-x_unqsl6 2025-09-09T05:35:13,272 Created build tracker: /tmp/pip-build-tracker-x_unqsl6 2025-09-09T05:35:13,272 Entered build tracker: /tmp/pip-build-tracker-x_unqsl6 2025-09-09T05:35:13,273 Created temporary directory: /tmp/pip-wheel-zf91lige 2025-09-09T05:35:13,276 Created temporary directory: /tmp/pip-ephem-wheel-cache-qa5fw3fn 2025-09-09T05:35:13,339 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-09T05:35:13,341 2 location(s) to search for versions of coverage-strategies: 2025-09-09T05:35:13,341 * https://pypi.org/simple/coverage-strategies/ 2025-09-09T05:35:13,341 * https://www.piwheels.org/simple/coverage-strategies/ 2025-09-09T05:35:13,341 Fetching project page and analyzing links: https://pypi.org/simple/coverage-strategies/ 2025-09-09T05:35:13,341 Getting page https://pypi.org/simple/coverage-strategies/ 2025-09-09T05:35:13,343 Found index url https://pypi.org/simple/ 2025-09-09T05:35:13,489 Fetched page https://pypi.org/simple/coverage-strategies/ as application/vnd.pypi.simple.v1+json 2025-09-09T05:35:13,496 Found link https://files.pythonhosted.org/packages/01/7f/1098340c34ea1bf810ed65c23a29c713c9f42b72241b5218ac647fb95929/coverage_strategies-0.2.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 0.2 2025-09-09T05:35:13,496 Found link https://files.pythonhosted.org/packages/1e/32/a827f87043245d50472870d5e33e97009cd097627d97afc11b6b234c2d11/coverage_strategies-0.3.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 0.3 2025-09-09T05:35:13,497 Found link https://files.pythonhosted.org/packages/b4/2e/574886e7d45f7409fa4a09efb21aec5ddc27f12400a12e039e7594a558bb/coverage_strategies-0.4.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 0.4 2025-09-09T05:35:13,497 Found link https://files.pythonhosted.org/packages/b0/0b/47ed68f91db1d083fd9c57f3510826554330b22b079327d0de9e473098c4/coverage_strategies-0.5.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 0.5 2025-09-09T05:35:13,498 Found link https://files.pythonhosted.org/packages/ef/77/ed0f14b1c4930762bf31acb7fe8dbfaf624b0f91d708ae694424e5ffed1c/coverage_strategies-0.6.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 0.6 2025-09-09T05:35:13,498 Found link https://files.pythonhosted.org/packages/17/ba/9e8efcb12fcf6930960406bf7aba2056930dc114ef48f1a79fc842ff2a0f/coverage_strategies-0.7.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 0.7 2025-09-09T05:35:13,499 Found link https://files.pythonhosted.org/packages/6f/48/fa112f02650db28a1b5af48577f5d7ef130948cd110e10b1798e686e112d/coverage_strategies-0.8.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 0.8 2025-09-09T05:35:13,499 Found link https://files.pythonhosted.org/packages/a7/e9/86c1adf727bc99008cb00c68eb1a89218cfd69a33673a1e4d97f1be96859/coverage_strategies-v0.9.8.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: v0.9.8 2025-09-09T05:35:13,500 Found link https://files.pythonhosted.org/packages/e2/99/d56dc42a254e38e0c4840c7fa0d83d4cb0ca3d833ef60d89a37603d13db9/coverage_strategies-v0.9.9.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: v0.9.9 2025-09-09T05:35:13,500 Found link https://files.pythonhosted.org/packages/2f/2c/7d3b30ebcfd9001cfdc91f644f29a8e8defd94b9b75999d8f87380a52d63/coverage_strategies-v0.9.10.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: v0.9.10 2025-09-09T05:35:13,501 Found link https://files.pythonhosted.org/packages/3d/52/4316fdf8cd2d7cd46d99e7ef0087fe8bf64972ebb76a330ff5dbf840c9d2/coverage_strategies-v0.9.11.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: v0.9.11 2025-09-09T05:35:13,501 Found link https://files.pythonhosted.org/packages/81/e0/bb52c6cdbc2c53d308cf9e89042406227ed3059252db1d716e5997cbf0c5/coverage_strategies-v0.9.12.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: v0.9.12 2025-09-09T05:35:13,501 Found link https://files.pythonhosted.org/packages/fa/5f/1c2c7942dab15bd843fa27a8f70d6ff72714003f722be68bf5574ddbfb25/coverage_strategies-v0.9.13.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: v0.9.13 2025-09-09T05:35:13,502 Found link https://files.pythonhosted.org/packages/1d/3c/83fd1fd43fc9c903e3288001ab3ffd184c5a929448a8a0ffe0ec7cce0710/coverage_strategies-v0.9.14.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: v0.9.14 2025-09-09T05:35:13,502 Found link https://files.pythonhosted.org/packages/18/d9/facb7bcc54d0ef62c2b2f90b8e59718736fea30646e8a3e78b1591fadbcd/coverage_strategies-0.9.15.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 0.9.15 2025-09-09T05:35:13,503 Found link https://files.pythonhosted.org/packages/e8/6f/518e87d35294d819c8a4e12e21b7aff2891c5929be9d4fde0f9707cf92b1/coverage_strategies-0.9.16.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 0.9.16 2025-09-09T05:35:13,503 Found link https://files.pythonhosted.org/packages/fd/7a/1429dc48eb453119aa9db4d916b2687dac27600f5846fc046d29906563ed/coverage_strategies-0.9.18.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 0.9.18 2025-09-09T05:35:13,504 Found link https://files.pythonhosted.org/packages/e1/1c/b64ab3561e9ea7535e1c42d401ea00ccc0db5ed1c5f60939363d95f981f3/coverage_strategies-1.0.0.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 1.0.0 2025-09-09T05:35:13,504 Found link https://files.pythonhosted.org/packages/15/a4/9e8062b1da71eec31c91d0823aead8ce521b1fd15f8458a0f7b36e6b8047/coverage_strategies-1.1.0.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 1.1.0 2025-09-09T05:35:13,505 Found link https://files.pythonhosted.org/packages/08/cf/ad6fb71a6243598b09d0970d47f2a01b92cf64bdde190bc037ace7aba4ac/coverage_strategies-1.1.1.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 1.1.1 2025-09-09T05:35:13,505 Found link https://files.pythonhosted.org/packages/bb/c6/afac59b39ecd2e06634e607c6d1bf9f307b04ae19e8ef87c2853ceda6461/coverage_strategies-1.1.2.tar.gz (from https://pypi.org/simple/coverage-strategies/), version: 1.1.2 2025-09-09T05:35:13,506 Fetching project page and analyzing links: https://www.piwheels.org/simple/coverage-strategies/ 2025-09-09T05:35:13,506 Getting page https://www.piwheels.org/simple/coverage-strategies/ 2025-09-09T05:35:13,508 Found index url https://www.piwheels.org/simple/ 2025-09-09T05:35:13,605 Fetched page https://www.piwheels.org/simple/coverage-strategies/ as text/html 2025-09-09T05:35:13,609 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-1.1.2-py3-none-any.whl#sha256=d882c17117fa9ca9df11f567a291c29151ab3278091cf100d3f96b42d4783b0b (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,609 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-1.1.1-py3-none-any.whl#sha256=cfb257a0c525daeedc809935a8c0d4693bc4a37a3a0124ab0e3c1f7e39e09c3e (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,609 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-1.1.0-py3-none-any.whl#sha256=9f53879876d01155ed23a7d362ba69e6d61bf8b5839cfc3b6cfa6e0b5f6e6aca (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,609 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-1.0.0-py3-none-any.whl#sha256=d8aab65e177c1db0ce09f59b627dfdcd3278d21566775549f6feeb50120df666 (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,609 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-0.9.18-py3-none-any.whl#sha256=907c2a78092e507166122eefe39b15a06f3c829aba4e89dc671b52bb7ac7ea1f (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,609 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-0.9.16-py3-none-any.whl#sha256=fdd95f8ed54561b699aa92225f7012bcbc9ea78e9c41d0485d3aff2458459519 (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,609 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-0.9.15-py3-none-any.whl#sha256=104691c81bf32619e43e4c706c9f088cbf758f133e5270c1868f0a860fc4a707 (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,610 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-0.0.0-py3-none-any.whl#sha256=bf0ef5a210b6914c71592a126a41757c7b3ed800f2df61f4800fd16e4e3ac2c1 (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,610 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-0.8-py3-none-any.whl#sha256=91fcf016e19e12aae66ca328b7d209c362338e611ca9881aa8319b794ff1448e (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,610 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-0.7-py3-none-any.whl#sha256=bfad611712ecb2b3c767920facf1080595a588fc6f70aee60f2c81b7729dc828 (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,610 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-0.6-py3-none-any.whl#sha256=b826457249a34374aedc28b739250dac2ca855b5bbed084ea5e9b1002591e3b6 (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,610 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-0.5-py3-none-any.whl#sha256=5a1fd752bef5bd6e6f1815768479dd338125a2bc9ef04a31c6ad98496c72dc78 (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,610 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-0.4-py3-none-any.whl#sha256=edefc4c58ef8df5b8c9f4322f2a820ecc543fcfb373ce0a08326ed96ca499ca4 (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,610 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-0.3-py3-none-any.whl#sha256=d3920661aa3836ab218957cfba5dd47e85c673a996fc42a4fc21c03f137889e2 (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,610 Skipping link: No binaries permitted for coverage-strategies: https://archive1.piwheels.org/simple/coverage-strategies/coverage_strategies-0.2-py3-none-any.whl#sha256=0c90f0ec83bf07cfe49b133481d677516725b4e3ac78791b7ea0f94495050779 (from https://www.piwheels.org/simple/coverage-strategies/) 2025-09-09T05:35:13,611 Skipping link: not a file: https://www.piwheels.org/simple/coverage-strategies/ 2025-09-09T05:35:13,611 Skipping link: not a file: https://pypi.org/simple/coverage-strategies/ 2025-09-09T05:35:13,638 Given no hashes to check 1 links for project 'coverage-strategies': discarding no candidates 2025-09-09T05:35:13,639 Collecting coverage-strategies==v0.9.8 2025-09-09T05:35:13,640 Created temporary directory: /tmp/pip-unpack-qxzbcuqj 2025-09-09T05:35:13,777 Downloading coverage_strategies-v0.9.8.tar.gz (13 kB) 2025-09-09T05:35:13,810 Added coverage-strategies==v0.9.8 from https://files.pythonhosted.org/packages/a7/e9/86c1adf727bc99008cb00c68eb1a89218cfd69a33673a1e4d97f1be96859/coverage_strategies-v0.9.8.tar.gz to build tracker '/tmp/pip-build-tracker-x_unqsl6' 2025-09-09T05:35:13,812 Running setup.py (path:/tmp/pip-wheel-zf91lige/coverage-strategies_28f1d0ca00ae4e79b909ea449353122a/setup.py) egg_info for package coverage-strategies 2025-09-09T05:35:13,812 Created temporary directory: /tmp/pip-pip-egg-info-kup3o_ir 2025-09-09T05:35:13,812 Preparing metadata (setup.py): started 2025-09-09T05:35:13,813 Running command python setup.py egg_info 2025-09-09T05:35:14,340 Traceback (most recent call last): 2025-09-09T05:35:14,342 File "", line 2, in 2025-09-09T05:35:14,342 exec(compile(''' 2025-09-09T05:35:14,342 ~~~~^^^^^^^^^^^^ 2025-09-09T05:35:14,342 # This is -- a caller that pip uses to run setup.py 2025-09-09T05:35:14,342 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,342 ...<32 lines>... 2025-09-09T05:35:14,343 exec(compile(setup_py_code, filename, "exec")) 2025-09-09T05:35:14,343 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,343 ''' % ('/tmp/pip-wheel-zf91lige/coverage-strategies_28f1d0ca00ae4e79b909ea449353122a/setup.py',), "", "exec")) 2025-09-09T05:35:14,343 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,343 File "", line 35, in 2025-09-09T05:35:14,343 File "/tmp/pip-wheel-zf91lige/coverage-strategies_28f1d0ca00ae4e79b909ea449353122a/setup.py", line 4, in 2025-09-09T05:35:14,343 PACKAGE_VERSION = environ['PACKAGE_VERSION'] 2025-09-09T05:35:14,343 ~~~~~~~^^^^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,344 File "", line 717, in __getitem__ 2025-09-09T05:35:14,344 KeyError: 'PACKAGE_VERSION' 2025-09-09T05:35:14,428 ERROR: python setup.py egg_info exited with 1 2025-09-09T05:35:14,441 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2025-09-09T05:35:14,441 exec(compile('"'"''"'"''"'"' 2025-09-09T05:35:14,441 # This is -- a caller that pip uses to run setup.py 2025-09-09T05:35:14,441 # 2025-09-09T05:35:14,441 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-09T05:35:14,441 # import from `distutils.core` to work with newer packaging standards. 2025-09-09T05:35:14,441 # - It provides a clear error message when setuptools is not installed. 2025-09-09T05:35:14,441 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-09T05:35:14,441 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-09T05:35:14,441 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-09T05:35:14,441 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-09T05:35:14,441 import os, sys, tokenize, traceback 2025-09-09T05:35:14,441 2025-09-09T05:35:14,441 try: 2025-09-09T05:35:14,441 import setuptools 2025-09-09T05:35:14,441 except ImportError: 2025-09-09T05:35:14,441 print( 2025-09-09T05:35:14,441 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-09T05:35:14,441 "the build environment with exception:", 2025-09-09T05:35:14,441 file=sys.stderr, 2025-09-09T05:35:14,441 ) 2025-09-09T05:35:14,441 traceback.print_exc() 2025-09-09T05:35:14,441 sys.exit(1) 2025-09-09T05:35:14,441 2025-09-09T05:35:14,441 __file__ = %r 2025-09-09T05:35:14,441 sys.argv[0] = __file__ 2025-09-09T05:35:14,441 2025-09-09T05:35:14,441 if os.path.exists(__file__): 2025-09-09T05:35:14,441 filename = __file__ 2025-09-09T05:35:14,441 with tokenize.open(__file__) as f: 2025-09-09T05:35:14,441 setup_py_code = f.read() 2025-09-09T05:35:14,441 else: 2025-09-09T05:35:14,441 filename = "" 2025-09-09T05:35:14,441 setup_py_code = "from setuptools import setup; setup()" 2025-09-09T05:35:14,441 2025-09-09T05:35:14,441 exec(compile(setup_py_code, filename, "exec")) 2025-09-09T05:35:14,441 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-zf91lige/coverage-strategies_28f1d0ca00ae4e79b909ea449353122a/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-kup3o_ir[/] 2025-09-09T05:35:14,441 [bold magenta]cwd[/]: /tmp/pip-wheel-zf91lige/coverage-strategies_28f1d0ca00ae4e79b909ea449353122a/ 2025-09-09T05:35:14,441 Preparing metadata (setup.py): finished with status 'error' 2025-09-09T05:35:14,442 ERROR: metadata generation failed 2025-09-09T05:35:14,449 Exception information: 2025-09-09T05:35:14,449 Traceback (most recent call last): 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 63, in generate_metadata 2025-09-09T05:35:14,449 call_subprocess( 2025-09-09T05:35:14,449 ~~~~~~~~~~~~~~~^ 2025-09-09T05:35:14,449 args, 2025-09-09T05:35:14,449 ^^^^^ 2025-09-09T05:35:14,449 ...<2 lines>... 2025-09-09T05:35:14,449 spinner=spinner, 2025-09-09T05:35:14,449 ^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,449 ) 2025-09-09T05:35:14,449 ^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 209, in call_subprocess 2025-09-09T05:35:14,449 raise error 2025-09-09T05:35:14,449 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2025-09-09T05:35:14,449 2025-09-09T05:35:14,449 The above exception was the direct cause of the following exception: 2025-09-09T05:35:14,449 2025-09-09T05:35:14,449 Traceback (most recent call last): 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-09T05:35:14,449 status = _inner_run() 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-09T05:35:14,449 return self.run(options, args) 2025-09-09T05:35:14,449 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-09T05:35:14,449 return func(self, options, args) 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2025-09-09T05:35:14,449 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve 2025-09-09T05:35:14,449 result = self._result = resolver.resolve( 2025-09-09T05:35:14,449 ~~~~~~~~~~~~~~~~^ 2025-09-09T05:35:14,449 collected.requirements, max_rounds=limit_how_complex_resolution_can_be 2025-09-09T05:35:14,449 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,449 ) 2025-09-09T05:35:14,449 ^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve 2025-09-09T05:35:14,449 state = resolution.resolve(requirements, max_rounds=max_rounds) 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve 2025-09-09T05:35:14,449 self._add_to_criteria(self.state.criteria, r, parent=None) 2025-09-09T05:35:14,449 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria 2025-09-09T05:35:14,449 if not criterion.candidates: 2025-09-09T05:35:14,449 ^^^^^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__ 2025-09-09T05:35:14,449 return bool(self._sequence) 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__ 2025-09-09T05:35:14,449 self._bool = any(self) 2025-09-09T05:35:14,449 ~~~^^^^^^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in 2025-09-09T05:35:14,449 return (c for c in iterator if id(c) not in self._incompatible_ids) 2025-09-09T05:35:14,449 ^^^^^^^^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 37, in _iter_built 2025-09-09T05:35:14,449 candidate = func() 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link 2025-09-09T05:35:14,449 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2025-09-09T05:35:14,449 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-09T05:35:14,449 link, template, name, version 2025-09-09T05:35:14,449 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,449 ) 2025-09-09T05:35:14,449 ^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link 2025-09-09T05:35:14,449 self._link_candidate_cache[link] = LinkCandidate( 2025-09-09T05:35:14,449 ~~~~~~~~~~~~~^ 2025-09-09T05:35:14,449 link, 2025-09-09T05:35:14,449 ^^^^^ 2025-09-09T05:35:14,449 ...<3 lines>... 2025-09-09T05:35:14,449 version=version, 2025-09-09T05:35:14,449 ^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,449 ) 2025-09-09T05:35:14,449 ^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 306, in __init__ 2025-09-09T05:35:14,449 super().__init__( 2025-09-09T05:35:14,449 ~~~~~~~~~~~~~~~~^ 2025-09-09T05:35:14,449 link=link, 2025-09-09T05:35:14,449 ^^^^^^^^^^ 2025-09-09T05:35:14,449 ...<4 lines>... 2025-09-09T05:35:14,449 version=version, 2025-09-09T05:35:14,449 ^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,449 ) 2025-09-09T05:35:14,449 ^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__ 2025-09-09T05:35:14,449 self.dist = self._prepare() 2025-09-09T05:35:14,449 ~~~~~~~~~~~~~^^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare 2025-09-09T05:35:14,449 dist = self._prepare_distribution() 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 317, in _prepare_distribution 2025-09-09T05:35:14,449 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2025-09-09T05:35:14,449 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in prepare_linked_requirement 2025-09-09T05:35:14,449 return self._prepare_linked_requirement(req, parallel_builds) 2025-09-09T05:35:14,449 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 647, in _prepare_linked_requirement 2025-09-09T05:35:14,449 dist = _get_prepared_distribution( 2025-09-09T05:35:14,449 req, 2025-09-09T05:35:14,449 ...<3 lines>... 2025-09-09T05:35:14,449 self.check_build_deps, 2025-09-09T05:35:14,449 ) 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2025-09-09T05:35:14,449 abstract_dist.prepare_distribution_metadata( 2025-09-09T05:35:14,449 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-09T05:35:14,449 finder, build_isolation, check_build_deps 2025-09-09T05:35:14,449 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,449 ) 2025-09-09T05:35:14,449 ^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 69, in prepare_distribution_metadata 2025-09-09T05:35:14,449 self.req.prepare_metadata() 2025-09-09T05:35:14,449 ~~~~~~~~~~~~~~~~~~~~~~~~~^^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 581, in prepare_metadata 2025-09-09T05:35:14,449 self.metadata_directory = generate_metadata_legacy( 2025-09-09T05:35:14,449 ~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-09T05:35:14,449 build_env=self.build_env, 2025-09-09T05:35:14,449 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,449 ...<3 lines>... 2025-09-09T05:35:14,449 details=details, 2025-09-09T05:35:14,449 ^^^^^^^^^^^^^^^^ 2025-09-09T05:35:14,449 ) 2025-09-09T05:35:14,449 ^ 2025-09-09T05:35:14,449 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 70, in generate_metadata 2025-09-09T05:35:14,449 raise MetadataGenerationFailed(package_details=details) from error 2025-09-09T05:35:14,449 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2025-09-09T05:35:14,473 Removed coverage-strategies==v0.9.8 from https://files.pythonhosted.org/packages/a7/e9/86c1adf727bc99008cb00c68eb1a89218cfd69a33673a1e4d97f1be96859/coverage_strategies-v0.9.8.tar.gz from build tracker '/tmp/pip-build-tracker-x_unqsl6' 2025-09-09T05:35:14,473 Removed build tracker: '/tmp/pip-build-tracker-x_unqsl6'