Skip to content

Add CI workflow lane for dependency testing (canary lane) - #3430

Open
deruyter92 wants to merge 10 commits into
mainfrom
jaap/dependency-upgrade-test
Open

Add CI workflow lane for dependency testing (canary lane)#3430
deruyter92 wants to merge 10 commits into
mainfrom
jaap/dependency-upgrade-test

Conversation

@deruyter92

@deruyter92 deruyter92 commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

Motivation
We currently enforce version pins for quite some dependencies. This PR introduces a non-blocking test lane that can help to identify future-incompatibilities when we release these upper bounds.

Changes
Add add a non-blocking "canary" test lane that tests future compatibility for specific pip-overrides. Currently, we run only the pytests and the torch functional tests for just one python version (3.12) and os (ubuntu). The following dependency overrides are tested:

  • albumentations >= 2
  • numpy >= 2
  • pandas >= 3
  • matplotlib >= 3.9

Related PRs

@deruyter92
deruyter92 force-pushed the jaap/dependency-upgrade-test branch from d9ce322 to a7b8470 Compare July 30, 2026 10:05
@deruyter92
deruyter92 marked this pull request as ready for review August 10, 2026 06:28
@deruyter92
deruyter92 requested a review from C-Achard August 10, 2026 06:28
@C-Achard C-Achard added dependencies Pull requests that update a dependency file CI Related to CI/CD jobs and automated testing labels Aug 10, 2026
Comment thread .github/workflows/python-package.yml

@C-Achard C-Achard left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Very nice, super useful for the version upgrades milestone.

One higher level design question, would you be in favor of removing those tests once we successfully increment a package and keep the infra for later? Or would this be more of a permanent CI lane by design?

Comment thread .github/workflows/python-package.yml
Comment thread .github/workflows/python-package.yml
Comment thread .github/workflows/python-package.yml Outdated
Comment on lines +134 to +135
echo "Force-installing (--no-deps): $pkg"
python -m pip install --no-cache-dir --upgrade --no-deps "$pkg"

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we want no-deps given that users would most often update their full stack? What do you think would be most useful here?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes I was not sure about this one. I would still lean towards keeping --no-deps because it helps us isolate the current issues in specific dependencies (e.g. pandas, numpy, matplotlib, etc).

Maybe after we finish the current round of updating our dependency stack we can change it to a more generic canary lane where the full stack is updated

Comment thread .github/workflows/python-package.yml
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI Related to CI/CD jobs and automated testing dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants