Skip to content

Locking requirements for CI #653

Open
@tillahoffmann

Description

@tillahoffmann

The CI pipeline currently installs requirements from requirements.txt, requirements-test.txt, and requirements-optional.txt. These files list semantic requirements, e.g., numpy, but don't "lock" the specific version, e.g., numpy==x.y.z. During testing, this can lead to unexpected failures caused by changes in underlying packages rather than changes related to the code in this repository.

For example, this run succeeded with pylint==2.15.10, but this run failed with pylint==2.16.2. This was due to the change pylint-dev/pylint#7690 released with pylint 2.16.0.

Keeping the requirements semantic for the actual package, but locking the requirements for CI for reproducible builds has worked well for me in the past. I'm happy to send a PR if this is of interest but wanted to check with you before making any changes.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions