最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

python - tox is not installing build requirements - Stack Overflow

programmeradmin1浏览0评论

I am trying to use tox with a project where some of the requirements need torch to be installed before their installation. To solve this, I tried adding torch as a build requirement.

A simplified version of my setup looks something like this:

tox.ini:

[tox]
minversion = 4.23.2
envlist = lint
isolated_build = true

[gh-actions]
python =
    3.12: lint

[testenv:{lint}]
commands =
    lint: flake8 src tests

pyproject.toml:

[build-system]
requires = ["setuptools>=42.0,<78.0", "wheel", "torch==2.5.0"]
build-backend = "setuptools.build_meta"

setup.cfg:

[options]
packages =
    gnnconcepts
install_requires =
    numpy==2.2.3
    jaxtyping==0.2.36
    wandb>=0.19.3
    tqdm>=4.67.1
    rdkit==2024.9.5
    pandas>=2.2.3
    plotly==5.24.1
    graphium==2.4.7
    scipy==1.13.1
python_requires = >=3.12
package_dir =
    =src
zip_safe = no

Whenn running tox --recreate --verbose, the console output does imply that the build requirements are being installed

.pkg: install_requires> python -I -m pip install setuptools<78.0,>=42.0 torch==2.5.0 wheel
.pkg: exit 0 (31.11 seconds) [PATH TO MY PROJECT]> python -I -m pip install setuptools<78.0,>=42.0 torch==2.5.0 wheel pid=8968

Nonetheless, installing the requirements fails with

lint: install_package_deps> python -I -m pip install graphium==2.4.7 jaxtyping==0.2.36 numpy==2.2.3 pandas>=2.2.3 plotly==5.24.1 rdkit==2024.9.5 scipy==1.13.1 tqdm>=4.67.1 wandb>=0.19.3

[...]

Collecting torch-sparse>=0.6 (from graphium==2.4.7)
  Using cached torch_sparse-0.6.18.tar.gz (209 kB)
  Installing build dependencies: started
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Getting requirements to build wheel: finished with status 'error'
  error: subprocess-exited-with-error

  Getting requirements to build wheel did not run successfully.
  exit code: 1

  [20 lines of output]
  Traceback (most recent call last):
    File "C:\Users\jonas\Programmieren\gnn-concepts\.tox\lint\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 389, in <module>
      main()
    File "C:\Users\jonas\Programmieren\gnn-concepts\.tox\lint\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 373, in main
      json_out["return_val"] = hook(**hook_input["kwargs"])
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\Users\jonas\Programmieren\gnn-concepts\.tox\lint\Lib\site-packages\pip\_vendor\pyproject_hooks\_in_process\_in_process.py", line 143, in get_requires_for_build_wheel
      return hook(config_settings)
             ^^^^^^^^^^^^^^^^^^^^^
    File "C:\Users\jonas\AppData\Local\Temp\pip-build-env-a4iygx15\overlay\Lib\site-packages\setuptools\build_meta.py", line 334, in get_requires_for_build_wheel
      return self._get_build_requires(config_settings, requirements=[])
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "C:\Users\jonas\AppData\Local\Temp\pip-build-env-a4iygx15\overlay\Lib\site-packages\setuptools\build_meta.py", line 304, in _get_build_requires
      self.run_setup()
    File "C:\Users\jonas\AppData\Local\Temp\pip-build-env-a4iygx15\overlay\Lib\site-packages\setuptools\build_meta.py", line 522, in run_setup
      super().run_setup(setup_script=setup_script)
    File "C:\Users\jonas\AppData\Local\Temp\pip-build-env-a4iygx15\overlay\Lib\site-packages\setuptools\build_meta.py", line 320, in run_setup
      exec(code, locals())
    File "<string>", line 8, in <module>
  ModuleNotFoundError: No module named 'torch'
  [end of output]

  note: This error originates from a subprocess, and is likely not a problem with pip.
error: subprocess-exited-with-error

Getting requirements to build wheel did not run successfully.
exit code: 1

Note that 30 seconds to install torch seems suspiciously fast to me (although there might be some caching going on that I am unaware of).

The most similar issue I could find was this but that didn't really help.

发布评论

评论列表(0)

  1. 暂无评论