python-poetry / poetry

Python packaging and dependency management made easy
https://python-poetry.org
MIT License
31.62k stars 2.27k forks source link

Cannot install package from git which depends on external dependencies #9648

Closed slobodaapl closed 2 months ago

slobodaapl commented 2 months ago

Description

When we attempt to install pottery by specifying it in pyproject.toml as follows:

pottery = { git = "https://github.com/brainix/pottery.git", extras = ["redis"] } (doesn't work with or without the extras param)

This fails during installation, due to a failed import of redis which the setup.py of the package depends on. While I do have redis as a dependency in my project, because poetry's build isolation, it is not available to pottery during installation.

Workarounds

No idea

Poetry Installation Method

other

Operating System

Win 11

Poetry Version

1.8.3

Poetry Configuration

cache-dir = "C:\\Users\\xxxxx\\AppData\\Local\\pypoetry\\Cache"
experimental.system-git-client = false
installer.max-workers = null
installer.modern-installation = true
installer.no-binary = null
installer.parallel = true
keyring.enabled = true
solver.lazy-wheel = true
virtualenvs.create = true
virtualenvs.in-project = true
virtualenvs.options.always-copy = false
virtualenvs.options.no-pip = false
virtualenvs.options.no-setuptools = false
virtualenvs.options.system-site-packages = false
virtualenvs.path = "{cache-dir}\\virtualenvs"  # C:\Users\xxxx\AppData\Local\pypoetry\Cache\virtualenvs
virtualenvs.prefer-active-python = false
virtualenvs.prompt = "{project_name}-py{python_version}"
warnings.export = true

Python Sysconfig

Platform: "win-amd64"
Python version: "3.11"
Current installation scheme: "venv"

Paths: 
        data = "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv"
        include = "C:\Program Files\Python311\Include"
        platinclude = "C:\Program Files\Python311\Include"
        platlib = "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\Lib\site-packages"
        platstdlib = "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\Lib"
        purelib = "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\Lib\site-packages"
        scripts = "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\Scripts"
        stdlib = "C:\Program Files\Python311\Lib"

Variables:
        BINDIR = "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\Scripts"
        BINLIBDEST = "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\Lib"
        EXE = ".exe"
        EXT_SUFFIX = ".cp311-win_amd64.pyd"
        INCLUDEPY = "C:\Program Files\Python311\Include"
        LIBDEST = "C:\Program Files\Python311\Lib"
        TZPATH = ""
        VERSION = "311"
        VPATH = "..\.."
        abiflags = ""
        base = "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv"
        exec_prefix = "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv"
        installed_base = "C:\Program Files\Python311"
        installed_platbase = "C:\Program Files\Python311"
        platbase = "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv"
        platlibdir = "DLLs"
        prefix = "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv"
        projectbase = "C:\Program Files\Python311"
        py_version = "3.11.9"
        py_version_nodot = "311"
        py_version_nodot_plat = "311"
        py_version_short = "3.11"
        srcdir = "C:\Program Files\Python311"
        userbase = "C:\Users\xxxxx\AppData\Roaming\Python"

Example pyproject.toml

[tool.poetry]
name = "xxxxx"
version = "0.1.1"
description = "xxxxx"
authors = ["Example <example@gmail.com>"]
readme = "README.md"
packages = [{ include = "xxxxx", from = "src" } ]

[tool.poetry.dependencies]
python = "^3.11.6,~3.11"
redis = "~5"
pottery = { git = "https://github.com/brainix/pottery.git", extras = ["redis"] }

[build-system]
requires = ["poetry-core>=1.6.0"]
build-backend = "poetry.core.masonry.api"

Poetry Runtime Logs

Loading configuration file C:\Users\xxxxx\AppData\Roaming\pypoetry\config.toml
Loading configuration file C:\Users\xxxxx\PycharmProjects\xxxxx\poetry.toml
Using virtualenv: C:\Users\xxxxx\PycharmProjects\xxxxx\.venv
Updating dependencies
Resolving dependencies...
   1: fact: xxxxx is 0.1.1
   1: derived: xxxxx
Checking if keyring is available
[keyring:keyring.backend] Loading KWallet
[keyring:keyring.backend] Loading SecretService
[keyring:keyring.backend] Loading Windows
[win32ctypes:win32ctypes.core.ctypes] Loaded ctypes backend
[keyring:keyring.backend] Loading chainer
[keyring:keyring.backend] Loading libsecret
[keyring:keyring.backend] Loading macOS
Using keyring backend 'Windows WinVaultKeyring'
[urllib3:urllib3.connectionpool] Starting new HTTPS connection (1): github.com:443
[urllib3:urllib3.connectionpool] https://github.com:443 "GET /brainix/pottery.git/info/refs?service=git-upload-pack HTTP/1.1" 200 None
Cloning https://github.com/brainix/pottery.git at 'HEAD' to C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\src\pottery
[virtualenv] find interpreter for spec PythonSpec(path=C:\Users\xxxxx\AppData\Roaming\pypoetry\venv\Scripts\python.exe)
[virtualenv] filesystem is not case-sensitive
[filelock:filelock] Attempting to acquire lock 1383001758480 on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\py_info\1\76ad95f14593b0a2fc24d0a09d92258fca1e0075874122d58dd1bae94a601e54.lock
[filelock:filelock] Lock 1383001758480 acquired on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\py_info\1\76ad95f14593b0a2fc24d0a09d92258fca1e0075874122d58dd1bae94a601e54.lock
[virtualenv] got python info of %s from (WindowsPath('C:/Program Files/Python311/python.exe'), WindowsPath('C:/Users/xxxxx/AppData/Local/pypa/virtualenv/py_info/1/76ad95f14593b0a2fc24d0a09d92258fca1e0075874122d58dd1bae94a601e54.json'))
[filelock:filelock] Attempting to release lock 1383001758480 on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\py_info\1\76ad95f14593b0a2fc24d0a09d92258fca1e0075874122d58dd1bae94a601e54.lock
[filelock:filelock] Lock 1383001758480 released on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\py_info\1\76ad95f14593b0a2fc24d0a09d92258fca1e0075874122d58dd1bae94a601e54.lock
[virtualenv] proposed PythonInfo(spec=CPython3.11.9.final.0-64, system=C:\Program Files\Python311\python.exe, exe=C:\Users\xxxxx\AppData\Roaming\pypoetry\venv\Scripts\python.exe, platform=win32, version='3.11.9 (tags/v3.11.9:de54cf5, Apr  2 2024, 10:12:12) [MSC v.1938 64 bit (AMD64)]', encoding_fs_io=utf-8-cp1252)
[virtualenv] accepted PythonInfo(spec=CPython3.11.9.final.0-64, system=C:\Program Files\Python311\python.exe, exe=C:\Users\xxxxx\AppData\Roaming\pypoetry\venv\Scripts\python.exe, platform=win32, version='3.11.9 (tags/v3.11.9:de54cf5, Apr  2 2024, 10:12:12) [MSC v.1938 64 bit (AMD64)]', encoding_fs_io=utf-8-cp1252)
[virtualenv] symlink on filesystem does work
[virtualenv] create virtual environment via CPython3Windows(dest=C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv, clear=False, no_vcs_ignore=False, global=False)
[virtualenv] create folder C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages
[virtualenv] create folder C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Scripts
[virtualenv] write C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\pyvenv.cfg
[virtualenv]    home = C:\Program Files\Python311
[virtualenv]    implementation = CPython
[virtualenv]    version_info = 3.11.9.final.0
[virtualenv]    virtualenv = 20.26.2
[virtualenv]    include-system-site-packages = false
[virtualenv]    base-prefix = C:\Program Files\Python311
[virtualenv]    base-exec-prefix = C:\Program Files\Python311
[virtualenv]    base-executable = C:\Program Files\Python311\python.exe
[virtualenv] copy C:\Program Files\Python311\Lib\venv\scripts\nt\python.exe to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Scripts\python.exe
[virtualenv] copy C:\Program Files\Python311\Lib\venv\scripts\nt\pythonw.exe to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Scripts\pythonw.exe
[virtualenv] create virtualenv import hook file C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\_virtualenv.pth
[virtualenv] create C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\_virtualenv.py
[virtualenv] ============================== target debug ==============================
[virtualenv] debug via 'C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Scripts\python.exe' 'C:\Users\xxxxx\AppData\Roaming\pypoetry\venv\Lib\site-packages\virtualenv\create\debug.py'
[virtualenv] {
[virtualenv]   "sys": {
[virtualenv]     "executable": "C:\\Users\\xxxxx\\AppData\\Local\\Temp\\tmpej3nm6ej\\.venv\\Scripts\\python.exe",
[virtualenv]     "_base_executable": "C:\\Program Files\\Python311\\python.exe",
[virtualenv]     "prefix": "C:\\Users\\xxxxx\\AppData\\Local\\Temp\\tmpej3nm6ej\\.venv",
[virtualenv]     "base_prefix": "C:\\Program Files\\Python311",
[virtualenv]     "real_prefix": null,
[virtualenv]     "exec_prefix": "C:\\Users\\xxxxx\\AppData\\Local\\Temp\\tmpej3nm6ej\\.venv",
[virtualenv]     "base_exec_prefix": "C:\\Program Files\\Python311",
[virtualenv]     "path": [
[virtualenv]       "C:\\Program Files\\Python311\\python311.zip",
[virtualenv]       "C:\\Program Files\\Python311\\DLLs",
[virtualenv]       "C:\\Program Files\\Python311\\Lib",
[virtualenv]       "C:\\Program Files\\Python311",
[virtualenv]       "C:\\Users\\xxxxx\\AppData\\Local\\Temp\\tmpej3nm6ej\\.venv",
[virtualenv]       "C:\\Users\\xxxxx\\AppData\\Local\\Temp\\tmpej3nm6ej\\.venv\\Lib\\site-packages"
[virtualenv]     ],
[virtualenv]     "meta_path": [
[virtualenv]       "<class '_virtualenv._Finder'>",
[virtualenv]       "<class '_frozen_importlib.BuiltinImporter'>",
[virtualenv]       "<class '_frozen_importlib.FrozenImporter'>",
[virtualenv]       "<class '_frozen_importlib_external.PathFinder'>"
[virtualenv]     ],
[virtualenv]     "fs_encoding": "utf-8",
[virtualenv]     "io_encoding": "cp1252"
[virtualenv]   },
[virtualenv]   "version": "3.11.9 (tags/v3.11.9:de54cf5, Apr  2 2024, 10:12:12) [MSC v.1938 64 bit (AMD64)]",
[virtualenv]   "makefile_filename": "C:\\Program Files\\Python311\\Lib\\config\\Makefile",
[virtualenv]   "os": "<module 'os' (frozen)>",
[virtualenv]   "site": "<module 'site' (frozen)>",
[virtualenv]   "datetime": "<module 'datetime' from 'C:\\\\Program Files\\\\Python311\\\\Lib\\\\datetime.py'>",
[virtualenv]   "math": "<module 'math' (built-in)>",
[virtualenv]   "json": "<module 'json' from 'C:\\\\Program Files\\\\Python311\\\\Lib\\\\json\\\\__init__.py'>"
[virtualenv] }
[virtualenv] add seed packages via FromAppData(download=False, pip=bundle, setuptools=bundle, wheel=bundle, via=copy, app_data_dir=C:\Users\xxxxx\AppData\Local\pypa\virtualenv)
[virtualenv] got embed update of distribution %s from ('pip', WindowsPath('C:/Users/xxxxx/AppData/Local/pypa/virtualenv/wheel/3.11/embed/3/pip.json'))
[virtualenv] got embed update of distribution %s from ('wheel', WindowsPath('C:/Users/xxxxx/AppData/Local/pypa/virtualenv/wheel/3.11/embed/3/wheel.json'))
[virtualenv] got embed update of distribution %s from ('setuptools', WindowsPath('C:/Users/xxxxx/AppData/Local/pypa/virtualenv/wheel/3.11/embed/3/setuptools.json'))
[virtualenv] using periodically updated wheel C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\house\pip-24.1.2-py3-none-any.whl
[virtualenv] using periodically updated wheel C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\house\setuptools-71.1.0-py3-none-any.whl
[virtualenv] install wheel from wheel C:\Users\xxxxx\AppData\Roaming\pypoetry\venv\Lib\site-packages\virtualenv\seed\wheels\embed\wheel-0.43.0-py3-none-any.whl via CopyPipInstall
[virtualenv] install pip from wheel C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\house\pip-24.1.2-py3-none-any.whl via CopyPipInstall
[virtualenv] install setuptools from wheel C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\house\setuptools-71.1.0-py3-none-any.whl via CopyPipInstall
[filelock:filelock] Attempting to acquire lock 1383002907664 on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\wheel-0.43.0-py3-none-any.lock
[filelock:filelock] Attempting to acquire lock 1383002912400 on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\pip-24.1.2-py3-none-any.lock
[filelock:filelock] Attempting to acquire lock 1383002910992 on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\setuptools-71.1.0-py3-none-any.lock
[filelock:filelock] Lock 1383002907664 acquired on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\wheel-0.43.0-py3-none-any.lock
[filelock:filelock] Attempting to release lock 1383002907664 on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\wheel-0.43.0-py3-none-any.lock
[filelock:filelock] Lock 1383002912400 acquired on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\pip-24.1.2-py3-none-any.lock
[filelock:filelock] Lock 1383002910992 acquired on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\setuptools-71.1.0-py3-none-any.lock
[filelock:filelock] Lock 1383002907664 released on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\wheel-0.43.0-py3-none-any.lock
[filelock:filelock] Attempting to release lock 1383002912400 on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\pip-24.1.2-py3-none-any.lock
[filelock:filelock] Attempting to release lock 1383002910992 on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\setuptools-71.1.0-py3-none-any.lock
[filelock:filelock] Lock 1383002912400 released on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\pip-24.1.2-py3-none-any.lock
[filelock:filelock] Lock 1383002910992 released on C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\setuptools-71.1.0-py3-none-any.lock
[virtualenv] copy directory C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\wheel-0.43.0-py3-none-any\wheel to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\wheel
[virtualenv] copy directory C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\pip-24.1.2-py3-none-any\pip to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\pip
[virtualenv] copy C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\setuptools-71.1.0-py3-none-any\distutils-precedence.pth to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\distutils-precedence.pth
[virtualenv] copy directory C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\setuptools-71.1.0-py3-none-any\pkg_resources to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\pkg_resources
[virtualenv] copy directory C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\setuptools-71.1.0-py3-none-any\setuptools to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\setuptools
[virtualenv] copy directory C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\wheel-0.43.0-py3-none-any\wheel-0.43.0.dist-info to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\wheel-0.43.0.dist-info
[virtualenv] copy C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\wheel-0.43.0-py3-none-any\wheel-0.43.0.virtualenv to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\wheel-0.43.0.virtualenv
[virtualenv] generated console scripts wheel3.exe wheel3.11.exe wheel-3.11.exe wheel.exe
[virtualenv] copy directory C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\pip-24.1.2-py3-none-any\pip-24.1.2.dist-info to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\pip-24.1.2.dist-info
[virtualenv] copy C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\pip-24.1.2-py3-none-any\pip-24.1.2.virtualenv to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\pip-24.1.2.virtualenv
[virtualenv] generated console scripts pip.exe pip-3.11.exe pip3.11.exe pip3.exe
[virtualenv] copy directory C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\setuptools-71.1.0-py3-none-any\setuptools-71.1.0.dist-info to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\setuptools-71.1.0.dist-info
[virtualenv] copy C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\setuptools-71.1.0-py3-none-any\setuptools-71.1.0.virtualenv to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\setuptools-71.1.0.virtualenv
[virtualenv] copy directory C:\Users\xxxxx\AppData\Local\pypa\virtualenv\wheel\3.11\image\1\CopyPipInstall\setuptools-71.1.0-py3-none-any\_distutils_hack to C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\_distutils_hack
[virtualenv] generated console scripts 
[virtualenv] add activators for Bash, Batch, Fish, Nushell, PowerShell, Python
[virtualenv] write C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\pyvenv.cfg
[virtualenv]    home = C:\Program Files\Python311
[virtualenv]    implementation = CPython
[virtualenv]    version_info = 3.11.9.final.0
[virtualenv]    virtualenv = 20.26.2
[virtualenv]    include-system-site-packages = false
[virtualenv]    base-prefix = C:\Program Files\Python311
[virtualenv]    base-exec-prefix = C:\Program Files\Python311
[virtualenv]    base-executable = C:\Program Files\Python311\python.exe
PEP517 build failed: Command ['C:\\Users\\xxxxx\\AppData\\Local\\Temp\\tmpej3nm6ej\\.venv\\Scripts\\python.exe', '-I', '-W', 'ignore', '-c', "import build\nimport build.env\nimport pyproject_hooks\n\n
source = 'C:/Users/xxxxx/PycharmProjects/xxxxx/.venv/src/pottery'\ndest = 'C:/Users/xxxxx/AppData/Local/Temp/tmpej3nm6ej/dist'\n\nwith build.env.DefaultIsolatedEnv() as env:\n    b
uilder = build.ProjectBuilder.from_isolated_env(\n        env, source, runner=pyproject_hooks.quiet_subprocess_runner\n    )\n    env.install(builder.build_system_requires)\n    env.install(builder.get_requires_for_build('wheel'))\n    builder.metadata_path(dest)\n"] errored with the following return code 1

Error output:
Traceback (most recent call last):
  File "<string>", line 13, in <module>
  File "C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\build\__init__.py", line 239, in get_requires_for_build
    with self._handle_backend(hook_name):
  File "C:\Program Files\Python311\Lib\contextlib.py", line 158, in __exit__
    self.gen.throw(typ, value, traceback)
  File "C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\build\__init__.py", line 360, in _handle_backend
    raise BuildBackendException(exception, f'Backend subprocess exited when trying to invoke {hook}') from None
build._exceptions.BuildBackendException: Backend subprocess exited when trying to invoke get_requires_for_build_wheel

   1: Version solving took 13.543 seconds.
   1: Tried 1 solutions.

  Stack trace:

  2  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\utils\env\base_env.py:338 in _run
      336│                 output = ""
      337│             else:
    → 338│                 output = subprocess.check_output(
      339│                     cmd, stderr=stderr, env=env, text=True, **kwargs
      340│                 )

  1  C:\Program Files\Python311\Lib\subprocess.py:466 in check_output
       464│         kwargs['input'] = empty
       465│
    →  466│     return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
       467│                **kwargs).stdout
       468│

  CalledProcessError

  Command '['C:\\Users\\xxxxx\\AppData\\Local\\Temp\\tmpej3nm6ej\\.venv\\Scripts\\python.exe', '-I', '-W', 'ignore', '-c', "import build\nimport build.env\nimport pyproject_hooks\n\nsource = 'C:/Users
/xxxxx/PycharmProjects/xxxxx/.venv/src/pottery'\ndest = 'C:/Users/xxxxx/AppData/Local/Temp/tmpej3nm6ej/dist'\n\nwith build.env.DefaultIsolatedEnv() as env:\n    builder = build.Pro
jectBuilder.from_isolated_env(\n        env, source, runner=pyproject_hooks.quiet_subprocess_runner\n    )\n    env.install(builder.build_system_requires)\n    env.install(builder.get_requires_for_build('wheel'))\n    builder.metadata_path(dest)\n"]' returned non-zero exit status 1.

  at C:\Program Files\Python311\Lib\subprocess.py:571 in run
       567│             # We don't call process.wait() as .__exit__ does that for us.
       568│             raise
       569│         retcode = process.poll()
       570│         if check and retcode:
    →  571│             raise CalledProcessError(retcode, process.args,
       572│                                      output=stdout, stderr=stderr)
       573│     return CompletedProcess(process.args, retcode, stdout, stderr)
       574│
       575│

The following error occurred when trying to handle this error:

  Stack trace:

  4  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\inspection\info.py:612 in get_pep517_metadata
      610│                 *PEP517_META_BUILD_DEPS,
      611│             )
    → 612│             venv.run_python_script(pep517_meta_build_script)
      613│             info = PackageInfo.from_metadata_directory(dest_dir)
      614│         except EnvCommandError as e:

  3  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\utils\env\base_env.py:313 in run_python_script
      311│
      312│     def run_python_script(self, content: str, **kwargs: Any) -> str:
    → 313│         return self.run(
      314│             self._executable,
      315│             "-I",

  2  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\utils\env\base_env.py:305 in run
      303│     def run(self, bin: str, *args: str, **kwargs: Any) -> str:
      304│         cmd = self.get_command_from_bin(bin) + list(args)
    → 305│         return self._run(cmd, **kwargs)
      306│
      307│     def run_pip(self, *args: str, **kwargs: Any) -> str:

  1  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\utils\env\virtual_env.py:88 in _run
       86│     def _run(self, cmd: list[str], **kwargs: Any) -> str:
       87│         kwargs["env"] = self.get_temp_environ(environ=kwargs.get("env"))
    →  88│         return super()._run(cmd, **kwargs)
       89│
       90│     def get_temp_environ(

  EnvCommandError

  Command ['C:\\Users\\xxxxx\\AppData\\Local\\Temp\\tmpej3nm6ej\\.venv\\Scripts\\python.exe', '-I', '-W', 'ignore', '-c', "import build\nimport build.env\nimport pyproject_hooks\n\nsource = 'C:/Users/
xxxxx/PycharmProjects/xxxxx/.venv/src/pottery'\ndest = 'C:/Users/xxxxx/AppData/Local/Temp/tmpej3nm6ej/dist'\n\nwith build.env.DefaultIsolatedEnv() as env:\n    builder = build.Proj
ectBuilder.from_isolated_env(\n        env, source, runner=pyproject_hooks.quiet_subprocess_runner\n    )\n    env.install(builder.build_system_requires)\n    env.install(builder.get_requires_for_build('wheel'))\n    builder.metadata_path(dest)\n"] errored with the following return code 1

  Error output:
  Traceback (most recent call last):
    File "<string>", line 13, in <module>
    File "C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\build\__init__.py", line 239, in get_requires_for_build
      with self._handle_backend(hook_name):
    File "C:\Program Files\Python311\Lib\contextlib.py", line 158, in __exit__
      self.gen.throw(typ, value, traceback)
    File "C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\build\__init__.py", line 360, in _handle_backend
      raise BuildBackendException(exception, f'Backend subprocess exited when trying to invoke {hook}') from None
  build._exceptions.BuildBackendException: Backend subprocess exited when trying to invoke get_requires_for_build_wheel

  at ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\utils\env\base_env.py:342 in _run
      338│                 output = subprocess.check_output(
      339│                     cmd, stderr=stderr, env=env, text=True, **kwargs
      340│                 )
      341│         except CalledProcessError as e:
    → 342│             raise EnvCommandError(e)
      343│
      344│         return output
      345│
      346│     def execute(self, bin: str, *args: str, **kwargs: Any) -> int:

The following error occurred when trying to handle this error:

  Stack trace:

  2  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\utils\env\base_env.py:338 in _run
      336│                 output = ""
      337│             else:
    → 338│                 output = subprocess.check_output(
      339│                     cmd, stderr=stderr, env=env, text=True, **kwargs
      340│                 )

  1  C:\Program Files\Python311\Lib\subprocess.py:466 in check_output
       464│         kwargs['input'] = empty
       465│
    →  466│     return run(*popenargs, stdout=PIPE, timeout=timeout, check=True,
       467│                **kwargs).stdout
       468│

  CalledProcessError

  Command '['C:\\Users\\xxxxx\\AppData\\Local\\Temp\\tmpej3nm6ej\\.venv\\Scripts\\python.exe', 'setup.py', 'egg_info']' returned non-zero exit status 1.

  at C:\Program Files\Python311\Lib\subprocess.py:571 in run
       567│             # We don't call process.wait() as .__exit__ does that for us.
       568│             raise
       569│         retcode = process.poll()
       570│         if check and retcode:
    →  571│             raise CalledProcessError(retcode, process.args,
       572│                                      output=stdout, stderr=stderr)
       573│     return CompletedProcess(process.args, retcode, stdout, stderr)
       574│
       575│

The following error occurred when trying to handle this error:

  Stack trace:

  3  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\inspection\info.py:629 in get_pep517_metadata
      627│             os.chdir(path)
      628│             try:
    → 629│                 venv.run("python", "setup.py", "egg_info")
      630│                 info = PackageInfo.from_metadata_directory(path)
      631│             except EnvCommandError as fbe:

  2  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\utils\env\base_env.py:305 in run
      303│     def run(self, bin: str, *args: str, **kwargs: Any) -> str:
      304│         cmd = self.get_command_from_bin(bin) + list(args)
    → 305│         return self._run(cmd, **kwargs)
      306│
      307│     def run_pip(self, *args: str, **kwargs: Any) -> str:

  1  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\utils\env\virtual_env.py:88 in _run
       86│     def _run(self, cmd: list[str], **kwargs: Any) -> str:
       87│         kwargs["env"] = self.get_temp_environ(environ=kwargs.get("env"))
    →  88│         return super()._run(cmd, **kwargs)
       89│
       90│     def get_temp_environ(

  EnvCommandError

  Command ['C:\\Users\\xxxxx\\AppData\\Local\\Temp\\tmpej3nm6ej\\.venv\\Scripts\\python.exe', 'setup.py', 'egg_info'] errored with the following return code 1

  Output:
  Traceback (most recent call last):
    File "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\src\pottery\setup.py", line 24, in <module>
      import pottery
    File "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\src\pottery\pottery\__init__.py", line 47, in <module>
      from .exceptions import PotteryError  # isort:skip
      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\src\pottery\pottery\exceptions.py", line 27, in <module>
      from redis import Redis
  ModuleNotFoundError: No module named 'redis'

  at ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\utils\env\base_env.py:342 in _run
      338│                 output = subprocess.check_output(
      339│                     cmd, stderr=stderr, env=env, text=True, **kwargs
      340│                 )
      341│         except CalledProcessError as e:
    → 342│             raise EnvCommandError(e)
      343│
      344│         return output
      345│
      346│     def execute(self, bin: str, *args: str, **kwargs: Any) -> int:

The following error occurred when trying to handle this error:

  Stack trace:

  22  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\cleo\application.py:327 in run
       325│ 
       326│             try:
     → 327│                 exit_code = self._run(io)
       328│             except BrokenPipeError:
       329│                 # If we are piped to another process, it may close early and send a

  21  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\console\application.py:190 in _run
       188│         self._load_plugins(io)
       189│
     → 190│         exit_code: int = super()._run(io)
       191│         return exit_code
       192│

  20  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\cleo\application.py:431 in _run
       429│             io.input.interactive(interactive)
       430│
     → 431│         exit_code = self._run_command(command, io)
       432│         self._running_command = None
       433│

  19  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\cleo\application.py:473 in _run_command
       471│ 
       472│         if error is not None:
     → 473│             raise error
       474│
       475│         return terminate_event.exit_code

  18  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\cleo\application.py:457 in _run_command
       455│
       456│             if command_event.command_should_run():
     → 457│                 exit_code = command.run(io)
       458│             else:
       459│                 exit_code = ConsoleCommandEvent.RETURN_CODE_DISABLED

  17  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\cleo\commands\base_command.py:117 in run
       115│         io.input.validate()
       116│
     → 117│         return self.execute(io) or 0
       118│
       119│     def merge_application_definition(self, merge_args: bool = True) -> None:

  16  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\cleo\commands\command.py:61 in execute
        59│ 
        60│         try:
     →  61│             return self.handle()
        62│         except KeyboardInterrupt:
        63│             return 1

  15  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\console\commands\update.py:56 in handle
        54│         self.installer.update(True)
        55│
     →  56│         return self.installer.run()
        57│

  14  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\installation\installer.py:104 in run
       102│             self.verbose(True)
       103│
     → 104│         return self._do_install()
       105│
       106│     def dry_run(self, dry_run: bool = True) -> Installer:

  13  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\installation\installer.py:241 in _do_install
       239│                 source_root=self._env.path.joinpath("src")
       240│             ):
     → 241│                 ops = solver.solve(use_latest=self._whitelist).calculate_operations()
       242│         else:
       243│             self._io.write_line("Installing dependencies from lock file")

  12  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\puzzle\solver.py:71 in solve
        69│         with self._progress(), self._provider.use_latest_for(use_latest or []):
        70│             start = time.time()
     →  71│             packages, depths = self._solve()
        72│             end = time.time()
        73│

  11  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\puzzle\solver.py:154 in _solve
       152│
       153│         try:
     → 154│             result = resolve_version(self._package, self._provider)
       155│
       156│             packages = result.packages

  10  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\mixology\__init__.py:18 in resolve_version
        16│     solver = VersionSolver(root, provider)
        17│
     →  18│     return solver.solve()
        19│

   9  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\mixology\version_solver.py:175 in solve
       173│             while next is not None:
       174│                 self._propagate(next)
     → 175│                 next = self._choose_package_version()
       176│
       177│             return self._result()

   8  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\mixology\version_solver.py:514 in _choose_package_version
       512│             package = locked
       513│
     → 514│         package = self._provider.complete_package(package)
       515│
       516│         conflict = False

   7  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\puzzle\provider.py:568 in complete_package
       566│                     if locked is not None and locked.package.is_same_package_as(dep):
       567│                         continue
     → 568│                     self.search_for_direct_origin_dependency(dep)
       569│
       570│         dependencies = self._get_dependencies_with_overrides(_dependencies, package)

   6  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\puzzle\provider.py:245 in search_for_direct_origin_dependency
       243│         elif dependency.is_vcs():
       244│             dependency = cast("VCSDependency", dependency)
     → 245│             package = self._search_for_vcs(dependency)
       246│
       247│         elif dependency.is_file():

   5  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\puzzle\provider.py:323 in _search_for_vcs
       321│         and get the information we need by checking out the specified reference.
       322│         """
     → 323│         package = self._direct_origin.get_package_from_vcs(
       324│             dependency.vcs,
       325│             dependency.source,

   4  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\packages\direct_origin.py:106 in get_package_from_vcs
       104│             raise ValueError(f"Unsupported VCS dependency {vcs}")
       105│
     → 106│         return _get_package_from_git(
       107│             url=url,
       108│             branch=branch,

   3  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\packages\direct_origin.py:46 in _get_package_from_git
        44│         path = path.joinpath(subdirectory)
        45│
     →  46│     package = DirectOrigin.get_package_from_directory(path)
        47│     package._source_type = "git"
        48│     package._source_url = url

   2  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\packages\direct_origin.py:75 in get_package_from_directory
        73│     @classmethod
        74│     def get_package_from_directory(cls, directory: Path) -> Package:
     →  75│         return PackageInfo.from_directory(path=directory).to_package(root_dir=directory)
        76│
        77│     def get_package_from_url(self, url: str) -> Package:

   1  ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\inspection\info.py:511 in from_directory
       509│                         info = cls.from_setup_files(path)
       510│                     else:
     → 511│                         info = get_pep517_metadata(path)
       512│                 except PackageInfoError:
       513│                     if not info:

  PackageInfoError

  Unable to determine package info for path: C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\src\pottery

  Command ['C:\\Users\\xxxxx\\AppData\\Local\\Temp\\tmpej3nm6ej\\.venv\\Scripts\\python.exe', '-I', '-W', 'ignore', '-c', "import build\nimport build.env\nimport pyproject_hooks\n\nsource = 'C:/Users/
xxxxx/PycharmProjects/xxxxx/.venv/src/pottery'\ndest = 'C:/Users/xxxxx/AppData/Local/Temp/tmpej3nm6ej/dist'\n\nwith build.env.DefaultIsolatedEnv() as env:\n    builder = build.Proj
ectBuilder.from_isolated_env(\n        env, source, runner=pyproject_hooks.quiet_subprocess_runner\n    )\n    env.install(builder.build_system_requires)\n    env.install(builder.get_requires_for_build('wheel'))\n    builder.metadata_path(dest)\n"] errored with the following return code 1

  Error output:
  Traceback (most recent call last):
    File "<string>", line 13, in <module>
    File "C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\build\__init__.py", line 239, in get_requires_for_build
      with self._handle_backend(hook_name):
    File "C:\Program Files\Python311\Lib\contextlib.py", line 158, in __exit__
      self.gen.throw(typ, value, traceback)
    File "C:\Users\xxxxx\AppData\Local\Temp\tmpej3nm6ej\.venv\Lib\site-packages\build\__init__.py", line 360, in _handle_backend
      raise BuildBackendException(exception, f'Backend subprocess exited when trying to invoke {hook}') from None
  build._exceptions.BuildBackendException: Backend subprocess exited when trying to invoke get_requires_for_build_wheel

  Fallback egg_info generation failed.

  Command ['C:\\Users\\xxxxx\\AppData\\Local\\Temp\\tmpej3nm6ej\\.venv\\Scripts\\python.exe', 'setup.py', 'egg_info'] errored with the following return code 1

  Output:
  Traceback (most recent call last):
    File "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\src\pottery\setup.py", line 24, in <module>
      import pottery
    File "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\src\pottery\pottery\__init__.py", line 47, in <module>
      from .exceptions import PotteryError  # isort:skip
      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\Users\xxxxx\PycharmProjects\xxxxx\.venv\src\pottery\pottery\exceptions.py", line 27, in <module>
      from redis import Redis
  ModuleNotFoundError: No module named 'redis'

  at ~\AppData\Roaming\pypoetry\venv\Lib\site-packages\poetry\inspection\info.py:632 in get_pep517_metadata
      628│             try:
      629│                 venv.run("python", "setup.py", "egg_info")
      630│                 info = PackageInfo.from_metadata_directory(path)
      631│             except EnvCommandError as fbe:
    → 632│                 raise PackageInfoError(
      633│                     path, e, "Fallback egg_info generation failed.", fbe
      634│                 )
      635│             finally:
      636│                 os.chdir(cwd)
dimbleby commented 2 months ago

this is a pottery problem, please report it to them

github-actions[bot] commented 1 month ago

This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.