Commit Graph

6205 Commits

Author SHA1 Message Date
Adam Reichold 03285835bb
Use a definite version specification when depending on pyo3-build-config.
We already do this for other internal pyo3-* dependencies and it seems prudent
to apply this to pyo3-build-config as well.
2024-01-02 09:32:38 +01:00
David Hewitt 5ea2e5c048
Merge pull request #3715 from davidhewitt/relnotes-0.20.1
release notes for 0.20.1
2023-12-31 08:59:01 +00:00
David Hewitt 0ca97b5e53
Merge pull request #3681 from davidhewitt/tuple2-try2
implement `PyTupleMethods`
2023-12-30 22:07:43 +00:00
David Hewitt 4cf58c8303 implement `IntoPy<Py<PyTuple>>` for `Bound<PyTuple>` 2023-12-30 21:37:46 +00:00
David Hewitt 823b5feed3 improve tuple methods test coverage 2023-12-30 21:37:46 +00:00
David Hewitt 53d25f7ff2 add new `PyTuple` constructors 2023-12-30 21:37:46 +00:00
David Hewitt 375e3d4eee implement `PyTupleMethods` 2023-12-30 21:37:46 +00:00
David Hewitt 8fa5294d93 release notes for 0.20.1 2023-12-30 21:34:45 +00:00
Alex Gaynor 54390bc50b
Merge pull request #3712 from alex/binops
add PyAnyMethods for binary operators
2023-12-30 13:56:45 +00:00
Alex Gaynor 339660c117 add PyAnyMethods for binary operators
also pow

