David Hewitt
e2c88d5a4e
optimize `float` -> `f64` conversions on non-abi3
2023-07-28 20:45:37 +01:00
David Hewitt
34881fc952
add PyAny::downcast_exact
2023-07-28 15:11:56 +01:00
David Hewitt
7a2fc86186
Merge pull request #3342 from davidhewitt/3.12-ffi-check-fixes
...
fix ffi check failures for 3.12.0b4
2023-07-25 11:59:55 +00:00
David Hewitt
655de94749
fix ffi check failures for 3.12.0b4
2023-07-25 08:25:34 +01:00
Adam Reichold
8ce6c26c81
Merge pull request #3334 from davidhewitt/pyerr-display
...
add PyErr::display
2023-07-25 05:56:21 +00:00
David Hewitt
a15614844d
add PyErr::display
2023-07-24 22:14:55 +01:00
Marc Mueller
f8ca456f5f
Add PyType_GetDict for Python 3.12
2023-07-23 17:00:50 +02:00
David Hewitt
ab078258d1
fix exception handling on Python 3.12
2023-07-19 22:33:25 +01:00
Zak Stucke
31b21a71b5
Combined changelog lines
2023-07-19 12:51:14 +03:00
Zak Stucke
f2b7e86e2e
Prevent traceback loss on conversion to and from PyErr
2023-07-19 12:07:41 +03:00
David Hewitt
2e2dde910a
Preserve panic message after exception is normalized
2023-07-18 22:20:41 +01:00
David Hewitt
6f30215566
collect arrays of objects prior to filling tuple in fixed-size conversions
2023-07-16 20:17:02 +01:00
David Hewitt
92b724f64f
normalize exception in `PyErr::matches` and `PyErr::get_type`
2023-07-14 13:18:30 +01:00
Adam Reichold
ff78b92e77
Start adding a performance section to the guide.
2023-07-09 14:32:59 +02:00
David Hewitt
f7f3ff8820
fix FFI definition `Py_EnterRecursiveCall`
2023-07-05 22:52:41 +01:00
David Hewitt
82712aed32
fix `SystemError` raised from `PyUnicodeDecodeError_Create` on PyPy 3.10
2023-07-05 11:10:02 +01:00
Adam Reichold
54ab9090be
Merge pull request #3269 from grantslatton/timezone-conversion-bugfix
...
Fix fixed offset timezone conversion bug.
2023-07-04 18:22:13 +00:00
David Hewitt
6666c335e6
add PyState_*Module definitions for PyPy
2023-07-04 08:57:50 +01:00
David Hewitt
7d357ad992
release: 0.19.1
2023-07-03 16:18:24 +01:00
David Hewitt
0e9c041e97
Merge pull request #3289 from davidhewitt/pypy-3.10
...
support PyPy 3.10
2023-07-03 12:53:16 +00:00
David Hewitt
9f2176c126
support PyPy 3.10
2023-07-03 11:26:45 +01:00
Alex Gaynor
0b78bb851e
Allow `#[new]` to return existing instances
...
fixes #2384
2023-07-02 19:57:53 -04:00
Adam Reichold
e006b34b5e
Apparently, PySet_Add does not steal a reference, hence we should not forget to clean up ours.
2023-07-02 20:43:43 +02:00
Adam Reichold
afc1d4cc42
Merge pull request #3281 from davidhewitt/set-discard
...
handle exceptions properly in `PySet::discard`
2023-06-28 17:09:01 +00:00
David Hewitt
c0b9502c0e
handle exceptions properly in `PySet::discard`
2023-06-28 08:54:06 +01:00
David Hewitt
4867ef8dd3
stop suppressing unrelated exceptions in `PyAny::hasattr`
2023-06-27 23:20:22 +01:00
Adam Reichold
b5a1ca058d
Extended range of supported versions of `indexmap` optional dependency to include version 2.
2023-06-26 23:23:12 +02:00
David Hewitt
db91642bae
add `PyDict::get_item_with_error` for PyPy
2023-06-25 19:26:08 +01:00
Grant Slatton
b1e7ed8a58
Fix fixed offset timezone conversion bug.
...
See https://github.com/PyO3/pyo3/issues/3267
2023-06-25 11:06:46 -07:00
Adam Reichold
d7e147509b
Add Python::with_pool as a safer alternative to Python::new_pool.
2023-06-21 08:05:19 +02:00
Adam Reichold
71ed4e17c7
Merge pull request #3256 from PyO3/dependabot/cargo/unindent-0.2.1
...
Update unindent requirement from 0.1.4 to 0.2.1
2023-06-20 20:05:17 +00:00
Adam Reichold
430716ff4d
Add changelog entry for bumping hashbrown dependency.
2023-06-20 19:41:45 +02:00
Adam Reichold
689033cd80
Extend changelog of indoc bump to include related unindent change as well.
2023-06-20 19:41:02 +02:00
David Hewitt
bdf51ab241
Merge pull request #3248 from ijl/py312-exc
...
Add PyErr_GetRaisedException(), PyErr_SetRaisedException() to FFI
2023-06-18 21:45:14 +00:00
ijl
9e9a6e9ebd
Add PyErr_GetRaisedException(), PyErr_SetRaisedException() to FFI
...
These are new and part of the stable API as of v3.12.0a6.
PyErr_Fetch(), PyErr_Restore(), and PyErr_NormalizeException()
were simultaneously deprecated in favor of these.
python/cpython@feec49c407
2023-06-16 14:49:22 +00:00
David Hewitt
e55e1721a5
Merge pull request #3222 from krpatter-intc/getitem_example
...
simple getitem example
2023-06-16 06:58:49 +00:00
Patterson, Kevin R
4fab62545a
simple getitem example
2023-06-15 16:39:25 -05:00
David Hewitt
527f3c286b
Merge pull request #3239 from alex/syn-2
...
Upgrade to syn 2
2023-06-14 16:49:25 +00:00
Alex Gaynor
afbb1d435c
Upgrade to syn 2
2023-06-14 07:03:33 -04:00
Adam Reichold
4bfa5be616
Merge pull request #3238 from davidhewitt/version-bumps
...
add changelog for #3237
2023-06-14 06:08:22 +00:00
Adam Reichold
ba0c7e15b3
Merge pull request #3156 from adriangb/frozenset-ops
...
Add `PyFrozenSetBuilder`
2023-06-14 06:06:32 +00:00
David Hewitt
80c66ecc95
add changelog for #3237
2023-06-13 22:41:24 +01:00
David Hewitt
4f3fcdbf0f
remove all functionality deprecated in PyO3 0.18
2023-06-13 22:27:43 +01:00
Adrian Garcia Badaracco
a28641af68
Add `PyFrozenSetBuilder`
2023-06-13 15:59:35 -05:00
David Hewitt
199261f436
Merge pull request #3197 from mhils/ipaddr
...
Add `IpAddr` <-> `ipaddress.IPv(4/6)Address` conversion
2023-06-12 04:00:43 +00:00
Maximilian Hils
980f05a88e
Add `IpAddr` <-> `ipaddress.IPv(4/6)Address` conversion
2023-06-08 13:17:45 +02:00
bors[bot]
dbf7b233aa
Merge #3203
...
3203: support ordering magic methods for `#[pyclass]` r=adamreichold a=davidhewitt
Closes #2089
This adds `__lt__`, `__le__`, `__eq__`, `__ne__`, `__gt__`, and `__ge__` as per the Python implementations of what we call `__richcmp__`.
There's a UI test confirming that the user cannot implement split forms and `__richcmp__` simultaneously.
There's also a benchmark comparing implementing these split methods against using `__richcmp__`. I couldn't see a meaningful performance difference, so I'm tempted to deprecate `__richcmp__`, given that's not a magic method which exists in Python. Potentially we can provide options such as the opt-in `#[pyclass(eq, ord)]` to avoid boilerplate for people who don't want to implement six different methods.
Co-authored-by: David Hewitt <1939362+davidhewitt@users.noreply.github.com>
2023-06-05 07:13:23 +00:00
Adam Reichold
5738edfdd4
Bump MSRV to 1.56
2023-06-04 23:02:30 +01:00
David Hewitt
8850d5d384
support ordering magic methods for `#[pyclass]`
2023-06-04 13:58:18 +01:00
bors[bot]
fa949ff627
Merge #3198
...
3198: Add abi3 + num_bigint conversion r=davidhewitt a=youknowone
<!--
Please consider adding the following to your pull request:
- an entry for this PR in newsfragments - see [https://pyo3.rs/main/contributing.html#documenting-changes ]
- docs to all new functions and / or detail in the guide
- tests for all new or changed functions
PyO3's CI pipeline will check your pull request. To run its tests
locally, you can run ```cargo xtask ci```. See its documentation
[here](https://github.com/PyO3/pyo3/tree/main/xtask#readme ).
-->
Fix #3196
Co-authored-by: Jeong YunWon <jeong@youknowone.org>
2023-06-02 19:06:50 +00:00