Commit Graph

5742 Commits

Author SHA1 Message Date
David Hewitt d3f034a80f release: 0.20.1 2023-12-30 21:20:06 +00:00
David Hewitt 985412fb8f ci: updates for Rust 1.75 2023-12-29 23:02:19 +00:00
Adam Reichold ecb0e9cb61 Copy note on using check_signals on non-main thread/interpreter from Python docs. 2023-12-29 22:59:45 +00:00
Alex Gaynor b84271140e Fixes #3645 -- added `abi3-py312` feature 2023-12-29 22:59:22 +00:00
Adam Reichold d897479831 Fix the Crossbeam ecosystem to point releases before it required Rust 1.61. 2023-12-29 22:52:52 +00:00
Nathan Kent 8f6976d9a5 Enable `GILProtected` access via `PyVisit`
Closes #3615

This simply adds a new method which uses the existence of a `PyVisit`
object as proof that the GIL is held instead of a `Python` object. This
allows `GILProtected` to be used in instances where contained Python
objects need to participate in garbage collection. Usage in this
situation should be valid since no Python calls are made and this does
not provide any additional mechanism for accessing a `Python` object.
2023-12-29 22:52:22 +00:00
David Hewitt 5c1e4d10b3 ci: fixup pytests to compile in debug 2023-12-29 22:52:10 +00:00
David Hewitt 1896a32015 ci: refactor pytests dev dependencies 2023-12-29 22:51:45 +00:00
messense 7032789daf Add additional definitions for `_PyImport_Frozen*` 2023-12-29 22:50:38 +00:00
Alex Gaynor 1166a995a4 Refactor create_type_object so that most of the code is monomorphic
In pyca/cryptography this function is the #1 source of lines of generated LLVM IR, because it is duplicated 42x (and growing!). By rewriting it so most of the logic is monomorphic, we reduce the generated LLVM IR for this function by 4x.
2023-12-29 22:50:23 +00:00
David Hewitt 856b859efe fix test-serde beta clippy warning 2023-12-29 22:50:15 +00:00
David Hewitt 413dda09f5 fix pyo3-ffi beta clippy warnings 2023-12-29 22:50:08 +00:00
David Hewitt 485f5c00e2 ci: run beta clippy as an allowed-to-fail job 2023-12-29 22:50:01 +00:00
Alex Gaynor 830b3bb814 fixes #3561 -- silence new clippy warning 2023-12-29 22:49:42 +00:00
mejrs 405d722a2d Create subinterpreter example 2023-12-29 22:49:25 +00:00
David Hewitt b1de927a31 docs: fixup docs for smallvec feature 2023-12-29 22:49:13 +00:00
Ivan Smirnov 2312270ec1 add conversion support for `either::Either` 2023-12-29 22:49:07 +00:00
David Hewitt e0513d74f5 improve error for invalid `#[classmethod]` receivers 2023-12-29 22:48:25 +00:00
David Hewitt 25b8a37521 remove type_is_pymodule 2023-12-29 22:47:39 +00:00
Joseph Perez 3d17f7442a fix: replace removed `fmt` session by `rustfmt` and `ruff` 2023-12-29 22:47:27 +00:00
Joseph Perez 466359a1c8 feat: allow `classmethod`/`pass_module` to receive owned types
This is necessary for async functions
2023-12-29 22:47:16 +00:00
David Hewitt 9dbd81b47c enable cargo-semver-checks, try 2 2023-12-29 22:46:49 +00:00
David Hewitt bbc5404297 ci: move lints to new 1.74 cargo.toml tables 2023-12-29 22:46:39 +00:00
David Hewitt 8d637b0b5b ci: updates for rust 1.74 2023-12-29 22:46:29 +00:00
David Hewitt aa6f1466d2 ci: try to run without rust-toolchain.toml 2023-12-29 22:46:23 +00:00
Surya c8ef081821 fix missing char conversion 2023-12-29 22:45:43 +00:00
David Hewitt d649f6603f add link to user guide to cross compile error message 2023-12-29 22:45:35 +00:00
Joseph Perez b08c92b306 docs: add newsfragment 2023-12-29 22:45:27 +00:00
Joseph Perez a4aba0a09a refactor: remove useless `unsafe` in `get_mut` 2023-12-29 22:45:20 +00:00
Joseph Perez 04bb9f2110 feat: add `take` and `into_inner` methods to `GILOnceCell` 2023-12-29 22:45:12 +00:00
Samuel Pastva 10086d176a Finish rename 2023-12-29 22:44:49 +00:00
Samuel Pastva 15c280015d Update guide/src/class.md
Co-authored-by: Bruno Kolenbrander <59372212+mejrs@users.noreply.github.com>
2023-12-29 22:44:43 +00:00
Samuel Pastva 2aca7f53f0 Add example of dynamic return type in the "Python classes" section of the guide. 2023-12-29 22:44:33 +00:00
David Hewitt 04af02f155 ci: switch from black to ruff 2023-12-29 22:44:24 +00:00
David Hewitt 8e08e4ad1b examples: remove requirements-dev.txt files 2023-12-29 22:44:11 +00:00
David Hewitt 7f328767a3 Note about `pyenv activate` and `pyenv virtualenv` commands
Co-authored-by: Niko Matsakis <niko@alum.mit.edu>
2023-12-29 22:44:06 +00:00
David Hewitt ba5a1da4a8 ci: fix nightly unused import warnings 2023-12-29 22:43:56 +00:00
David Hewitt 410ef89456 docs: improve detail around pyenv install 2023-12-29 22:43:51 +00:00
David Hewitt 92cde096b5 add coverage for `emit_pyo3_cfgs` 2023-12-29 22:43:44 +00:00
David Hewitt 8c272a6ef2 ci: tidy up some dev deps 2023-12-29 22:43:32 +00:00
David Hewitt e900df02f0 ci: use older hashbrown and indexmap for MSRV 2023-12-29 22:42:35 +00:00
dependabot[bot] 97bf194152 Bump actions/setup-node from 3 to 4
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 3 to 4.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v3...v4)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-12-29 22:42:25 +00:00
David Hewitt 422f8665c9 ci: install prebuilt cargo-careful 2023-12-29 22:41:07 +00:00
David Hewitt 30463b6720 remove comparison to rust-cpython 2023-12-29 22:41:00 +00:00
David Hewitt f745299b7b ci: drop psutil dependency 2023-12-29 22:40:49 +00:00
Adam Reichold d468f570ae Align chrono dev and runtime dependency version specifications. 2023-12-29 22:40:02 +00:00
Orhun Parmaksız 826fa973b6 Set version of smallvec to 1.0 2023-12-29 22:39:53 +00:00
Orhun Parmaksız 779eb2412c Add an entry to features table in lib 2023-12-29 22:39:43 +00:00
David Hewitt 84264b358e keep emscripten back on 3.11 for now 2023-12-29 22:39:36 +00:00
David Hewitt 9e07203afb also test emscripten with CI-build-full 2023-12-29 22:39:26 +00:00