diff options
author | Jeff Epler <jepler@gmail.com> | 2025-07-04 09:56:29 +0100 |
---|---|---|
committer | Damien George <damien@micropython.org> | 2025-07-06 00:08:54 +1000 |
commit | a9801f9960ea2b8e94d5626840c97bc45286e1a3 (patch) | |
tree | 1dcb90b2a6bf9233401735798ddf720917d8aada | |
parent | a8c2b917e2837541597f24f7220c8c73c16c2fa7 (diff) |
github/workflows: Use Python 3.11 for unix coverage testing.
This removes the need for an explicit `sys_settrace_features.py.exp` file.
This means that people testing locally will also need to install Python
3.11 in some way, such as with pyenv or uv, and use it during
`make VARIANT=coverage test`, or they will get failures.
When using Python from GitHub actions/setup-python, pip3 can't be wrapped
by sudo, because this invokes the operating system python instead.
Signed-off-by: Jeff Epler <jepler@gmail.com>
-rw-r--r-- | .github/workflows/ports_unix.yml | 15 | ||||
-rwxr-xr-x | tools/ci.sh | 6 |
2 files changed, 18 insertions, 3 deletions
diff --git a/.github/workflows/ports_unix.yml b/.github/workflows/ports_unix.yml index e3ebcfda3..4b22926ea 100644 --- a/.github/workflows/ports_unix.yml +++ b/.github/workflows/ports_unix.yml @@ -71,6 +71,11 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + # Python 3.12 is the default for ubuntu-24.04, but that has compatibility issues with settrace tests. + # Can remove this step when ubuntu-latest uses a more recent Python 3.x as the default. + with: + python-version: '3.11' - name: Install packages run: source tools/ci.sh && ci_unix_coverage_setup - name: Build @@ -250,6 +255,11 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + # Python 3.12 is the default for ubuntu-24.04, but that has compatibility issues with settrace tests. + # Can remove this step when ubuntu-latest uses a more recent Python 3.x as the default. + with: + python-version: '3.11' - name: Install packages run: source tools/ci.sh && ci_unix_coverage_setup - name: Build @@ -270,6 +280,11 @@ jobs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + # Python 3.12 is the default for ubuntu-24.04, but that has compatibility issues with settrace tests. + # Can remove this step when ubuntu-latest uses a more recent Python 3.x as the default. + with: + python-version: '3.11' - name: Install packages run: source tools/ci.sh && ci_unix_coverage_setup - name: Build diff --git a/tools/ci.sh b/tools/ci.sh index 2f0b74242..4007dfebf 100755 --- a/tools/ci.sh +++ b/tools/ci.sh @@ -612,9 +612,9 @@ function ci_unix_standard_v2_run_tests { } function ci_unix_coverage_setup { - sudo pip3 install setuptools - sudo pip3 install pyelftools - sudo pip3 install ar + pip3 install setuptools + pip3 install pyelftools + pip3 install ar gcc --version python3 --version } |