Skip to content

fix: only ignore maturin-generated native libraries on all platforms#3025

Merged
messense merged 1 commit intoPyO3:mainfrom
messense:fix/ignore-native-libraries-cross-platform
Feb 21, 2026
Merged

fix: only ignore maturin-generated native libraries on all platforms#3025
messense merged 1 commit intoPyO3:mainfrom
messense:fix/ignore-native-libraries-cross-platform

Conversation

@messense
Copy link
Copy Markdown
Member

Previously, only .so files were ignored during wheel building, causing issues on Windows where .pyd/.dll artifacts from develop mode would trigger "File overwrote an existing tracked file" errors.

Now checks that the filename starts with the extension_name and ends with a native library extension (.so, .pyd, .dll, .dylib), so only maturin-generated files are skipped.

Fixes #3022

Previously, only `.so` files were ignored during wheel building, causing
issues on Windows where `.pyd`/`.dll` artifacts from develop mode would
trigger "File overwrote an existing tracked file" errors.

Now checks that the filename starts with the `extension_name` and ends
with a native library extension (`.so`, `.pyd`, `.dll`, `.dylib`), so only
maturin-generated files are skipped.

Fixes PyO3#3022
@messense messense enabled auto-merge (squash) February 21, 2026 02:46
@messense messense merged commit 80dcb5d into PyO3:main Feb 21, 2026
45 checks passed
@messense messense deleted the fix/ignore-native-libraries-cross-platform branch February 21, 2026 03:33
netbsd-srcmastr pushed a commit to NetBSD/pkgsrc that referenced this pull request Feb 22, 2026
## 1.12.4

* Upgrade memmap2 version ([#3021](PyO3/maturin#3021))
* Fix: platform tag detection for Android targets ([#3023](PyO3/maturin#3023))
* Fix: only ignore maturin-generated native libraries on all platforms ([#3025](PyO3/maturin#3025))
* Fix: ignore develop artifacts for all binding types during build ([#3026](PyO3/maturin#3026))
* Feat: support conditional cargo features based on Python version ([#3027](PyO3/maturin#3027))

## 1.12.3

* Ci: set crt-static for riscv64 and loongarch64 musl targets ([#3009](PyO3/maturin#3009))
* Fix: support `maturin develop` on Windows ARM with x86 Python ([#3011](PyO3/maturin#3011))
* Fix: exclude `external_packages` bindings from uniffi wheels ([#3013](PyO3/maturin#3013))
* Update cargo-zigbuild to 0.22.1 ([#3015](PyO3/maturin#3015))
* Feat: build wheels from sdist with `--sdist` flag ([#3014](PyO3/maturin#3014))
* Feat: add `include-import-lib` option to bundle Windows import libraries in wheels ([#3017](PyO3/maturin#3017))
* Fix: auditwheel external lib check respects musllinux and reports symbol versions ([#3019](PyO3/maturin#3019))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Ignoring native libraries from develop is not working correctly on Windows

1 participant