Skip to content

Commit 0fd1cb2

Browse files
author
Géry Casiez
committed
Binding for Python 3.13
1 parent 74fd753 commit 0fd1cb2

2 files changed

Lines changed: 44 additions & 33 deletions

File tree

.github/workflows/CI.yml

Lines changed: 41 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -6,25 +6,32 @@ on:
66
pull_request:
77
branches: [ "master" ]
88

9+
env:
10+
PYTHON_VERSION: '3.13'
11+
912
jobs:
1013
buildLinux:
1114

1215
runs-on: ubuntu-latest
1316
container: ubuntu:latest
1417

1518
steps:
16-
- uses: actions/checkout@v4
19+
- uses: actions/checkout@v5
20+
- name: Setup Python
21+
uses: actions/setup-python@v6
22+
with:
23+
python-version: ${{ env.PYTHON_VERSION }}
1724
- name: Install Qt6 and python
1825
run: |
1926
apt-get update
2027
export DEBIAN_FRONTEND=noninteractive
2128
apt-get install -y qt6-base-dev libxrandr-dev libudev-dev libxi-dev freeglut3-dev
22-
apt-get install -y python3.12 python3.12-venv python3-pip cython3
29+
apt-get install -y python3-venv python3-pip cython3
2330
mkdir venv
24-
python3.12 -m venv venv/
31+
python -m venv venv/
2532
. venv/bin/activate
26-
python3.12 -m pip install --upgrade pip
27-
python3.12 -m pip install setuptools cython
33+
python -m pip install --upgrade pip
34+
python -m pip install setuptools cython
2835
2936
- name: compile library
3037
run: qmake6 && make
@@ -34,10 +41,10 @@ jobs:
3441
. venv/bin/activate
3542
cp pointing/libpointing.a bindings/Python/cython/
3643
cd bindings/Python/cython/
37-
python3 buildcythonlib.py build_ext --inplace
44+
python buildcythonlib.py build_ext --inplace
3845
3946
- name: Save the compiled libraries
40-
uses: actions/upload-artifact@v4
47+
uses: actions/upload-artifact@v5
4148
with:
4249
name: LinuxArtifact
4350
path: |
@@ -49,17 +56,17 @@ jobs:
4956
runs-on: macos-latest
5057

5158
steps:
52-
- uses: actions/checkout@v4
59+
- uses: actions/checkout@v5
5360
- name: Install Qt6 and python
5461
run: |
5562
brew update
5663
brew install qt
57-
brew install python@3.12
64+
brew install python@${PYTHON_VERSION}
5865
mkdir venv
59-
python3.12 -m venv venv/
66+
python${PYTHON_VERSION} -m venv venv/
6067
source venv/bin/activate
61-
python3.12 -m pip install --upgrade pip
62-
python3.12 -m pip install setuptools cython
68+
python${PYTHON_VERSION} -m pip install --upgrade pip
69+
python${PYTHON_VERSION} -m pip install setuptools cython
6370
6471
- name: compile library
6572
run: |
@@ -72,10 +79,10 @@ jobs:
7279
source venv/bin/activate
7380
cp pointing/libpointing.a bindings/Python/cython/
7481
cd bindings/Python/cython/
75-
python3.12 buildcythonlib.py build_ext --inplace
82+
python${PYTHON_VERSION} buildcythonlib.py build_ext --inplace
7683
7784
- name: Save the compiled libraries
78-
uses: actions/upload-artifact@v4
85+
uses: actions/upload-artifact@v5
7986
with:
8087
name: macOSArtifact
8188
path: |
@@ -87,14 +94,14 @@ jobs:
8794
runs-on: windows-latest
8895

8996
steps:
90-
- uses: actions/checkout@v4
97+
- uses: actions/checkout@v5
9198
- uses: ilammy/msvc-dev-cmd@v1
9299
- name: Install Qt
93100
uses: jurplel/install-qt-action@v4
94101
with:
95102
host: 'windows'
96103
target: 'desktop'
97-
arch: 'win64_msvc2019_64'
104+
arch: 'win64_msvc2022_64'
98105
dir: '${{ github.workspace }}/qtdir/'
99106
install-deps: 'true'
100107
archives: 'qtbase'
@@ -109,9 +116,9 @@ jobs:
109116
extra: '--external 7z'
110117

