2023-09-15T12:53:15,286 Created temporary directory: /tmp/pip-build-tracker-3f8mqt6x 2023-09-15T12:53:15,288 Initialized build tracking at /tmp/pip-build-tracker-3f8mqt6x 2023-09-15T12:53:15,288 Created build tracker: /tmp/pip-build-tracker-3f8mqt6x 2023-09-15T12:53:15,289 Entered build tracker: /tmp/pip-build-tracker-3f8mqt6x 2023-09-15T12:53:15,290 Created temporary directory: /tmp/pip-wheel-r6ki7g3c 2023-09-15T12:53:15,293 Created temporary directory: /tmp/pip-ephem-wheel-cache-e_f_3fjn 2023-09-15T12:53:15,315 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2023-09-15T12:53:15,319 2 location(s) to search for versions of getsubstring: 2023-09-15T12:53:15,319 * https://pypi.org/simple/getsubstring/ 2023-09-15T12:53:15,319 * https://www.piwheels.org/simple/getsubstring/ 2023-09-15T12:53:15,320 Fetching project page and analyzing links: https://pypi.org/simple/getsubstring/ 2023-09-15T12:53:15,321 Getting page https://pypi.org/simple/getsubstring/ 2023-09-15T12:53:15,322 Found index url https://pypi.org/simple/ 2023-09-15T12:53:15,462 Fetched page https://pypi.org/simple/getsubstring/ as application/vnd.pypi.simple.v1+json 2023-09-15T12:53:15,467 Skipping link: No binaries permitted for getsubstring: https://files.pythonhosted.org/packages/98/9b/5032f8a28ef3e6df1b8257c0106147d56065fe7203c4a48546df17159732/GetSubString-1.0.1-py3-none-any.whl (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,468 Found link https://files.pythonhosted.org/packages/09/94/f37a87f463be4392285bd0293a1b1532a73ed115a6a644094697f5a746f9/GetSubString-1.0.1.tar.gz (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5), version: 1.0.1 2023-09-15T12:53:15,469 Skipping link: No binaries permitted for getsubstring: https://files.pythonhosted.org/packages/40/d5/3f51a127b05ed2545cac5bc75eec1ff119a4d9e9e5a311d90c5c8c71bbd1/GetSubString-1.0.2-py3-none-any.whl (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,469 Skipping link: unsupported archive format: .egg: https://files.pythonhosted.org/packages/21/a5/981fcc87ba8e4eb76e50db08bc4efaf5b1035894437aff7bcefb9455244e/GetSubString-1.0.2-py3.8.egg (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,470 Found link https://files.pythonhosted.org/packages/b9/7e/e64226db06662582688688fec56874685a5f5d1f89cfb13f1e3e7d3afff1/GetSubString-1.0.2.tar.gz (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5), version: 1.0.2 2023-09-15T12:53:15,471 Skipping link: No binaries permitted for getsubstring: https://files.pythonhosted.org/packages/c3/ae/183275f0fae9b07e129365df263aa3830744d031f88883a3667041cb8cd3/GetSubString-1.0.3-py3-none-any.whl (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,472 Found link https://files.pythonhosted.org/packages/52/d4/09b282f9724f8e3d973b76f9f33e4df7e0a1547a7a2dd1716be352147ce8/GetSubString-1.0.3.tar.gz (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5), version: 1.0.3 2023-09-15T12:53:15,473 Skipping link: No binaries permitted for getsubstring: https://files.pythonhosted.org/packages/f5/69/bdb78aec8a6c52362d4550ba609cadd7e2cc051fac6059d0c307c09f3733/GetSubString-1.0.4-py3-none-any.whl (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,474 Found link https://files.pythonhosted.org/packages/13/1c/18f0414fa35e228ad8aa968286c3377cc881fc21a0b549960054f6360f82/GetSubString-1.0.4.tar.gz (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5), version: 1.0.4 2023-09-15T12:53:15,474 Skipping link: No binaries permitted for getsubstring: https://files.pythonhosted.org/packages/ab/f1/a980b726a86938a854bcfa4079f2b8e7e28bed0f931054489a387dc8e865/GetSubString-1.0.5-py3-none-any.whl (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,475 Found link https://files.pythonhosted.org/packages/f1/12/2f05f667a514266d9faa75963474b64f402985d6f32ef782c2065f231d25/GetSubString-1.0.5.tar.gz (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5), version: 1.0.5 2023-09-15T12:53:15,476 Skipping link: No binaries permitted for getsubstring: https://files.pythonhosted.org/packages/45/2b/d47bba903ec73f2fc932169b97404c5ad7bb3c5991e7ffa326970a669253/GetSubString-1.0.6-py3-none-any.whl (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,477 Found link https://files.pythonhosted.org/packages/9f/91/76bc9cbd659e8bb0e5865f2814010c9b2843ced15bad986fa4c44a6312e3/GetSubString-1.0.6.tar.gz (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5), version: 1.0.6 2023-09-15T12:53:15,478 Skipping link: No binaries permitted for getsubstring: https://files.pythonhosted.org/packages/94/b4/607d9696c08d93040d1237e5aba4a5342270ab26fcf5be67b0f5ba1ec1a7/GetSubString-1.0.7-py3-none-any.whl (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,478 Found link https://files.pythonhosted.org/packages/2b/c5/311842ab1826d33ee47e193722bbccef2d0e68d645e849fce93eaa738b47/GetSubString-1.0.7.tar.gz (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5), version: 1.0.7 2023-09-15T12:53:15,479 Skipping link: No binaries permitted for getsubstring: https://files.pythonhosted.org/packages/9d/0a/d2cf8cf8efa3ed5e29d3e821e2ded5b08d266f3c09d932356a4d0c2b1893/GetSubString-1.0.8-py3-none-any.whl (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,480 Found link https://files.pythonhosted.org/packages/e8/23/38cdd955533041f1d7ebaba178ccb6d61d27e33d997be7e084a2f2dced04/GetSubString-1.0.8.tar.gz (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5), version: 1.0.8 2023-09-15T12:53:15,480 Skipping link: No binaries permitted for getsubstring: https://files.pythonhosted.org/packages/99/db/27038227903fa080f89c3d81ded43356e3c3c67924da86a39e77c10c2b9c/GetSubString-1.0.9-py3-none-any.whl (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,481 Found link https://files.pythonhosted.org/packages/e0/d1/885a4d99800c7124cea71dc7fd7f95c223595de645e55eb4f5bccb2d1e28/GetSubString-1.0.9.tar.gz (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5), version: 1.0.9 2023-09-15T12:53:15,482 Skipping link: No binaries permitted for getsubstring: https://files.pythonhosted.org/packages/33/57/562b85f2a4a48055b0036c1c5c01f3a827db01a9c80b335576a69185e747/GetSubString-1.0.10-py3-none-any.whl (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,483 Found link https://files.pythonhosted.org/packages/22/3f/9cf64c33897353e4700b759f7982270313da4e9e467e06e289f11dc992f4/GetSubString-1.0.10.tar.gz (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5), version: 1.0.10 2023-09-15T12:53:15,483 Skipping link: No binaries permitted for getsubstring: https://files.pythonhosted.org/packages/1c/f7/45e697b45fa406f731e179e42acf350d45c4033d51f766de598692bfc23e/GetSubString-1.0.11-py3-none-any.whl (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,484 Found link https://files.pythonhosted.org/packages/1e/74/97417ddb6bbbf5caa5cd363ad012346db8f36815dc1a14d401243062a91d/GetSubString-1.0.11.tar.gz (from https://pypi.org/simple/getsubstring/) (requires-python:>=3.5), version: 1.0.11 2023-09-15T12:53:15,485 Fetching project page and analyzing links: https://www.piwheels.org/simple/getsubstring/ 2023-09-15T12:53:15,486 Getting page https://www.piwheels.org/simple/getsubstring/ 2023-09-15T12:53:15,487 Found index url https://www.piwheels.org/simple/ 2023-09-15T12:53:15,764 Fetched page https://www.piwheels.org/simple/getsubstring/ as text/html 2023-09-15T12:53:15,766 Skipping link: No binaries permitted for getsubstring: https://www.piwheels.org/simple/getsubstring/GetSubString-1.0.3-py3-none-any.whl#sha256=d9054720b19cb7b7ac50abbce0cea5a52ea058e27686b945851d09bb2d037963 (from https://www.piwheels.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,767 Skipping link: No binaries permitted for getsubstring: https://www.piwheels.org/simple/getsubstring/GetSubString-1.0.2-py3-none-any.whl#sha256=8d5f242e03389a1ef1a84b4274ce018f38451f110b3d2d08c8109ca46708d5b9 (from https://www.piwheels.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,767 Skipping link: No binaries permitted for getsubstring: https://www.piwheels.org/simple/getsubstring/GetSubString-1.0.1-py3-none-any.whl#sha256=c7534bcba696aea0496e470a5e3e819efcd9a0681ab21f039b82a0a1bcc61cca (from https://www.piwheels.org/simple/getsubstring/) (requires-python:>=3.5) 2023-09-15T12:53:15,768 Skipping link: not a file: https://www.piwheels.org/simple/getsubstring/ 2023-09-15T12:53:15,769 Skipping link: not a file: https://pypi.org/simple/getsubstring/ 2023-09-15T12:53:15,788 Given no hashes to check 1 links for project 'getsubstring': discarding no candidates 2023-09-15T12:53:15,805 Collecting getsubstring==1.0.6 2023-09-15T12:53:15,808 Created temporary directory: /tmp/pip-unpack-guay78o2 2023-09-15T12:53:16,018 Downloading GetSubString-1.0.6.tar.gz (4.4 kB) 2023-09-15T12:53:16,050 Added getsubstring==1.0.6 from https://files.pythonhosted.org/packages/9f/91/76bc9cbd659e8bb0e5865f2814010c9b2843ced15bad986fa4c44a6312e3/GetSubString-1.0.6.tar.gz to build tracker '/tmp/pip-build-tracker-3f8mqt6x' 2023-09-15T12:53:16,052 Running setup.py (path:/tmp/pip-wheel-r6ki7g3c/getsubstring_eb06dc76989f489086502586ca9d00ea/setup.py) egg_info for package getsubstring 2023-09-15T12:53:16,053 Created temporary directory: /tmp/pip-pip-egg-info-qptfspyi 2023-09-15T12:53:16,053 Preparing metadata (setup.py): started 2023-09-15T12:53:16,055 Running command python setup.py egg_info 2023-09-15T12:53:16,463 Traceback (most recent call last): 2023-09-15T12:53:16,463 File "", line 2, in 2023-09-15T12:53:16,464 File "", line 34, in 2023-09-15T12:53:16,465 File "/tmp/pip-wheel-r6ki7g3c/getsubstring_eb06dc76989f489086502586ca9d00ea/setup.py", line 8, in 2023-09-15T12:53:16,466 INSTALL_REQUIRES = get_file_content_as_list("requirements.txt") 2023-09-15T12:53:16,467 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,468 File "/tmp/pip-wheel-r6ki7g3c/getsubstring_eb06dc76989f489086502586ca9d00ea/getsubstr/setuptools.py", line 2, in get_file_content_as_list 2023-09-15T12:53:16,469 with open(file_path, "r", encoding="utf-8") as file: 2023-09-15T12:53:16,469 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,470 FileNotFoundError: [Errno 2] No such file or directory: 'requirements.txt' 2023-09-15T12:53:16,471 Found packages: ['getsubstr'] 2023-09-15T12:53:16,534 ERROR: [present-rich] python setup.py egg_info exited with 1 2023-09-15T12:53:16,547 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2023-09-15T12:53:16,547 exec(compile('"'"''"'"''"'"' 2023-09-15T12:53:16,547 # This is -- a caller that pip uses to run setup.py 2023-09-15T12:53:16,547 # 2023-09-15T12:53:16,547 # - It imports setuptools before invoking setup.py, to enable projects that directly 2023-09-15T12:53:16,547 # import from `distutils.core` to work with newer packaging standards. 2023-09-15T12:53:16,547 # - It provides a clear error message when setuptools is not installed. 2023-09-15T12:53:16,547 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2023-09-15T12:53:16,547 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2023-09-15T12:53:16,547 # manifest_maker: standard file '"'"'-c'"'"' not found". 2023-09-15T12:53:16,547 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2023-09-15T12:53:16,547 import os, sys, tokenize 2023-09-15T12:53:16,547 2023-09-15T12:53:16,547 try: 2023-09-15T12:53:16,547 import setuptools 2023-09-15T12:53:16,547 except ImportError as error: 2023-09-15T12:53:16,547 print( 2023-09-15T12:53:16,547 "ERROR: Can not execute `setup.py` since setuptools is not available in " 2023-09-15T12:53:16,547 "the build environment.", 2023-09-15T12:53:16,547 file=sys.stderr, 2023-09-15T12:53:16,547 ) 2023-09-15T12:53:16,547 sys.exit(1) 2023-09-15T12:53:16,547 2023-09-15T12:53:16,547 __file__ = %r 2023-09-15T12:53:16,547 sys.argv[0] = __file__ 2023-09-15T12:53:16,547 2023-09-15T12:53:16,547 if os.path.exists(__file__): 2023-09-15T12:53:16,547 filename = __file__ 2023-09-15T12:53:16,547 with tokenize.open(__file__) as f: 2023-09-15T12:53:16,547 setup_py_code = f.read() 2023-09-15T12:53:16,547 else: 2023-09-15T12:53:16,547 filename = "" 2023-09-15T12:53:16,547 setup_py_code = "from setuptools import setup; setup()" 2023-09-15T12:53:16,547 2023-09-15T12:53:16,547 exec(compile(setup_py_code, filename, "exec")) 2023-09-15T12:53:16,547 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-r6ki7g3c/getsubstring_eb06dc76989f489086502586ca9d00ea/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-qptfspyi[/] 2023-09-15T12:53:16,547 [bold magenta]cwd[/]: /tmp/pip-wheel-r6ki7g3c/getsubstring_eb06dc76989f489086502586ca9d00ea/ 2023-09-15T12:53:16,548 Preparing metadata (setup.py): finished with status 'error' 2023-09-15T12:53:16,550 ERROR: [present-rich] metadata generation failed 2023-09-15T12:53:16,555 Exception information: 2023-09-15T12:53:16,555 Traceback (most recent call last): 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 64, in generate_metadata 2023-09-15T12:53:16,555 call_subprocess( 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/utils/subprocess.py", line 224, in call_subprocess 2023-09-15T12:53:16,555 raise error 2023-09-15T12:53:16,555 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2023-09-15T12:53:16,555 2023-09-15T12:53:16,555 The above exception was the direct cause of the following exception: 2023-09-15T12:53:16,555 2023-09-15T12:53:16,555 Traceback (most recent call last): 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/cli/base_command.py", line 180, in exc_logging_wrapper 2023-09-15T12:53:16,555 status = run_func(*args) 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/cli/req_command.py", line 248, in wrapper 2023-09-15T12:53:16,555 return func(self, options, args) 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2023-09-15T12:53:16,555 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 92, in resolve 2023-09-15T12:53:16,555 result = self._result = resolver.resolve( 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 546, in resolve 2023-09-15T12:53:16,555 state = resolution.resolve(requirements, max_rounds=max_rounds) 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 397, in resolve 2023-09-15T12:53:16,555 self._add_to_criteria(self.state.criteria, r, parent=None) 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 173, in _add_to_criteria 2023-09-15T12:53:16,555 if not criterion.candidates: 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_vendor/resolvelib/structs.py", line 156, in __bool__ 2023-09-15T12:53:16,555 return bool(self._sequence) 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 155, in __bool__ 2023-09-15T12:53:16,555 return any(self) 2023-09-15T12:53:16,555 ^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 143, in 2023-09-15T12:53:16,555 return (c for c in iterator if id(c) not in self._incompatible_ids) 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 47, in _iter_built 2023-09-15T12:53:16,555 candidate = func() 2023-09-15T12:53:16,555 ^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 206, in _make_candidate_from_link 2023-09-15T12:53:16,555 self._link_candidate_cache[link] = LinkCandidate( 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 293, in __init__ 2023-09-15T12:53:16,555 super().__init__( 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 156, in __init__ 2023-09-15T12:53:16,555 self.dist = self._prepare() 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 225, in _prepare 2023-09-15T12:53:16,555 dist = self._prepare_distribution() 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 304, in _prepare_distribution 2023-09-15T12:53:16,555 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/operations/prepare.py", line 538, in prepare_linked_requirement 2023-09-15T12:53:16,555 return self._prepare_linked_requirement(req, parallel_builds) 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/operations/prepare.py", line 653, in _prepare_linked_requirement 2023-09-15T12:53:16,555 dist = _get_prepared_distribution( 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/operations/prepare.py", line 69, in _get_prepared_distribution 2023-09-15T12:53:16,555 abstract_dist.prepare_distribution_metadata( 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/distributions/sdist.py", line 61, in prepare_distribution_metadata 2023-09-15T12:53:16,555 self.req.prepare_metadata() 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/req/req_install.py", line 568, in prepare_metadata 2023-09-15T12:53:16,555 self.metadata_directory = generate_metadata_legacy( 2023-09-15T12:53:16,555 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2023-09-15T12:53:16,555 File "/usr/local/lib/python3.11/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 71, in generate_metadata 2023-09-15T12:53:16,555 raise MetadataGenerationFailed(package_details=details) from error 2023-09-15T12:53:16,555 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2023-09-15T12:53:16,568 Removed getsubstring==1.0.6 from https://files.pythonhosted.org/packages/9f/91/76bc9cbd659e8bb0e5865f2814010c9b2843ced15bad986fa4c44a6312e3/GetSubString-1.0.6.tar.gz from build tracker '/tmp/pip-build-tracker-3f8mqt6x' 2023-09-15T12:53:16,568 Removed build tracker: '/tmp/pip-build-tracker-3f8mqt6x'