From 5cdc1337c8dfbd9497e3b1caee4ec25542b9b66b Mon Sep 17 00:00:00 2001 From: David Hewitt <1939362+davidhewitt@users.noreply.github.com> Date: Tue, 11 Apr 2023 07:43:42 +0100 Subject: [PATCH] release: 0.18.3 --- CHANGELOG.md | 20 ++++++++++++++++++- Cargo.toml | 8 ++++---- README.md | 4 ++-- examples/Cargo.toml | 2 +- examples/decorator/.template/pre-script.rhai | 2 +- .../maturin-starter/.template/pre-script.rhai | 2 +- examples/plugin/.template/pre-script.rhai | 2 +- .../.template/pre-script.rhai | 2 +- examples/word-count/.template/pre-script.rhai | 2 +- newsfragments/2975.added.md | 1 - newsfragments/3015.added.md | 1 - newsfragments/3022.fixed.md | 1 - newsfragments/3055.fixed.md | 1 - newsfragments/3071.fixed.md | 1 - newsfragments/3088.added.md | 1 - pyo3-build-config/Cargo.toml | 2 +- pyo3-ffi/Cargo.toml | 4 ++-- pyo3-macros-backend/Cargo.toml | 2 +- pyo3-macros/Cargo.toml | 4 ++-- pyproject.toml | 2 +- 20 files changed, 38 insertions(+), 26 deletions(-) delete mode 100644 newsfragments/2975.added.md delete mode 100644 newsfragments/3015.added.md delete mode 100644 newsfragments/3022.fixed.md delete mode 100644 newsfragments/3055.fixed.md delete mode 100644 newsfragments/3071.fixed.md delete mode 100644 newsfragments/3088.added.md diff --git a/CHANGELOG.md b/CHANGELOG.md index e231d93604a..90b5dcb22cf 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,22 @@ To see unreleased changes, please see the [CHANGELOG on the main branch guide](h +## [0.18.3] - 2023-04-13 + +### Added + +- Add `GILProtected` to mediate concurrent access to a value using Python's global interpreter lock (GIL). [#2975](https://github.com/PyO3/pyo3/pull/2975) +- Support `PyASCIIObject` / `PyUnicode` and associated methods on big-endian architectures. [#3015](https://github.com/PyO3/pyo3/pull/3015) +- Add FFI definition `_PyDict_Contains_KnownHash()` for CPython 3.10 and up. [#3088](https://github.com/PyO3/pyo3/pull/3088) + +### Fixed + +- Fix compile error for `#[pymethods]` and `#[pyfunction]` called "output". [#3022](https://github.com/PyO3/pyo3/pull/3022) +- Fix compile error in generated code for magic methods implemented as a `#[staticmethod]`. [#3055](https://github.com/PyO3/pyo3/pull/3055) +- Fix `is_instance` for `PyDateTime` (would incorrectly check for a `PyDate`). [#3071](https://github.com/PyO3/pyo3/pull/3071) +- Fix upstream deprecation of `PyUnicode_InternImmortal` since Python 3.10. [#3071](https://github.com/PyO3/pyo3/pull/3087) + + ## [0.18.2] - 2023-03-24 ### Packaging @@ -37,6 +53,7 @@ To see unreleased changes, please see the [CHANGELOG on the main branch guide](h - Fix `non_snake_case` lint on generated code in `#[pyfunction]` macro. [#2993](https://github.com/PyO3/pyo3/pull/2993) - Fix some FFI definitions for the upcoming PyPy 3.10 release. [#3031](https://github.com/PyO3/pyo3/pull/3031) + ## [0.18.1] - 2023-02-07 ### Added @@ -1419,7 +1436,8 @@ Yanked - Initial release -[Unreleased]: https://github.com/pyo3/pyo3/compare/v0.18.2...HEAD +[Unreleased]: https://github.com/pyo3/pyo3/compare/v0.18.3...HEAD +[0.18.3]: https://github.com/pyo3/pyo3/compare/v0.18.2...v0.18.3 [0.18.2]: https://github.com/pyo3/pyo3/compare/v0.18.1...v0.18.2 [0.18.1]: https://github.com/pyo3/pyo3/compare/v0.18.0...v0.18.1 [0.18.0]: https://github.com/pyo3/pyo3/compare/v0.17.3...v0.18.0 diff --git a/Cargo.toml b/Cargo.toml index a7948069fb6..ba95924064d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pyo3" -version = "0.18.2" +version = "0.18.3" description = "Bindings to Python interpreter" authors = ["PyO3 Project and Contributors "] readme = "README.md" @@ -20,10 +20,10 @@ parking_lot = ">= 0.11, < 0.13" memoffset = "0.8" # ffi bindings to the python interpreter, split into a separate crate so they can be used independently -pyo3-ffi = { path = "pyo3-ffi", version = "=0.18.2" } +pyo3-ffi = { path = "pyo3-ffi", version = "=0.18.3" } # support crates for macros feature -pyo3-macros = { path = "pyo3-macros", version = "=0.18.2", optional = true } +pyo3-macros = { path = "pyo3-macros", version = "=0.18.3", optional = true } indoc = { version = "1.0.3", optional = true } unindent = { version = "0.1.4", optional = true } @@ -56,7 +56,7 @@ rayon = "1.0.2" widestring = "0.5.1" [build-dependencies] -pyo3-build-config = { path = "pyo3-build-config", version = "0.18.2", features = ["resolve-config"] } +pyo3-build-config = { path = "pyo3-build-config", version = "0.18.3", features = ["resolve-config"] } [features] default = ["macros"] diff --git a/README.md b/README.md index 1548594e5fe..4cf8ff80c86 100644 --- a/README.md +++ b/README.md @@ -68,7 +68,7 @@ name = "string_sum" crate-type = ["cdylib"] [dependencies] -pyo3 = { version = "0.18.2", features = ["extension-module"] } +pyo3 = { version = "0.18.3", 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.18.2" +version = "0.18.3" features = ["auto-initialize"] ``` diff --git a/examples/Cargo.toml b/examples/Cargo.toml index 09ed25d931a..dd23b493c9f 100644 --- a/examples/Cargo.toml +++ b/examples/Cargo.toml @@ -5,7 +5,7 @@ publish = false edition = "2018" [dev-dependencies] -pyo3 = { version = "0.18.2", path = "..", features = ["auto-initialize", "extension-module"] } +pyo3 = { version = "0.18.3", path = "..", features = ["auto-initialize", "extension-module"] } [[example]] name = "decorator" diff --git a/examples/decorator/.template/pre-script.rhai b/examples/decorator/.template/pre-script.rhai index f1d04cf0b9a..eb6096ba075 100644 --- a/examples/decorator/.template/pre-script.rhai +++ b/examples/decorator/.template/pre-script.rhai @@ -1,4 +1,4 @@ -variable::set("PYO3_VERSION", "0.18.2"); +variable::set("PYO3_VERSION", "0.18.3"); file::rename(".template/Cargo.toml", "Cargo.toml"); file::rename(".template/pyproject.toml", "pyproject.toml"); file::delete(".template"); diff --git a/examples/maturin-starter/.template/pre-script.rhai b/examples/maturin-starter/.template/pre-script.rhai index f1d04cf0b9a..eb6096ba075 100644 --- a/examples/maturin-starter/.template/pre-script.rhai +++ b/examples/maturin-starter/.template/pre-script.rhai @@ -1,4 +1,4 @@ -variable::set("PYO3_VERSION", "0.18.2"); +variable::set("PYO3_VERSION", "0.18.3"); file::rename(".template/Cargo.toml", "Cargo.toml"); file::rename(".template/pyproject.toml", "pyproject.toml"); file::delete(".template"); diff --git a/examples/plugin/.template/pre-script.rhai b/examples/plugin/.template/pre-script.rhai index 89e930cd0e5..b7d38a4e48b 100644 --- a/examples/plugin/.template/pre-script.rhai +++ b/examples/plugin/.template/pre-script.rhai @@ -1,4 +1,4 @@ -variable::set("PYO3_VERSION", "0.18.2"); +variable::set("PYO3_VERSION", "0.18.3"); file::rename(".template/Cargo.toml", "Cargo.toml"); file::rename(".template/plugin_api/Cargo.toml", "plugin_api/Cargo.toml"); file::delete(".template"); diff --git a/examples/setuptools-rust-starter/.template/pre-script.rhai b/examples/setuptools-rust-starter/.template/pre-script.rhai index c29734b6938..2fc7c2588a9 100644 --- a/examples/setuptools-rust-starter/.template/pre-script.rhai +++ b/examples/setuptools-rust-starter/.template/pre-script.rhai @@ -1,4 +1,4 @@ -variable::set("PYO3_VERSION", "0.18.2"); +variable::set("PYO3_VERSION", "0.18.3"); file::rename(".template/Cargo.toml", "Cargo.toml"); file::rename(".template/setup.cfg", "setup.cfg"); file::delete(".template"); diff --git a/examples/word-count/.template/pre-script.rhai b/examples/word-count/.template/pre-script.rhai index a47393a2d13..80b0f40251d 100644 --- a/examples/word-count/.template/pre-script.rhai +++ b/examples/word-count/.template/pre-script.rhai @@ -1,3 +1,3 @@ -variable::set("PYO3_VERSION", "0.18.2"); +variable::set("PYO3_VERSION", "0.18.3"); file::rename(".template/Cargo.toml", "Cargo.toml"); file::delete(".template"); diff --git a/newsfragments/2975.added.md b/newsfragments/2975.added.md deleted file mode 100644 index 7a3da624f2a..00000000000 --- a/newsfragments/2975.added.md +++ /dev/null @@ -1 +0,0 @@ -Add `GILProtected` to mediate concurrent access to a value using Python's global interpreter lock (GIL). diff --git a/newsfragments/3015.added.md b/newsfragments/3015.added.md deleted file mode 100644 index 131aefd98ff..00000000000 --- a/newsfragments/3015.added.md +++ /dev/null @@ -1 +0,0 @@ -Support `PyASCIIObject` / `PyUnicode` and associated methods on big-endian architectures. \ No newline at end of file diff --git a/newsfragments/3022.fixed.md b/newsfragments/3022.fixed.md deleted file mode 100644 index fe89640b64a..00000000000 --- a/newsfragments/3022.fixed.md +++ /dev/null @@ -1 +0,0 @@ -Fix compile error for `#[pymethods]` and `#[pyfunction]` called "output". diff --git a/newsfragments/3055.fixed.md b/newsfragments/3055.fixed.md deleted file mode 100644 index 0a070e53603..00000000000 --- a/newsfragments/3055.fixed.md +++ /dev/null @@ -1 +0,0 @@ -compile error in generated code for a `#[staticmethod]` occupying a slot diff --git a/newsfragments/3071.fixed.md b/newsfragments/3071.fixed.md deleted file mode 100644 index 50953c6f1e5..00000000000 --- a/newsfragments/3071.fixed.md +++ /dev/null @@ -1 +0,0 @@ -Fix isinstance for DateTime (was confused with Date). diff --git a/newsfragments/3088.added.md b/newsfragments/3088.added.md deleted file mode 100644 index a40bb118e65..00000000000 --- a/newsfragments/3088.added.md +++ /dev/null @@ -1 +0,0 @@ -Define `_PyDict_Contains_KnownHash()` FFI for CPython 3.10 or later. diff --git a/pyo3-build-config/Cargo.toml b/pyo3-build-config/Cargo.toml index 3c721fd2e14..505b21d79c7 100644 --- a/pyo3-build-config/Cargo.toml +++ b/pyo3-build-config/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pyo3-build-config" -version = "0.18.2" +version = "0.18.3" description = "Build configuration for the PyO3 ecosystem" authors = ["PyO3 Project and Contributors "] keywords = ["pyo3", "python", "cpython", "ffi"] diff --git a/pyo3-ffi/Cargo.toml b/pyo3-ffi/Cargo.toml index 6a433ff3e82..0747ed622c1 100644 --- a/pyo3-ffi/Cargo.toml +++ b/pyo3-ffi/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pyo3-ffi" -version = "0.18.2" +version = "0.18.3" description = "Python-API bindings for the PyO3 ecosystem" authors = ["PyO3 Project and Contributors "] 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.18.2", features = ["resolve-config"] } +pyo3-build-config = { path = "../pyo3-build-config", version = "0.18.3", features = ["resolve-config"] } diff --git a/pyo3-macros-backend/Cargo.toml b/pyo3-macros-backend/Cargo.toml index 8b450c99301..b348af5d501 100644 --- a/pyo3-macros-backend/Cargo.toml +++ b/pyo3-macros-backend/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pyo3-macros-backend" -version = "0.18.2" +version = "0.18.3" description = "Code generation for PyO3 package" authors = ["PyO3 Project and Contributors "] keywords = ["pyo3", "python", "cpython", "ffi"] diff --git a/pyo3-macros/Cargo.toml b/pyo3-macros/Cargo.toml index 88f29b26fa0..cf225540a52 100644 --- a/pyo3-macros/Cargo.toml +++ b/pyo3-macros/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "pyo3-macros" -version = "0.18.2" +version = "0.18.3" description = "Proc macros for PyO3 package" authors = ["PyO3 Project and Contributors "] 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 = "1.0.56", features = ["full", "extra-traits"] } -pyo3-macros-backend = { path = "../pyo3-macros-backend", version = "=0.18.2" } +pyo3-macros-backend = { path = "../pyo3-macros-backend", version = "=0.18.3" } diff --git a/pyproject.toml b/pyproject.toml index afd4757fcc2..2bd2c7d8070 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -20,7 +20,7 @@ exclude = ''' [tool.towncrier] filename = "CHANGELOG.md" -version = "0.18.2" +version = "0.18.3" start_string = "\n" template = ".towncrier.template.md" title_format = "## [{version}] - {project_date}"