Python version conflict during a version upgrade
Nobody has claimed this yet.
- Dominant language
- Jinja
- Stars
- 2
- Forks
- 2
- PR merge metrics
- No merged PRs in 30d
Description
When dropping support for a Python version, the 'Nightly tests at latest release' workflow is broken until a new release is made. (If it uses Scipp)
As an example:
- Release package with, e.g., Python 3.9.
- Set minimum to 3.10.
- Update dependencies.
- This will start using the py310 wheel of scipp.
- Run
nightly_at_release.yml.- This calls
test.ymlwithtox-env: nightlyandpython-version: 3.10. test.ymlchecks out the last release tag, installs Python 3.10 and runstox -e nightly.- Tox installs dependencies from
requirements/nightly.txtas it was at the release. I.e., it tries to install the py39 wheel for Scipp and fail.
- This calls
We could mitigate this by requiring to make a release whenever we change the minimum Python version. But those releases are not necessarily meaningful.
I don't see a simple way around this. We might have to pull requirements/nightly.txt from main instead of a release tag. But that would probably cause problems as well.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with .github/workflows/nightly_at_release.yml and test.yml, then compare how the release tag and Python version determine the dependencies from requirements/nightly.txt. Reproduce the failure described when the minimum Python version changes, and define done as the nightly-at-release workflow using compatible dependencies without requiring an unrelated release.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- github-actions, python
- Domain
- ci-cd, testing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100