Skip to content

Commit e0165f2

Browse files
committed
Update PyO3 to 0.25.1; add Python 3.14 support; add PyPy 3.11 support
1 parent 5b18a35 commit e0165f2

5 files changed

Lines changed: 18 additions & 17 deletions

File tree

.github/workflows/release.yml

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ on:
44
push:
55
branches:
66
- main
7+
- update-pyo3
78
tags:
89
- 'v*.*.*'
910
workflow_dispatch:
@@ -25,39 +26,39 @@ jobs:
2526

2627
- os: windows
2728
target: x86_64
28-
interpreter: pypy3.9 pypy3.10
29+
interpreter: pypy3.9 pypy3.10 pypy3.11
2930
- os: windows
3031
target: i686
3132
python-architecture: x86
32-
interpreter: 3.8 3.9 3.10 3.11 3.12 3.13
33+
interpreter: 3.8 3.9 3.10 3.11 3.12 3.13 3.14
3334
- os: windows
3435
target: aarch64
35-
interpreter: 3.11 3.12 3.13
36+
interpreter: 3.11 3.12 3.13 3.14
3637

3738
- os: macos
3839
target: x86_64
39-
interpreter: pypy3.9 pypy3.10
40+
interpreter: pypy3.9 pypy3.10 pypy3.11
4041
- os: macos
4142
target: aarch64
4243
# actions/setup-python@v5 does not support 3.8 and 3.9 on arm64
43-
interpreter: 3.8 3.9 pypy3.9 pypy3.10
44+
interpreter: 3.8 3.9 pypy3.9 pypy3.10 pypy3.11
4445

4546
- os: ubuntu
4647
target: x86_64
47-
interpreter: pypy3.9 pypy3.10
48+
interpreter: pypy3.9 pypy3.10 pypy3.11
4849
- os: ubuntu
4950
target: i686
5051
- os: ubuntu
5152
target: aarch64
5253
- os: ubuntu
5354
target: armv7
54-
interpreter: 3.8 3.9 3.10 3.11 3.12 3.13
55+
interpreter: 3.8 3.9 3.10 3.11 3.12 3.13 3.14
5556
- os: ubuntu
5657
target: ppc64le
57-
interpreter: 3.8 3.9 3.10 3.11 3.12 3.13
58+
interpreter: 3.8 3.9 3.10 3.11 3.12 3.13 3.14
5859
- os: ubuntu
5960
target: s390x
60-
interpreter: 3.8 3.9 3.10 3.11 3.12 3.13
61+
interpreter: 3.8 3.9 3.10 3.11 3.12 3.13 3.14
6162

6263
- os: ubuntu
6364
target: x86_64
@@ -90,7 +91,7 @@ jobs:
9091
target: ${{ matrix.target }}
9192
manylinux: ${{ matrix.manylinux || 'auto' }}
9293
container: ${{ matrix.container }}
93-
args: --release --out dist --interpreter ${{ matrix.maturin-interpreter || matrix.interpreter || '3.8 3.9 3.10 3.11 3.12 3.13 pypy3.9 pypy3.10' }} ${{ matrix.extra-build-args }}
94+
args: --release --out dist --interpreter ${{ matrix.maturin-interpreter || matrix.interpreter || '3.8 3.9 3.10 3.11 3.12 3.13 3.14 pypy3.9 pypy3.10 pypy3.11' }} ${{ matrix.extra-build-args }}
9495
rust-toolchain: 1.76.0
9596
docker-options: -e CI
9697

@@ -109,7 +110,7 @@ jobs:
109110
fail-fast: false
110111
matrix:
111112
os: [ ubuntu-latest, windows-latest, macos-13, macos-14 ]
112-
interpreter: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13' ]
113+
interpreter: [ '3.8', '3.9', '3.10', '3.11', '3.12', '3.13', '3.14' ]
113114
exclude:
114115
# actions/setup-python@v5 does not support 3.8 and 3.9 on arm64
115116
- os: macos-14

Cargo.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,16 @@ edition = "2021"
55
license = "MIT"
66
description = "Python binding to the Rust IPLD library"
77
authors = ["Ilya (Marshal) <ilya@marshal.dev>"]
8-
keywords = ["python", "binding", "library", "lib", "ipld", "cid", "multibase", "multihash", "dag", "cbor", "json", "pb", "dag-cbor", "dag-json"]
8+
keywords = ["ipld", "cid", "multibase", "multihash", "dag-cbor"]
99

1010
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
1111
[lib]
1212
name = "libipld"
1313
crate-type = ["rlib", "cdylib"]
1414

1515
[dependencies]
16-
pyo3 = { version = "0.23.4", features = ["generate-import-lib", "anyhow"] }
17-
python3-dll-a = "0.2.13"
16+
pyo3 = { version = "0.25.1", features = ["generate-import-lib", "anyhow"] }
17+
python3-dll-a = "0.2.14"
1818
anyhow = "1.0.95"
1919
libipld = { version = "0.16.0", features = ["dag-cbor"] }
2020
multibase = "0.9.1"

profiling/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,4 @@ structopt = "0.3.26"
1111
clap = "4.5.29"
1212

1313
[dependencies.pyo3]
14-
version = "0.23.4"
14+
version = "0.25.1"

profiling/src/profiles/encode_dag_cbor.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ pub fn exec(iterations: u64) {
1414

1515
for _ in 0..iterations {
1616
Python::with_gil(|gil| {
17-
println!("{}", libipld::encode_dag_cbor(gil, &PyString::new_bound(gil, json_str)).is_ok());
17+
println!("{}", libipld::encode_dag_cbor(gil, &PyString::new(gil, json_str)).is_ok());
1818
});
1919
}
2020
}

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ authors = [
88
license = "MIT"
99
repository = "https://github.com/MarshalX/python-libipld"
1010
readme = "README.md"
11-
keywords = ["library", "lib", "ipld", "cid", "multibase", "multihash", "dag", "cbor", "json", "pb", "dag-cbor", "dag-json"]
11+
keywords = ["library", "lib", "ipld", "cid", "multibase", "multihash", "dag", "cbor", "dag-cbor"]
1212
requires-python = ">=3.8"
1313
classifiers = [
1414
"Development Status :: 5 - Production/Stable",

0 commit comments

Comments
 (0)