2025-09-07T22:11:26,515 Created temporary directory: /tmp/pip-build-tracker-y4nrpla9 2025-09-07T22:11:26,516 Initialized build tracking at /tmp/pip-build-tracker-y4nrpla9 2025-09-07T22:11:26,516 Created build tracker: /tmp/pip-build-tracker-y4nrpla9 2025-09-07T22:11:26,516 Entered build tracker: /tmp/pip-build-tracker-y4nrpla9 2025-09-07T22:11:26,516 Created temporary directory: /tmp/pip-wheel-z933i1nk 2025-09-07T22:11:26,519 Created temporary directory: /tmp/pip-ephem-wheel-cache-jroyxp00 2025-09-07T22:11:26,575 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-07T22:11:26,577 2 location(s) to search for versions of pyxero: 2025-09-07T22:11:26,577 * https://pypi.org/simple/pyxero/ 2025-09-07T22:11:26,577 * https://www.piwheels.org/simple/pyxero/ 2025-09-07T22:11:26,577 Fetching project page and analyzing links: https://pypi.org/simple/pyxero/ 2025-09-07T22:11:26,578 Getting page https://pypi.org/simple/pyxero/ 2025-09-07T22:11:26,579 Found index url https://pypi.org/simple/ 2025-09-07T22:11:26,725 Fetched page https://pypi.org/simple/pyxero/ as application/vnd.pypi.simple.v1+json 2025-09-07T22:11:26,731 Found link https://files.pythonhosted.org/packages/a5/ed/bed7770147660030a7660ee8a84ee1cc75ad5f9d5aa7253fb9059c2fd7cc/pyxero-0.5.0.tar.gz (from https://pypi.org/simple/pyxero/), version: 0.5.0 2025-09-07T22:11:26,732 Found link https://files.pythonhosted.org/packages/19/27/80a5f9fad74b1ad1286d412018c4c4f3a355571cbdfc17c8e18f0df22b2c/pyxero-0.5.1.tar.gz (from https://pypi.org/simple/pyxero/), version: 0.5.1 2025-09-07T22:11:26,732 Found link https://files.pythonhosted.org/packages/21/83/c7a199dd270ff3e2b99d56634393d339b975deb882b73f7d3c0a443147af/pyxero-0.5.2.tar.gz (from https://pypi.org/simple/pyxero/), version: 0.5.2 2025-09-07T22:11:26,733 Skipping link: No binaries permitted for pyxero: https://files.pythonhosted.org/packages/fa/07/ada1ffbd4ff8caefdebcd305768ba8cbc91eea2b843eaf338610039cf413/pyxero-0.6.0-py2.py3-none-any.whl (from https://pypi.org/simple/pyxero/) 2025-09-07T22:11:26,733 Found link https://files.pythonhosted.org/packages/24/c2/68c991fa0805bc299e483dc91fd5a93aa1b2ff3a0846acbac4230fd401ce/pyxero-0.6.0.tar.gz (from https://pypi.org/simple/pyxero/), version: 0.6.0 2025-09-07T22:11:26,733 Skipping link: No binaries permitted for pyxero: https://files.pythonhosted.org/packages/75/85/0bd7862565ac989c9d89c1ed7cee9c5e28e895d13d738fa8461a07e59c94/pyxero-0.7.0-py2.py3-none-any.whl (from https://pypi.org/simple/pyxero/) 2025-09-07T22:11:26,734 Found link https://files.pythonhosted.org/packages/54/16/d32e8262169e0514a21fc9d33b06b0e86299924c914d753bffbe56443905/pyxero-0.7.0.tar.gz (from https://pypi.org/simple/pyxero/), version: 0.7.0 2025-09-07T22:11:26,734 Skipping link: No binaries permitted for pyxero: https://files.pythonhosted.org/packages/e3/47/69f38c4824d3f4823c4aa12f7a5f066900523d0cb168e0c0f8d90d916d63/pyxero-0.8.0-py2.py3-none-any.whl (from https://pypi.org/simple/pyxero/) 2025-09-07T22:11:26,734 Found link https://files.pythonhosted.org/packages/a7/b8/6d0cc67c12c73fbec856441ede62f9223b7006d75be018ca50024a831b67/pyxero-0.8.0.tar.gz (from https://pypi.org/simple/pyxero/), version: 0.8.0 2025-09-07T22:11:26,735 Skipping link: No binaries permitted for pyxero: https://files.pythonhosted.org/packages/46/ff/7fb276fca6412e7ad40b5d9e716edb94c3aa9981de4f77f361efb17ddaf1/pyxero-0.9.0-py2.py3-none-any.whl (from https://pypi.org/simple/pyxero/) 2025-09-07T22:11:26,735 Found link https://files.pythonhosted.org/packages/9a/28/2c17e8ea2755f6af61cdd303d21a22d289b72c07688090f6601210d24229/pyxero-0.9.0.tar.gz (from https://pypi.org/simple/pyxero/), version: 0.9.0 2025-09-07T22:11:26,735 Skipping link: No binaries permitted for pyxero: https://files.pythonhosted.org/packages/20/3a/fb5fd6e92cc04855d500ca5aa5a150e069b951a51c138a236e3997d50214/pyxero-0.9.1-py2.py3-none-any.whl (from https://pypi.org/simple/pyxero/) 2025-09-07T22:11:26,736 Found link https://files.pythonhosted.org/packages/1b/66/7b916142443633762b941c7d25cd993b375f8a7f7113c5d0e8f9e4602b7f/pyxero-0.9.1.tar.gz (from https://pypi.org/simple/pyxero/), version: 0.9.1 2025-09-07T22:11:26,736 Skipping link: No binaries permitted for pyxero: https://files.pythonhosted.org/packages/4d/f9/3376851dcbe97f7e52aac55b7d896ea2a60992e6743d34c3d53fb593305b/pyxero-0.9.2-py2.py3-none-any.whl (from https://pypi.org/simple/pyxero/) 2025-09-07T22:11:26,737 Found link https://files.pythonhosted.org/packages/66/3e/3ad1e535769cf5679b1d882fa9a35ca8c8ebf3752ca423d94cf225f3720a/pyxero-0.9.2.tar.gz (from https://pypi.org/simple/pyxero/), version: 0.9.2 2025-09-07T22:11:26,737 Skipping link: No binaries permitted for pyxero: https://files.pythonhosted.org/packages/f3/c0/56ddbdd89612dc1fe962cafd8628422d9237ef74712db8c1dc8f25fc3e4e/pyxero-0.9.3-py2.py3-none-any.whl (from https://pypi.org/simple/pyxero/) 2025-09-07T22:11:26,737 Found link https://files.pythonhosted.org/packages/e2/55/b346563e254dd9a676745377b04d44d16d1d836cd96649e5fb3d0609c9f7/pyxero-0.9.3.tar.gz (from https://pypi.org/simple/pyxero/), version: 0.9.3 2025-09-07T22:11:26,738 Skipping link: No binaries permitted for pyxero: https://files.pythonhosted.org/packages/99/61/8e337a846ae647cc044124033f3b05208eb9e1037ccb43fb06c0c12b4a27/pyxero-0.9.4-py3-none-any.whl (from https://pypi.org/simple/pyxero/) (requires-python:>=3.8) 2025-09-07T22:11:26,739 Found link https://files.pythonhosted.org/packages/10/9a/26826490efd77b5cf1faf53245facf7a26b69f2573416a8716a49911a1dd/pyxero-0.9.4.tar.gz (from https://pypi.org/simple/pyxero/) (requires-python:>=3.8), version: 0.9.4 2025-09-07T22:11:26,739 Skipping link: No binaries permitted for pyxero: https://files.pythonhosted.org/packages/f5/fe/c677e519c422d04ba09747e26571cb8a4607e2bfdc1aad35d366b0188e94/pyxero-0.9.5.dev0-py3-none-any.whl (from https://pypi.org/simple/pyxero/) (requires-python:>=3.9) 2025-09-07T22:11:26,740 Found link https://files.pythonhosted.org/packages/2a/a1/decd5f5de856012474ee1716967a9f131e565050efe758054474b9473048/pyxero-0.9.5.dev0.tar.gz (from https://pypi.org/simple/pyxero/) (requires-python:>=3.9), version: 0.9.5.dev0 2025-09-07T22:11:26,740 Skipping link: No binaries permitted for pyxero: https://files.pythonhosted.org/packages/75/34/2243088476cace0f1c36e5b04e2788aa04f47fe6a2ee42df41667dcfff7b/pyxero-0.9.5-py3-none-any.whl (from https://pypi.org/simple/pyxero/) (requires-python:>=3.9) 2025-09-07T22:11:26,741 Found link https://files.pythonhosted.org/packages/0f/15/a74b99ee610e5ad2dae244c953d96edf03210c5fc29b50a3761b793ed88b/pyxero-0.9.5.tar.gz (from https://pypi.org/simple/pyxero/) (requires-python:>=3.9), version: 0.9.5 2025-09-07T22:11:26,741 Fetching project page and analyzing links: https://www.piwheels.org/simple/pyxero/ 2025-09-07T22:11:26,742 Getting page https://www.piwheels.org/simple/pyxero/ 2025-09-07T22:11:26,743 Found index url https://www.piwheels.org/simple/ 2025-09-07T22:11:26,833 Fetched page https://www.piwheels.org/simple/pyxero/ as text/html 2025-09-07T22:11:26,836 Skipping link: No binaries permitted for pyxero: https://archive1.piwheels.org/simple/pyxero/pyxero-0.9.5-py3-none-any.whl#sha256=6cbd5ba4ed9741328777a8d677e96a2031b9df58a3d2ce48dd1f8c5a84d82851 (from https://www.piwheels.org/simple/pyxero/) (requires-python:>=3.9) 2025-09-07T22:11:26,836 Skipping link: No binaries permitted for pyxero: https://archive1.piwheels.org/simple/pyxero/pyxero-0.9.5.dev0-py3-none-any.whl#sha256=a2c19dc0824d66a3ec832e59cd770e5f918d5e94a9326bd309d11c0398d7dade (from https://www.piwheels.org/simple/pyxero/) (requires-python:>=3.9) 2025-09-07T22:11:26,837 Skipping link: No binaries permitted for pyxero: https://archive1.piwheels.org/simple/pyxero/pyxero-0.9.4-py3-none-any.whl#sha256=6962c909535ed2dd2902523c3ff9b26bde497c1140398695d602011d47a30809 (from https://www.piwheels.org/simple/pyxero/) (requires-python:>=3.8) 2025-09-07T22:11:26,837 Skipping link: No binaries permitted for pyxero: https://archive1.piwheels.org/simple/pyxero/pyxero-0.9.3-py2.py3-none-any.whl#sha256=95bc69c23b257fa2d8a393512735e617af4f4ae3ae1c6163fb1006bcab357d6b (from https://www.piwheels.org/simple/pyxero/) 2025-09-07T22:11:26,837 Skipping link: No binaries permitted for pyxero: https://archive1.piwheels.org/simple/pyxero/pyxero-0.9.2-py2.py3-none-any.whl#sha256=f2dc9f48b616041a50a5ffca1f7c5a7fc0e0b7609e6194f206a2dcbdfcdda35f (from https://www.piwheels.org/simple/pyxero/) 2025-09-07T22:11:26,837 Skipping link: No binaries permitted for pyxero: https://archive1.piwheels.org/simple/pyxero/pyxero-0.9.1-py2.py3-none-any.whl#sha256=28770d077da831acc36dfeb662f93ea656bd8e604b37d27d1815e83f5eb744e1 (from https://www.piwheels.org/simple/pyxero/) 2025-09-07T22:11:26,837 Skipping link: No binaries permitted for pyxero: https://archive1.piwheels.org/simple/pyxero/pyxero-0.9.0-py2.py3-none-any.whl#sha256=8b8c6f98d5c805270e411aabbef6b5f95a7df1e1dd2d39fe24f0cf3caf5232cc (from https://www.piwheels.org/simple/pyxero/) 2025-09-07T22:11:26,837 Skipping link: No binaries permitted for pyxero: https://archive1.piwheels.org/simple/pyxero/pyxero-0.8.0-py2.py3-none-any.whl#sha256=f24e258fcdbc60ac9e4067e89f2eae4fc5da6bb846f7b6273adaced060182166 (from https://www.piwheels.org/simple/pyxero/) 2025-09-07T22:11:26,838 Skipping link: No binaries permitted for pyxero: https://archive1.piwheels.org/simple/pyxero/pyxero-0.7.0-py2.py3-none-any.whl#sha256=1d182c17c1aa76320d0d133020aab4446120f59dc4dc7f0705ebb6c44d0a7626 (from https://www.piwheels.org/simple/pyxero/) 2025-09-07T22:11:26,838 Skipping link: No binaries permitted for pyxero: https://archive1.piwheels.org/simple/pyxero/pyxero-0.6.0-py2.py3-none-any.whl#sha256=f8a05122ebd9a0b04a70054e9404d6c1f728d14ef9a81c119c1ad283aa98b056 (from https://www.piwheels.org/simple/pyxero/) 2025-09-07T22:11:26,838 Skipping link: No binaries permitted for pyxero: https://archive1.piwheels.org/simple/pyxero/pyxero-0.5.2-py3-none-any.whl#sha256=9ace8510a70b8c2eb14d6c32e7dc64dc3dc42800ee8c647e2f431639fcf9caf6 (from https://www.piwheels.org/simple/pyxero/) 2025-09-07T22:11:26,838 Skipping link: not a file: https://www.piwheels.org/simple/pyxero/ 2025-09-07T22:11:26,838 Skipping link: not a file: https://pypi.org/simple/pyxero/ 2025-09-07T22:11:26,864 Given no hashes to check 1 links for project 'pyxero': discarding no candidates 2025-09-07T22:11:26,865 Collecting pyxero==0.5.0 2025-09-07T22:11:26,866 Created temporary directory: /tmp/pip-unpack-b1u8qzi2 2025-09-07T22:11:27,167 Downloading pyxero-0.5.0.tar.gz (8.8 kB) 2025-09-07T22:11:27,196 Added pyxero==0.5.0 from https://files.pythonhosted.org/packages/a5/ed/bed7770147660030a7660ee8a84ee1cc75ad5f9d5aa7253fb9059c2fd7cc/pyxero-0.5.0.tar.gz to build tracker '/tmp/pip-build-tracker-y4nrpla9' 2025-09-07T22:11:27,197 Running setup.py (path:/tmp/pip-wheel-z933i1nk/pyxero_4b685954084746e68284769c2ebfc29b/setup.py) egg_info for package pyxero 2025-09-07T22:11:27,197 Created temporary directory: /tmp/pip-pip-egg-info-0t_quqjx 2025-09-07T22:11:27,197 Preparing metadata (setup.py): started 2025-09-07T22:11:27,198 Running command python setup.py egg_info 2025-09-07T22:11:28,167 Traceback (most recent call last): 2025-09-07T22:11:28,169 File "", line 2, in 2025-09-07T22:11:28,169 exec(compile(''' 2025-09-07T22:11:28,169 ~~~~^^^^^^^^^^^^ 2025-09-07T22:11:28,169 # This is -- a caller that pip uses to run setup.py 2025-09-07T22:11:28,169 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,169 ...<32 lines>... 2025-09-07T22:11:28,169 exec(compile(setup_py_code, filename, "exec")) 2025-09-07T22:11:28,170 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,170 ''' % ('/tmp/pip-wheel-z933i1nk/pyxero_4b685954084746e68284769c2ebfc29b/setup.py',), "", "exec")) 2025-09-07T22:11:28,170 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,170 File "", line 35, in 2025-09-07T22:11:28,170 File "/tmp/pip-wheel-z933i1nk/pyxero_4b685954084746e68284769c2ebfc29b/setup.py", line 3, in 2025-09-07T22:11:28,170 from xero import VERSION 2025-09-07T22:11:28,170 File "/tmp/pip-wheel-z933i1nk/pyxero_4b685954084746e68284769c2ebfc29b/xero/__init__.py", line 1, in 2025-09-07T22:11:28,170 from .api import Xero 2025-09-07T22:11:28,171 File "/tmp/pip-wheel-z933i1nk/pyxero_4b685954084746e68284769c2ebfc29b/xero/api.py", line 1, in 2025-09-07T22:11:28,171 from .manager import Manager 2025-09-07T22:11:28,171 File "/tmp/pip-wheel-z933i1nk/pyxero_4b685954084746e68284769c2ebfc29b/xero/manager.py", line 7, in 2025-09-07T22:11:28,171 from urlparse import parse_qs 2025-09-07T22:11:28,171 ModuleNotFoundError: No module named 'urlparse' 2025-09-07T22:11:28,281 ERROR: python setup.py egg_info exited with 1 2025-09-07T22:11:28,293 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2025-09-07T22:11:28,293 exec(compile('"'"''"'"''"'"' 2025-09-07T22:11:28,293 # This is -- a caller that pip uses to run setup.py 2025-09-07T22:11:28,293 # 2025-09-07T22:11:28,293 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-07T22:11:28,293 # import from `distutils.core` to work with newer packaging standards. 2025-09-07T22:11:28,293 # - It provides a clear error message when setuptools is not installed. 2025-09-07T22:11:28,293 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-07T22:11:28,293 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-07T22:11:28,293 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-07T22:11:28,293 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-07T22:11:28,293 import os, sys, tokenize, traceback 2025-09-07T22:11:28,293 2025-09-07T22:11:28,293 try: 2025-09-07T22:11:28,293 import setuptools 2025-09-07T22:11:28,293 except ImportError: 2025-09-07T22:11:28,293 print( 2025-09-07T22:11:28,293 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-07T22:11:28,293 "the build environment with exception:", 2025-09-07T22:11:28,293 file=sys.stderr, 2025-09-07T22:11:28,293 ) 2025-09-07T22:11:28,293 traceback.print_exc() 2025-09-07T22:11:28,293 sys.exit(1) 2025-09-07T22:11:28,293 2025-09-07T22:11:28,293 __file__ = %r 2025-09-07T22:11:28,293 sys.argv[0] = __file__ 2025-09-07T22:11:28,293 2025-09-07T22:11:28,293 if os.path.exists(__file__): 2025-09-07T22:11:28,293 filename = __file__ 2025-09-07T22:11:28,293 with tokenize.open(__file__) as f: 2025-09-07T22:11:28,293 setup_py_code = f.read() 2025-09-07T22:11:28,293 else: 2025-09-07T22:11:28,293 filename = "" 2025-09-07T22:11:28,293 setup_py_code = "from setuptools import setup; setup()" 2025-09-07T22:11:28,293 2025-09-07T22:11:28,293 exec(compile(setup_py_code, filename, "exec")) 2025-09-07T22:11:28,293 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-z933i1nk/pyxero_4b685954084746e68284769c2ebfc29b/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-0t_quqjx[/] 2025-09-07T22:11:28,293 [bold magenta]cwd[/]: /tmp/pip-wheel-z933i1nk/pyxero_4b685954084746e68284769c2ebfc29b/ 2025-09-07T22:11:28,294 Preparing metadata (setup.py): finished with status 'error' 2025-09-07T22:11:28,294 ERROR: metadata generation failed 2025-09-07T22:11:28,299 Exception information: 2025-09-07T22:11:28,299 Traceback (most recent call last): 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 63, in generate_metadata 2025-09-07T22:11:28,299 call_subprocess( 2025-09-07T22:11:28,299 ~~~~~~~~~~~~~~~^ 2025-09-07T22:11:28,299 args, 2025-09-07T22:11:28,299 ^^^^^ 2025-09-07T22:11:28,299 ...<2 lines>... 2025-09-07T22:11:28,299 spinner=spinner, 2025-09-07T22:11:28,299 ^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,299 ) 2025-09-07T22:11:28,299 ^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 209, in call_subprocess 2025-09-07T22:11:28,299 raise error 2025-09-07T22:11:28,299 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2025-09-07T22:11:28,299 2025-09-07T22:11:28,299 The above exception was the direct cause of the following exception: 2025-09-07T22:11:28,299 2025-09-07T22:11:28,299 Traceback (most recent call last): 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-07T22:11:28,299 status = _inner_run() 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-07T22:11:28,299 return self.run(options, args) 2025-09-07T22:11:28,299 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-07T22:11:28,299 return func(self, options, args) 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2025-09-07T22:11:28,299 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve 2025-09-07T22:11:28,299 result = self._result = resolver.resolve( 2025-09-07T22:11:28,299 ~~~~~~~~~~~~~~~~^ 2025-09-07T22:11:28,299 collected.requirements, max_rounds=limit_how_complex_resolution_can_be 2025-09-07T22:11:28,299 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,299 ) 2025-09-07T22:11:28,299 ^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve 2025-09-07T22:11:28,299 state = resolution.resolve(requirements, max_rounds=max_rounds) 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve 2025-09-07T22:11:28,299 self._add_to_criteria(self.state.criteria, r, parent=None) 2025-09-07T22:11:28,299 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria 2025-09-07T22:11:28,299 if not criterion.candidates: 2025-09-07T22:11:28,299 ^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__ 2025-09-07T22:11:28,299 return bool(self._sequence) 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__ 2025-09-07T22:11:28,299 self._bool = any(self) 2025-09-07T22:11:28,299 ~~~^^^^^^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in 2025-09-07T22:11:28,299 return (c for c in iterator if id(c) not in self._incompatible_ids) 2025-09-07T22:11:28,299 ^^^^^^^^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 37, in _iter_built 2025-09-07T22:11:28,299 candidate = func() 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link 2025-09-07T22:11:28,299 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2025-09-07T22:11:28,299 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-07T22:11:28,299 link, template, name, version 2025-09-07T22:11:28,299 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,299 ) 2025-09-07T22:11:28,299 ^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link 2025-09-07T22:11:28,299 self._link_candidate_cache[link] = LinkCandidate( 2025-09-07T22:11:28,299 ~~~~~~~~~~~~~^ 2025-09-07T22:11:28,299 link, 2025-09-07T22:11:28,299 ^^^^^ 2025-09-07T22:11:28,299 ...<3 lines>... 2025-09-07T22:11:28,299 version=version, 2025-09-07T22:11:28,299 ^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,299 ) 2025-09-07T22:11:28,299 ^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 306, in __init__ 2025-09-07T22:11:28,299 super().__init__( 2025-09-07T22:11:28,299 ~~~~~~~~~~~~~~~~^ 2025-09-07T22:11:28,299 link=link, 2025-09-07T22:11:28,299 ^^^^^^^^^^ 2025-09-07T22:11:28,299 ...<4 lines>... 2025-09-07T22:11:28,299 version=version, 2025-09-07T22:11:28,299 ^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,299 ) 2025-09-07T22:11:28,299 ^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__ 2025-09-07T22:11:28,299 self.dist = self._prepare() 2025-09-07T22:11:28,299 ~~~~~~~~~~~~~^^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare 2025-09-07T22:11:28,299 dist = self._prepare_distribution() 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 317, in _prepare_distribution 2025-09-07T22:11:28,299 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2025-09-07T22:11:28,299 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in prepare_linked_requirement 2025-09-07T22:11:28,299 return self._prepare_linked_requirement(req, parallel_builds) 2025-09-07T22:11:28,299 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 647, in _prepare_linked_requirement 2025-09-07T22:11:28,299 dist = _get_prepared_distribution( 2025-09-07T22:11:28,299 req, 2025-09-07T22:11:28,299 ...<3 lines>... 2025-09-07T22:11:28,299 self.check_build_deps, 2025-09-07T22:11:28,299 ) 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2025-09-07T22:11:28,299 abstract_dist.prepare_distribution_metadata( 2025-09-07T22:11:28,299 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-07T22:11:28,299 finder, build_isolation, check_build_deps 2025-09-07T22:11:28,299 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,299 ) 2025-09-07T22:11:28,299 ^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 69, in prepare_distribution_metadata 2025-09-07T22:11:28,299 self.req.prepare_metadata() 2025-09-07T22:11:28,299 ~~~~~~~~~~~~~~~~~~~~~~~~~^^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 581, in prepare_metadata 2025-09-07T22:11:28,299 self.metadata_directory = generate_metadata_legacy( 2025-09-07T22:11:28,299 ~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-07T22:11:28,299 build_env=self.build_env, 2025-09-07T22:11:28,299 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,299 ...<3 lines>... 2025-09-07T22:11:28,299 details=details, 2025-09-07T22:11:28,299 ^^^^^^^^^^^^^^^^ 2025-09-07T22:11:28,299 ) 2025-09-07T22:11:28,299 ^ 2025-09-07T22:11:28,299 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 70, in generate_metadata 2025-09-07T22:11:28,299 raise MetadataGenerationFailed(package_details=details) from error 2025-09-07T22:11:28,299 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2025-09-07T22:11:28,320 Removed pyxero==0.5.0 from https://files.pythonhosted.org/packages/a5/ed/bed7770147660030a7660ee8a84ee1cc75ad5f9d5aa7253fb9059c2fd7cc/pyxero-0.5.0.tar.gz from build tracker '/tmp/pip-build-tracker-y4nrpla9' 2025-09-07T22:11:28,320 Removed build tracker: '/tmp/pip-build-tracker-y4nrpla9'