2025-09-13T14:36:02,090 Created temporary directory: /tmp/pip-build-tracker-d6acvsyo 2025-09-13T14:36:02,091 Initialized build tracking at /tmp/pip-build-tracker-d6acvsyo 2025-09-13T14:36:02,091 Created build tracker: /tmp/pip-build-tracker-d6acvsyo 2025-09-13T14:36:02,091 Entered build tracker: /tmp/pip-build-tracker-d6acvsyo 2025-09-13T14:36:02,091 Created temporary directory: /tmp/pip-wheel-2d4ymtsb 2025-09-13T14:36:02,095 Created temporary directory: /tmp/pip-ephem-wheel-cache-326yu8xz 2025-09-13T14:36:02,154 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-13T14:36:02,157 2 location(s) to search for versions of py-mcws: 2025-09-13T14:36:02,157 * https://pypi.org/simple/py-mcws/ 2025-09-13T14:36:02,157 * https://www.piwheels.org/simple/py-mcws/ 2025-09-13T14:36:02,157 Fetching project page and analyzing links: https://pypi.org/simple/py-mcws/ 2025-09-13T14:36:02,158 Getting page https://pypi.org/simple/py-mcws/ 2025-09-13T14:36:02,159 Found index url https://pypi.org/simple/ 2025-09-13T14:36:02,311 Fetched page https://pypi.org/simple/py-mcws/ as application/vnd.pypi.simple.v1+json 2025-09-13T14:36:02,313 Found link https://files.pythonhosted.org/packages/93/71/3f7c80a6335951fa0fe7c341050aa2411e1f69257f9f12604617e4b657da/py-mcws-1.0.0.tar.gz (from https://pypi.org/simple/py-mcws/), version: 1.0.0 2025-09-13T14:36:02,314 Skipping link: No binaries permitted for py-mcws: https://files.pythonhosted.org/packages/20/b9/48d22ae3bd0158fd85345a4472ae4a7c2b1229b2677b7ab10f2011a51549/py_mcws-1.0.0-py3-none-any.whl (from https://pypi.org/simple/py-mcws/) 2025-09-13T14:36:02,314 Found link https://files.pythonhosted.org/packages/70/2d/2c5d8e7392d8e37286d6509e98b156f4aec68e8ad890bd80240c816025ed/py-mcws-1.0.2.tar.gz (from https://pypi.org/simple/py-mcws/), version: 1.0.2 2025-09-13T14:36:02,314 Skipping link: No binaries permitted for py-mcws: https://files.pythonhosted.org/packages/aa/e6/044ca4e5e2f5de90caa530acc3be9a427bf00d47659e236f7871309fae47/py_mcws-1.0.2-py3-none-any.whl (from https://pypi.org/simple/py-mcws/) 2025-09-13T14:36:02,315 Found link https://files.pythonhosted.org/packages/5a/e5/ef8f6d502ed5b815ba238704f74c5af898f48a105cb5a2d92981b8d166d9/py-mcws-1.1.0.tar.gz (from https://pypi.org/simple/py-mcws/), version: 1.1.0 2025-09-13T14:36:02,315 Skipping link: No binaries permitted for py-mcws: https://files.pythonhosted.org/packages/fc/b5/05ff3195f6eb0db1a1c19e2ffe55e8d20f89a04dea5fc35bfdee68761889/py_mcws-1.1.0-py3-none-any.whl (from https://pypi.org/simple/py-mcws/) 2025-09-13T14:36:02,315 Found link https://files.pythonhosted.org/packages/ce/07/96aa8ffba589c5b5bae843d3e6270d7e29e9876dd9bc0d369cb3490b02c0/py-mcws-1.1.2.tar.gz (from https://pypi.org/simple/py-mcws/), version: 1.1.2 2025-09-13T14:36:02,315 Skipping link: No binaries permitted for py-mcws: https://files.pythonhosted.org/packages/c5/5c/fc18d871d71cbc9f52dbfb3d985b9f0d9d3eb4e1b464b2a7912ec82c7071/py_mcws-1.1.2-py3-none-any.whl (from https://pypi.org/simple/py-mcws/) 2025-09-13T14:36:02,315 Found link https://files.pythonhosted.org/packages/a9/9e/278a9a0d43ca34210109f634a791bc736d5bed11f1f39d977e33fccf5d4f/py-mcws-2.0.0.tar.gz (from https://pypi.org/simple/py-mcws/), version: 2.0.0 2025-09-13T14:36:02,316 Skipping link: No binaries permitted for py-mcws: https://files.pythonhosted.org/packages/29/d1/f1053aa3f6ee52c63f9174e874c72cacdff1df55a7f9948d679abacb675c/py_mcws-2.0.0-py3-none-any.whl (from https://pypi.org/simple/py-mcws/) 2025-09-13T14:36:02,316 Found link https://files.pythonhosted.org/packages/c8/46/8e339db2ac74b458a243b36e660d0c8744fa7467bf3c6469c88265a3da3b/py-mcws-2.0.1.tar.gz (from https://pypi.org/simple/py-mcws/), version: 2.0.1 2025-09-13T14:36:02,316 Skipping link: No binaries permitted for py-mcws: https://files.pythonhosted.org/packages/ee/8e/e43b6fef5a452b7690af722331500c54b6fd6da8c80f74b9010432b9a709/py_mcws-2.0.1-py3-none-any.whl (from https://pypi.org/simple/py-mcws/) 2025-09-13T14:36:02,316 Found link https://files.pythonhosted.org/packages/bd/be/7493949059641d203227022c5703d31d581beafaf66045c3fc5e2c533212/py-mcws-2.0.2.tar.gz (from https://pypi.org/simple/py-mcws/), version: 2.0.2 2025-09-13T14:36:02,317 Skipping link: No binaries permitted for py-mcws: https://files.pythonhosted.org/packages/15/14/7fc7964b0bcf375bb06cec40f5c6733919a5acb4c977e650e3d79cb889c1/py_mcws-2.0.2-py3-none-any.whl (from https://pypi.org/simple/py-mcws/) 2025-09-13T14:36:02,317 Fetching project page and analyzing links: https://www.piwheels.org/simple/py-mcws/ 2025-09-13T14:36:02,317 Getting page https://www.piwheels.org/simple/py-mcws/ 2025-09-13T14:36:02,318 Found index url https://www.piwheels.org/simple/ 2025-09-13T14:36:02,405 Fetched page https://www.piwheels.org/simple/py-mcws/ as text/html 2025-09-13T14:36:02,407 Skipping link: No binaries permitted for py-mcws: https://archive1.piwheels.org/simple/py-mcws/py_mcws-2.0.2-py3-none-any.whl#sha256=72125bed4dd4033ba9d05a2fb642ac5a26d30d12c775c4d2ca712704cdd67da7 (from https://www.piwheels.org/simple/py-mcws/) 2025-09-13T14:36:02,408 Skipping link: No binaries permitted for py-mcws: https://archive1.piwheels.org/simple/py-mcws/py_mcws-2.0.1-py3-none-any.whl#sha256=a7559c69719996ef3a76ccae4dc4cdfecaa42964928ca32ae0bae2e8a99639b9 (from https://www.piwheels.org/simple/py-mcws/) 2025-09-13T14:36:02,408 Skipping link: No binaries permitted for py-mcws: https://archive1.piwheels.org/simple/py-mcws/py_mcws-2.0.0-py3-none-any.whl#sha256=c90c059e4733b2d73a829b63d280fa379944086b20184e3b8eb44f40de7cb7f0 (from https://www.piwheels.org/simple/py-mcws/) 2025-09-13T14:36:02,408 Skipping link: No binaries permitted for py-mcws: https://archive1.piwheels.org/simple/py-mcws/py_mcws-1.1.2-py3-none-any.whl#sha256=dcc9976dc728544a2a77afa2bc2b4e44584a3c6f864551d4109c60564ceba727 (from https://www.piwheels.org/simple/py-mcws/) 2025-09-13T14:36:02,408 Skipping link: not a file: https://www.piwheels.org/simple/py-mcws/ 2025-09-13T14:36:02,408 Skipping link: not a file: https://pypi.org/simple/py-mcws/ 2025-09-13T14:36:02,436 Given no hashes to check 1 links for project 'py-mcws': discarding no candidates 2025-09-13T14:36:02,437 Collecting py-mcws==1.1.0 2025-09-13T14:36:02,438 Created temporary directory: /tmp/pip-unpack-y9vvpu47 2025-09-13T14:36:02,579 Downloading py-mcws-1.1.0.tar.gz (4.0 kB) 2025-09-13T14:36:02,598 Added py-mcws==1.1.0 from https://files.pythonhosted.org/packages/5a/e5/ef8f6d502ed5b815ba238704f74c5af898f48a105cb5a2d92981b8d166d9/py-mcws-1.1.0.tar.gz to build tracker '/tmp/pip-build-tracker-d6acvsyo' 2025-09-13T14:36:02,599 Running setup.py (path:/tmp/pip-wheel-2d4ymtsb/py-mcws_e6cb5ff5606a410e8e6fa13f3e9a6326/setup.py) egg_info for package py-mcws 2025-09-13T14:36:02,600 Created temporary directory: /tmp/pip-pip-egg-info-5zdiojah 2025-09-13T14:36:02,600 Preparing metadata (setup.py): started 2025-09-13T14:36:02,601 Running command python setup.py egg_info 2025-09-13T14:36:03,160 Traceback (most recent call last): 2025-09-13T14:36:03,162 File "", line 2, in 2025-09-13T14:36:03,162 exec(compile(''' 2025-09-13T14:36:03,162 ~~~~^^^^^^^^^^^^ 2025-09-13T14:36:03,162 # This is -- a caller that pip uses to run setup.py 2025-09-13T14:36:03,163 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,163 ...<32 lines>... 2025-09-13T14:36:03,163 exec(compile(setup_py_code, filename, "exec")) 2025-09-13T14:36:03,163 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,163 ''' % ('/tmp/pip-wheel-2d4ymtsb/py-mcws_e6cb5ff5606a410e8e6fa13f3e9a6326/setup.py',), "", "exec")) 2025-09-13T14:36:03,163 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,164 File "", line 35, in 2025-09-13T14:36:03,164 File "/tmp/pip-wheel-2d4ymtsb/py-mcws_e6cb5ff5606a410e8e6fa13f3e9a6326/setup.py", line 23, in 2025-09-13T14:36:03,164 install_requires=_requires_from_file('requirements.txt'), 2025-09-13T14:36:03,164 ~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,164 File "/tmp/pip-wheel-2d4ymtsb/py-mcws_e6cb5ff5606a410e8e6fa13f3e9a6326/setup.py", line 12, in _requires_from_file 2025-09-13T14:36:03,165 return open(filename).read().splitlines() 2025-09-13T14:36:03,165 ~~~~^^^^^^^^^^ 2025-09-13T14:36:03,165 FileNotFoundError: [Errno 2] No such file or directory: 'requirements.txt' 2025-09-13T14:36:03,261 ERROR: python setup.py egg_info exited with 1 2025-09-13T14:36:03,275 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2025-09-13T14:36:03,275 exec(compile('"'"''"'"''"'"' 2025-09-13T14:36:03,275 # This is -- a caller that pip uses to run setup.py 2025-09-13T14:36:03,275 # 2025-09-13T14:36:03,275 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-13T14:36:03,275 # import from `distutils.core` to work with newer packaging standards. 2025-09-13T14:36:03,275 # - It provides a clear error message when setuptools is not installed. 2025-09-13T14:36:03,275 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-13T14:36:03,275 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-13T14:36:03,275 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-13T14:36:03,275 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-13T14:36:03,275 import os, sys, tokenize, traceback 2025-09-13T14:36:03,275 2025-09-13T14:36:03,275 try: 2025-09-13T14:36:03,275 import setuptools 2025-09-13T14:36:03,275 except ImportError: 2025-09-13T14:36:03,275 print( 2025-09-13T14:36:03,275 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-13T14:36:03,275 "the build environment with exception:", 2025-09-13T14:36:03,275 file=sys.stderr, 2025-09-13T14:36:03,275 ) 2025-09-13T14:36:03,275 traceback.print_exc() 2025-09-13T14:36:03,275 sys.exit(1) 2025-09-13T14:36:03,275 2025-09-13T14:36:03,275 __file__ = %r 2025-09-13T14:36:03,275 sys.argv[0] = __file__ 2025-09-13T14:36:03,275 2025-09-13T14:36:03,275 if os.path.exists(__file__): 2025-09-13T14:36:03,275 filename = __file__ 2025-09-13T14:36:03,275 with tokenize.open(__file__) as f: 2025-09-13T14:36:03,275 setup_py_code = f.read() 2025-09-13T14:36:03,275 else: 2025-09-13T14:36:03,275 filename = "" 2025-09-13T14:36:03,275 setup_py_code = "from setuptools import setup; setup()" 2025-09-13T14:36:03,275 2025-09-13T14:36:03,275 exec(compile(setup_py_code, filename, "exec")) 2025-09-13T14:36:03,275 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-2d4ymtsb/py-mcws_e6cb5ff5606a410e8e6fa13f3e9a6326/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-5zdiojah[/] 2025-09-13T14:36:03,275 [bold magenta]cwd[/]: /tmp/pip-wheel-2d4ymtsb/py-mcws_e6cb5ff5606a410e8e6fa13f3e9a6326/ 2025-09-13T14:36:03,275 Preparing metadata (setup.py): finished with status 'error' 2025-09-13T14:36:03,276 ERROR: metadata generation failed 2025-09-13T14:36:03,283 Exception information: 2025-09-13T14:36:03,283 Traceback (most recent call last): 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 63, in generate_metadata 2025-09-13T14:36:03,283 call_subprocess( 2025-09-13T14:36:03,283 ~~~~~~~~~~~~~~~^ 2025-09-13T14:36:03,283 args, 2025-09-13T14:36:03,283 ^^^^^ 2025-09-13T14:36:03,283 ...<2 lines>... 2025-09-13T14:36:03,283 spinner=spinner, 2025-09-13T14:36:03,283 ^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,283 ) 2025-09-13T14:36:03,283 ^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 209, in call_subprocess 2025-09-13T14:36:03,283 raise error 2025-09-13T14:36:03,283 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2025-09-13T14:36:03,283 2025-09-13T14:36:03,283 The above exception was the direct cause of the following exception: 2025-09-13T14:36:03,283 2025-09-13T14:36:03,283 Traceback (most recent call last): 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-13T14:36:03,283 status = _inner_run() 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-13T14:36:03,283 return self.run(options, args) 2025-09-13T14:36:03,283 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-13T14:36:03,283 return func(self, options, args) 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2025-09-13T14:36:03,283 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve 2025-09-13T14:36:03,283 result = self._result = resolver.resolve( 2025-09-13T14:36:03,283 ~~~~~~~~~~~~~~~~^ 2025-09-13T14:36:03,283 collected.requirements, max_rounds=limit_how_complex_resolution_can_be 2025-09-13T14:36:03,283 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,283 ) 2025-09-13T14:36:03,283 ^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve 2025-09-13T14:36:03,283 state = resolution.resolve(requirements, max_rounds=max_rounds) 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve 2025-09-13T14:36:03,283 self._add_to_criteria(self.state.criteria, r, parent=None) 2025-09-13T14:36:03,283 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria 2025-09-13T14:36:03,283 if not criterion.candidates: 2025-09-13T14:36:03,283 ^^^^^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__ 2025-09-13T14:36:03,283 return bool(self._sequence) 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__ 2025-09-13T14:36:03,283 self._bool = any(self) 2025-09-13T14:36:03,283 ~~~^^^^^^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in 2025-09-13T14:36:03,283 return (c for c in iterator if id(c) not in self._incompatible_ids) 2025-09-13T14:36:03,283 ^^^^^^^^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 37, in _iter_built 2025-09-13T14:36:03,283 candidate = func() 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link 2025-09-13T14:36:03,283 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2025-09-13T14:36:03,283 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-13T14:36:03,283 link, template, name, version 2025-09-13T14:36:03,283 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,283 ) 2025-09-13T14:36:03,283 ^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link 2025-09-13T14:36:03,283 self._link_candidate_cache[link] = LinkCandidate( 2025-09-13T14:36:03,283 ~~~~~~~~~~~~~^ 2025-09-13T14:36:03,283 link, 2025-09-13T14:36:03,283 ^^^^^ 2025-09-13T14:36:03,283 ...<3 lines>... 2025-09-13T14:36:03,283 version=version, 2025-09-13T14:36:03,283 ^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,283 ) 2025-09-13T14:36:03,283 ^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 306, in __init__ 2025-09-13T14:36:03,283 super().__init__( 2025-09-13T14:36:03,283 ~~~~~~~~~~~~~~~~^ 2025-09-13T14:36:03,283 link=link, 2025-09-13T14:36:03,283 ^^^^^^^^^^ 2025-09-13T14:36:03,283 ...<4 lines>... 2025-09-13T14:36:03,283 version=version, 2025-09-13T14:36:03,283 ^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,283 ) 2025-09-13T14:36:03,283 ^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__ 2025-09-13T14:36:03,283 self.dist = self._prepare() 2025-09-13T14:36:03,283 ~~~~~~~~~~~~~^^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare 2025-09-13T14:36:03,283 dist = self._prepare_distribution() 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 317, in _prepare_distribution 2025-09-13T14:36:03,283 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2025-09-13T14:36:03,283 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in prepare_linked_requirement 2025-09-13T14:36:03,283 return self._prepare_linked_requirement(req, parallel_builds) 2025-09-13T14:36:03,283 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 647, in _prepare_linked_requirement 2025-09-13T14:36:03,283 dist = _get_prepared_distribution( 2025-09-13T14:36:03,283 req, 2025-09-13T14:36:03,283 ...<3 lines>... 2025-09-13T14:36:03,283 self.check_build_deps, 2025-09-13T14:36:03,283 ) 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2025-09-13T14:36:03,283 abstract_dist.prepare_distribution_metadata( 2025-09-13T14:36:03,283 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-13T14:36:03,283 finder, build_isolation, check_build_deps 2025-09-13T14:36:03,283 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,283 ) 2025-09-13T14:36:03,283 ^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 69, in prepare_distribution_metadata 2025-09-13T14:36:03,283 self.req.prepare_metadata() 2025-09-13T14:36:03,283 ~~~~~~~~~~~~~~~~~~~~~~~~~^^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 581, in prepare_metadata 2025-09-13T14:36:03,283 self.metadata_directory = generate_metadata_legacy( 2025-09-13T14:36:03,283 ~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-13T14:36:03,283 build_env=self.build_env, 2025-09-13T14:36:03,283 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,283 ...<3 lines>... 2025-09-13T14:36:03,283 details=details, 2025-09-13T14:36:03,283 ^^^^^^^^^^^^^^^^ 2025-09-13T14:36:03,283 ) 2025-09-13T14:36:03,283 ^ 2025-09-13T14:36:03,283 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 70, in generate_metadata 2025-09-13T14:36:03,283 raise MetadataGenerationFailed(package_details=details) from error 2025-09-13T14:36:03,283 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2025-09-13T14:36:03,306 Removed py-mcws==1.1.0 from https://files.pythonhosted.org/packages/5a/e5/ef8f6d502ed5b815ba238704f74c5af898f48a105cb5a2d92981b8d166d9/py-mcws-1.1.0.tar.gz from build tracker '/tmp/pip-build-tracker-d6acvsyo' 2025-09-13T14:36:03,307 Removed build tracker: '/tmp/pip-build-tracker-d6acvsyo'