[llvm] [GitHub] Add python 3.7 to libclang python test (PR #77219)
Craig Hesling via llvm-commits
llvm-commits at lists.llvm.org
Sat Jan 6 18:29:48 PST 2024
https://github.com/linux4life798 created https://github.com/llvm/llvm-project/pull/77219
This enables the libclang python binding test to check
the oldest version of Python supported in addition
to the normal python version.
It is important to check this for issue #76664, since
many new mainstream python type annotation features
and best practices are not compatible with older
versions of python.
Additionally, frustration around ever increasing
platform dependencies and versions has been raised.
This will help ensure that python maintains reasonable
backwards compatibility.
Adding this additional build step will increase the
run time, but this should always be minimal, since
the additional libclang compilation should see 100%
cache hit rate.
Issue #76664.
Fixes #76601.
>From ef7bc60c05f530872b4c08f29a6dc8aca27cfb1f Mon Sep 17 00:00:00 2001
From: Craig Hesling <craig at hesling.com>
Date: Sat, 30 Dec 2023 01:17:57 -0500
Subject: [PATCH 1/2] [GitHub] Add python_version input to
llvm-project-test.yml
This will be used for testing the libclang Python binding
against different versions of Python.
Issue #76664.
Issue #76601.
---
.github/workflows/llvm-project-tests.yml | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/.github/workflows/llvm-project-tests.yml b/.github/workflows/llvm-project-tests.yml
index 594831ee6b5f52..a6caa94f2d158a 100644
--- a/.github/workflows/llvm-project-tests.yml
+++ b/.github/workflows/llvm-project-tests.yml
@@ -15,6 +15,10 @@ on:
os_list:
required: false
default: '["ubuntu-latest", "windows-2019", "macOS-12"]'
+ python_version:
+ required: false
+ type: string
+ default: '3.11'
workflow_call:
inputs:
build_target:
@@ -36,6 +40,11 @@ on:
# https://developercommunity.visualstudio.com/t/Prev-Issue---with-__assume-isnan-/1597317
default: '["ubuntu-latest", "windows-2019", "macOS-12"]'
+ python_version:
+ required: false
+ type: string
+ default: '3.11'
+
concurrency:
# Skip intermediate builds: always.
# Cancel intermediate builds: only if it is a pull request build.
@@ -65,7 +74,7 @@ jobs:
- name: Setup Python
uses: actions/setup-python at v4
with:
- python-version: '3.11'
+ python-version: ${{ inputs.python_version }}
- name: Install Ninja
uses: llvm/actions/install-ninja at main
# actions/checkout deletes any existing files in the new git directory,
>From ac9b92c4d0e91afc6185f5b1695b36772784fb2d Mon Sep 17 00:00:00 2001
From: Craig Hesling <craig at hesling.com>
Date: Tue, 2 Jan 2024 19:01:49 -0500
Subject: [PATCH 2/2] [GitHub] Add python 3.7 to libclang python test
This enables the libclang python binding test to check
the oldest version of Python supported in addition
to the normal python version.
It is important to check this for issue #76664, since
many new mainstream python type annotation features
and best practices are not compatible with older
versions of python.
Additionally, frustration around ever increasing
platform dependencies and versions has been raised.
This will help ensure that python maintains reasonable
backwards compatibility.
Adding this additional build step will increase the
run time, but this should always be minimal, since
the additional libclang compilation should see 100%
cache hit rate.
Issue #76664.
Fixes #76601.
---
.github/workflows/libclang-python-tests.yml | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/.github/workflows/libclang-python-tests.yml b/.github/workflows/libclang-python-tests.yml
index 73edb6cf3bad26..e12acbc0f6ce8c 100644
--- a/.github/workflows/libclang-python-tests.yml
+++ b/.github/workflows/libclang-python-tests.yml
@@ -30,6 +30,10 @@ jobs:
check-clang-python:
# Build libclang and then run the libclang Python binding's unit tests.
name: Build and run Python unit tests
+ strategy:
+ fail-fast: false
+ matrix:
+ python-version: ["3.7", "3.11"]
uses: ./.github/workflows/llvm-project-tests.yml
with:
build_target: check-clang-python
@@ -37,3 +41,4 @@ jobs:
# There is an issue running on "windows-2019".
# See https://github.com/llvm/llvm-project/issues/76601#issuecomment-1873049082.
os_list: '["ubuntu-latest"]'
+ python_version: ${{ matrix.python-version }}
More information about the llvm-commits
mailing list