fixes #3709
2023-12-29 18:45:18 -05:00
David Hewitt e1fcb4efce
Merge pull request #3703 from davidhewitt/module2
implement `PyModuleMethods`
2023-12-29 22:30:08 +00:00
David Hewitt e852a4b502 be more lax with ordering in `invalid_result_conversion` ui test 2023-12-29 22:06:33 +00:00
David Hewitt 9a5668572b implement `PyModuleMethods` 2023-12-29 21:46:46 +00:00
David Hewitt 6776b90e15
Merge pull request #3707 from davidhewitt/gil-refs-feature
add `gil-refs` feature to aid migration
2023-12-29 14:56:19 +00:00
David Hewitt a9f867c2cb begin drafting `Bound<T>` migration guide 2023-12-29 14:42:31 +00:00
David Hewitt 3da1aac2dd add `gil-refs` feature to aid migration 2023-12-29 14:42:31 +00:00
David Hewitt 54b214bb93
Merge pull request #3710 from davidhewitt/rust-1.75
ci: updates for Rust 1.75
2023-12-29 13:51:28 +00:00
David Hewitt 46c3190a17 clean up remnants of deprecated & removed features 2023-12-29 13:36:46 +00:00
David Hewitt e42d8cf612 ci: updates for Rust 1.75 2023-12-29 13:36:46 +00:00
David Hewitt 066e33488b
Merge pull request #3704 from davidhewitt/sansyrox-intro
Add link to YouTube introduction to PyO3
2023-12-26 16:50:20 +00:00
David Hewitt ac5db1fb4b Add link to YouTube introduction to PyO3 2023-12-26 15:30:28 +00:00
Adam Reichold 0344921326
Merge pull request #3694 from davidhewitt/set-frozenset
implement `PySetMethods` and `PyFrozenSetMethods`
2023-12-26 13:33:23 +00:00
David Hewitt 442d13dab3 introduce `Bound::unbind` 2023-12-26 13:17:12 +00:00
David Hewitt e4fd557d2a remove `IntoIterator` for `&Bound` 2023-12-26 13:10:36 +00:00
David Hewitt 8a28a69c3d implement `PyFrozenSetMethods` 2023-12-26 13:10:36 +00:00
David Hewitt 271cbf9edb implement `PySetMethods` 2023-12-26 13:10:36 +00:00
Adam Reichold c44d2f53d5
Merge pull request #3692 from davidhewitt/as-bound
Add `as_borrowed` conversion from gil-refs to `Bound<T>`
2023-12-26 10:45:43 +00:00
David Hewitt d36ad8f61f introduce `Bound::as_borrowed` 2023-12-26 09:49:03 +00:00
David Hewitt 1b61cb015a Add `.as_borrowed()` conversion from gil-refs to `Bound<T>` 2023-12-26 09:49:03 +00:00
Adam Reichold f37c682f8c
Merge pull request #3700 from davidhewitt/super-bound
introduce `PySuper::new_bound`
2023-12-25 09:48:39 +00:00
Adam Reichold ff373eb1c6
Merge pull request #3697 from davidhewitt/as-gil-ref
expose `Bound::as_gil_ref` and `Bound::into_gil_ref`
2023-12-25 09:48:23 +00:00
Adam Reichold bd660537d8
Merge pull request #3695 from davidhewitt/bound-iterator
implement iterator for `Bound` iterator
2023-12-25 09:46:01 +00:00
David Hewitt 38abfd2eed expose `Bound::as_gil_ref` and `Bound::into_gil_ref` 2023-12-24 22:10:09 +00:00
David Hewitt 382e9b9fb5
Merge pull request #3701 from alex/gevent-py37
Don't try to run the gevent tests on py37
2023-12-24 21:40:51 +00:00
Alex Gaynor 91fdfaab45 Use a version of gevent that supports py37
The current version of gevent we require is 3.8+ only
2023-12-24 16:24:47 -05:00
David Hewitt d9cc0c0f24 introduce `PySuper::new_bound` 2023-12-24 20:04:15 +00:00
David Hewitt 6ca63b5772
Merge pull request #3698 from davidhewitt/unraisable-bound
implement `PyErr::write_unraisable_bound`
2023-12-24 19:54:27 +00:00
David Hewitt d669a943f7 implement iterator for `Bound` iterator 2023-12-24 19:52:36 +00:00
David Hewitt 1004ffa7d6 export `Bound` and `Borrowed` from lib.rs 2023-12-24 19:35:50 +00:00
David Hewitt 877e34ac86 implement `PyErr::write_unraisable_bound` 2023-12-24 19:35:29 +00:00
David Hewitt 214ed29bbb
Merge pull request #3699 from davidhewitt/tzinfo
partially revert changes to `PyTzInfoAccess` trait
2023-12-24 15:25:45 +00:00
David Hewitt f5b18468bc partially revert changes to `PyTzInfoAccess` trait 2023-12-24 15:07:42 +00:00
Adam Reichold 7d245842d4
Merge pull request #3669 from davidhewitt/gevent
add test which is broken with gevent
2023-12-24 09:25:29 +00:00
David Hewitt 49d7718823 demonstrate switching to `Bound` API resolves `gevent` crash 2023-12-23 22:10:01 +00:00
David Hewitt 46fa1b2b80 add test which is broken with gevent 2023-12-23 22:07:48 +00:00
Adam Reichold e99058a442
Merge pull request #3679 from davidhewitt/datetime2
implement datetime traits for `Bound`
2023-12-23 14:54:30 +00:00
David Hewitt 6832bf88f2 implement datetime traits for Py2 2023-12-23 15:34:07 +01:00
Adam Reichold 8bef6e3398
Merge pull request #3689 from PyO3/unsendable-threadsafe-traverse
Turn calls of __traverse__ into no-ops for unsendable pyclass if on the wrong thread
2023-12-23 14:13:46 +00:00
Adam Reichold 4dc6c1643e Turn calls of __traverse__ into no-ops for unsendable pyclass if on the wrong thread
Adds a "threadsafe" variant of `PyCell::try_borrow` which will fail instead of
panicking if called on the wrong thread and use it in `call_traverse` to turn GC
traversals of unsendable pyclasses into no-ops if on the wrong thread.

This can imply leaking the underlying resource if the originator thread has
already exited so that the GC will never run there again, but it does avoid hard
aborts as we cannot raise an exception from within `call_traverse`.
2023-12-23 15:01:08 +01:00
David Hewitt 65f25d4133
Merge pull request #3690 from PyO3/check-signal-docs
Copy note on using check_signals on non-main thread/interpreter from Python docs.
2023-12-22 22:50:22 +00:00