Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[ci] allow to download missing Python versions #1221

Merged
merged 11 commits into from
Oct 12, 2024
39 changes: 23 additions & 16 deletions .azure/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ variables:
# indicate whether the testsuite should skip long-running tests or not.
- name: jpypetest.fast
value: 'false'
- name: system.debug
value: 'true'

jobs:
- job: Deps
Expand Down Expand Up @@ -51,58 +53,62 @@ jobs:
strategy:
matrix:
# Linux
linux-py3.8-jdk8: # todo: 3.8 will be EOL on October 31, 2024
linux_py38_jdk8: # todo: 3.8 will be EOL on October 31, 2024
imageName: "ubuntu-latest"
python.version: '3.8'
jdk.version: '8'
linux-py3.9-jdk11:
linux_py39_jdk11:
imageName: "ubuntu-latest"
python.version: '3.9'
jdk.version: '11'
linux-py3.10-jdk17:
linux_py310_jdk17:
imageName: "ubuntu-latest"
python.version: '3.10'
jdk.version: '17'
linux-py3.11-jdk17:
linux_py311_jdk17:
imageName: "ubuntu-latest"
python.version: '3.11'
jdk.version: '17'
linux-py3.12-jdk17:
linux_py312_jdk17:
imageName: "ubuntu-latest"
python.version: '3.12'
jdk.version: '17'
linux-py3.13-jdk17:
linux_py313_jdk17:
imageName: "ubuntu-latest"
python.version: "3.13.0-rc.2"
jdk.version: '17'
python.version: "3.13"
jdk.version: '17' # jdk 22 is not there yet.
#linux_py314_jdk22:
# imageName: "ubuntu-latest"
# python.version: "3.14.0-alpha.0"
# jdk.version: '22'
# Windows
windows-py3.8-jdk8:
windows_py38_jdk8:
imageName: "windows-2019"
python.version: '3.8' # todo: 3.8 will be EOL on October 31, 2024
jdk.version: '8'
windows-py3.9-jdk11:
windows_py39_jdk11:
imageName: "windows-2019"
python.version: '3.9'
jdk.version: '11'
windows-py3.10-jdk8:
windows_py310_jdk8:
imageName: "windows-2019"
python.version: '3.10'
jdk.version: '8'
windows-py3.11-jdk17:
windows_py311_jdk17:
imageName: "windows-2019"
python.version: '3.11'
jdk.version: '17'
windows-py3.12-jdk21:
windows_py312_jdk21:
imageName: "windows-2019"
python.version: '3.12'
jdk.version: '21'
# OSX, we only test an old Python version with JDK8 and recent Py with recent JDK.
mac-py3.8-jdk8:
mac_py38_jdk8:
imageName: "macos-12"
python.version: '3.8' # todo: 3.8 will be EOL on October 31, 2024
jpypetest.fast: 'true'
jdk.version: '8'
mac-py3.12-jdk17:
mac_py312_jdk17:
imageName: "macos-12"
python.version: '3.12'
jpypetest.fast: 'true'
Expand All @@ -111,6 +117,7 @@ jobs:
pool:
vmImage: $(imageName)
steps:

- template: scripts/deps.yml
- template: scripts/test.yml

Expand All @@ -119,7 +126,7 @@ jobs:
dependsOn: Deps
strategy:
matrix:
linux-py3.8-jdk11:
linux_py38_jdk11:
imageName: "ubuntu-16.04"
jdk.version: "11"
python.version: '3.8'
Expand Down
3 changes: 3 additions & 0 deletions .azure/scripts/test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@ steps:
- task: UsePythonVersion@0
inputs:
versionSpec: '$(python.version)'
disableDownloadFromRegistry: false # boolean. Disable downloading releases from the GitHub registry. Default: false.
allowUnstable: true # boolean. Optional. Use when disableDownloadFromRegistry = false. Allow downloading unstable releases. Default: false.
githubToken: '$(githubToken)'

- template: jdk.yml
parameters:
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,13 @@ jobs:
uses: actions/checkout@v3

- name: Initialize CodeQL
uses: github/codeql-action/init@v2
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
queries: +security-and-quality

- name: Autobuild
uses: github/codeql-action/autobuild@v2
uses: github/codeql-action/autobuild@v3
if: ${{ matrix.language == 'python' }}

- name: Build cpp
Expand All @@ -45,6 +45,6 @@ jobs:
if: ${{ matrix.language == 'java' }}

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
uses: github/codeql-action/analyze@v3
with:
category: "/language:${{ matrix.language }}"
2 changes: 1 addition & 1 deletion jpype/_core.py
Original file line number Diff line number Diff line change
Expand Up @@ -124,7 +124,7 @@ def _handleClassPath(
"""
Return a classpath which represents the given tuple of classpath specifications
"""
out = []
out: list[str] = []
if classpath is None:
return out
if isinstance(classpath, (str, os.PathLike)):
Expand Down
Loading