2025-09-08T17:11:08,779 Created temporary directory: /tmp/pip-build-tracker-ky8w9e6n 2025-09-08T17:11:08,780 Initialized build tracking at /tmp/pip-build-tracker-ky8w9e6n 2025-09-08T17:11:08,780 Created build tracker: /tmp/pip-build-tracker-ky8w9e6n 2025-09-08T17:11:08,780 Entered build tracker: /tmp/pip-build-tracker-ky8w9e6n 2025-09-08T17:11:08,781 Created temporary directory: /tmp/pip-wheel-tf1xj3_z 2025-09-08T17:11:08,784 Created temporary directory: /tmp/pip-ephem-wheel-cache-3s7_1li0 2025-09-08T17:11:08,839 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-08T17:11:08,841 2 location(s) to search for versions of chromedevtools: 2025-09-08T17:11:08,841 * https://pypi.org/simple/chromedevtools/ 2025-09-08T17:11:08,841 * https://www.piwheels.org/simple/chromedevtools/ 2025-09-08T17:11:08,842 Fetching project page and analyzing links: https://pypi.org/simple/chromedevtools/ 2025-09-08T17:11:08,842 Getting page https://pypi.org/simple/chromedevtools/ 2025-09-08T17:11:08,843 Found index url https://pypi.org/simple/ 2025-09-08T17:11:08,916 Fetched page https://pypi.org/simple/chromedevtools/ as application/vnd.pypi.simple.v1+json 2025-09-08T17:11:08,918 Found link https://files.pythonhosted.org/packages/62/3e/e411afa75c3e3ded46e49f81b49a67b77e6ab574ed88bf261a0e0b756bf1/ChromeDevTools-0.2.1.tar.gz (from https://pypi.org/simple/chromedevtools/), version: 0.2.1 2025-09-08T17:11:08,919 Found link https://files.pythonhosted.org/packages/4f/9e/c61c5f3a4a383d2c14ca49f9b9bd37e6d8d62c8f9c7ce289a13fcc35b11c/ChromeDevTools-0.2.2.tar.gz (from https://pypi.org/simple/chromedevtools/), version: 0.2.2 2025-09-08T17:11:08,919 Found link https://files.pythonhosted.org/packages/6f/5f/b3ced54b849d63df2d856b1d40fe93705fd8aca81c5b60845dba9a7a361a/ChromeDevTools-0.2.3.tar.gz (from https://pypi.org/simple/chromedevtools/), version: 0.2.3 2025-09-08T17:11:08,919 Found link https://files.pythonhosted.org/packages/6b/3b/d80c76a6037e3f76a582de325e8f4d1e916ccd4a60a19c3ccdd9de7aedb6/ChromeDevTools-0.2.4.tar.gz (from https://pypi.org/simple/chromedevtools/), version: 0.2.4 2025-09-08T17:11:08,919 Found link https://files.pythonhosted.org/packages/4d/de/dcd40e2ca235a9dfb149e98ad3a14f18ee798612e11fcaf6281ceda27b74/ChromeDevTools-0.2.5.tar.gz (from https://pypi.org/simple/chromedevtools/), version: 0.2.5 2025-09-08T17:11:08,920 Found link https://files.pythonhosted.org/packages/fb/1b/fbcef1ac5ebaecfc48998599784d61ec8da7a951cd469bed6fdbbac7a747/ChromeDevTools-0.2.6.tar.gz (from https://pypi.org/simple/chromedevtools/), version: 0.2.6 2025-09-08T17:11:08,920 Found link https://files.pythonhosted.org/packages/9a/b0/609734a853123cc7d96c7a2781e2b573225b31829ad3247c25d7c88fdfcc/ChromeDevTools-0.3.0.tar.gz (from https://pypi.org/simple/chromedevtools/), version: 0.3.0 2025-09-08T17:11:08,920 Found link https://files.pythonhosted.org/packages/da/d2/9fa4eff4ac8aa5fa0b8b7414b203746b4aa7475b27bea7007b1ecd0f6d4e/ChromeDevTools-0.3.5.tar.gz (from https://pypi.org/simple/chromedevtools/), version: 0.3.5 2025-09-08T17:11:08,920 Found link https://files.pythonhosted.org/packages/47/46/7633ebe7fd369721fc963d9fdfde4e5d648e40114fa91968f111e4174914/ChromeDevTools-0.3.6.tar.gz (from https://pypi.org/simple/chromedevtools/), version: 0.3.6 2025-09-08T17:11:08,920 Found link https://files.pythonhosted.org/packages/54/45/a6d37834a328d3de5b176d159348b85e9cef681ad3f39c104a5903b27816/ChromeDevTools-0.3.7.tar.gz (from https://pypi.org/simple/chromedevtools/), version: 0.3.7 2025-09-08T17:11:08,921 Found link https://files.pythonhosted.org/packages/af/29/9ebd048d1b2c93ea455ba524e8edf140645bb874beb4f22ff208cd4a114f/ChromeDevTools-0.3.8.tar.gz (from https://pypi.org/simple/chromedevtools/), version: 0.3.8 2025-09-08T17:11:08,921 Found link https://files.pythonhosted.org/packages/a0/09/01d5ec909a8bf3a74830085d6f73c8397cf6b3b59b60de5bee34ad8b11a5/ChromeDevTools-0.3.9.tar.gz (from https://pypi.org/simple/chromedevtools/), version: 0.3.9 2025-09-08T17:11:08,921 Fetching project page and analyzing links: https://www.piwheels.org/simple/chromedevtools/ 2025-09-08T17:11:08,922 Getting page https://www.piwheels.org/simple/chromedevtools/ 2025-09-08T17:11:08,922 Found index url https://www.piwheels.org/simple/ 2025-09-08T17:11:09,009 Fetched page https://www.piwheels.org/simple/chromedevtools/ as text/html 2025-09-08T17:11:09,011 Skipping link: No binaries permitted for chromedevtools: https://archive1.piwheels.org/simple/chromedevtools/ChromeDevTools-0.3.9-py3-none-any.whl#sha256=1ed4c6e4450b729d028f51f83741d91f4013c4aa304b4f5577ae3487803b0302 (from https://www.piwheels.org/simple/chromedevtools/) 2025-09-08T17:11:09,011 Skipping link: No binaries permitted for chromedevtools: https://archive1.piwheels.org/simple/chromedevtools/ChromeDevTools-0.3.8-py3-none-any.whl#sha256=94ed6123dc72a60eb636e681259284c1edc2a6b9e06ac869ec8c78d0e60bf197 (from https://www.piwheels.org/simple/chromedevtools/) 2025-09-08T17:11:09,011 Skipping link: No binaries permitted for chromedevtools: https://archive1.piwheels.org/simple/chromedevtools/ChromeDevTools-0.3.7-py3-none-any.whl#sha256=83f392bbcd651deaeae57a79af16ff71a3bfdf3d6c2188d1f89a0599158b2e81 (from https://www.piwheels.org/simple/chromedevtools/) 2025-09-08T17:11:09,011 Skipping link: No binaries permitted for chromedevtools: https://archive1.piwheels.org/simple/chromedevtools/ChromeDevTools-0.3.6-py3-none-any.whl#sha256=737337767547ff225be79e20ed4437b3272af6779906ea06d747d467aad8d109 (from https://www.piwheels.org/simple/chromedevtools/) 2025-09-08T17:11:09,012 Skipping link: No binaries permitted for chromedevtools: https://archive1.piwheels.org/simple/chromedevtools/ChromeDevTools-0.3.5-py3-none-any.whl#sha256=a8dbad766537135b9d825524848bb7cc5d4f8783de291f1d9db02d4ce07faa74 (from https://www.piwheels.org/simple/chromedevtools/) 2025-09-08T17:11:09,012 Skipping link: No binaries permitted for chromedevtools: https://archive1.piwheels.org/simple/chromedevtools/ChromeDevTools-0.3.0-py3-none-any.whl#sha256=f979d7eaaccfe51c2d783c8137b1d79eca1db84e506bda313d0343e6b7ea198a (from https://www.piwheels.org/simple/chromedevtools/) 2025-09-08T17:11:09,012 Skipping link: No binaries permitted for chromedevtools: https://archive1.piwheels.org/simple/chromedevtools/ChromeDevTools-0.2.6-py3-none-any.whl#sha256=3f6c356fd8df1d2d918b6f15bb69bec52c6e527ed4b114c802c195bf73a265b1 (from https://www.piwheels.org/simple/chromedevtools/) 2025-09-08T17:11:09,012 Skipping link: not a file: https://www.piwheels.org/simple/chromedevtools/ 2025-09-08T17:11:09,012 Skipping link: not a file: https://pypi.org/simple/chromedevtools/ 2025-09-08T17:11:09,037 Given no hashes to check 1 links for project 'chromedevtools': discarding no candidates 2025-09-08T17:11:09,039 Collecting chromedevtools==0.2.4 2025-09-08T17:11:09,040 Created temporary directory: /tmp/pip-unpack-z5r_qf2x 2025-09-08T17:11:09,177 Downloading ChromeDevTools-0.2.4.tar.gz (6.0 kB) 2025-09-08T17:11:09,207 Added chromedevtools==0.2.4 from https://files.pythonhosted.org/packages/6b/3b/d80c76a6037e3f76a582de325e8f4d1e916ccd4a60a19c3ccdd9de7aedb6/ChromeDevTools-0.2.4.tar.gz to build tracker '/tmp/pip-build-tracker-ky8w9e6n' 2025-09-08T17:11:09,208 Running setup.py (path:/tmp/pip-wheel-tf1xj3_z/chromedevtools_6d4b44cb3c3a46c4a9650743de7137dc/setup.py) egg_info for package chromedevtools 2025-09-08T17:11:09,209 Created temporary directory: /tmp/pip-pip-egg-info-5oxyct4l 2025-09-08T17:11:09,209 Preparing metadata (setup.py): started 2025-09-08T17:11:09,210 Running command python setup.py egg_info 2025-09-08T17:11:09,723 Traceback (most recent call last): 2025-09-08T17:11:09,725 File "", line 2, in 2025-09-08T17:11:09,725 exec(compile(''' 2025-09-08T17:11:09,725 ~~~~^^^^^^^^^^^^ 2025-09-08T17:11:09,725 # This is -- a caller that pip uses to run setup.py 2025-09-08T17:11:09,725 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,726 ...<32 lines>... 2025-09-08T17:11:09,726 exec(compile(setup_py_code, filename, "exec")) 2025-09-08T17:11:09,726 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,726 ''' % ('/tmp/pip-wheel-tf1xj3_z/chromedevtools_6d4b44cb3c3a46c4a9650743de7137dc/setup.py',), "", "exec")) 2025-09-08T17:11:09,726 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,726 File "", line 35, in 2025-09-08T17:11:09,726 File "/tmp/pip-wheel-tf1xj3_z/chromedevtools_6d4b44cb3c3a46c4a9650743de7137dc/setup.py", line 28, in 2025-09-08T17:11:09,726 with open((cur_dir / 'requirements.txt').resolve()) as f: 2025-09-08T17:11:09,727 ~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,727 FileNotFoundError: [Errno 2] No such file or directory: '/tmp/pip-wheel-tf1xj3_z/chromedevtools_6d4b44cb3c3a46c4a9650743de7137dc/requirements.txt' 2025-09-08T17:11:09,811 ERROR: python setup.py egg_info exited with 1 2025-09-08T17:11:09,822 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2025-09-08T17:11:09,822 exec(compile('"'"''"'"''"'"' 2025-09-08T17:11:09,822 # This is -- a caller that pip uses to run setup.py 2025-09-08T17:11:09,822 # 2025-09-08T17:11:09,822 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-08T17:11:09,822 # import from `distutils.core` to work with newer packaging standards. 2025-09-08T17:11:09,822 # - It provides a clear error message when setuptools is not installed. 2025-09-08T17:11:09,822 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-08T17:11:09,822 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-08T17:11:09,822 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-08T17:11:09,822 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-08T17:11:09,822 import os, sys, tokenize, traceback 2025-09-08T17:11:09,822 2025-09-08T17:11:09,822 try: 2025-09-08T17:11:09,822 import setuptools 2025-09-08T17:11:09,822 except ImportError: 2025-09-08T17:11:09,822 print( 2025-09-08T17:11:09,822 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-08T17:11:09,822 "the build environment with exception:", 2025-09-08T17:11:09,822 file=sys.stderr, 2025-09-08T17:11:09,822 ) 2025-09-08T17:11:09,822 traceback.print_exc() 2025-09-08T17:11:09,822 sys.exit(1) 2025-09-08T17:11:09,822 2025-09-08T17:11:09,822 __file__ = %r 2025-09-08T17:11:09,822 sys.argv[0] = __file__ 2025-09-08T17:11:09,822 2025-09-08T17:11:09,822 if os.path.exists(__file__): 2025-09-08T17:11:09,822 filename = __file__ 2025-09-08T17:11:09,822 with tokenize.open(__file__) as f: 2025-09-08T17:11:09,822 setup_py_code = f.read() 2025-09-08T17:11:09,822 else: 2025-09-08T17:11:09,822 filename = "" 2025-09-08T17:11:09,822 setup_py_code = "from setuptools import setup; setup()" 2025-09-08T17:11:09,822 2025-09-08T17:11:09,822 exec(compile(setup_py_code, filename, "exec")) 2025-09-08T17:11:09,822 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-tf1xj3_z/chromedevtools_6d4b44cb3c3a46c4a9650743de7137dc/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-5oxyct4l[/] 2025-09-08T17:11:09,823 [bold magenta]cwd[/]: /tmp/pip-wheel-tf1xj3_z/chromedevtools_6d4b44cb3c3a46c4a9650743de7137dc/ 2025-09-08T17:11:09,823 Preparing metadata (setup.py): finished with status 'error' 2025-09-08T17:11:09,824 ERROR: metadata generation failed 2025-09-08T17:11:09,829 Exception information: 2025-09-08T17:11:09,829 Traceback (most recent call last): 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 63, in generate_metadata 2025-09-08T17:11:09,829 call_subprocess( 2025-09-08T17:11:09,829 ~~~~~~~~~~~~~~~^ 2025-09-08T17:11:09,829 args, 2025-09-08T17:11:09,829 ^^^^^ 2025-09-08T17:11:09,829 ...<2 lines>... 2025-09-08T17:11:09,829 spinner=spinner, 2025-09-08T17:11:09,829 ^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,829 ) 2025-09-08T17:11:09,829 ^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 209, in call_subprocess 2025-09-08T17:11:09,829 raise error 2025-09-08T17:11:09,829 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2025-09-08T17:11:09,829 2025-09-08T17:11:09,829 The above exception was the direct cause of the following exception: 2025-09-08T17:11:09,829 2025-09-08T17:11:09,829 Traceback (most recent call last): 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-08T17:11:09,829 status = _inner_run() 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-08T17:11:09,829 return self.run(options, args) 2025-09-08T17:11:09,829 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-08T17:11:09,829 return func(self, options, args) 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2025-09-08T17:11:09,829 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve 2025-09-08T17:11:09,829 result = self._result = resolver.resolve( 2025-09-08T17:11:09,829 ~~~~~~~~~~~~~~~~^ 2025-09-08T17:11:09,829 collected.requirements, max_rounds=limit_how_complex_resolution_can_be 2025-09-08T17:11:09,829 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,829 ) 2025-09-08T17:11:09,829 ^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve 2025-09-08T17:11:09,829 state = resolution.resolve(requirements, max_rounds=max_rounds) 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve 2025-09-08T17:11:09,829 self._add_to_criteria(self.state.criteria, r, parent=None) 2025-09-08T17:11:09,829 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria 2025-09-08T17:11:09,829 if not criterion.candidates: 2025-09-08T17:11:09,829 ^^^^^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__ 2025-09-08T17:11:09,829 return bool(self._sequence) 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__ 2025-09-08T17:11:09,829 self._bool = any(self) 2025-09-08T17:11:09,829 ~~~^^^^^^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in 2025-09-08T17:11:09,829 return (c for c in iterator if id(c) not in self._incompatible_ids) 2025-09-08T17:11:09,829 ^^^^^^^^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 37, in _iter_built 2025-09-08T17:11:09,829 candidate = func() 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link 2025-09-08T17:11:09,829 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2025-09-08T17:11:09,829 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T17:11:09,829 link, template, name, version 2025-09-08T17:11:09,829 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,829 ) 2025-09-08T17:11:09,829 ^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link 2025-09-08T17:11:09,829 self._link_candidate_cache[link] = LinkCandidate( 2025-09-08T17:11:09,829 ~~~~~~~~~~~~~^ 2025-09-08T17:11:09,829 link, 2025-09-08T17:11:09,829 ^^^^^ 2025-09-08T17:11:09,829 ...<3 lines>... 2025-09-08T17:11:09,829 version=version, 2025-09-08T17:11:09,829 ^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,829 ) 2025-09-08T17:11:09,829 ^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 306, in __init__ 2025-09-08T17:11:09,829 super().__init__( 2025-09-08T17:11:09,829 ~~~~~~~~~~~~~~~~^ 2025-09-08T17:11:09,829 link=link, 2025-09-08T17:11:09,829 ^^^^^^^^^^ 2025-09-08T17:11:09,829 ...<4 lines>... 2025-09-08T17:11:09,829 version=version, 2025-09-08T17:11:09,829 ^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,829 ) 2025-09-08T17:11:09,829 ^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__ 2025-09-08T17:11:09,829 self.dist = self._prepare() 2025-09-08T17:11:09,829 ~~~~~~~~~~~~~^^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare 2025-09-08T17:11:09,829 dist = self._prepare_distribution() 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 317, in _prepare_distribution 2025-09-08T17:11:09,829 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2025-09-08T17:11:09,829 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in prepare_linked_requirement 2025-09-08T17:11:09,829 return self._prepare_linked_requirement(req, parallel_builds) 2025-09-08T17:11:09,829 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 647, in _prepare_linked_requirement 2025-09-08T17:11:09,829 dist = _get_prepared_distribution( 2025-09-08T17:11:09,829 req, 2025-09-08T17:11:09,829 ...<3 lines>... 2025-09-08T17:11:09,829 self.check_build_deps, 2025-09-08T17:11:09,829 ) 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2025-09-08T17:11:09,829 abstract_dist.prepare_distribution_metadata( 2025-09-08T17:11:09,829 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T17:11:09,829 finder, build_isolation, check_build_deps 2025-09-08T17:11:09,829 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,829 ) 2025-09-08T17:11:09,829 ^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 69, in prepare_distribution_metadata 2025-09-08T17:11:09,829 self.req.prepare_metadata() 2025-09-08T17:11:09,829 ~~~~~~~~~~~~~~~~~~~~~~~~~^^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 581, in prepare_metadata 2025-09-08T17:11:09,829 self.metadata_directory = generate_metadata_legacy( 2025-09-08T17:11:09,829 ~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-08T17:11:09,829 build_env=self.build_env, 2025-09-08T17:11:09,829 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,829 ...<3 lines>... 2025-09-08T17:11:09,829 details=details, 2025-09-08T17:11:09,829 ^^^^^^^^^^^^^^^^ 2025-09-08T17:11:09,829 ) 2025-09-08T17:11:09,829 ^ 2025-09-08T17:11:09,829 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 70, in generate_metadata 2025-09-08T17:11:09,829 raise MetadataGenerationFailed(package_details=details) from error 2025-09-08T17:11:09,829 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2025-09-08T17:11:09,849 Removed chromedevtools==0.2.4 from https://files.pythonhosted.org/packages/6b/3b/d80c76a6037e3f76a582de325e8f4d1e916ccd4a60a19c3ccdd9de7aedb6/ChromeDevTools-0.2.4.tar.gz from build tracker '/tmp/pip-build-tracker-ky8w9e6n' 2025-09-08T17:11:09,849 Removed build tracker: '/tmp/pip-build-tracker-ky8w9e6n'