Thanks to visit codestin.com
Credit goes to github.com

Skip to content

[MNT]: setuptools-scm v8.0.1 compatibility #26846

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

Closed
ksunden opened this issue Sep 20, 2023 · 1 comment · Fixed by #26849
Closed

[MNT]: setuptools-scm v8.0.1 compatibility #26846

ksunden opened this issue Sep 20, 2023 · 1 comment · Fixed by #26849
Milestone

Comments

@ksunden
Copy link
Member

ksunden commented Sep 20, 2023

Summary

setuptools-scm released today and even after the biggest issue having been resolved and the 8.0.0 release being yanked we are seeing CI failures, primarily on azure.

This is mostly me documenting what I'm seeing, probably mostly for myself, but if others have insights/opinions, happy to hear them

There are actually two seemingly disjoint problems:

  • setuptools-scm is complaining that we do not have config in pyproject.toml

    • There is a release note stating "remove legacy version parser api - config arg always required"
    • Despite this, appears to actually install and get the version number and everything, so not fully sure what is required
  • Azure CI is picking up an older version of setuptools, despite having apparently installed the latest version.

    • setuptools-scm is issuing a runtime warning for older setuptools, which is failing tests
    • setuptools-scm does not pin the version of setuptools in their requirements, despite having checks against specific versions
    • setuptools-scm now requires setuptools>=61
    • During install, it appears that setuptools 68 is installed on the Azure runs, so there shouldn't be a CI problem
    • But it is still picking up setuptools 58 at runtime

Proposed fix

Possible solutions:

  • Pin setuptools-scm<8

    • not super viable long term, and if we can just fix compatibility easily, probably better, but if it is hard in the interim, may be a stopgap to employ.
  • Pin our own version of setuptools

    • Not sure it would help as it looks like newer is installed in CI, but may not hurt
  • Add config to pyproject.toml

    • need to determine what even needs to go in here, as far as I'm aware, we don't use any non-default settings
    • From their readme, looks like it can be an empty toml table or at most specifying where the version file goes... if the former, I think it is strange to error on missing, but not hard to add I guess...
  • Figure out where azure is getting the older setuptools from?

    • is it preinstalled and on sys.path first?
    • Seems to only be on the 3.9 builds, but that may be because of the Azure images?
@oscargus
Copy link
Member

There are pyproject.toml settings in #26621, so may be worth trying those to see if it helps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants