Conversation
There was a problem hiding this comment.
Pull Request Overview
This PR fixes a CI failure caused by Python 3.7 no longer being available on ubuntu-latest (which now points to Ubuntu 24.04). The solution pins Python 3.7 to Ubuntu 22.04 while keeping other Python versions on the latest Ubuntu release.
- Updated the GitHub Actions workflow to use a dynamic
runs-onconfiguration based on the Python version - Added a matrix configuration to specify Ubuntu 22.04 for Python 3.7 tests
- Maintained support for Python 3.8, 3.9, and 3.10 on ubuntu-latest
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| python-version: ['3.8', '3.9', '3.10'] | ||
| runs-on: [ubuntu-latest] | ||
| include: |
There was a problem hiding this comment.
[nitpick] "The matrix configuration will create unintended duplicate job runs. With the current structure, Python versions 3.8, 3.9, and 3.10 will each run on ubuntu-latest (as intended), but then Python 3.7 will be added as an additional job. However, because both python-version and runs-on are defined as matrix dimensions, this creates a cartesian product: 3 Python versions × 1 OS = 3 jobs, plus 1 job from the include. The configuration is correct as-is. To make it clearer, you could restructure to avoid having runs-on as a matrix variable and instead only use include entries, like this:
matrix:
fail-fast: false
include:
```suggestion
include:
- python-version: '3.8'
runs-on: ubuntu-latest
- python-version: '3.9'
runs-on: ubuntu-latest
- python-version: '3.10'
runs-on: ubuntu-latest
GitHub workflow's ubuntu-latest now points to 24.04, where Python 3.7 is not available any more.
To fix it, I changed the CI config to let Python 3.7 use ubuntu-22.04. Other versions (3.8, 3.9. 3.10) stay the same.
It has been a few years since we published pytest-inline. I'm planning to do the following upgrades to CI / build config recently, let me know if there is any objections:
uv, which should replacecondaandtox