Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

seqeval build is broken on setuptools<61 (Python 3.8) #110

Open
jgerityneurala opened this issue Feb 24, 2025 · 0 comments · May be fixed by #111
Open

seqeval build is broken on setuptools<61 (Python 3.8) #110

jgerityneurala opened this issue Feb 24, 2025 · 0 comments · May be fixed by #111

Comments

@jgerityneurala
Copy link

How to reproduce the problem

I noticed this problem while running pip-compile to resolve a dependency graph that includes seqeval, shortly after the 21 Feb 2025 release of setuptools-scm 8.2

Attempt to install seqeval==1.2.2 into a Python environment with setuptools<61, such as a fresh Python 3.8 virtual environment (which will have setuptools 56.0).

$ python3 -V
3.8.14
$ python3 -m venv repro_venv
$ ./repro_venv/bin/python3 -m pip show setuptools | grep Version
Version: 56.0.0
$ ./repro_venv/bin/python3 -m pip install --no-cache seqeval==1.2.2
$ ./repro_venv/bin/python3 -m pip install --no-cache seqeval==1.2.2
$ ./repro_venv/bin/python3 -m pip install --no-cache seqeval==1.2.2
Collecting seqeval==1.2.2
  Downloading seqeval-1.2.2.tar.gz (43 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 43.6/43.6 KB 5.4 MB/s eta 0:00:00
  Preparing metadata (setup.py) ... error
  error: subprocess-exited-with-error

  × python setup.py egg_info did not run successfully.
  │ exit code: 1
  ╰─> [73 lines of output]
      WARNING: The wheel package is not available.
      WARNING: The wheel package is not available.
      WARNING: The wheel package is not available.
      WARNING: The wheel package is not available.
      WARNING: The wheel package is not available.
      /tmp/pip-install-u8qnlzk2/seqeval_421dc18d836d45ed8b8fc176526d3cf6/.eggs/setuptools_scm-8.2.0-py3.8.egg/setuptools_scm/_integration/setuptools.py:31: RuntimeWarning:
      ERROR: setuptools==56.0.0 is used in combination with setuptools-scm>=8.x

      Your build configuration is incomplete and previously worked by accident!
      setuptools-scm requires setuptools>=61

      Suggested workaround if applicable:
       - migrating from the deprecated setup_requires mechanism to pep517/518
         and using a pyproject.toml to declare build dependencies
         which are reliably pre-installed before running the build tools

        warnings.warn(
      WARNING setuptools_scm.pyproject_reading toml section missing 'pyproject.toml does not contain a tool.setuptools_scm section'
      Traceback (most recent call last):
        File "/tmp/pip-install-u8qnlzk2/seqeval_421dc18d836d45ed8b8fc176526d3cf6/.eggs/setuptools_scm-8.2.0-py3.8.egg/setuptools_scm/_integration/pyproject_reading.py", line 36, in read_pyproject
          section = defn.get("tool", {})[tool_name]
      KeyError: 'setuptools_scm'
      running egg_info
      creating /tmp/pip-pip-egg-info-fx_p_ap7/seqeval.egg-info
      writing /tmp/pip-pip-egg-info-fx_p_ap7/seqeval.egg-info/PKG-INFO
      writing dependency_links to /tmp/pip-pip-egg-info-fx_p_ap7/seqeval.egg-info/dependency_links.txt
      writing requirements to /tmp/pip-pip-egg-info-fx_p_ap7/seqeval.egg-info/requires.txt
      writing top-level names to /tmp/pip-pip-egg-info-fx_p_ap7/seqeval.egg-info/top_level.txt
      writing manifest file '/tmp/pip-pip-egg-info-fx_p_ap7/seqeval.egg-info/SOURCES.txt'
      Traceback (most recent call last):
...

Note these lines in particular:

      ERROR: setuptools==56.0.0 is used in combination with setuptools-scm>=8.x

      Your build configuration is incomplete and previously worked by accident!
      setuptools-scm requires setuptools>=61

The most straightforward fix to the issue is to add a pyproject.toml declaring setuptools as the build backend, and build isolation will ensure that the building venv ends up with a newer copy of setuptools.

Your Environment

  • Operating System: Ubuntu 22.04
  • Python Version: Python 3.8
  • Package Version: 1.2.2
@jgerityneurala jgerityneurala linked a pull request Feb 24, 2025 that will close this issue
10 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant