maturin 1.8.2__tar.gz → 1.8.3__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of maturin might be problematic. Click here for more details.

Files changed (60) hide show
  1. {maturin-1.8.2 → maturin-1.8.3}/.cirrus.yml +1 -1
  2. {maturin-1.8.2 → maturin-1.8.3}/.pre-commit-config.yaml +2 -2
  3. {maturin-1.8.2 → maturin-1.8.3}/Cargo.lock +14 -23
  4. {maturin-1.8.2 → maturin-1.8.3}/Cargo.toml +2 -2
  5. {maturin-1.8.2 → maturin-1.8.3}/Changelog.md +11 -1
  6. {maturin-1.8.2 → maturin-1.8.3}/PKG-INFO +2 -1
  7. {maturin-1.8.2 → maturin-1.8.3}/README.md +1 -0
  8. {maturin-1.8.2 → maturin-1.8.3}/src/auditwheel/manylinux-policy.json +7 -7
  9. {maturin-1.8.2 → maturin-1.8.3}/src/build_context.rs +10 -2
  10. {maturin-1.8.2 → maturin-1.8.3}/src/build_options.rs +1 -1
  11. {maturin-1.8.2 → maturin-1.8.3}/src/ci.rs +5 -5
  12. {maturin-1.8.2 → maturin-1.8.3}/src/develop.rs +3 -1
  13. {maturin-1.8.2 → maturin-1.8.3}/src/module_writer.rs +9 -5
  14. {maturin-1.8.2 → maturin-1.8.3}/src/python_interpreter/mod.rs +6 -1
  15. {maturin-1.8.2 → maturin-1.8.3}/src/templates/Cargo.toml.j2 +1 -1
  16. {maturin-1.8.2 → maturin-1.8.3}/.codespellrc +0 -0
  17. {maturin-1.8.2 → maturin-1.8.3}/.config/nextest.toml +0 -0
  18. {maturin-1.8.2 → maturin-1.8.3}/.gitignore +0 -0
  19. {maturin-1.8.2 → maturin-1.8.3}/MANIFEST.in +0 -0
  20. {maturin-1.8.2 → maturin-1.8.3}/clippy.toml +0 -0
  21. {maturin-1.8.2 → maturin-1.8.3}/license-apache +0 -0
  22. {maturin-1.8.2 → maturin-1.8.3}/license-mit +0 -0
  23. {maturin-1.8.2 → maturin-1.8.3}/maturin/__init__.py +0 -0
  24. {maturin-1.8.2 → maturin-1.8.3}/maturin/__main__.py +0 -0
  25. {maturin-1.8.2 → maturin-1.8.3}/maturin.schema.json +0 -0
  26. {maturin-1.8.2 → maturin-1.8.3}/netlify.toml +0 -0
  27. {maturin-1.8.2 → maturin-1.8.3}/pyproject.toml +0 -0
  28. {maturin-1.8.2 → maturin-1.8.3}/setup.py +0 -0
  29. {maturin-1.8.2 → maturin-1.8.3}/src/auditwheel/audit.rs +0 -0
  30. {maturin-1.8.2 → maturin-1.8.3}/src/auditwheel/mod.rs +0 -0
  31. {maturin-1.8.2 → maturin-1.8.3}/src/auditwheel/musllinux-policy.json +0 -0
  32. {maturin-1.8.2 → maturin-1.8.3}/src/auditwheel/musllinux.rs +0 -0
  33. {maturin-1.8.2 → maturin-1.8.3}/src/auditwheel/patchelf.rs +0 -0
  34. {maturin-1.8.2 → maturin-1.8.3}/src/auditwheel/platform_tag.rs +0 -0
  35. {maturin-1.8.2 → maturin-1.8.3}/src/auditwheel/policy.rs +0 -0
  36. {maturin-1.8.2 → maturin-1.8.3}/src/auditwheel/repair.rs +0 -0
  37. {maturin-1.8.2 → maturin-1.8.3}/src/bridge.rs +0 -0
  38. {maturin-1.8.2 → maturin-1.8.3}/src/cargo_toml.rs +0 -0
  39. {maturin-1.8.2 → maturin-1.8.3}/src/compile.rs +0 -0
  40. {maturin-1.8.2 → maturin-1.8.3}/src/cross_compile.rs +0 -0
  41. {maturin-1.8.2 → maturin-1.8.3}/src/generate_json_schema.rs +0 -0
  42. {maturin-1.8.2 → maturin-1.8.3}/src/lib.rs +0 -0
  43. {maturin-1.8.2 → maturin-1.8.3}/src/main.rs +0 -0
  44. {maturin-1.8.2 → maturin-1.8.3}/src/metadata.rs +0 -0
  45. {maturin-1.8.2 → maturin-1.8.3}/src/new_project.rs +0 -0
  46. {maturin-1.8.2 → maturin-1.8.3}/src/project_layout.rs +0 -0
  47. {maturin-1.8.2 → maturin-1.8.3}/src/pyproject_toml.rs +0 -0
  48. {maturin-1.8.2 → maturin-1.8.3}/src/python_interpreter/config.rs +0 -0
  49. {maturin-1.8.2 → maturin-1.8.3}/src/python_interpreter/get_interpreter_metadata.py +0 -0
  50. {maturin-1.8.2 → maturin-1.8.3}/src/source_distribution.rs +0 -0
  51. {maturin-1.8.2 → maturin-1.8.3}/src/target.rs +0 -0
  52. {maturin-1.8.2 → maturin-1.8.3}/src/templates/.gitignore.j2 +0 -0
  53. {maturin-1.8.2 → maturin-1.8.3}/src/templates/__init__.py.j2 +0 -0
  54. {maturin-1.8.2 → maturin-1.8.3}/src/templates/build.rs.j2 +0 -0
  55. {maturin-1.8.2 → maturin-1.8.3}/src/templates/example.udl.j2 +0 -0
  56. {maturin-1.8.2 → maturin-1.8.3}/src/templates/lib.rs.j2 +0 -0
  57. {maturin-1.8.2 → maturin-1.8.3}/src/templates/main.rs.j2 +0 -0
  58. {maturin-1.8.2 → maturin-1.8.3}/src/templates/pyproject.toml.j2 +0 -0
  59. {maturin-1.8.2 → maturin-1.8.3}/src/templates/test_all.py.j2 +0 -0
  60. {maturin-1.8.2 → maturin-1.8.3}/src/upload.rs +0 -0
