Skip to content

Commit 0206f15

Browse files
authored
ci(Python): Test wheel builds (#4)
* ci(Python): Test wheel builds * Test on push * comment out 390x * Use io template * build abi3 wheels * Fix python name to geodatafusion * Restore wheel build to not run on every push
1 parent 06a762e commit 0206f15

5 files changed

Lines changed: 24 additions & 252 deletions

File tree

.github/workflows/python-core-wheels.yml

Lines changed: 0 additions & 231 deletions
This file was deleted.
Lines changed: 12 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Python Wheels (IO)
1+
name: Python Wheels
22

33
on:
44
push:
@@ -31,8 +31,6 @@ jobs:
3131
- runner: ubuntu-latest
3232
target: ppc64le
3333
manylinux: auto
34-
module:
35-
- geoarrow-io
3634
steps:
3735
- uses: actions/checkout@v4
3836

@@ -51,14 +49,14 @@ jobs:
5149
target: ${{ matrix.platform.target }}
5250
# As of Nov 2024, it was necessary to manually specify -i 3.13 to get
5351
# maturin to find the executable. --find-interpreter did not find it.
54-
args: --release --out dist -i 3.9 -i 3.10 -i 3.11 -i 3.12 -i 3.13 -i pypy3.10 --manifest-path python/${{ matrix.module }}/Cargo.toml
52+
args: --release --out dist -i 3.9 -i 3.10 -i 3.11 -i 3.12 -i 3.13 -i pypy3.10 --manifest-path python/Cargo.toml
5553
sccache: "true"
5654
manylinux: ${{ matrix.platform.manylinux }}
5755

5856
- name: Upload wheels
5957
uses: actions/upload-artifact@v4
6058
with:
61-
name: wheels-linux-${{ matrix.platform.target }}-${{ matrix.module }}
59+
name: wheels-linux-${{ matrix.platform.target }}
6260
path: dist
6361

6462
macos:
@@ -84,13 +82,13 @@ jobs:
8482
uses: PyO3/maturin-action@v1
8583
with:
8684
target: ${{ matrix.platform.target }}
87-
args: --release --out dist -i 3.9 -i 3.10 -i 3.11 -i 3.12 -i 3.13 -m python/geoarrow-io/Cargo.toml
85+
args: --release --out dist -i 3.9 -i 3.10 -i 3.11 -i 3.12 -i 3.13 -m python/Cargo.toml
8886
sccache: "true"
8987

9088
- name: Install built wheel - ${{ matrix.platform.target }}
9189
run: |
92-
pip install geoarrow-rust-io --find-links dist --force-reinstall
93-
python -c "import geoarrow.rust.io"
90+
pip install geodatafusion --find-links dist --force-reinstall
91+
python -c "import geodatafusion"
9492
9593
- name: Upload wheels
9694
uses: actions/upload-artifact@v4
@@ -117,12 +115,12 @@ jobs:
117115
uses: PyO3/maturin-action@v1
118116
with:
119117
target: ${{ matrix.target }}
120-
args: --release --out dist -i 3.9 -i 3.10 -i 3.11 -i 3.12 -i 3.13 -m python/geoarrow-io/Cargo.toml
118+
args: --release --out dist -i 3.9 -i 3.10 -i 3.11 -i 3.12 -i 3.13 -m python/Cargo.toml
121119

122120
- name: Install built wheel
123121
run: |
124-
pip install geoarrow-rust-io --find-links dist --force-reinstall
125-
python -c "import geoarrow.rust.io"
122+
pip install geodatafusion --find-links dist --force-reinstall
123+
python -c "import geodatafusion"
126124
127125
- name: Upload wheels
128126
uses: actions/upload-artifact@v4
@@ -152,7 +150,7 @@ jobs:
152150
# with:
153151
# target: ${{ matrix.target }}
154152
# manylinux: musllinux_1_2
155-
# args: --release --out dist -i 3.9 -i 3.10 -i 3.11 -i 3.12 -i 3.13 -m python/geoarrow-io/Cargo.toml
153+
# args: --release --out dist -i 3.9 -i 3.10 -i 3.11 -i 3.12 -i 3.13 -m python/Cargo.toml
156154

157155
# - name: Install built wheel
158156
# if: matrix.target == 'x86_64-unknown-linux-musl'
@@ -163,8 +161,8 @@ jobs:
163161
# run: |
164162
# apk add py3-pip
165163
# pip3 install -U pip
166-
# pip3 install geoarrow-rust-io --find-links /io/dist/ --force-reinstall
167-
# python3 -c "import geoarrow.rust.io"
164+
# pip3 install geodatafusion --find-links /io/dist/ --force-reinstall
165+
# python3 -c "import geodatafusion"
168166

169167
# - name: Upload wheels
170168
# uses: actions/upload-artifact@v3

python/Cargo.lock

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

python/Cargo.toml

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
2-
name = "geodatafusion"
3-
version = "0.1.0"
2+
name = "geodatafusion-python"
3+
version = "0.1.0-beta.1"
44
edition = "2024"
55
authors = ["Kyle Barron <kylebarron2@gmail.com>"]
66
description = "Python bindings for geodatafusion, a geospatial extension to DataFusion"
@@ -22,7 +22,12 @@ datafusion = { git = "https://github.com/apache/datafusion", rev = "fa1f8c192dd5
2222
datafusion-ffi = { git = "https://github.com/apache/datafusion", rev = "fa1f8c192dd531d3f2fca61885eafa3e9002f0dd" }
2323
geoarrow-schema = "0.5"
2424
geodatafusion = { path = "../rust/geodatafusion" }
25-
pyo3 = { version = "0.25", features = ["hashbrown", "serde", "anyhow"] }
25+
pyo3 = { version = "0.25", features = [
26+
"hashbrown",
27+
"serde",
28+
"anyhow",
29+
"abi3-py39",
30+
] }
2631

2732
[patch.crates-io]
2833
geoarrow-array = { git = "https://github.com/geoarrow/geoarrow-rs", rev = "61a535b072766003ad06a4d7a25dcc15f010e68f" }

python/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ requires = ["maturin>=1.4.0,<2.0"]
33
build-backend = "maturin"
44

55
[project]
6-
name = "geodatafusion-python"
6+
name = "geodatafusion"
77
requires-python = ">=3.9"
88
dependencies = ["datafusion"]
99
classifiers = [

0 commit comments

Comments
 (0)