111118
- name: Install Python
112-
uses: actions/setup-python@v5
119+
uses: actions/setup-python@v6
113120
with:
114-
python-version: '3.12'
121+
python-version: ${{ env.PYTHON_VERSION }}
115122

116123
- name: Install Python librairies
117124
run: |
@@ -138,7 +145,7 @@ jobs:
138145
python.exe buildcythonlib.py build_ext --inplace
139146
140147
- name: Save the compiled libraries
141-
uses: actions/upload-artifact@v4
148+
uses: actions/upload-artifact@v5
142149
with:
143150
name: WindowsArtifact
144151
path: |
@@ -153,32 +160,36 @@ jobs:
153160
container: ubuntu:latest
154161

155162
steps:
156-
- uses: actions/checkout@v4
163+
- uses: actions/checkout@v5
164+
- name: Setup Python
165+
uses: actions/setup-python@v6
166+
with:
167+
python-version: ${{ env.PYTHON_VERSION }}
157168
- name: Install python
158169
run: |
159170
apt-get update
160171
export DEBIAN_FRONTEND=noninteractive
161-
apt-get install -y python3.12 python3.12-venv python3-pip cython3
172+
apt-get install -y python3-venv python3-pip cython3
162173
mkdir venv
163-
python3.12 -m venv venv/
174+
python -m venv venv/
164175
. venv/bin/activate
165-
python3.12 -m pip install --upgrade pip
166-
python3.12 -m pip install setuptools build cython twine
176+
python -m pip install --upgrade pip
177+
python -m pip install setuptools build cython twine
167178
168179
- name: Download Linux artifact
169-
uses: actions/download-artifact@v4
180+
uses: actions/download-artifact@v5
170181
with:
171182
name: LinuxArtifact
172183
path: linux-artifact
173184

174185
- name: Download macOS artifact
175-
uses: actions/download-artifact@v4
186+
uses: actions/download-artifact@v5
176187
with:
177188
name: macOSArtifact
178189
path: macOS-artifact
179190

180191
- name: Download Windows artifact
181-
uses: actions/download-artifact@v4
192+
uses: actions/download-artifact@v5
182193
with:
183194
name: WindowsArtifact
184195
path: windows-artifact
@@ -202,14 +213,14 @@ jobs:
202213
. venv/bin/activate
203214
cd bindings/Python/cython/
204215
ls -la libpointing/
205-
python3 -m build
216+
python -m build
206217
ls -la dist/
207218
cd ../../..
208219
mkdir python
209220
cp -r bindings/Python/cython/dist/*.whl python/
210221
211222
- name: Save the compiled libraries
212-
uses: actions/upload-artifact@v4
223+
uses: actions/upload-artifact@v5
213224
with:
214225
name: librairiesAndPythonBinding
215226
path: |
@@ -223,4 +234,4 @@ jobs:
223234
TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }}
224235
run : |
225236
. venv/bin/activate
226-
python3 -m twine upload python/*
237+
python -m twine upload python/*

bindings/Python/cython/pyproject.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,9 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "libpointing"
7-
version = "1.1.1"
7+
version = "1.1.2"
88
description = "Python binding for libpointing."
9-
requires-python = "==3.12.*"
9+
requires-python = "==3.13.*"
1010
authors = [
1111
{name = "Nicolas Roussel", email = "nicolas.roussel@inria.fr"},
1212
{name = "Géry Casiez", email = "gery.casiez@univ-lille.fr"},
@@ -33,4 +33,4 @@ packages = ["libpointing"]
3333
include-package-data = true
3434

3535
[tool.setuptools.package-data]
36-
libpointing = ["libpointing.cpython-312-darwin.so", "libpointing.cpython-312-x86_64-linux-gnu.so", "libpointing.cp312-win_amd64.pyd"]
36+
libpointing = ["libpointing.cpython-313-darwin.so", "libpointing.cpython-313-x86_64-linux-gnu.so", "libpointing.cp313-win_amd64.pyd"]

0 commit comments

Comments
 (0)