2025-09-07T22:52:39,586 Created temporary directory: /tmp/pip-build-tracker-9xvqps2d 2025-09-07T22:52:39,586 Initialized build tracking at /tmp/pip-build-tracker-9xvqps2d 2025-09-07T22:52:39,586 Created build tracker: /tmp/pip-build-tracker-9xvqps2d 2025-09-07T22:52:39,586 Entered build tracker: /tmp/pip-build-tracker-9xvqps2d 2025-09-07T22:52:39,587 Created temporary directory: /tmp/pip-wheel-wte_ss8o 2025-09-07T22:52:39,590 Created temporary directory: /tmp/pip-ephem-wheel-cache-6eajl7ly 2025-09-07T22:52:39,646 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-07T22:52:39,648 2 location(s) to search for versions of gap: 2025-09-07T22:52:39,648 * https://pypi.org/simple/gap/ 2025-09-07T22:52:39,648 * https://www.piwheels.org/simple/gap/ 2025-09-07T22:52:39,649 Fetching project page and analyzing links: https://pypi.org/simple/gap/ 2025-09-07T22:52:39,649 Getting page https://pypi.org/simple/gap/ 2025-09-07T22:52:39,650 Found index url https://pypi.org/simple/ 2025-09-07T22:52:39,719 Fetched page https://pypi.org/simple/gap/ as application/vnd.pypi.simple.v1+json 2025-09-07T22:52:39,721 Found link https://files.pythonhosted.org/packages/b2/1e/8108f79e8fc84f07dfda4b6caa3b41c1da499abc3ac75d007cfd3adf02c5/gap-0.2.tar.gz (from https://pypi.org/simple/gap/), version: 0.2 2025-09-07T22:52:39,722 Found link https://files.pythonhosted.org/packages/8e/30/455059293fab749c38f8e976c22d9baa531e9989c966231685f555ef014f/gap-0.3.tar.gz (from https://pypi.org/simple/gap/), version: 0.3 2025-09-07T22:52:39,722 Found link https://files.pythonhosted.org/packages/cd/72/5d8cba83f0cf2986d1998f2cda309ceb9c36e08f88d00393057ea7b6207a/gap-0.4.0.tar.gz (from https://pypi.org/simple/gap/), version: 0.4.0 2025-09-07T22:52:39,722 Found link https://files.pythonhosted.org/packages/47/26/e59e05e1ddf3fdd75a21e444d442c226fd9ce25fa6be19ec63dd48da2a04/gap-0.4.1.tar.gz (from https://pypi.org/simple/gap/), version: 0.4.1 2025-09-07T22:52:39,722 Found link https://files.pythonhosted.org/packages/96/ea/b4a2dfc8436ced8c5365df7b8dd559a0496060558a62ec3808fd7a6619dd/gap-0.4.2.tar.gz (from https://pypi.org/simple/gap/), version: 0.4.2 2025-09-07T22:52:39,723 Found link https://files.pythonhosted.org/packages/fc/f7/28cc226b7aa8cda02a576974a3e977618a81b4d53607392f60f2ad033e31/gap-0.4.3.tar.gz (from https://pypi.org/simple/gap/), version: 0.4.3 2025-09-07T22:52:39,723 Found link https://files.pythonhosted.org/packages/10/31/d8661b42c0044c7c38c1ed6832cd81f540c8c369f8ab4195c76bd2c2e53f/gap-0.4.4.tar.gz (from https://pypi.org/simple/gap/), version: 0.4.4 2025-09-07T22:52:39,723 Found link https://files.pythonhosted.org/packages/aa/32/9abcba3adeb6c2f772d616e9db6b186e4f45bc72f473918a980459f7c28f/gap-0.4.5.tar.gz (from https://pypi.org/simple/gap/), version: 0.4.5 2025-09-07T22:52:39,723 Found link https://files.pythonhosted.org/packages/08/cf/f3e15fbb417e81e44aadcd973830c411e50ec6948734197629271f499843/gap-0.4.6.tar.gz (from https://pypi.org/simple/gap/), version: 0.4.6 2025-09-07T22:52:39,723 Found link https://files.pythonhosted.org/packages/2a/17/85c8e033f40d7c0cfa8fb0b0a464b43e0b5e770403e82dd9a91ef575c207/gap-0.4.7.tar.gz (from https://pypi.org/simple/gap/), version: 0.4.7 2025-09-07T22:52:39,724 Found link https://files.pythonhosted.org/packages/5d/9e/aaf39e3c611e10769fb2308b31a4bff0863ae84869a05ce0631536d7ff13/gap-0.4.8.tar.gz (from https://pypi.org/simple/gap/), version: 0.4.8 2025-09-07T22:52:39,724 Found link https://files.pythonhosted.org/packages/3d/0d/6ab170404bcbcd13a969c83fe2effe56005c3c187ca03ba2e1259977c608/gap-0.4.8.1.tar.gz (from https://pypi.org/simple/gap/), version: 0.4.8.1 2025-09-07T22:52:39,724 Found link https://files.pythonhosted.org/packages/0d/1e/d037572a766f4fc8dae8b2523e02f06606dc7d807610f2c3992520cc55f9/gap-0.4.8.2.tar.gz (from https://pypi.org/simple/gap/), version: 0.4.8.2 2025-09-07T22:52:39,724 Found link https://files.pythonhosted.org/packages/80/d9/9b8063cb4b0f782adf4f683a734a13e7fa6541ea96c7799c68d00c27428f/gap-0.4.9.tar.gz (from https://pypi.org/simple/gap/), version: 0.4.9 2025-09-07T22:52:39,724 Found link https://files.pythonhosted.org/packages/b7/d7/c88ab2d1968ae65e9e37670dab11999dcb301bc8548354d40b9609308d25/gap-0.4.9.1.tar.gz (from https://pypi.org/simple/gap/), version: 0.4.9.1 2025-09-07T22:52:39,725 Fetching project page and analyzing links: https://www.piwheels.org/simple/gap/ 2025-09-07T22:52:39,725 Getting page https://www.piwheels.org/simple/gap/ 2025-09-07T22:52:39,726 Found index url https://www.piwheels.org/simple/ 2025-09-07T22:52:39,809 Fetched page https://www.piwheels.org/simple/gap/ as text/html 2025-09-07T22:52:39,811 Skipping link: No binaries permitted for gap: https://archive1.piwheels.org/simple/gap/gap-0.4.6-py3-none-any.whl#sha256=e671d76d1980dff25df2da5efcd043f9d85bd654144429b03a1717f0a78571da (from https://www.piwheels.org/simple/gap/) 2025-09-07T22:52:39,811 Skipping link: No binaries permitted for gap: https://archive1.piwheels.org/simple/gap/gap-0.4.5-py3-none-any.whl#sha256=fef99908d421cc2fead5bef560bc8764fa8093f3fbf5d4f3f695657128ebccbd (from https://www.piwheels.org/simple/gap/) 2025-09-07T22:52:39,811 Skipping link: No binaries permitted for gap: https://archive1.piwheels.org/simple/gap/gap-0.4.3-py3-none-any.whl#sha256=2ca6ba1d60799134af7ba810ec5fc22bdeed714eb5f575e50a6850741e6d4bc3 (from https://www.piwheels.org/simple/gap/) 2025-09-07T22:52:39,811 Skipping link: No binaries permitted for gap: https://archive1.piwheels.org/simple/gap/gap-0.4.0-py3-none-any.whl#sha256=593113976aeeded7e7b4842b585bee0f7b63c929e3c0d5b95641c5aab2b6140e (from https://www.piwheels.org/simple/gap/) 2025-09-07T22:52:39,811 Skipping link: No binaries permitted for gap: https://archive1.piwheels.org/simple/gap/gap-0.3-py3-none-any.whl#sha256=3585630552e619741459a3ea15bc7ecdf0ed399240c52105b8cad1e8b46208e6 (from https://www.piwheels.org/simple/gap/) 2025-09-07T22:52:39,811 Skipping link: No binaries permitted for gap: https://archive1.piwheels.org/simple/gap/gap-0.2-py3-none-any.whl#sha256=6150b50259cd1afbe81526705a2bcdd9609b62d170dbb790cd35bcfa914544b1 (from https://www.piwheels.org/simple/gap/) 2025-09-07T22:52:39,812 Skipping link: not a file: https://www.piwheels.org/simple/gap/ 2025-09-07T22:52:39,812 Skipping link: not a file: https://pypi.org/simple/gap/ 2025-09-07T22:52:39,837 Given no hashes to check 1 links for project 'gap': discarding no candidates 2025-09-07T22:52:39,838 Collecting gap==0.4.8.1 2025-09-07T22:52:39,839 Created temporary directory: /tmp/pip-unpack-35u8apbm 2025-09-07T22:52:39,976 Downloading gap-0.4.8.1.tar.gz (26 kB) 2025-09-07T22:52:40,031 Added gap==0.4.8.1 from https://files.pythonhosted.org/packages/3d/0d/6ab170404bcbcd13a969c83fe2effe56005c3c187ca03ba2e1259977c608/gap-0.4.8.1.tar.gz to build tracker '/tmp/pip-build-tracker-9xvqps2d' 2025-09-07T22:52:40,032 Running setup.py (path:/tmp/pip-wheel-wte_ss8o/gap_6cbd4a6f24654e5aa7b17ec8cb6d936d/setup.py) egg_info for package gap 2025-09-07T22:52:40,032 Created temporary directory: /tmp/pip-pip-egg-info-kdnutn7t 2025-09-07T22:52:40,032 Preparing metadata (setup.py): started 2025-09-07T22:52:40,033 Running command python setup.py egg_info 2025-09-07T22:52:40,544 Traceback (most recent call last): 2025-09-07T22:52:40,545 File "", line 2, in 2025-09-07T22:52:40,545 exec(compile(''' 2025-09-07T22:52:40,546 ~~~~^^^^^^^^^^^^ 2025-09-07T22:52:40,546 # This is -- a caller that pip uses to run setup.py 2025-09-07T22:52:40,546 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,546 ...<32 lines>... 2025-09-07T22:52:40,546 exec(compile(setup_py_code, filename, "exec")) 2025-09-07T22:52:40,546 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,546 ''' % ('/tmp/pip-wheel-wte_ss8o/gap_6cbd4a6f24654e5aa7b17ec8cb6d936d/setup.py',), "", "exec")) 2025-09-07T22:52:40,546 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,547 File "", line 35, in 2025-09-07T22:52:40,547 File "/tmp/pip-wheel-wte_ss8o/gap_6cbd4a6f24654e5aa7b17ec8cb6d936d/setup.py", line 18, in 2025-09-07T22:52:40,547 from gap import VERSION 2025-09-07T22:52:40,547 File "/tmp/pip-wheel-wte_ss8o/gap_6cbd4a6f24654e5aa7b17ec8cb6d936d/gap/__init__.py", line 4 2025-09-07T22:52:40,547 print '.'.join(map(str, VERSION)) 2025-09-07T22:52:40,547 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,547 SyntaxError: Missing parentheses in call to 'print'. Did you mean print(...)? 2025-09-07T22:52:40,631 ERROR: python setup.py egg_info exited with 1 2025-09-07T22:52:40,644 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2025-09-07T22:52:40,644 exec(compile('"'"''"'"''"'"' 2025-09-07T22:52:40,644 # This is -- a caller that pip uses to run setup.py 2025-09-07T22:52:40,644 # 2025-09-07T22:52:40,644 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-07T22:52:40,644 # import from `distutils.core` to work with newer packaging standards. 2025-09-07T22:52:40,644 # - It provides a clear error message when setuptools is not installed. 2025-09-07T22:52:40,644 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-07T22:52:40,644 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-07T22:52:40,644 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-07T22:52:40,644 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-07T22:52:40,644 import os, sys, tokenize, traceback 2025-09-07T22:52:40,644 2025-09-07T22:52:40,644 try: 2025-09-07T22:52:40,644 import setuptools 2025-09-07T22:52:40,644 except ImportError: 2025-09-07T22:52:40,644 print( 2025-09-07T22:52:40,644 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-07T22:52:40,644 "the build environment with exception:", 2025-09-07T22:52:40,644 file=sys.stderr, 2025-09-07T22:52:40,644 ) 2025-09-07T22:52:40,644 traceback.print_exc() 2025-09-07T22:52:40,644 sys.exit(1) 2025-09-07T22:52:40,644 2025-09-07T22:52:40,644 __file__ = %r 2025-09-07T22:52:40,644 sys.argv[0] = __file__ 2025-09-07T22:52:40,644 2025-09-07T22:52:40,644 if os.path.exists(__file__): 2025-09-07T22:52:40,644 filename = __file__ 2025-09-07T22:52:40,644 with tokenize.open(__file__) as f: 2025-09-07T22:52:40,644 setup_py_code = f.read() 2025-09-07T22:52:40,644 else: 2025-09-07T22:52:40,644 filename = "" 2025-09-07T22:52:40,644 setup_py_code = "from setuptools import setup; setup()" 2025-09-07T22:52:40,644 2025-09-07T22:52:40,644 exec(compile(setup_py_code, filename, "exec")) 2025-09-07T22:52:40,644 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-wte_ss8o/gap_6cbd4a6f24654e5aa7b17ec8cb6d936d/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-kdnutn7t[/] 2025-09-07T22:52:40,644 [bold magenta]cwd[/]: /tmp/pip-wheel-wte_ss8o/gap_6cbd4a6f24654e5aa7b17ec8cb6d936d/ 2025-09-07T22:52:40,644 Preparing metadata (setup.py): finished with status 'error' 2025-09-07T22:52:40,645 ERROR: metadata generation failed 2025-09-07T22:52:40,650 Exception information: 2025-09-07T22:52:40,650 Traceback (most recent call last): 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 63, in generate_metadata 2025-09-07T22:52:40,650 call_subprocess( 2025-09-07T22:52:40,650 ~~~~~~~~~~~~~~~^ 2025-09-07T22:52:40,650 args, 2025-09-07T22:52:40,650 ^^^^^ 2025-09-07T22:52:40,650 ...<2 lines>... 2025-09-07T22:52:40,650 spinner=spinner, 2025-09-07T22:52:40,650 ^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,650 ) 2025-09-07T22:52:40,650 ^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 209, in call_subprocess 2025-09-07T22:52:40,650 raise error 2025-09-07T22:52:40,650 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2025-09-07T22:52:40,650 2025-09-07T22:52:40,650 The above exception was the direct cause of the following exception: 2025-09-07T22:52:40,650 2025-09-07T22:52:40,650 Traceback (most recent call last): 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-07T22:52:40,650 status = _inner_run() 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-07T22:52:40,650 return self.run(options, args) 2025-09-07T22:52:40,650 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-07T22:52:40,650 return func(self, options, args) 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2025-09-07T22:52:40,650 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve 2025-09-07T22:52:40,650 result = self._result = resolver.resolve( 2025-09-07T22:52:40,650 ~~~~~~~~~~~~~~~~^ 2025-09-07T22:52:40,650 collected.requirements, max_rounds=limit_how_complex_resolution_can_be 2025-09-07T22:52:40,650 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,650 ) 2025-09-07T22:52:40,650 ^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve 2025-09-07T22:52:40,650 state = resolution.resolve(requirements, max_rounds=max_rounds) 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve 2025-09-07T22:52:40,650 self._add_to_criteria(self.state.criteria, r, parent=None) 2025-09-07T22:52:40,650 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria 2025-09-07T22:52:40,650 if not criterion.candidates: 2025-09-07T22:52:40,650 ^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__ 2025-09-07T22:52:40,650 return bool(self._sequence) 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__ 2025-09-07T22:52:40,650 self._bool = any(self) 2025-09-07T22:52:40,650 ~~~^^^^^^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in 2025-09-07T22:52:40,650 return (c for c in iterator if id(c) not in self._incompatible_ids) 2025-09-07T22:52:40,650 ^^^^^^^^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 37, in _iter_built 2025-09-07T22:52:40,650 candidate = func() 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link 2025-09-07T22:52:40,650 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2025-09-07T22:52:40,650 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-07T22:52:40,650 link, template, name, version 2025-09-07T22:52:40,650 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,650 ) 2025-09-07T22:52:40,650 ^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link 2025-09-07T22:52:40,650 self._link_candidate_cache[link] = LinkCandidate( 2025-09-07T22:52:40,650 ~~~~~~~~~~~~~^ 2025-09-07T22:52:40,650 link, 2025-09-07T22:52:40,650 ^^^^^ 2025-09-07T22:52:40,650 ...<3 lines>... 2025-09-07T22:52:40,650 version=version, 2025-09-07T22:52:40,650 ^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,650 ) 2025-09-07T22:52:40,650 ^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 306, in __init__ 2025-09-07T22:52:40,650 super().__init__( 2025-09-07T22:52:40,650 ~~~~~~~~~~~~~~~~^ 2025-09-07T22:52:40,650 link=link, 2025-09-07T22:52:40,650 ^^^^^^^^^^ 2025-09-07T22:52:40,650 ...<4 lines>... 2025-09-07T22:52:40,650 version=version, 2025-09-07T22:52:40,650 ^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,650 ) 2025-09-07T22:52:40,650 ^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__ 2025-09-07T22:52:40,650 self.dist = self._prepare() 2025-09-07T22:52:40,650 ~~~~~~~~~~~~~^^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare 2025-09-07T22:52:40,650 dist = self._prepare_distribution() 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 317, in _prepare_distribution 2025-09-07T22:52:40,650 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2025-09-07T22:52:40,650 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in prepare_linked_requirement 2025-09-07T22:52:40,650 return self._prepare_linked_requirement(req, parallel_builds) 2025-09-07T22:52:40,650 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 647, in _prepare_linked_requirement 2025-09-07T22:52:40,650 dist = _get_prepared_distribution( 2025-09-07T22:52:40,650 req, 2025-09-07T22:52:40,650 ...<3 lines>... 2025-09-07T22:52:40,650 self.check_build_deps, 2025-09-07T22:52:40,650 ) 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2025-09-07T22:52:40,650 abstract_dist.prepare_distribution_metadata( 2025-09-07T22:52:40,650 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-07T22:52:40,650 finder, build_isolation, check_build_deps 2025-09-07T22:52:40,650 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,650 ) 2025-09-07T22:52:40,650 ^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 69, in prepare_distribution_metadata 2025-09-07T22:52:40,650 self.req.prepare_metadata() 2025-09-07T22:52:40,650 ~~~~~~~~~~~~~~~~~~~~~~~~~^^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 581, in prepare_metadata 2025-09-07T22:52:40,650 self.metadata_directory = generate_metadata_legacy( 2025-09-07T22:52:40,650 ~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-07T22:52:40,650 build_env=self.build_env, 2025-09-07T22:52:40,650 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,650 ...<3 lines>... 2025-09-07T22:52:40,650 details=details, 2025-09-07T22:52:40,650 ^^^^^^^^^^^^^^^^ 2025-09-07T22:52:40,650 ) 2025-09-07T22:52:40,650 ^ 2025-09-07T22:52:40,650 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 70, in generate_metadata 2025-09-07T22:52:40,650 raise MetadataGenerationFailed(package_details=details) from error 2025-09-07T22:52:40,650 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2025-09-07T22:52:40,671 Removed gap==0.4.8.1 from https://files.pythonhosted.org/packages/3d/0d/6ab170404bcbcd13a969c83fe2effe56005c3c187ca03ba2e1259977c608/gap-0.4.8.1.tar.gz from build tracker '/tmp/pip-build-tracker-9xvqps2d' 2025-09-07T22:52:40,672 Removed build tracker: '/tmp/pip-build-tracker-9xvqps2d'