release: 0.19.2

This commit is contained in:
David Hewitt 2023-07-30 17:54:44 +01:00
parent 6c25b7355e
commit 284c42d840
32 changed files with 51 additions and 38 deletions

View File

@ -10,6 +10,36 @@ To see unreleased changes, please see the [CHANGELOG on the main branch guide](h
<!-- towncrier release notes start -->
## [0.19.2] - 2023-08-01
### Added
- Add FFI definitions `PyState_AddModule`, `PyState_RemoveModule` and `PyState_FindModule` for PyPy 3.9 and up. [#3295](https://github.com/PyO3/pyo3/pull/3295)
- Add FFI definitions `_PyObject_CallFunction_SizeT` and `_PyObject_CallMethod_SizeT`. [#3297](https://github.com/PyO3/pyo3/pull/3297)
- Add a "performance" section to the guide collecting performance-related tricks and problems. [#3304](https://github.com/PyO3/pyo3/pull/3304)
- Add `PyErr::Display` for all Python versions, and FFI symbol `PyErr_DisplayException` for Python 3.12. [#3334](https://github.com/PyO3/pyo3/pull/3334)
- Add FFI definition `PyType_GetDict()` for Python 3.12. [#3339](https://github.com/PyO3/pyo3/pull/3339)
- Add `PyAny::downcast_exact`. [#3346](https://github.com/PyO3/pyo3/pull/3346)
- Add `PySlice::full()` to construct a full slice (`::`). [#3353](https://github.com/PyO3/pyo3/pull/3353)
### Changed
- Update `PyErr` for 3.12 betas to avoid deprecated ffi methods. [#3306](https://github.com/PyO3/pyo3/pull/3306)
- Update FFI definitions of `object.h` for Python 3.12.0b4. [#3335](https://github.com/PyO3/pyo3/pull/3335)
- Update `pyo3::ffi` struct definitions to be compatible with 3.12.0b4. [#3342](https://github.com/PyO3/pyo3/pull/3342)
- Optimize conversion of `float` to `f64` (and `PyFloat::value`) on non-abi3 builds. [#3345](https://github.com/PyO3/pyo3/pull/3345)
### Fixed
- Fix timezone conversion bug for FixedOffset datetimes that were being incorrectly converted to and from UTC. [#3269](https://github.com/PyO3/pyo3/pull/3269)
- Fix `SystemError` raised in `PyUnicodeDecodeError_Create` on PyPy 3.10. [#3297](https://github.com/PyO3/pyo3/pull/3297)
- Correct FFI definition `Py_EnterRecursiveCall` to return `c_int` (was incorrectly returning `()`). [#3300](https://github.com/PyO3/pyo3/pull/3300)
- Fix case where `PyErr::matches` and `PyErr::is_instance` returned results inconsistent with `PyErr::get_type`. [#3313](https://github.com/PyO3/pyo3/pull/3313)
- Fix loss of panic message in `PanicException` when unwinding after the exception was "normalized". [#3326](https://github.com/PyO3/pyo3/pull/3326)
- Fix `PyErr::from_value` and `PyErr::into_value` losing traceback on conversion. [#3328](https://github.com/PyO3/pyo3/pull/3328)
- Fix reference counting of immortal objects on Python 3.12.0b4. [#3335](https://github.com/PyO3/pyo3/pull/3335)
## [0.19.1] - 2023-07-03
### Packaging
@ -1503,7 +1533,8 @@ Yanked
- Initial release
[Unreleased]: https://github.com/pyo3/pyo3/compare/v0.19.1...HEAD
[Unreleased]: https://github.com/pyo3/pyo3/compare/v0.19.2...HEAD
[0.19.2]: https://github.com/pyo3/pyo3/compare/v0.19.1...v0.19.2
[0.19.1]: https://github.com/pyo3/pyo3/compare/v0.19.0...v0.19.1
[0.19.0]: https://github.com/pyo3/pyo3/compare/v0.18.3...v0.19.0
[0.18.3]: https://github.com/pyo3/pyo3/compare/v0.18.2...v0.18.3

View File

@ -1,6 +1,6 @@
[package]
name = "pyo3"
version = "0.19.1"
version = "0.19.2"
description = "Bindings to Python interpreter"
authors = ["PyO3 Project and Contributors <https://github.com/PyO3>"]
readme = "README.md"
@ -21,10 +21,10 @@ parking_lot = ">= 0.11, < 0.13"
memoffset = "0.9"
# ffi bindings to the python interpreter, split into a separate crate so they can be used independently
pyo3-ffi = { path = "pyo3-ffi", version = "=0.19.1" }
pyo3-ffi = { path = "pyo3-ffi", version = "=0.19.2" }
# support crates for macros feature
pyo3-macros = { path = "pyo3-macros", version = "=0.19.1", optional = true }
pyo3-macros = { path = "pyo3-macros", version = "=0.19.2", optional = true }
indoc = { version = "2.0.1", optional = true }
unindent = { version = "0.2.1", optional = true }
@ -56,7 +56,7 @@ rust_decimal = { version = "1.8.0", features = ["std"] }
widestring = "0.5.1"
[build-dependencies]
pyo3-build-config = { path = "pyo3-build-config", version = "0.19.1", features = ["resolve-config"] }
pyo3-build-config = { path = "pyo3-build-config", version = "0.19.2", features = ["resolve-config"] }
[features]
default = ["macros"]

View File

@ -68,7 +68,7 @@ name = "string_sum"
crate-type = ["cdylib"]
[dependencies]
pyo3 = { version = "0.19.1", features = ["extension-module"] }
pyo3 = { version = "0.19.2", features = ["extension-module"] }
```
**`src/lib.rs`**
@ -137,7 +137,7 @@ Start a new project with `cargo new` and add `pyo3` to the `Cargo.toml` like th
```toml
[dependencies.pyo3]
version = "0.19.1"
version = "0.19.2"
features = ["auto-initialize"]
```

View File

@ -5,7 +5,7 @@ publish = false
edition = "2021"
[dev-dependencies]
pyo3 = { version = "0.19.1", path = "..", features = ["auto-initialize", "extension-module"] }
pyo3 = { version = "0.19.2", path = "..", features = ["auto-initialize", "extension-module"] }
[[example]]
name = "decorator"

View File

@ -1,4 +1,4 @@
variable::set("PYO3_VERSION", "0.19.1");
variable::set("PYO3_VERSION", "0.19.2");
file::rename(".template/Cargo.toml", "Cargo.toml");
file::rename(".template/pyproject.toml", "pyproject.toml");
file::delete(".template");

View File

@ -1,4 +1,4 @@
variable::set("PYO3_VERSION", "0.19.1");
variable::set("PYO3_VERSION", "0.19.2");
file::rename(".template/Cargo.toml", "Cargo.toml");
file::rename(".template/pyproject.toml", "pyproject.toml");
file::delete(".template");

View File

@ -1,4 +1,4 @@
variable::set("PYO3_VERSION", "0.19.1");
variable::set("PYO3_VERSION", "0.19.2");
file::rename(".template/Cargo.toml", "Cargo.toml");
file::rename(".template/plugin_api/Cargo.toml", "plugin_api/Cargo.toml");
file::delete(".template");

View File

@ -1,4 +1,4 @@
variable::set("PYO3_VERSION", "0.19.1");
variable::set("PYO3_VERSION", "0.19.2");
file::rename(".template/Cargo.toml", "Cargo.toml");
file::rename(".template/setup.cfg", "setup.cfg");
file::delete(".template");

View File

@ -1,3 +1,3 @@
variable::set("PYO3_VERSION", "0.19.1");
variable::set("PYO3_VERSION", "0.19.2");
file::rename(".template/Cargo.toml", "Cargo.toml");
file::delete(".template");

View File

@ -1 +0,0 @@
Fix timezone conversion bug for FixedOffset datetimes that were being incorrectly converted to and from UTC.

View File

@ -1 +0,0 @@
Add FFI definitions `PyState_AddModule`, `PyState_RemoveModule` and `PyState_FindModule` for PyPy 3.9 and up.

View File

@ -1 +0,0 @@
Add FFI definitions `_PyObject_CallFunction_SizeT` and `_PyObject_CallMethod_SizeT`.

View File

@ -1 +0,0 @@
Fix `SystemError` raised in `PyUnicodeDecodeError_Create` on PyPy 3.10.

View File

@ -1 +0,0 @@
Correct FFI definition `Py_EnterRecursiveCall` to return `c_int` (was incorrectly returning `()`).

View File

@ -1 +0,0 @@
Added a "performance" section to the guide collecting performance-related tricks and problems.

View File

@ -1 +0,0 @@
Update `PyErr` for 3.12 betas to avoid deprecated ffi methods.

View File

@ -1 +0,0 @@
Fix case where `PyErr::matches` and `PyErr::is_instance` returned results inconsistent with `PyErr::get_type`.

View File

@ -1 +0,0 @@
Fix loss of panic message in `PanicException` when unwinding after the exception was "normalized".

View File

@ -1 +0,0 @@
Fixed `PyErr.from_value()` and `PyErr.into_value()` to both maintain original traceback instead of losing it on conversion.

View File

@ -1 +0,0 @@
Add `PyErr::Display` for all Python versions, and FFI symbol `PyErr_DisplayException` for Python 3.12.

View File

@ -1 +0,0 @@
Update FFI definitions of `object.h` for Python 3.12 and up.

View File

@ -1 +0,0 @@
Fix reference counting of immortal objects on Python 3.12 betas.

View File

@ -1 +0,0 @@
Define `PyType_GetDict()` FFI for CPython 3.12 or later.

View File

@ -1 +0,0 @@
Update `pyo3::ffi` struct definitions to be compatible with 3.12.0b4.

View File

@ -1 +0,0 @@
Optimize conversion of `float` to `f64` (and `PyFloat::value`) on non-abi3 builds.

View File

@ -1 +0,0 @@
Add `PyAny::downcast_exact`.

View File

@ -1 +0,0 @@
Add `PySlice::full()` to construct a full slice (`::`).

View File

@ -1,6 +1,6 @@
[package]
name = "pyo3-build-config"
version = "0.19.1"
version = "0.19.2"
description = "Build configuration for the PyO3 ecosystem"
authors = ["PyO3 Project and Contributors <https://github.com/PyO3>"]
keywords = ["pyo3", "python", "cpython", "ffi"]

View File

@ -1,6 +1,6 @@
[package]
name = "pyo3-ffi"
version = "0.19.1"
version = "0.19.2"
description = "Python-API bindings for the PyO3 ecosystem"
authors = ["PyO3 Project and Contributors <https://github.com/PyO3>"]
keywords = ["pyo3", "python", "cpython", "ffi"]
@ -38,4 +38,4 @@ generate-import-lib = ["pyo3-build-config/python3-dll-a"]
[build-dependencies]
pyo3-build-config = { path = "../pyo3-build-config", version = "0.19.1", features = ["resolve-config"] }
pyo3-build-config = { path = "../pyo3-build-config", version = "0.19.2", features = ["resolve-config"] }

View File

@ -1,6 +1,6 @@
[package]
name = "pyo3-macros-backend"
version = "0.19.1"
version = "0.19.2"
description = "Code generation for PyO3 package"
authors = ["PyO3 Project and Contributors <https://github.com/PyO3>"]
keywords = ["pyo3", "python", "cpython", "ffi"]

View File

@ -1,6 +1,6 @@
[package]
name = "pyo3-macros"
version = "0.19.1"
version = "0.19.2"
description = "Proc macros for PyO3 package"
authors = ["PyO3 Project and Contributors <https://github.com/PyO3>"]
keywords = ["pyo3", "python", "cpython", "ffi"]
@ -22,4 +22,4 @@ abi3 = ["pyo3-macros-backend/abi3"]
proc-macro2 = { version = "1", default-features = false }
quote = "1"
syn = { version = "2", features = ["full", "extra-traits"] }
pyo3-macros-backend = { path = "../pyo3-macros-backend", version = "=0.19.1" }
pyo3-macros-backend = { path = "../pyo3-macros-backend", version = "=0.19.2" }

View File

@ -20,7 +20,7 @@ exclude = '''
[tool.towncrier]
filename = "CHANGELOG.md"
version = "0.19.1"
version = "0.19.2"
start_string = "<!-- towncrier release notes start -->\n"
template = ".towncrier.template.md"
title_format = "## [{version}] - {project_date}"