@@ -19,7 +19,7 @@ build_and_test:
19
19
  freebsd_task:
20
20
  name: Test (x86_64 FreeBSD)
21
21
  freebsd_instance:
22
- image_family: freebsd-14-0
22
+ image_family: freebsd-14-2
23
23
  env:
24
24
  PATH: $HOME/.cargo/bin:$PATH
25
25
  target_cache:
@@ -56,12 +56,12 @@ repos:
56
56
  )
57
57
  - id: mixed-line-ending
58
58
  - repo: https://github.com/astral-sh/ruff-pre-commit
59
- rev: v0.9.4
59
+ rev: v0.9.10
60
60
  hooks:
61
61
  - id: ruff-format
62
62
  - id: ruff
63
63
  - repo: https://github.com/pre-commit/mirrors-mypy
64
- rev: v1.14.1
64
+ rev: v1.15.0
65
65
  hooks:
66
66
  - id: mypy
67
67
  entry: mypy maturin/
@@ -191,22 +191,20 @@ checksum = "a3e368af43e418a04d52505cf3dbc23dda4e3407ae2fa99fd0e4f308ce546acc"
191
191
 
192
192
  [[package]]
193
193
  name = "bzip2"
194
- version = "0.4.4"
194
+ version = "0.5.2"
195
195
  source = "registry+https://github.com/rust-lang/crates.io-index"
196
- checksum = "bdb116a6ef3f6c3698828873ad02c3014b3c85cadb88496095628e3ef1e347f8"
196
+ checksum = "49ecfb22d906f800d4fe833b6282cf4dc1c298f5057ca0b5445e5c209735ca47"
197
197
  dependencies = [
198
198
  "bzip2-sys",
199
- "libc",
200
199
  ]
201
200
 
202
201
  [[package]]
203
202
  name = "bzip2-sys"
204
- version = "0.1.11+1.0.8"
203
+ version = "0.1.13+1.0.8"
205
204
  source = "registry+https://github.com/rust-lang/crates.io-index"
206
- checksum = "736a955f3fa7875102d57c82b8cac37ec45224a07fd32d58f9f7a186b6cd4cdc"
205
+ checksum = "225bff33b2141874fe80d71e07d6eec4f85c5c216453dd96388240f96e1acc14"
207
206
  dependencies = [
208
207
  "cc",
209
- "libc",
210
208
  "pkg-config",
211
209
  ]
