2025-12-03T12:27:11,689 Created temporary directory: /tmp/pip-ephem-wheel-cache-n86m0mby 2025-12-03T12:27:11,690 Created temporary directory: /tmp/pip-build-tracker-wfwc5mje 2025-12-03T12:27:11,691 Initialized build tracking at /tmp/pip-build-tracker-wfwc5mje 2025-12-03T12:27:11,691 Created build tracker: /tmp/pip-build-tracker-wfwc5mje 2025-12-03T12:27:11,692 Entered build tracker: /tmp/pip-build-tracker-wfwc5mje 2025-12-03T12:27:11,693 Created temporary directory: /tmp/pip-wheel-9iwiptwe 2025-12-03T12:27:11,696 DEPRECATION: --no-binary currently disables reading from the cache of locally built wheels. In the future --no-binary will not influence the wheel cache. pip 23.1 will enforce this behaviour change. A possible replacement is to use the --no-cache-dir option. You can use the flag --use-feature=no-binary-enable-wheel-cache to test the upcoming behaviour. Discussion can be found at https://github.com/pypa/pip/issues/11453 2025-12-03T12:27:11,698 Created temporary directory: /tmp/pip-ephem-wheel-cache-eb61j2n7 2025-12-03T12:27:11,720 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-12-03T12:27:11,724 2 location(s) to search for versions of polygon-geohasher-2: 2025-12-03T12:27:11,724 * https://pypi.org/simple/polygon-geohasher-2/ 2025-12-03T12:27:11,724 * https://www.piwheels.org/simple/polygon-geohasher-2/ 2025-12-03T12:27:11,725 Fetching project page and analyzing links: https://pypi.org/simple/polygon-geohasher-2/ 2025-12-03T12:27:11,725 Getting page https://pypi.org/simple/polygon-geohasher-2/ 2025-12-03T12:27:11,727 Found index url https://pypi.org/simple 2025-12-03T12:27:11,941 Fetched page https://pypi.org/simple/polygon-geohasher-2/ as application/vnd.pypi.simple.v1+json 2025-12-03T12:27:11,944 Skipping link: No binaries permitted for polygon-geohasher-2: https://files.pythonhosted.org/packages/1a/9e/bc6b6715c342af8d44f7e52511147f5eaf7620bc0d6e27079dd40c60b2c5/polygon_geohasher_2-0.0.1-py3-none-any.whl (from https://pypi.org/simple/polygon-geohasher-2/) 2025-12-03T12:27:11,945 Found link https://files.pythonhosted.org/packages/22/55/2f3cdd08ca0c7086cef148fbe49307871caa072bfb802f51d561eb01addf/polygon_geohasher_2-0.0.1.tar.gz (from https://pypi.org/simple/polygon-geohasher-2/), version: 0.0.1 2025-12-03T12:27:11,945 Skipping link: No binaries permitted for polygon-geohasher-2: https://files.pythonhosted.org/packages/d7/47/b0e390ef72b896a72503ce6241cb40dd7ea968ca0d19ba62e78a9e199479/polygon_geohasher_2-0.0.2-py3-none-any.whl (from https://pypi.org/simple/polygon-geohasher-2/) 2025-12-03T12:27:11,946 Found link https://files.pythonhosted.org/packages/65/8f/596e48f8626ef406899a948355c343cd4c2713ad4938345cd5dfa8195fd0/polygon_geohasher_2-0.0.2.tar.gz (from https://pypi.org/simple/polygon-geohasher-2/), version: 0.0.2 2025-12-03T12:27:11,947 Skipping link: No binaries permitted for polygon-geohasher-2: https://files.pythonhosted.org/packages/75/09/31399f9fdc2b1763cdc55be017b2e7420e7c08e12ad782fb09f242645be2/polygon_geohasher_2-0.1.0-py3-none-any.whl (from https://pypi.org/simple/polygon-geohasher-2/) (requires-python:<3.14,>=3.9) 2025-12-03T12:27:11,948 Found link https://files.pythonhosted.org/packages/68/f6/3b6a69a429d481c89e6a0abad8fd94ebee5f03cf9a031d628529cde26efd/polygon_geohasher_2-0.1.0.tar.gz (from https://pypi.org/simple/polygon-geohasher-2/) (requires-python:<3.14,>=3.9), version: 0.1.0 2025-12-03T12:27:11,948 Skipping link: No binaries permitted for polygon-geohasher-2: https://files.pythonhosted.org/packages/e5/b2/bff55b80a634d147ae041b7d5ffdad84d918a21a79188edf05a71ec03020/polygon_geohasher_2-0.2.0-py3-none-any.whl (from https://pypi.org/simple/polygon-geohasher-2/) (requires-python:<3.15,>=3.10) 2025-12-03T12:27:11,950 Found link https://files.pythonhosted.org/packages/ab/93/63252b05d079757dab14cb0037e6255dd4dad0b80315f2602ee346759600/polygon_geohasher_2-0.2.0.tar.gz (from https://pypi.org/simple/polygon-geohasher-2/) (requires-python:<3.15,>=3.10), version: 0.2.0 2025-12-03T12:27:11,950 Fetching project page and analyzing links: https://www.piwheels.org/simple/polygon-geohasher-2/ 2025-12-03T12:27:11,951 Getting page https://www.piwheels.org/simple/polygon-geohasher-2/ 2025-12-03T12:27:11,953 Found index url https://www.piwheels.org/simple 2025-12-03T12:27:12,113 Fetched page https://www.piwheels.org/simple/polygon-geohasher-2/ as text/html 2025-12-03T12:27:12,114 Skipping link: not a file: https://www.piwheels.org/simple/polygon-geohasher-2/ 2025-12-03T12:27:12,114 Skipping link: not a file: https://pypi.org/simple/polygon-geohasher-2/ 2025-12-03T12:27:12,135 Given no hashes to check 1 links for project 'polygon-geohasher-2': discarding no candidates 2025-12-03T12:27:12,155 Collecting polygon-geohasher-2==0.2.0 2025-12-03T12:27:12,157 Created temporary directory: /tmp/pip-unpack-hvhpsk71 2025-12-03T12:27:12,368 Downloading polygon_geohasher_2-0.2.0.tar.gz (5.4 kB) 2025-12-03T12:27:12,403 Added polygon-geohasher-2==0.2.0 from https://files.pythonhosted.org/packages/ab/93/63252b05d079757dab14cb0037e6255dd4dad0b80315f2602ee346759600/polygon_geohasher_2-0.2.0.tar.gz to build tracker '/tmp/pip-build-tracker-wfwc5mje' 2025-12-03T12:27:12,404 Running setup.py (path:/tmp/pip-wheel-9iwiptwe/polygon-geohasher-2_5cbcd7a078ba4c4e8e07e1541389a84e/setup.py) egg_info for package polygon-geohasher-2 2025-12-03T12:27:12,405 Created temporary directory: /tmp/pip-pip-egg-info-a1vz9eb7 2025-12-03T12:27:12,406 Preparing metadata (setup.py): started 2025-12-03T12:27:12,407 Running command python setup.py egg_info 2025-12-03T12:27:12,879 Traceback (most recent call last): 2025-12-03T12:27:12,880 File "", line 2, in 2025-12-03T12:27:12,880 File "", line 34, in 2025-12-03T12:27:12,881 File "/tmp/pip-wheel-9iwiptwe/polygon-geohasher-2_5cbcd7a078ba4c4e8e07e1541389a84e/setup.py", line 25, in 2025-12-03T12:27:12,882 install_requires=requirements(), 2025-12-03T12:27:12,883 ^^^^^^^^^^^^^^ 2025-12-03T12:27:12,884 File "/tmp/pip-wheel-9iwiptwe/polygon-geohasher-2_5cbcd7a078ba4c4e8e07e1541389a84e/setup.py", line 10, in requirements 2025-12-03T12:27:12,885 with open("requirements.txt") as f: 2025-12-03T12:27:12,886 ^^^^^^^^^^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,886 FileNotFoundError: [Errno 2] No such file or directory: 'requirements.txt' 2025-12-03T12:27:12,949 ERROR: [present-rich] python setup.py egg_info exited with 1 2025-12-03T12:27:12,962 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2025-12-03T12:27:12,962 exec(compile('"'"''"'"''"'"' 2025-12-03T12:27:12,962 # This is -- a caller that pip uses to run setup.py 2025-12-03T12:27:12,962 # 2025-12-03T12:27:12,962 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-12-03T12:27:12,962 # import from `distutils.core` to work with newer packaging standards. 2025-12-03T12:27:12,962 # - It provides a clear error message when setuptools is not installed. 2025-12-03T12:27:12,962 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-12-03T12:27:12,962 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-12-03T12:27:12,962 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-12-03T12:27:12,962 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-12-03T12:27:12,962 import os, sys, tokenize 2025-12-03T12:27:12,962 2025-12-03T12:27:12,962 try: 2025-12-03T12:27:12,962 import setuptools 2025-12-03T12:27:12,962 except ImportError as error: 2025-12-03T12:27:12,962 print( 2025-12-03T12:27:12,962 "ERROR: Can not execute `setup.py` since setuptools is not available in " 2025-12-03T12:27:12,962 "the build environment.", 2025-12-03T12:27:12,962 file=sys.stderr, 2025-12-03T12:27:12,962 ) 2025-12-03T12:27:12,962 sys.exit(1) 2025-12-03T12:27:12,962 2025-12-03T12:27:12,962 __file__ = %r 2025-12-03T12:27:12,962 sys.argv[0] = __file__ 2025-12-03T12:27:12,962 2025-12-03T12:27:12,962 if os.path.exists(__file__): 2025-12-03T12:27:12,962 filename = __file__ 2025-12-03T12:27:12,962 with tokenize.open(__file__) as f: 2025-12-03T12:27:12,962 setup_py_code = f.read() 2025-12-03T12:27:12,962 else: 2025-12-03T12:27:12,962 filename = "" 2025-12-03T12:27:12,962 setup_py_code = "from setuptools import setup; setup()" 2025-12-03T12:27:12,962 2025-12-03T12:27:12,962 exec(compile(setup_py_code, filename, "exec")) 2025-12-03T12:27:12,962 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-9iwiptwe/polygon-geohasher-2_5cbcd7a078ba4c4e8e07e1541389a84e/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-a1vz9eb7[/] 2025-12-03T12:27:12,962 [bold magenta]cwd[/]: /tmp/pip-wheel-9iwiptwe/polygon-geohasher-2_5cbcd7a078ba4c4e8e07e1541389a84e/ 2025-12-03T12:27:12,963 Preparing metadata (setup.py): finished with status 'error' 2025-12-03T12:27:12,965 ERROR: [present-rich] metadata generation failed 2025-12-03T12:27:12,970 Exception information: 2025-12-03T12:27:12,970 Traceback (most recent call last): 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 64, in generate_metadata 2025-12-03T12:27:12,970 call_subprocess( 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 224, in call_subprocess 2025-12-03T12:27:12,970 raise error 2025-12-03T12:27:12,970 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2025-12-03T12:27:12,970 2025-12-03T12:27:12,970 The above exception was the direct cause of the following exception: 2025-12-03T12:27:12,970 2025-12-03T12:27:12,970 Traceback (most recent call last): 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 160, in exc_logging_wrapper 2025-12-03T12:27:12,970 status = run_func(*args) 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 247, in wrapper 2025-12-03T12:27:12,970 return func(self, options, args) 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 170, in run 2025-12-03T12:27:12,970 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 92, in resolve 2025-12-03T12:27:12,970 result = self._result = resolver.resolve( 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 481, in resolve 2025-12-03T12:27:12,970 state = resolution.resolve(requirements, max_rounds=max_rounds) 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 348, in resolve 2025-12-03T12:27:12,970 self._add_to_criteria(self.state.criteria, r, parent=None) 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers.py", line 172, in _add_to_criteria 2025-12-03T12:27:12,970 if not criterion.candidates: 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 151, in __bool__ 2025-12-03T12:27:12,970 return bool(self._sequence) 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 155, in __bool__ 2025-12-03T12:27:12,970 return any(self) 2025-12-03T12:27:12,970 ^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 143, in 2025-12-03T12:27:12,970 return (c for c in iterator if id(c) not in self._incompatible_ids) 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 47, in _iter_built 2025-12-03T12:27:12,970 candidate = func() 2025-12-03T12:27:12,970 ^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 206, in _make_candidate_from_link 2025-12-03T12:27:12,970 self._link_candidate_cache[link] = LinkCandidate( 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 297, in __init__ 2025-12-03T12:27:12,970 super().__init__( 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 162, in __init__ 2025-12-03T12:27:12,970 self.dist = self._prepare() 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 231, in _prepare 2025-12-03T12:27:12,970 dist = self._prepare_distribution() 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 308, in _prepare_distribution 2025-12-03T12:27:12,970 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 491, in prepare_linked_requirement 2025-12-03T12:27:12,970 return self._prepare_linked_requirement(req, parallel_builds) 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 577, in _prepare_linked_requirement 2025-12-03T12:27:12,970 dist = _get_prepared_distribution( 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 69, in _get_prepared_distribution 2025-12-03T12:27:12,970 abstract_dist.prepare_distribution_metadata( 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 61, in prepare_distribution_metadata 2025-12-03T12:27:12,970 self.req.prepare_metadata() 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 545, in prepare_metadata 2025-12-03T12:27:12,970 self.metadata_directory = generate_metadata_legacy( 2025-12-03T12:27:12,970 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-12-03T12:27:12,970 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 71, in generate_metadata 2025-12-03T12:27:12,970 raise MetadataGenerationFailed(package_details=details) from error 2025-12-03T12:27:12,970 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2025-12-03T12:27:12,983 Removed polygon-geohasher-2==0.2.0 from https://files.pythonhosted.org/packages/ab/93/63252b05d079757dab14cb0037e6255dd4dad0b80315f2602ee346759600/polygon_geohasher_2-0.2.0.tar.gz from build tracker '/tmp/pip-build-tracker-wfwc5mje' 2025-12-03T12:27:12,983 Removed build tracker: '/tmp/pip-build-tracker-wfwc5mje'