2026-05-23T11:28:47,069 Created temporary directory: /tmp/pip-build-tracker-z3fpexd8 2026-05-23T11:28:47,071 Initialized build tracking at /tmp/pip-build-tracker-z3fpexd8 2026-05-23T11:28:47,071 Created build tracker: /tmp/pip-build-tracker-z3fpexd8 2026-05-23T11:28:47,071 Entered build tracker: /tmp/pip-build-tracker-z3fpexd8 2026-05-23T11:28:47,072 Created temporary directory: /tmp/pip-wheel-dvtzfb8v 2026-05-23T11:28:47,076 Created temporary directory: /tmp/pip-ephem-wheel-cache-vkvrxurg 2026-05-23T11:28:47,133 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2026-05-23T11:28:47,136 2 location(s) to search for versions of discotool: 2026-05-23T11:28:47,136 * https://pypi.org/simple/discotool/ 2026-05-23T11:28:47,136 * https://www.piwheels.org/simple/discotool/ 2026-05-23T11:28:47,136 Fetching project page and analyzing links: https://pypi.org/simple/discotool/ 2026-05-23T11:28:47,136 Getting page https://pypi.org/simple/discotool/ 2026-05-23T11:28:47,137 Found index url https://pypi.org/simple/ 2026-05-23T11:28:47,206 Fetched page https://pypi.org/simple/discotool/ as application/vnd.pypi.simple.v1+json 2026-05-23T11:28:47,209 Found link https://files.pythonhosted.org/packages/1a/8a/e381b374908ed4e97a7a51b3cc56f04716c859cbbb1f07de8938a71f83ea/discotool-0.3.0.tar.gz (from https://pypi.org/simple/discotool/) (requires-python:>=3.6), version: 0.3.0 2026-05-23T11:28:47,209 Found link https://files.pythonhosted.org/packages/a9/a4/27995930a69b0515ca68306423216e67d6f653d0c91643e08b7263b983f3/discotool-0.3.1.tar.gz (from https://pypi.org/simple/discotool/) (requires-python:>=3.6), version: 0.3.1 2026-05-23T11:28:47,209 Found link https://files.pythonhosted.org/packages/a6/c1/b2c50e8969192c902f2e478e98186ec4c2db84b640608582d2a8559f05ca/discotool-0.3.2.tar.gz (from https://pypi.org/simple/discotool/) (requires-python:>=3.6), version: 0.3.2 2026-05-23T11:28:47,209 Found link https://files.pythonhosted.org/packages/25/f5/c9fca72ab3fe0790cc27b18d1fe3e036bec568b43f8acfae6210d2d20e30/discotool-0.3.3.tar.gz (from https://pypi.org/simple/discotool/) (requires-python:>=3.6), version: 0.3.3 2026-05-23T11:28:47,210 Found link https://files.pythonhosted.org/packages/c6/2a/0f023c2573c0d615365d7e63ac84ccd8c0957cede8b410718820d5f0b66e/discotool-0.4.0.tar.gz (from https://pypi.org/simple/discotool/) (requires-python:>=3.6), version: 0.4.0 2026-05-23T11:28:47,210 Found link https://files.pythonhosted.org/packages/2b/af/775b4152c781c81e8f030174273e9cafd3f9c53c73b2c9ae7b66381821b0/discotool-0.5.0.tar.gz (from https://pypi.org/simple/discotool/) (requires-python:>=3.6), version: 0.5.0 2026-05-23T11:28:47,210 Found link https://files.pythonhosted.org/packages/28/1d/d5da8d27bbf43552060aa4ccdf26e6189c371882a3c828cf7ae3de1f16bd/discotool-0.5.1.tar.gz (from https://pypi.org/simple/discotool/) (requires-python:>=3.6), version: 0.5.1 2026-05-23T11:28:47,210 Found link https://files.pythonhosted.org/packages/d1/5b/40cf0182fce38c29b3003491bbe68a7cb7bee7397b98fdce6975f9037df9/discotool-0.5.2.tar.gz (from https://pypi.org/simple/discotool/) (requires-python:>=3.6), version: 0.5.2 2026-05-23T11:28:47,210 Found link https://files.pythonhosted.org/packages/07/3f/108728fe1c4c2fde550f4ec7d18e0c62e634ca3265a324995877beb69601/discotool-0.5.3.tar.gz (from https://pypi.org/simple/discotool/) (requires-python:>=3.6), version: 0.5.3 2026-05-23T11:28:47,211 Found link https://files.pythonhosted.org/packages/88/d8/b046949ac76826a68a2e9ac14368f85187cb59f4e69e2ab32a726dd334c2/discotool-0.5.4.tar.gz (from https://pypi.org/simple/discotool/) (requires-python:>=3.6), version: 0.5.4 2026-05-23T11:28:47,211 Found link https://files.pythonhosted.org/packages/0b/6b/543c77a170f072c0cd0238947ef0a2c92c26f0629918a6e71bdcccbcca80/discotool-0.5.6.tar.gz (from https://pypi.org/simple/discotool/) (requires-python:>=3.6), version: 0.5.6 2026-05-23T11:28:47,211 Skipping link: No binaries permitted for discotool: https://files.pythonhosted.org/packages/73/56/b107dc21c47353506f0145c954b0fedfb2becda365315ed326dffa3b5ce7/discotool-0.5.7-py3-none-any.whl (from https://pypi.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,211 Found link https://files.pythonhosted.org/packages/19/b4/fbbbf07af42638f60c402ef8ccbdb978e5a55a4cf7a94d2c712d0ad6b52f/discotool-0.5.7.tar.gz (from https://pypi.org/simple/discotool/) (requires-python:>=3.6), version: 0.5.7 2026-05-23T11:28:47,211 Skipping link: No binaries permitted for discotool: https://files.pythonhosted.org/packages/38/b0/d01a364f4433d5d952eda1f12c13f9a496457a6d0cb92810ae5d961145b6/discotool-0.5.8-py3-none-any.whl (from https://pypi.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,212 Found link https://files.pythonhosted.org/packages/18/81/85ece3fe3fe74341c1b57d54d048ad3a8b297cda0f167526cc3b584ce81b/discotool-0.5.8.tar.gz (from https://pypi.org/simple/discotool/) (requires-python:>=3.6), version: 0.5.8 2026-05-23T11:28:47,212 Fetching project page and analyzing links: https://www.piwheels.org/simple/discotool/ 2026-05-23T11:28:47,212 Getting page https://www.piwheels.org/simple/discotool/ 2026-05-23T11:28:47,213 Found index url https://www.piwheels.org/simple/ 2026-05-23T11:28:47,304 Fetched page https://www.piwheels.org/simple/discotool/ as text/html 2026-05-23T11:28:47,307 Index returned invalid data-dist-info-metadata value: 2026-05-23T11:28:47,307 Index returned invalid data-dist-info-metadata value: 2026-05-23T11:28:47,308 Index returned invalid data-dist-info-metadata value: 2026-05-23T11:28:47,308 Index returned invalid data-dist-info-metadata value: 2026-05-23T11:28:47,308 Index returned invalid data-dist-info-metadata value: 2026-05-23T11:28:47,308 Index returned invalid data-dist-info-metadata value: 2026-05-23T11:28:47,309 Index returned invalid data-dist-info-metadata value: 2026-05-23T11:28:47,309 Index returned invalid data-dist-info-metadata value: 2026-05-23T11:28:47,309 Index returned invalid data-dist-info-metadata value: 2026-05-23T11:28:47,309 Index returned invalid data-dist-info-metadata value: 2026-05-23T11:28:47,310 Index returned invalid data-dist-info-metadata value: 2026-05-23T11:28:47,310 Index returned invalid data-dist-info-metadata value: 2026-05-23T11:28:47,310 Skipping link: No binaries permitted for discotool: https://www.piwheels.org/simple/discotool/discotool-0.5.7-py3-none-any.whl#sha256=db0429c0fda6347b70e7fe9ec0b036e7a91b41d5406aec15270b5d5bd5487464 (from https://www.piwheels.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,310 Skipping link: No binaries permitted for discotool: https://archive1.piwheels.org/simple/discotool/discotool-0.5.6-py3-none-any.whl#sha256=2470baef1d029baf59250695b081f98f5274f236077207692404c1dab386f0f0 (from https://www.piwheels.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,311 Skipping link: No binaries permitted for discotool: https://archive1.piwheels.org/simple/discotool/discotool-0.5.4-py3-none-any.whl#sha256=d38e5edc3206d976dc1b216a545ab876315b3df68f02e71d8903b3b552ae6c98 (from https://www.piwheels.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,311 Skipping link: No binaries permitted for discotool: https://archive1.piwheels.org/simple/discotool/discotool-0.5.3-py3-none-any.whl#sha256=f3ba63d706f7b6b5b13e63c081087b7e56225d82a342ceca044de1092b56cbed (from https://www.piwheels.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,311 Skipping link: No binaries permitted for discotool: https://archive1.piwheels.org/simple/discotool/discotool-0.5.2-py3-none-any.whl#sha256=6a40eb3883db4cdf9ed0eb58938a4fec9bda402377d5ba8231bd4652d1c76c58 (from https://www.piwheels.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,311 Skipping link: No binaries permitted for discotool: https://archive1.piwheels.org/simple/discotool/discotool-0.5.1-py3-none-any.whl#sha256=5972cf30da1a7bb1506540a5081afbd7e44a85927607eb9182d452529b9f4026 (from https://www.piwheels.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,311 Skipping link: No binaries permitted for discotool: https://archive1.piwheels.org/simple/discotool/discotool-0.5.0-py3-none-any.whl#sha256=db77d2be84fe187a9b80e8da86b3af156c459670a1293450dbc7dfb871c1c9a0 (from https://www.piwheels.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,311 Skipping link: No binaries permitted for discotool: https://archive1.piwheels.org/simple/discotool/discotool-0.4.0-py3-none-any.whl#sha256=201d6d79c2204556f712de71b2cffe41db69f94aedf74a582ff61cacf77ed010 (from https://www.piwheels.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,312 Skipping link: No binaries permitted for discotool: https://archive1.piwheels.org/simple/discotool/discotool-0.3.3-py3-none-any.whl#sha256=9f04b8e0cb8b62dbd6206ffd72d73ce63b91d16498ad4fc710dcaf4d1921e440 (from https://www.piwheels.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,312 Skipping link: No binaries permitted for discotool: https://archive1.piwheels.org/simple/discotool/discotool-0.3.2-py3-none-any.whl#sha256=f661559f9cd87cf3b6fa00514011e88d706184e89e18604487d004649563772f (from https://www.piwheels.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,312 Skipping link: No binaries permitted for discotool: https://archive1.piwheels.org/simple/discotool/discotool-0.3.1-py3-none-any.whl#sha256=643411602535c1e517bbd36c490f218c437592ccb549ed0f6e12eaed98096b61 (from https://www.piwheels.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,312 Skipping link: No binaries permitted for discotool: https://archive1.piwheels.org/simple/discotool/discotool-0.3.0-py3-none-any.whl#sha256=8c88c6ed95a3dab0c9210f6cbdd4fa16530fa5431490450887ea5200a4ae349c (from https://www.piwheels.org/simple/discotool/) (requires-python:>=3.6) 2026-05-23T11:28:47,312 Skipping link: not a file: https://www.piwheels.org/simple/discotool/ 2026-05-23T11:28:47,312 Skipping link: not a file: https://pypi.org/simple/discotool/ 2026-05-23T11:28:47,338 Given no hashes to check 1 links for project 'discotool': discarding no candidates 2026-05-23T11:28:47,339 Collecting discotool==0.5.8 2026-05-23T11:28:47,341 Created temporary directory: /tmp/pip-unpack-bpfkgz36 2026-05-23T11:28:47,403 Downloading discotool-0.5.8.tar.gz (587 kB) 2026-05-23T11:28:47,638 Added discotool==0.5.8 from https://files.pythonhosted.org/packages/18/81/85ece3fe3fe74341c1b57d54d048ad3a8b297cda0f167526cc3b584ce81b/discotool-0.5.8.tar.gz to build tracker '/tmp/pip-build-tracker-z3fpexd8' 2026-05-23T11:28:47,640 Running setup.py (path:/tmp/pip-wheel-dvtzfb8v/discotool_7e63a10d18ff40bda50555682f988a55/setup.py) egg_info for package discotool 2026-05-23T11:28:47,641 Created temporary directory: /tmp/pip-pip-egg-info-kbik0xqk 2026-05-23T11:28:47,641 Preparing metadata (setup.py): started 2026-05-23T11:28:47,642 Running command python setup.py egg_info 2026-05-23T11:28:48,423 /usr/local/lib/python3.13/dist-packages/setuptools/__init__.py:92: _DeprecatedInstaller: setuptools.installer and fetch_build_eggs are deprecated. 2026-05-23T11:28:48,424 !! 2026-05-23T11:28:48,424 ******************************************************************************** 2026-05-23T11:28:48,424 Requirements should be satisfied by a PEP 517 installer. 2026-05-23T11:28:48,424 If you are using pip, you can try `pip install --use-pep517`. 2026-05-23T11:28:48,424 This deprecation is overdue, please update your project and remove deprecated 2026-05-23T11:28:48,424 calls to avoid build errors in the future. 2026-05-23T11:28:48,424 ******************************************************************************** 2026-05-23T11:28:48,425 !! 2026-05-23T11:28:48,425 dist.fetch_build_eggs(dist.setup_requires) 2026-05-23T11:28:51,682 Traceback (most recent call last): 2026-05-23T11:28:51,688 File "", line 2, in 2026-05-23T11:28:51,688 exec(compile(''' 2026-05-23T11:28:51,688 ~~~~^^^^^^^^^^^^ 2026-05-23T11:28:51,688 # This is -- a caller that pip uses to run setup.py 2026-05-23T11:28:51,688 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,688 ...<32 lines>... 2026-05-23T11:28:51,689 exec(compile(setup_py_code, filename, "exec")) 2026-05-23T11:28:51,689 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,689 ''' % ('/tmp/pip-wheel-dvtzfb8v/discotool_7e63a10d18ff40bda50555682f988a55/setup.py',), "", "exec")) 2026-05-23T11:28:51,689 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,689 File "", line 35, in 2026-05-23T11:28:51,689 File "/tmp/pip-wheel-dvtzfb8v/discotool_7e63a10d18ff40bda50555682f988a55/setup.py", line 44, in 2026-05-23T11:28:51,689 setuptools.setup( 2026-05-23T11:28:51,690 ~~~~~~~~~~~~~~~~^ 2026-05-23T11:28:51,690 name="discotool", 2026-05-23T11:28:51,690 ^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,690 ...<28 lines>... 2026-05-23T11:28:51,690 keywords="circuitpython, micropython", 2026-05-23T11:28:51,690 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,690 ) 2026-05-23T11:28:51,690 ^ 2026-05-23T11:28:51,691 File "/usr/local/lib/python3.13/dist-packages/setuptools/__init__.py", line 117, in setup 2026-05-23T11:28:51,691 return distutils.core.setup(**attrs) # type: ignore[return-value] 2026-05-23T11:28:51,691 ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^ 2026-05-23T11:28:51,691 File "/usr/local/lib/python3.13/dist-packages/setuptools/_distutils/core.py", line 148, in setup 2026-05-23T11:28:51,691 _setup_distribution = dist = klass(attrs) 2026-05-23T11:28:51,691 ~~~~~^^^^^^^ 2026-05-23T11:28:51,692 File "/usr/local/lib/python3.13/dist-packages/setuptools/dist.py", line 321, in __init__ 2026-05-23T11:28:51,692 _Distribution.__init__(self, dist_attrs) 2026-05-23T11:28:51,692 ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,692 File "/usr/local/lib/python3.13/dist-packages/setuptools/_distutils/dist.py", line 307, in __init__ 2026-05-23T11:28:51,692 self.finalize_options() 2026-05-23T11:28:51,692 ~~~~~~~~~~~~~~~~~~~~~^^ 2026-05-23T11:28:51,692 File "/usr/local/lib/python3.13/dist-packages/setuptools/dist.py", line 789, in finalize_options 2026-05-23T11:28:51,692 for ep in sorted(loaded, key=by_order): 2026-05-23T11:28:51,693 ~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,693 File "/usr/local/lib/python3.13/dist-packages/setuptools/dist.py", line 788, in 2026-05-23T11:28:51,693 loaded = map(lambda e: e.load(), filtered) 2026-05-23T11:28:51,693 ~~~~~~^^ 2026-05-23T11:28:51,693 File "/usr/lib/python3.13/importlib/metadata/__init__.py", line 179, in load 2026-05-23T11:28:51,693 module = import_module(match.group('module')) 2026-05-23T11:28:51,694 File "/usr/lib/python3.13/importlib/__init__.py", line 88, in import_module 2026-05-23T11:28:51,694 return _bootstrap._gcd_import(name[level:], package, level) 2026-05-23T11:28:51,694 ~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,694 File "", line 1387, in _gcd_import 2026-05-23T11:28:51,694 File "", line 1360, in _find_and_load 2026-05-23T11:28:51,694 File "", line 1310, in _find_and_load_unlocked 2026-05-23T11:28:51,694 File "", line 488, in _call_with_frames_removed 2026-05-23T11:28:51,695 File "", line 1387, in _gcd_import 2026-05-23T11:28:51,695 File "", line 1360, in _find_and_load 2026-05-23T11:28:51,695 File "", line 1310, in _find_and_load_unlocked 2026-05-23T11:28:51,695 File "", line 488, in _call_with_frames_removed 2026-05-23T11:28:51,695 File "", line 1387, in _gcd_import 2026-05-23T11:28:51,695 File "", line 1360, in _find_and_load 2026-05-23T11:28:51,696 File "", line 1331, in _find_and_load_unlocked 2026-05-23T11:28:51,696 File "", line 935, in _load_unlocked 2026-05-23T11:28:51,696 File "", line 1026, in exec_module 2026-05-23T11:28:51,696 File "", line 488, in _call_with_frames_removed 2026-05-23T11:28:51,696 File "/tmp/pip-wheel-dvtzfb8v/discotool_7e63a10d18ff40bda50555682f988a55/.eggs/setuptools_scm-10.0.5-py3.13.egg/setuptools_scm/__init__.py", line 8, in 2026-05-23T11:28:51,696 from vcs_versioning import Configuration 2026-05-23T11:28:51,696 ModuleNotFoundError: No module named 'vcs_versioning' 2026-05-23T11:28:51,805 ERROR: python setup.py egg_info exited with 1 2026-05-23T11:28:51,817 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2026-05-23T11:28:51,817 exec(compile('"'"''"'"''"'"' 2026-05-23T11:28:51,817 # This is -- a caller that pip uses to run setup.py 2026-05-23T11:28:51,817 # 2026-05-23T11:28:51,817 # - It imports setuptools before invoking setup.py, to enable projects that directly 2026-05-23T11:28:51,817 # import from `distutils.core` to work with newer packaging standards. 2026-05-23T11:28:51,817 # - It provides a clear error message when setuptools is not installed. 2026-05-23T11:28:51,817 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2026-05-23T11:28:51,817 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2026-05-23T11:28:51,817 # manifest_maker: standard file '"'"'-c'"'"' not found". 2026-05-23T11:28:51,817 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2026-05-23T11:28:51,817 import os, sys, tokenize, traceback 2026-05-23T11:28:51,817 2026-05-23T11:28:51,817 try: 2026-05-23T11:28:51,817 import setuptools 2026-05-23T11:28:51,817 except ImportError: 2026-05-23T11:28:51,817 print( 2026-05-23T11:28:51,817 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2026-05-23T11:28:51,817 "the build environment with exception:", 2026-05-23T11:28:51,817 file=sys.stderr, 2026-05-23T11:28:51,817 ) 2026-05-23T11:28:51,817 traceback.print_exc() 2026-05-23T11:28:51,817 sys.exit(1) 2026-05-23T11:28:51,817 2026-05-23T11:28:51,817 __file__ = %r 2026-05-23T11:28:51,817 sys.argv[0] = __file__ 2026-05-23T11:28:51,817 2026-05-23T11:28:51,817 if os.path.exists(__file__): 2026-05-23T11:28:51,817 filename = __file__ 2026-05-23T11:28:51,817 with tokenize.open(__file__) as f: 2026-05-23T11:28:51,817 setup_py_code = f.read() 2026-05-23T11:28:51,817 else: 2026-05-23T11:28:51,817 filename = "" 2026-05-23T11:28:51,817 setup_py_code = "from setuptools import setup; setup()" 2026-05-23T11:28:51,817 2026-05-23T11:28:51,817 exec(compile(setup_py_code, filename, "exec")) 2026-05-23T11:28:51,817 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-dvtzfb8v/discotool_7e63a10d18ff40bda50555682f988a55/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-kbik0xqk[/] 2026-05-23T11:28:51,817 [bold magenta]cwd[/]: /tmp/pip-wheel-dvtzfb8v/discotool_7e63a10d18ff40bda50555682f988a55/ 2026-05-23T11:28:51,817 Preparing metadata (setup.py): finished with status 'error' 2026-05-23T11:28:51,818 ERROR: metadata generation failed 2026-05-23T11:28:51,823 Exception information: 2026-05-23T11:28:51,823 Traceback (most recent call last): 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 63, in generate_metadata 2026-05-23T11:28:51,823 call_subprocess( 2026-05-23T11:28:51,823 ~~~~~~~~~~~~~~~^ 2026-05-23T11:28:51,823 args, 2026-05-23T11:28:51,823 ^^^^^ 2026-05-23T11:28:51,823 ...<2 lines>... 2026-05-23T11:28:51,823 spinner=spinner, 2026-05-23T11:28:51,823 ^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,823 ) 2026-05-23T11:28:51,823 ^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 209, in call_subprocess 2026-05-23T11:28:51,823 raise error 2026-05-23T11:28:51,823 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2026-05-23T11:28:51,823 2026-05-23T11:28:51,823 The above exception was the direct cause of the following exception: 2026-05-23T11:28:51,823 2026-05-23T11:28:51,823 Traceback (most recent call last): 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2026-05-23T11:28:51,823 status = _inner_run() 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2026-05-23T11:28:51,823 return self.run(options, args) 2026-05-23T11:28:51,823 ~~~~~~~~^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2026-05-23T11:28:51,823 return func(self, options, args) 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2026-05-23T11:28:51,823 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve 2026-05-23T11:28:51,823 result = self._result = resolver.resolve( 2026-05-23T11:28:51,823 ~~~~~~~~~~~~~~~~^ 2026-05-23T11:28:51,823 collected.requirements, max_rounds=limit_how_complex_resolution_can_be 2026-05-23T11:28:51,823 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,823 ) 2026-05-23T11:28:51,823 ^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve 2026-05-23T11:28:51,823 state = resolution.resolve(requirements, max_rounds=max_rounds) 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve 2026-05-23T11:28:51,823 self._add_to_criteria(self.state.criteria, r, parent=None) 2026-05-23T11:28:51,823 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria 2026-05-23T11:28:51,823 if not criterion.candidates: 2026-05-23T11:28:51,823 ^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__ 2026-05-23T11:28:51,823 return bool(self._sequence) 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__ 2026-05-23T11:28:51,823 self._bool = any(self) 2026-05-23T11:28:51,823 ~~~^^^^^^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in 2026-05-23T11:28:51,823 return (c for c in iterator if id(c) not in self._incompatible_ids) 2026-05-23T11:28:51,823 ^^^^^^^^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 37, in _iter_built 2026-05-23T11:28:51,823 candidate = func() 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link 2026-05-23T11:28:51,823 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2026-05-23T11:28:51,823 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2026-05-23T11:28:51,823 link, template, name, version 2026-05-23T11:28:51,823 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,823 ) 2026-05-23T11:28:51,823 ^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link 2026-05-23T11:28:51,823 self._link_candidate_cache[link] = LinkCandidate( 2026-05-23T11:28:51,823 ~~~~~~~~~~~~~^ 2026-05-23T11:28:51,823 link, 2026-05-23T11:28:51,823 ^^^^^ 2026-05-23T11:28:51,823 ...<3 lines>... 2026-05-23T11:28:51,823 version=version, 2026-05-23T11:28:51,823 ^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,823 ) 2026-05-23T11:28:51,823 ^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 306, in __init__ 2026-05-23T11:28:51,823 super().__init__( 2026-05-23T11:28:51,823 ~~~~~~~~~~~~~~~~^ 2026-05-23T11:28:51,823 link=link, 2026-05-23T11:28:51,823 ^^^^^^^^^^ 2026-05-23T11:28:51,823 ...<4 lines>... 2026-05-23T11:28:51,823 version=version, 2026-05-23T11:28:51,823 ^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,823 ) 2026-05-23T11:28:51,823 ^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__ 2026-05-23T11:28:51,823 self.dist = self._prepare() 2026-05-23T11:28:51,823 ~~~~~~~~~~~~~^^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare 2026-05-23T11:28:51,823 dist = self._prepare_distribution() 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 317, in _prepare_distribution 2026-05-23T11:28:51,823 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2026-05-23T11:28:51,823 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in prepare_linked_requirement 2026-05-23T11:28:51,823 return self._prepare_linked_requirement(req, parallel_builds) 2026-05-23T11:28:51,823 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 647, in _prepare_linked_requirement 2026-05-23T11:28:51,823 dist = _get_prepared_distribution( 2026-05-23T11:28:51,823 req, 2026-05-23T11:28:51,823 ...<3 lines>... 2026-05-23T11:28:51,823 self.check_build_deps, 2026-05-23T11:28:51,823 ) 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2026-05-23T11:28:51,823 abstract_dist.prepare_distribution_metadata( 2026-05-23T11:28:51,823 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2026-05-23T11:28:51,823 finder, build_isolation, check_build_deps 2026-05-23T11:28:51,823 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,823 ) 2026-05-23T11:28:51,823 ^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 69, in prepare_distribution_metadata 2026-05-23T11:28:51,823 self.req.prepare_metadata() 2026-05-23T11:28:51,823 ~~~~~~~~~~~~~~~~~~~~~~~~~^^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 581, in prepare_metadata 2026-05-23T11:28:51,823 self.metadata_directory = generate_metadata_legacy( 2026-05-23T11:28:51,823 ~~~~~~~~~~~~~~~~~~~~~~~~^ 2026-05-23T11:28:51,823 build_env=self.build_env, 2026-05-23T11:28:51,823 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,823 ...<3 lines>... 2026-05-23T11:28:51,823 details=details, 2026-05-23T11:28:51,823 ^^^^^^^^^^^^^^^^ 2026-05-23T11:28:51,823 ) 2026-05-23T11:28:51,823 ^ 2026-05-23T11:28:51,823 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 70, in generate_metadata 2026-05-23T11:28:51,823 raise MetadataGenerationFailed(package_details=details) from error 2026-05-23T11:28:51,823 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2026-05-23T11:28:51,844 Removed discotool==0.5.8 from https://files.pythonhosted.org/packages/18/81/85ece3fe3fe74341c1b57d54d048ad3a8b297cda0f167526cc3b584ce81b/discotool-0.5.8.tar.gz from build tracker '/tmp/pip-build-tracker-z3fpexd8' 2026-05-23T11:28:51,844 Removed build tracker: '/tmp/pip-build-tracker-z3fpexd8'