212
210
 
@@ -332,9 +330,9 @@ dependencies = [
332
330
 
333
331
  [[package]]
334
332
  name = "cbindgen"
335
- version = "0.27.0"
333
+ version = "0.28.0"
336
334
  source = "registry+https://github.com/rust-lang/crates.io-index"
337
- checksum = "3fce8dd7fcfcbf3a0a87d8f515194b49d6135acab73e18bd380d1d93bb1a15eb"
335
+ checksum = "eadd868a2ce9ca38de7eeafdcec9c7065ef89b42b32f0839278d55f35c54d1ff"
338
336
  dependencies = [
339
337
  "heck 0.4.1",
340
338
  "indexmap",
@@ -350,9 +348,9 @@ dependencies = [
350
348
 
351
349
  [[package]]
352
350
  name = "cc"
353
- version = "1.1.21"
351
+ version = "1.2.16"
354
352
  source = "registry+https://github.com/rust-lang/crates.io-index"
355
- checksum = "07b1695e2c7e8fc85310cde85aeaab7e3097f593c91d209d3f9df76c928100f0"
353
+ checksum = "be714c154be609ec7f5dad223a33bf1482fff90472de28f7362806e6d4832b8c"
356
354
  dependencies = [
357
355
  "shlex",
358
356
  ]
@@ -1399,7 +1397,7 @@ dependencies = [
1399
1397
 
1400
1398
  [[package]]
1401
1399
  name = "maturin"
1402
- version = "1.8.2"
1400
+ version = "1.8.3"
1403
1401
  dependencies = [
1404
1402
  "anyhow",
1405
1403
  "base64 0.21.7",
@@ -2046,15 +2044,14 @@ dependencies = [
2046
2044
 
2047
2045
  [[package]]
2048
2046
  name = "ring"
2049
- version = "0.17.8"
2047
+ version = "0.17.13"
2050
2048
  source = "registry+https://github.com/rust-lang/crates.io-index"
2051
- checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d"
2049
+ checksum = "70ac5d832aa16abd7d1def883a8545280c20a60f523a370aa3a9617c2b8550ee"
2052
2050
  dependencies = [
2053
2051
  "cc",
2054
2052
  "cfg-if",
2055
2053
  "getrandom",
2056
2054
  "libc",
2057
- "spin",
2058
2055
  "untrusted",
2059
2056
  "windows-sys 0.52.0",
2060
2057
  ]
@@ -2436,12 +2433,6 @@ dependencies = [
2436
2433
  "winapi",
2437
2434
  ]
2438
2435
 
2439
- [[package]]
2440
- name = "spin"
2441
- version = "0.9.8"
2442
- source = "registry+https://github.com/rust-lang/crates.io-index"
2443
- checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67"
2444
-
2445
2436
  [[package]]
2446
2437
  name = "stable_deref_trait"
2447
2438
  version = "1.2.0"
@@ -3438,9 +3429,9 @@ dependencies = [
3438
3429
 
3439
3430
  [[package]]
3440
3431
  name = "zip"
3441
- version = "2.1.6"
3432
+ version = "2.2.3"
3442
3433
  source = "registry+https://github.com/rust-lang/crates.io-index"
3443
- checksum = "40dd8c92efc296286ce1fbd16657c5dbefff44f1b4ca01cc5f517d8b7b3d3e2e"
3434
+ checksum = "b280484c454e74e5fff658bbf7df8fdbe7a07c6b2de4a53def232c15ef138f3a"
3444
3435
  dependencies = [
3445
3436
  "arbitrary",
3446
3437
  "bzip2",
@@ -3450,7 +3441,7 @@ dependencies = [
3450
3441
  "flate2",
3451
3442
  "indexmap",
3452
3443
  "memchr",
3453
- "thiserror 1.0.69",
3444
+ "thiserror 2.0.3",
3454
3445
  "time",
3455
3446
  "zopfli",
3456
3447
  ]
@@ -1,7 +1,7 @@
1
1
  [package]
2
2
  authors = ["konstin <konstin@mailbox.org>", "messense <messense@icloud.com>"]
3
3
  name = "maturin"
4
- version = "1.8.2"
4
+ version = "1.8.3"
5
5
  description = "Build and publish crates with pyo3, cffi and uniffi bindings as well as rust binaries as python packages"
6
6
  exclude = [
7
7
  "test-crates/**/*",
@@ -45,7 +45,7 @@ glob = "0.3.0"
45
45
  cargo-config2 = "0.1.24"
46
46
  cargo_metadata = "0.19.0"
47
47
  cargo-options = "0.7.2"
48
- cbindgen = { version = "0.27.0", default-features = false }
48
+ cbindgen = { version = "0.28.0", default-features = false }
49
49
  flate2 = "1.0.18"
50
50
  goblin = "0.9.0"
51
51
  platform-info = "2.0.2"
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## [1.8.3]
4
+
5
+ * Fix relocating shared library for namespace modules in [#2513](https://github.com/PyO3/maturin/pull/2513)
6
+ * Don't install dependencies when running `maturin develop --skip-install` in [#2504](https://github.com/PyO3/maturin/pull/2504)
7
+ * Use emcc.bat to query version on Windows in [#2478](https://github.com/PyO3/maturin/pull/2478)
8
+ * Bump the attest-build-provenance version in the generated ci file in [#2484](https://github.com/PyO3/maturin/pull/2478)
9
+ * Fix platform tag on Solaris/Illumos in [#2483](https://github.com/PyO3/maturin/pull/2483)
10
+ * Fix cargo run uniffi-bindgen when cross compiling in [#2476](https://github.com/PyO3/maturin/pull/2476)
11
+
3
12
  ## [1.8.2]
4
13
 
5
14
  * Exclude packages not in the dependency tree when finding bindings in [#2426](https://github.com/PyO3/maturin/pull/2426)
@@ -1041,7 +1050,8 @@ points-0.1.0-py2.py3-none-manylinux1_x86_64.whl | 2,8M | 752K | 85K
1041
1050
 
1042
1051
  * Initial Release
1043
1052
 
1044
- [Unreleased]: https://github.com/pyo3/maturin/compare/v1.8.2...HEAD
1053
+ [Unreleased]: https://github.com/pyo3/maturin/compare/v1.8.3...HEAD
1054
+ [1.8.3]: https://github.com/pyo3/maturin/compare/v1.8.2...v1.8.3
1045
1055
  [1.8.2]: https://github.com/pyo3/maturin/compare/v1.8.1...v1.8.2
1046
1056
  [1.8.1]: https://github.com/pyo3/maturin/compare/v1.8.0...v1.8.1
1047
1057
  [1.8.0]: https://github.com/pyo3/maturin/compare/v1.7.8...v1.8.0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: maturin
3
- Version: 1.8.2
3
+ Version: 1.8.3
4
4
  Classifier: Topic :: Software Development :: Build Tools
5
5
  Classifier: Programming Language :: Rust
6
6
  Classifier: Programming Language :: Python :: Implementation :: CPython
@@ -268,6 +268,7 @@ maturin itself is manylinux compliant when compiled for the musl target.
268
268
  - [roapi](https://github.com/roapi/roapi) - ROAPI automatically spins up read-only APIs for static datasets without requiring you to write a single line of code
269
269
  - [robyn](https://github.com/sansyrox/robyn) - A fast and extensible async python web server with a Rust runtime
270
270
  - [ruff](https://github.com/charliermarsh/ruff) - An extremely fast Python linter, written in Rust
271
+ - [rnet](https://github.com/0x676e67/rnet) - Asynchronous Python HTTP Client with Black Magic
271
272
  - [tantivy-py](https://github.com/quickwit-oss/tantivy-py) - Python bindings for Tantivy
272
273
  - [watchfiles](https://github.com/samuelcolvin/watchfiles) - Simple, modern and high performance file watching and code reload in python
273
274
  - [wonnx](https://github.com/webonnx/wonnx/tree/master/wonnx-py) - Wonnx is a GPU-accelerated ONNX inference run-time written 100% in Rust
@@ -243,6 +243,7 @@ maturin itself is manylinux compliant when compiled for the musl target.
243
243
  - [roapi](https://github.com/roapi/roapi) - ROAPI automatically spins up read-only APIs for static datasets without requiring you to write a single line of code
244
244
  - [robyn](https://github.com/sansyrox/robyn) - A fast and extensible async python web server with a Rust runtime
245
245
  - [ruff](https://github.com/charliermarsh/ruff) - An extremely fast Python linter, written in Rust
246
+ - [rnet](https://github.com/0x676e67/rnet) - Asynchronous Python HTTP Client with Black Magic
246
247
  - [tantivy-py](https://github.com/quickwit-oss/tantivy-py) - Python bindings for Tantivy
247
248
  - [watchfiles](https://github.com/samuelcolvin/watchfiles) - Simple, modern and high performance file watching and code reload in python
248
249
  - [wonnx](https://github.com/webonnx/wonnx/tree/master/wonnx-py) - Wonnx is a GPU-accelerated ONNX inference run-time written 100% in Rust
@@ -666,49 +666,49 @@
666
666
  "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "FLOAT128", "TM_1"],
667
667
  "GCC": ["3.0", "3.3", "3.3.1", "3.4", "3.4.2", "4.0.0", "4.2.0", "4.3.0", "4.4.0", "4.5.0", "4.7.0", "4.8.0", "7.0.0", "12.0.0", "13.0.0", "14.0.0"],
668
668
  "GLIBC": ["2.0", "2.1", "2.1.1", "2.1.2", "2.1.3", "2.2", "2.2.1", "2.2.2", "2.2.3", "2.2.4", "2.2.6", "2.3", "2.3.2", "2.3.3", "2.3.4", "2.4", "2.5", "2.6", "2.7", "2.8", "2.9", "2.10", "2.11", "2.12", "2.13", "2.14", "2.15", "2.16", "2.17", "2.18", "2.22", "2.23", "2.24", "2.25", "2.26", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.37", "2.38", "2.39", "ABI_DT_RELR"],
669
- "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32"],
669
+ "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33"],
670
670
  "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"]
671
671
  },
672
672
  "x86_64": {
673
673
  "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "FLOAT128", "TM_1"],
674
674
  "GCC": ["3.0", "3.3", "3.3.1", "3.4", "3.4.2", "3.4.4", "4.0.0", "4.2.0", "4.3.0", "4.7.0", "4.8.0", "7.0.0", "12.0.0", "13.0.0", "14.0.0"],
675
675
  "GLIBC": ["2.2.5", "2.2.6", "2.3", "2.3.2", "2.3.3", "2.3.4", "2.4", "2.5", "2.6", "2.7", "2.8", "2.9", "2.10", "2.11", "2.12", "2.13", "2.14", "2.15", "2.16", "2.17", "2.18", "2.22", "2.23", "2.24", "2.25", "2.26", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.38", "2.39", "ABI_DT_RELR"],
676
- "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32"],
676
+ "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33"],
677
677
  "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"]
678
678
  },
679
679
  "aarch64": {
680
680
  "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "TM_1"],
681
681
  "GCC": ["3.0", "3.3", "3.3.1", "3.4", "3.4.2", "3.4.4", "4.0.0", "4.2.0", "4.3.0", "4.5.0", "4.7.0", "7.0.0", "11.0", "13.0.0", "14.0", "14.0.0"],
682
682
  "GLIBC": ["2.0", "2.17", "2.18", "2.22", "2.23", "2.24", "2.25", "2.26", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.38", "2.39", "ABI_DT_RELR"],
683
- "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32"],
683
+ "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33"],
684
684
  "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"]
685
685
  },
686
686
  "ppc64le": {
687
687
  "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "IEEE128_1.3.13", "LDBL_1.3", "TM_1"],
688
688
  "GCC": ["3.0", "3.3", "3.3.1", "3.4", "3.4.2", "3.4.4", "4.0.0", "4.2.0", "4.3.0", "4.7.0", "7.0.0", "14.0.0"],
689
689
  "GLIBC": ["2.0", "2.17", "2.18", "2.22", "2.23", "2.24", "2.25", "2.26", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.38", "2.39", "ABI_DT_RELR"],
690
- "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "IEEE128_3.4.29", "IEEE128_3.4.30", "IEEE128_3.4.31", "LDBL_3.4", "LDBL_3.4.10", "LDBL_3.4.21", "LDBL_3.4.29", "LDBL_3.4.31", "LDBL_3.4.7"],
690
+ "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33", "IEEE128_3.4.29", "IEEE128_3.4.30", "IEEE128_3.4.31", "LDBL_3.4", "LDBL_3.4.10", "LDBL_3.4.21", "LDBL_3.4.29", "LDBL_3.4.31", "LDBL_3.4.7"],
691
691
  "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"]
692
692
  },
693
693
  "s390x": {
694
694
  "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "LDBL_1.3", "TM_1"],
695
695
  "GCC": ["3.0", "3.3", "3.3.1", "3.4", "3.4.2", "3.4.4", "4.0.0", "4.1.0", "4.2.0", "4.3.0", "4.7.0", "7.0.0", "14.0.0"],
696
696
  "GLIBC": ["2.2", "2.2.1", "2.2.2", "2.2.3", "2.2.4", "2.2.6", "2.3", "2.3.2", "2.3.3", "2.3.4", "2.4", "2.5", "2.6", "2.7", "2.8", "2.9", "2.10", "2.11", "2.12", "2.13", "2.14", "2.15", "2.16", "2.17", "2.18", "2.19", "2.22", "2.23", "2.24", "2.25", "2.26", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.38", "2.39", "ABI_DT_RELR"],
697
- "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "LDBL_3.4", "LDBL_3.4.10", "LDBL_3.4.21", "LDBL_3.4.29", "LDBL_3.4.31", "LDBL_3.4.7"],
697
+ "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33", "LDBL_3.4", "LDBL_3.4.10", "LDBL_3.4.21", "LDBL_3.4.29", "LDBL_3.4.31", "LDBL_3.4.7"],
698
698
  "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"]
699
699
  },
700
700
  "armv7l": {
701
701
  "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "ARM_1.3.3", "TM_1"],
702
702
  "GCC": ["3.0", "3.3", "3.3.1", "3.3.4", "3.4", "3.4.2", "3.5", "4.0.0", "4.2.0", "4.3.0", "4.7.0", "7.0.0", "14.0.0"],
703
703
  "GLIBC": ["2.0", "2.4", "2.5", "2.6", "2.7", "2.8", "2.9", "2.10", "2.11", "2.12", "2.13", "2.14", "2.15", "2.16", "2.17", "2.18", "2.22", "2.23", "2.24", "2.25", "2.26", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.37", "2.38", "2.39", "ABI_DT_RELR"],
704
- "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32"],
704
+ "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33"],
705
705
  "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"]
706
706
  },
707
707
  "riscv64": {
708
708
  "CXXABI": ["1.3", "1.3.1", "1.3.2", "1.3.3", "1.3.4", "1.3.5", "1.3.6", "1.3.7", "1.3.8", "1.3.9", "1.3.10", "1.3.11", "1.3.12", "1.3.13", "1.3.14", "1.3.15", "TM_1"],
709
709
  "GCC": ["3.0", "3.3", "3.3.1", "3.4", "3.4.2", "3.4.4", "4.0.0", "4.2.0", "4.3.0", "4.4.0", "4.5.0", "4.7.0", "7.0.0", "14.0.0"],
710
710
  "GLIBC": ["2.0", "2.27", "2.28", "2.29", "2.30", "2.31", "2.32", "2.33", "2.34", "2.35", "2.36", "2.37", "2.38", "2.39", "ABI_DT_RELR"],
711
- "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32"],
711
+ "GLIBCXX": ["3.4", "3.4.1", "3.4.2", "3.4.3", "3.4.4", "3.4.5", "3.4.6", "3.4.7", "3.4.8", "3.4.9", "3.4.10", "3.4.11", "3.4.12", "3.4.13", "3.4.14", "3.4.15", "3.4.16", "3.4.17", "3.4.18", "3.4.19", "3.4.20", "3.4.21", "3.4.22", "3.4.23", "3.4.24", "3.4.25", "3.4.26", "3.4.27", "3.4.28", "3.4.29", "3.4.30", "3.4.31", "3.4.32", "3.4.33"],
712
712
  "ZLIB": ["1.2.0", "1.2.0.2", "1.2.0.8", "1.2.2", "1.2.2.3", "1.2.2.4", "1.2.3.3", "1.2.3.4", "1.2.3.5", "1.2.5.1", "1.2.5.2", "1.2.7.1", "1.2.9", "1.2.12"]
713
713
  },
714
714
  "loongarch64": {
@@ -419,6 +419,14 @@ impl BuildContext {
419
419
  let artifact_dir = match self.bridge() {
420
420
  // cffi bindings that contains '.' in the module name will be split into directories
421
421
  BridgeModel::Cffi => self.module_name.split(".").collect::<PathBuf>(),
422
+ // For namespace packages the modules the modules resides resides at ${module_name}.so
423
+ // where periods are replaced with slashes so for example my.namespace.module would reside
424
+ // at my/namespace/module.so
425
+ _ if self.module_name.contains(".") => {
426
+ let mut path = self.module_name.split(".").collect::<PathBuf>();
427
+ path.pop();
428
+ path
429
+ }
422
430
  // For other bindings artifact .so file usually resides at ${module_name}/${module_name}.so
423
431
  _ => PathBuf::from(&self.module_name),
424
432
  };
@@ -562,7 +570,7 @@ impl BuildContext {
562
570
 
563
571
  let mut os = target.target_os().to_string().to_ascii_lowercase();
564
572
  // See https://github.com/python/cpython/blob/46c8d915715aa2bd4d697482aa051fe974d440e1/Lib/sysconfig.py#L722-L730
565
- if os.starts_with("sunos") {
573
+ if target.target_os() == Os::Solaris || target.target_os() == Os::Illumos {
566
574
  // Solaris / Illumos
567
575
  if let Some((major, other)) = release.split_once('_') {
568
576
  let major_ver: u64 = major.parse().context("illumos major version is not a number")?;
@@ -1231,7 +1239,7 @@ fn emscripten_version() -> Result<String> {
1231
1239
  fn emcc_version() -> Result<String> {
1232
1240
  use std::process::Command;
1233
1241
 
1234
- let emcc = Command::new("emcc")
1242
+ let emcc = Command::new(if cfg!(windows) { "emcc.bat" } else { "emcc" })
1235
1243
  .arg("-dumpversion")
1236
1244
  .output()
1237
1245
  .context("Failed to run emcc to get the version")?;
@@ -1541,7 +1541,7 @@ mod test {
1541
1541
  let bridge = BridgeModel::BindingsAbi3 {
1542
1542
  bindings: Bindings {
1543
1543
  name: "pyo3".to_string(),
1544
- version: semver::Version::new(0, 23, 4),
1544
+ version: semver::Version::new(0, 24, 0),
1545
1545
  },
1546
1546
  major: 3,
1547
1547
  minor: 7,
@@ -621,7 +621,7 @@ jobs:\n",
621
621
  if !self.skip_attestation {
622
622
  conf.push_str(
623
623
  r#" - name: Generate artifact attestation
624
- uses: actions/attest-build-provenance@v1
624
+ uses: actions/attest-build-provenance@v2
625
625
  with:
626
626
  subject-path: 'wheels-*/*'
627
627
  "#,
@@ -851,7 +851,7 @@ mod tests {
851
851
  steps:
852
852
  - uses: actions/download-artifact@v4
853
853
  - name: Generate artifact attestation
854
- uses: actions/attest-build-provenance@v1
854
+ uses: actions/attest-build-provenance@v2
855
855
  with:
856
856
  subject-path: 'wheels-*/*'
857
857
  - name: Publish to PyPI
@@ -1062,7 +1062,7 @@ mod tests {
1062
1062
  steps:
1063
1063
  - uses: actions/download-artifact@v4
1064
1064
  - name: Generate artifact attestation
1065
- uses: actions/attest-build-provenance@v1
1065
+ uses: actions/attest-build-provenance@v2
1066
1066
  with:
1067
1067
  subject-path: 'wheels-*/*'
1068
1068
  - name: Publish to PyPI
@@ -1544,7 +1544,7 @@ mod tests {
1544
1544
  steps:
1545
1545
  - uses: actions/download-artifact@v4
1546
1546
  - name: Generate artifact attestation
1547
- uses: actions/attest-build-provenance@v1
1547
+ uses: actions/attest-build-provenance@v2
1548
1548
  with:
1549
1549
  subject-path: 'wheels-*/*'
1550
1550
  - name: Publish to PyPI
@@ -1720,7 +1720,7 @@ mod tests {
1720
1720
  steps:
1721
1721
  - uses: actions/download-artifact@v4
1722
1722
  - name: Generate artifact attestation
1723
- uses: actions/attest-build-provenance@v1
1723
+ uses: actions/attest-build-provenance@v2
1724
1724
  with:
1725
1725
  subject-path: 'wheels-*/*'
1726
1726
  - name: Publish to PyPI
@@ -458,7 +458,9 @@ pub fn develop(develop_options: DevelopOptions, venv_dir: &Path) -> Result<()> {
458
458
  }
459
459
  };
460
460
 
461
- install_dependencies(&build_context, &extras, &python, venv_dir, &install_backend)?;
461
+ if !skip_install {
462
+ install_dependencies(&build_context, &extras, &python, venv_dir, &install_backend)?;
463
+ }
462
464
 
463
465
  let wheels = build_context.build_wheels()?;
464
466
  if !skip_install {
@@ -1053,14 +1053,18 @@ fn uniffi_bindgen_command(crate_dir: &Path) -> Result<Command> {
1053
1053
 
1054
1054
  let command = if has_uniffi_bindgen_target {
1055
1055
  let mut command = Command::new("cargo");
1056
- command.args(["run", "--bin", "uniffi-bindgen", "--manifest-path"]);
1057
- command.arg(manifest_path);
1058
- command.current_dir(crate_dir);
1056
+ command
1057
+ .args(["run", "--bin", "uniffi-bindgen", "--manifest-path"])
1058
+ .arg(manifest_path)
1059
+ .current_dir(crate_dir)
1060
+ .env_remove("CARGO_BUILD_TARGET");
1059
1061
  command
1060
1062
  } else if has_uniffi_bindgen_workspace_package {
1061
1063
  let mut command = Command::new("cargo");
1062
- command.args(["run", "--bin", "uniffi-bindgen"]);
1063
- command.current_dir(cargo_metadata.workspace_root);
1064
+ command
1065
+ .args(["run", "--bin", "uniffi-bindgen"])
1066
+ .current_dir(cargo_metadata.workspace_root)
1067
+ .env_remove("CARGO_BUILD_TARGET");
1064
1068
  command
1065
1069
  } else {
1066
1070
  let mut command = Command::new("uniffi-bindgen");
@@ -23,7 +23,7 @@ pub const MINIMUM_PYTHON_MINOR: usize = 7;
23
23
  pub const MINIMUM_PYPY_MINOR: usize = 8;
24
24
  /// Be liberal here to include preview versions
25
25
  pub const MAXIMUM_PYTHON_MINOR: usize = 13;
26
- pub const MAXIMUM_PYPY_MINOR: usize = 10;
26
+ pub const MAXIMUM_PYPY_MINOR: usize = 11;
27
27
 
28
28
  /// Identifies conditions where we do not want to build wheels
29
29
  fn windows_interpreter_no_build(
@@ -1049,6 +1049,7 @@ mod tests {
1049
1049
  "PyPy 3.8",
1050
1050
  "PyPy 3.9",
1051
1051
  "PyPy 3.10",
1052
+ "PyPy 3.11",
1052
1053
  ]
1053
1054
  "#]];
1054
1055
  expected.assert_debug_eq(&pythons);
@@ -1077,6 +1078,7 @@ mod tests {
1077
1078
  "CPython 3.13t",
1078
1079
  "PyPy 3.9",
1079
1080
  "PyPy 3.10",
1081
+ "PyPy 3.11",
1080
1082
  ]
1081
1083
  "#]];
1082
1084
  expected.assert_debug_eq(&pythons);
@@ -1100,6 +1102,7 @@ mod tests {
1100
1102
  "PyPy 3.8",
1101
1103
  "PyPy 3.9",
1102
1104
  "PyPy 3.10",
1105
+ "PyPy 3.11",
1103
1106
  ]
1104
1107
  "#]];
1105
1108
  expected.assert_debug_eq(&pythons);
@@ -1119,6 +1122,7 @@ mod tests {
1119
1122
  "CPython 3.12",
1120
1123
  "CPython 3.13",
1121
1124
  "PyPy 3.10",
1125
+ "PyPy 3.11",
1122
1126
  ]
1123
1127
  "#]];
1124
1128
  expected.assert_debug_eq(&pythons);
@@ -1146,6 +1150,7 @@ mod tests {
1146
1150
  "CPython 3.13t",
1147
1151
  "PyPy 3.9",
1148
1152
  "PyPy 3.10",
1153
+ "PyPy 3.11",
1149
1154
  ]
1150
1155
  "#]];
1151
1156
  expected.assert_debug_eq(&pythons);
@@ -12,7 +12,7 @@ crate-type = ["cdylib"]
12
12
 
13
13
  [dependencies]
14
14
  {% if bindings == "pyo3" -%}
15
- pyo3 = "0.23.3"
15
+ pyo3 = "0.24.0"
16
16
  {% elif bindings == "uniffi" -%}
17
17
  uniffi = "0.28.0"
18
18
 
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes