2025-09-12T05:16:46,606 Created temporary directory: /tmp/pip-build-tracker-gq083tv2 2025-09-12T05:16:46,607 Initialized build tracking at /tmp/pip-build-tracker-gq083tv2 2025-09-12T05:16:46,607 Created build tracker: /tmp/pip-build-tracker-gq083tv2 2025-09-12T05:16:46,607 Entered build tracker: /tmp/pip-build-tracker-gq083tv2 2025-09-12T05:16:46,607 Created temporary directory: /tmp/pip-wheel-6xnga9d_ 2025-09-12T05:16:46,610 Created temporary directory: /tmp/pip-ephem-wheel-cache-6atbnqwi 2025-09-12T05:16:46,669 Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple 2025-09-12T05:16:46,671 2 location(s) to search for versions of epubcrawler: 2025-09-12T05:16:46,671 * https://pypi.org/simple/epubcrawler/ 2025-09-12T05:16:46,671 * https://www.piwheels.org/simple/epubcrawler/ 2025-09-12T05:16:46,672 Fetching project page and analyzing links: https://pypi.org/simple/epubcrawler/ 2025-09-12T05:16:46,672 Getting page https://pypi.org/simple/epubcrawler/ 2025-09-12T05:16:46,673 Found index url https://pypi.org/simple/ 2025-09-12T05:16:46,743 Fetched page https://pypi.org/simple/epubcrawler/ as application/vnd.pypi.simple.v1+json 2025-09-12T05:16:46,745 Skipping link: No binaries permitted for epubcrawler: https://files.pythonhosted.org/packages/9f/d7/a27427cbd20bf4ff322bf866c88ae2a351d662ce85a55727709923ebb032/EpubCrawler-2023.2.14.3-py3-none-any.whl (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6) 2025-09-12T05:16:46,746 Found link https://files.pythonhosted.org/packages/6e/8d/acd80096fa1b021fd391b3e25bbe709b5279df70f6949d8d00c9161c5c4b/EpubCrawler-2023.2.14.3.tar.gz (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6), version: 2023.2.14.3 2025-09-12T05:16:46,746 Skipping link: No binaries permitted for epubcrawler: https://files.pythonhosted.org/packages/9d/79/a0abc2602c4cc8edf8ca442daec12152a623c944a0a6aad605a27044db6a/EpubCrawler-2023.3.13.0-py3-none-any.whl (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6) 2025-09-12T05:16:46,746 Found link https://files.pythonhosted.org/packages/c4/9e/5cc3c56db01d8258658a9f9f11982a1082cf6fa610af14b179ba8dacb840/EpubCrawler-2023.3.13.0.tar.gz (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6), version: 2023.3.13.0 2025-09-12T05:16:46,747 Skipping link: No binaries permitted for epubcrawler: https://files.pythonhosted.org/packages/ed/bc/50abf03d3f2892e4286aff89b10ffd8f723bc1c0259d8924cd11a99d4453/EpubCrawler-2023.3.13.1-py3-none-any.whl (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6) 2025-09-12T05:16:46,747 Found link https://files.pythonhosted.org/packages/0d/9d/f165647cff5729fbf2850f470f981d1e920538b99abd9df740c475c0d881/EpubCrawler-2023.3.13.1.tar.gz (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6), version: 2023.3.13.1 2025-09-12T05:16:46,747 Skipping link: No binaries permitted for epubcrawler: https://files.pythonhosted.org/packages/24/88/ab3c18c4b7cdc259e971324ac1146d1b72352cb1c7878dfad0624d6179a2/EpubCrawler-2023.3.14.0-py3-none-any.whl (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6) 2025-09-12T05:16:46,747 Found link https://files.pythonhosted.org/packages/07/ef/a4b9ff666a15951c0d7ae392503ad4b48cb9939b48a7a19e0830fe8a820a/EpubCrawler-2023.3.14.0.tar.gz (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6), version: 2023.3.14.0 2025-09-12T05:16:46,747 Skipping link: No binaries permitted for epubcrawler: https://files.pythonhosted.org/packages/24/3e/719b9e89ecbaf4e22e227e345f68914bb16fc74790023e691b18cf0f9531/EpubCrawler-2023.7.9.0-py3-none-any.whl (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6) 2025-09-12T05:16:46,748 Found link https://files.pythonhosted.org/packages/b9/2e/8b74ed3510e26b8f4e12a532b1979c3dcc987266f746f80e748de43598cc/EpubCrawler-2023.7.9.0.tar.gz (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6), version: 2023.7.9.0 2025-09-12T05:16:46,748 Skipping link: No binaries permitted for epubcrawler: https://files.pythonhosted.org/packages/b2/20/b58d391a75647a64be122d2fb7d3df9c4755ed51093a17a611bfc4efa237/EpubCrawler-2023.7.9.1-py3-none-any.whl (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6) 2025-09-12T05:16:46,748 Found link https://files.pythonhosted.org/packages/a0/2c/da14c66785f96c985e6ded315bb090b7c4708dfff0f7357986bee0fc8859/EpubCrawler-2023.7.9.1.tar.gz (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6), version: 2023.7.9.1 2025-09-12T05:16:46,748 Skipping link: No binaries permitted for epubcrawler: https://files.pythonhosted.org/packages/9f/69/644c775278f637ca2aaeeec2179617eda4bc3bcccc1e27f4042501edcb68/EpubCrawler-2023.7.9.2-py3-none-any.whl (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6) 2025-09-12T05:16:46,748 Found link https://files.pythonhosted.org/packages/19/2c/3dff1b707a29b36d3e6c12e20ae3580d2a90ef13e80a48a5a15cf8288f05/EpubCrawler-2023.7.9.2.tar.gz (from https://pypi.org/simple/epubcrawler/) (requires-python:>=3.6), version: 2023.7.9.2 2025-09-12T05:16:46,749 Fetching project page and analyzing links: https://www.piwheels.org/simple/epubcrawler/ 2025-09-12T05:16:46,749 Getting page https://www.piwheels.org/simple/epubcrawler/ 2025-09-12T05:16:46,750 Found index url https://www.piwheels.org/simple/ 2025-09-12T05:16:46,839 Fetched page https://www.piwheels.org/simple/epubcrawler/ as text/html 2025-09-12T05:16:46,840 Skipping link: not a file: https://www.piwheels.org/simple/epubcrawler/ 2025-09-12T05:16:46,840 Skipping link: not a file: https://pypi.org/simple/epubcrawler/ 2025-09-12T05:16:46,862 Given no hashes to check 1 links for project 'epubcrawler': discarding no candidates 2025-09-12T05:16:46,863 Collecting epubcrawler==2023.3.14.0 2025-09-12T05:16:46,865 Created temporary directory: /tmp/pip-unpack-n6bi48jo 2025-09-12T05:16:47,004 Downloading EpubCrawler-2023.3.14.0.tar.gz (9.8 kB) 2025-09-12T05:16:47,027 Added epubcrawler==2023.3.14.0 from https://files.pythonhosted.org/packages/07/ef/a4b9ff666a15951c0d7ae392503ad4b48cb9939b48a7a19e0830fe8a820a/EpubCrawler-2023.3.14.0.tar.gz to build tracker '/tmp/pip-build-tracker-gq083tv2' 2025-09-12T05:16:47,029 Running setup.py (path:/tmp/pip-wheel-6xnga9d_/epubcrawler_41c4c0dbf21d43c88470fddce7ee8705/setup.py) egg_info for package epubcrawler 2025-09-12T05:16:47,029 Created temporary directory: /tmp/pip-pip-egg-info-t_cfbnlj 2025-09-12T05:16:47,029 Preparing metadata (setup.py): started 2025-09-12T05:16:47,030 Running command python setup.py egg_info 2025-09-12T05:16:47,559 Traceback (most recent call last): 2025-09-12T05:16:47,561 File "", line 2, in 2025-09-12T05:16:47,561 exec(compile(''' 2025-09-12T05:16:47,561 ~~~~^^^^^^^^^^^^ 2025-09-12T05:16:47,561 # This is -- a caller that pip uses to run setup.py 2025-09-12T05:16:47,561 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,562 ...<32 lines>... 2025-09-12T05:16:47,562 exec(compile(setup_py_code, filename, "exec")) 2025-09-12T05:16:47,562 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,562 ''' % ('/tmp/pip-wheel-6xnga9d_/epubcrawler_41c4c0dbf21d43c88470fddce7ee8705/setup.py',), "", "exec")) 2025-09-12T05:16:47,562 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,562 File "", line 35, in 2025-09-12T05:16:47,562 File "/tmp/pip-wheel-6xnga9d_/epubcrawler_41c4c0dbf21d43c88470fddce7ee8705/setup.py", line 5, in 2025-09-12T05:16:47,562 import EpubCrawler 2025-09-12T05:16:47,563 File "/tmp/pip-wheel-6xnga9d_/epubcrawler_41c4c0dbf21d43c88470fddce7ee8705/EpubCrawler/__init__.py", line 7, in 2025-09-12T05:16:47,563 from . import img 2025-09-12T05:16:47,563 File "/tmp/pip-wheel-6xnga9d_/epubcrawler_41c4c0dbf21d43c88470fddce7ee8705/EpubCrawler/img.py", line 6, in 2025-09-12T05:16:47,563 from pyquery import PyQuery as pq 2025-09-12T05:16:47,563 ModuleNotFoundError: No module named 'pyquery' 2025-09-12T05:16:47,648 ERROR: python setup.py egg_info exited with 1 2025-09-12T05:16:47,662 [bold magenta]full command[/]: [blue]/usr/bin/python3 -c ' 2025-09-12T05:16:47,662 exec(compile('"'"''"'"''"'"' 2025-09-12T05:16:47,662 # This is -- a caller that pip uses to run setup.py 2025-09-12T05:16:47,662 # 2025-09-12T05:16:47,662 # - It imports setuptools before invoking setup.py, to enable projects that directly 2025-09-12T05:16:47,662 # import from `distutils.core` to work with newer packaging standards. 2025-09-12T05:16:47,662 # - It provides a clear error message when setuptools is not installed. 2025-09-12T05:16:47,662 # - It sets `sys.argv[0]` to the underlying `setup.py`, when invoking `setup.py` so 2025-09-12T05:16:47,662 # setuptools doesn'"'"'t think the script is `-c`. This avoids the following warning: 2025-09-12T05:16:47,662 # manifest_maker: standard file '"'"'-c'"'"' not found". 2025-09-12T05:16:47,662 # - It generates a shim setup.py, for handling setup.cfg-only projects. 2025-09-12T05:16:47,662 import os, sys, tokenize, traceback 2025-09-12T05:16:47,662 2025-09-12T05:16:47,662 try: 2025-09-12T05:16:47,662 import setuptools 2025-09-12T05:16:47,662 except ImportError: 2025-09-12T05:16:47,662 print( 2025-09-12T05:16:47,662 "ERROR: Can not execute `setup.py` since setuptools failed to import in " 2025-09-12T05:16:47,662 "the build environment with exception:", 2025-09-12T05:16:47,662 file=sys.stderr, 2025-09-12T05:16:47,662 ) 2025-09-12T05:16:47,662 traceback.print_exc() 2025-09-12T05:16:47,662 sys.exit(1) 2025-09-12T05:16:47,662 2025-09-12T05:16:47,662 __file__ = %r 2025-09-12T05:16:47,662 sys.argv[0] = __file__ 2025-09-12T05:16:47,662 2025-09-12T05:16:47,662 if os.path.exists(__file__): 2025-09-12T05:16:47,662 filename = __file__ 2025-09-12T05:16:47,662 with tokenize.open(__file__) as f: 2025-09-12T05:16:47,662 setup_py_code = f.read() 2025-09-12T05:16:47,662 else: 2025-09-12T05:16:47,662 filename = "" 2025-09-12T05:16:47,662 setup_py_code = "from setuptools import setup; setup()" 2025-09-12T05:16:47,662 2025-09-12T05:16:47,662 exec(compile(setup_py_code, filename, "exec")) 2025-09-12T05:16:47,662 '"'"''"'"''"'"' % ('"'"'/tmp/pip-wheel-6xnga9d_/epubcrawler_41c4c0dbf21d43c88470fddce7ee8705/setup.py'"'"',), "", "exec"))' egg_info --egg-base /tmp/pip-pip-egg-info-t_cfbnlj[/] 2025-09-12T05:16:47,662 [bold magenta]cwd[/]: /tmp/pip-wheel-6xnga9d_/epubcrawler_41c4c0dbf21d43c88470fddce7ee8705/ 2025-09-12T05:16:47,662 Preparing metadata (setup.py): finished with status 'error' 2025-09-12T05:16:47,663 ERROR: metadata generation failed 2025-09-12T05:16:47,669 Exception information: 2025-09-12T05:16:47,669 Traceback (most recent call last): 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 63, in generate_metadata 2025-09-12T05:16:47,669 call_subprocess( 2025-09-12T05:16:47,669 ~~~~~~~~~~~~~~~^ 2025-09-12T05:16:47,669 args, 2025-09-12T05:16:47,669 ^^^^^ 2025-09-12T05:16:47,669 ...<2 lines>... 2025-09-12T05:16:47,669 spinner=spinner, 2025-09-12T05:16:47,669 ^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,669 ) 2025-09-12T05:16:47,669 ^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/utils/subprocess.py", line 209, in call_subprocess 2025-09-12T05:16:47,669 raise error 2025-09-12T05:16:47,669 pip._internal.exceptions.InstallationSubprocessError: python setup.py egg_info exited with 1 2025-09-12T05:16:47,669 2025-09-12T05:16:47,669 The above exception was the direct cause of the following exception: 2025-09-12T05:16:47,669 2025-09-12T05:16:47,669 Traceback (most recent call last): 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 105, in _run_wrapper 2025-09-12T05:16:47,669 status = _inner_run() 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/cli/base_command.py", line 96, in _inner_run 2025-09-12T05:16:47,669 return self.run(options, args) 2025-09-12T05:16:47,669 ~~~~~~~~^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/cli/req_command.py", line 68, in wrapper 2025-09-12T05:16:47,669 return func(self, options, args) 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/commands/wheel.py", line 147, in run 2025-09-12T05:16:47,669 requirement_set = resolver.resolve(reqs, check_supported_wheels=True) 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/resolver.py", line 96, in resolve 2025-09-12T05:16:47,669 result = self._result = resolver.resolve( 2025-09-12T05:16:47,669 ~~~~~~~~~~~~~~~~^ 2025-09-12T05:16:47,669 collected.requirements, max_rounds=limit_how_complex_resolution_can_be 2025-09-12T05:16:47,669 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,669 ) 2025-09-12T05:16:47,669 ^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 515, in resolve 2025-09-12T05:16:47,669 state = resolution.resolve(requirements, max_rounds=max_rounds) 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 388, in resolve 2025-09-12T05:16:47,669 self._add_to_criteria(self.state.criteria, r, parent=None) 2025-09-12T05:16:47,669 ~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/resolvers/resolution.py", line 141, in _add_to_criteria 2025-09-12T05:16:47,669 if not criterion.candidates: 2025-09-12T05:16:47,669 ^^^^^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_vendor/resolvelib/structs.py", line 194, in __bool__ 2025-09-12T05:16:47,669 return bool(self._sequence) 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 163, in __bool__ 2025-09-12T05:16:47,669 self._bool = any(self) 2025-09-12T05:16:47,669 ~~~^^^^^^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 147, in 2025-09-12T05:16:47,669 return (c for c in iterator if id(c) not in self._incompatible_ids) 2025-09-12T05:16:47,669 ^^^^^^^^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/found_candidates.py", line 37, in _iter_built 2025-09-12T05:16:47,669 candidate = func() 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 187, in _make_candidate_from_link 2025-09-12T05:16:47,669 base: Optional[BaseCandidate] = self._make_base_candidate_from_link( 2025-09-12T05:16:47,669 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-12T05:16:47,669 link, template, name, version 2025-09-12T05:16:47,669 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,669 ) 2025-09-12T05:16:47,669 ^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/factory.py", line 233, in _make_base_candidate_from_link 2025-09-12T05:16:47,669 self._link_candidate_cache[link] = LinkCandidate( 2025-09-12T05:16:47,669 ~~~~~~~~~~~~~^ 2025-09-12T05:16:47,669 link, 2025-09-12T05:16:47,669 ^^^^^ 2025-09-12T05:16:47,669 ...<3 lines>... 2025-09-12T05:16:47,669 version=version, 2025-09-12T05:16:47,669 ^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,669 ) 2025-09-12T05:16:47,669 ^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 306, in __init__ 2025-09-12T05:16:47,669 super().__init__( 2025-09-12T05:16:47,669 ~~~~~~~~~~~~~~~~^ 2025-09-12T05:16:47,669 link=link, 2025-09-12T05:16:47,669 ^^^^^^^^^^ 2025-09-12T05:16:47,669 ...<4 lines>... 2025-09-12T05:16:47,669 version=version, 2025-09-12T05:16:47,669 ^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,669 ) 2025-09-12T05:16:47,669 ^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 159, in __init__ 2025-09-12T05:16:47,669 self.dist = self._prepare() 2025-09-12T05:16:47,669 ~~~~~~~~~~~~~^^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 236, in _prepare 2025-09-12T05:16:47,669 dist = self._prepare_distribution() 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/resolution/resolvelib/candidates.py", line 317, in _prepare_distribution 2025-09-12T05:16:47,669 return preparer.prepare_linked_requirement(self._ireq, parallel_builds=True) 2025-09-12T05:16:47,669 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 532, in prepare_linked_requirement 2025-09-12T05:16:47,669 return self._prepare_linked_requirement(req, parallel_builds) 2025-09-12T05:16:47,669 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 647, in _prepare_linked_requirement 2025-09-12T05:16:47,669 dist = _get_prepared_distribution( 2025-09-12T05:16:47,669 req, 2025-09-12T05:16:47,669 ...<3 lines>... 2025-09-12T05:16:47,669 self.check_build_deps, 2025-09-12T05:16:47,669 ) 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/operations/prepare.py", line 71, in _get_prepared_distribution 2025-09-12T05:16:47,669 abstract_dist.prepare_distribution_metadata( 2025-09-12T05:16:47,669 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-12T05:16:47,669 finder, build_isolation, check_build_deps 2025-09-12T05:16:47,669 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,669 ) 2025-09-12T05:16:47,669 ^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/distributions/sdist.py", line 69, in prepare_distribution_metadata 2025-09-12T05:16:47,669 self.req.prepare_metadata() 2025-09-12T05:16:47,669 ~~~~~~~~~~~~~~~~~~~~~~~~~^^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/req/req_install.py", line 581, in prepare_metadata 2025-09-12T05:16:47,669 self.metadata_directory = generate_metadata_legacy( 2025-09-12T05:16:47,669 ~~~~~~~~~~~~~~~~~~~~~~~~^ 2025-09-12T05:16:47,669 build_env=self.build_env, 2025-09-12T05:16:47,669 ^^^^^^^^^^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,669 ...<3 lines>... 2025-09-12T05:16:47,669 details=details, 2025-09-12T05:16:47,669 ^^^^^^^^^^^^^^^^ 2025-09-12T05:16:47,669 ) 2025-09-12T05:16:47,669 ^ 2025-09-12T05:16:47,669 File "/usr/lib/python3/dist-packages/pip/_internal/operations/build/metadata_legacy.py", line 70, in generate_metadata 2025-09-12T05:16:47,669 raise MetadataGenerationFailed(package_details=details) from error 2025-09-12T05:16:47,669 pip._internal.exceptions.MetadataGenerationFailed: metadata generation failed 2025-09-12T05:16:47,691 Removed epubcrawler==2023.3.14.0 from https://files.pythonhosted.org/packages/07/ef/a4b9ff666a15951c0d7ae392503ad4b48cb9939b48a7a19e0830fe8a820a/EpubCrawler-2023.3.14.0.tar.gz from build tracker '/tmp/pip-build-tracker-gq083tv2' 2025-09-12T05:16:47,691 Removed build tracker: '/tmp/pip-build-tracker-gq083tv2'