Skip to content

Pin oldestdeps in tox.ini to exact versions? #15865

Closed

Description

@mhvk

Description

Issue #15788 arose because our minimum required erfa was not quite correct. This was not caught because in tox.ini, we have set our oldestdeps to things like pyerfa==2.0.*, which means bug-fix releases are included. Conceptually, this seems wrong: oldestdeps should test with with exactly the absolute minimum version that is allowed by our requirements. If that means that something doesn't work because of a bug, logically our minimum requirements should be updated as well.

Question: does this make sense? Should we update tox.ini and pyproject.toml with version numbers that include bug-fix micro?

Activity

  1. pllim commented on Jan 11, 2024

    @pllim
    Member

    I think it has both good and bad.

    Would have been avoided if pyerfa uses semver, no?

  2. pllim commented on Jan 11, 2024

    @pllim
    Member

    I am okay with pinning pyerfa to exact in oldestdeps but I would be hesistant to make this a blanket policy. Sometimes a bugfix includes critical security fix and we would want those.

  3. mhvk commented on Jan 11, 2024

    @mhvk
    ContributorAuthor

    I am okay with pinning pyerfa to exact in oldestdeps but I would be hesistant to make this a blanket policy. Sometimes a bugfix includes critical security fix and we would want those.

    But in that case shouldn't we adjust our minimum required version? I see oldestdeps as just ensuring that we do not inadvertently break what should work... Anyway, I'm really not sure...

    Separately, would be nice if tox.ini could auto-grab those versions from pyproject.toml...

  4. pllim commented on Jan 11, 2024

    @pllim
    Member

    I vaguely remember that @WilliamJamieson wrote something that automatically create pinning for tox from build requirements... 🤔

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions