From 751ea2fa314a7fe344b045296db4f940f89d7329 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 31 Aug 2026 17:15:09 +0000 Subject: [PATCH 1/2] chore: bump pyo3 from 0.27.2 to 0.28.3 Bumps [pyo3](https://github.com/pyo3/pyo3) from 0.27.2 to 0.28.3. - [Release notes](https://github.com/pyo3/pyo3/releases) - [Changelog](https://github.com/PyO3/pyo3/blob/main/CHANGELOG.md) - [Commits](https://github.com/pyo3/pyo3/compare/v0.27.2...v0.28.3) --- updated-dependencies: - dependency-name: pyo3 dependency-version: 0.28.3 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- Cargo.lock | 60 +++++++++++++++++++----------------------------------- Cargo.toml | 2 +- 2 files changed, 22 insertions(+), 40 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index c799100dbedf..edccd43ad7b5 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1965,15 +1965,6 @@ dependencies = [ "hashbrown 0.17.1", ] -[[package]] -name = "indoc" -version = "2.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79cf5c93f93228cf8efb3ba362535fb11199ac548a09ce117c9b1adc3030d706" -dependencies = [ - "rustversion", -] - [[package]] name = "inotify" version = "0.11.4" @@ -2443,15 +2434,6 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "38d1115007560874e373613744c6fba374c17688327a71c1476d1a5954cc857b" -[[package]] -name = "memoffset" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "488016bfae457b036d996092f6cb448677611ce4449e970ceaf42695203f218a" -dependencies = [ - "autocfg", -] - [[package]] name = "minicov" version = "0.3.8" @@ -3048,7 +3030,7 @@ dependencies = [ "insta", "prqlc", "pyo3", - "pyo3-build-config", + "pyo3-build-config 0.27.2", ] [[package]] @@ -3093,20 +3075,17 @@ dependencies = [ [[package]] name = "pyo3" -version = "0.27.2" +version = "0.28.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab53c047fcd1a1d2a8820fe84f05d6be69e9526be40cb03b73f86b6b03e6d87d" +checksum = "91fd8e38a3b50ed1167fb981cd6fd60147e091784c427b8f7183a7ee32c31c12" dependencies = [ "anyhow", - "indoc", "libc", - "memoffset", "once_cell", "portable-atomic", - "pyo3-build-config", + "pyo3-build-config 0.28.3", "pyo3-ffi", "pyo3-macros", - "unindent", ] [[package]] @@ -3118,21 +3097,30 @@ dependencies = [ "target-lexicon", ] +[[package]] +name = "pyo3-build-config" +version = "0.28.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e368e7ddfdeb98c9bca7f8383be1648fd84ab466bf2bc015e94008db6d35611e" +dependencies = [ + "target-lexicon", +] + [[package]] name = "pyo3-ffi" -version = "0.27.2" +version = "0.28.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c85c9cbfaddf651b1221594209aed57e9e5cff63c4d11d1feead529b872a089" +checksum = "7f29e10af80b1f7ccaf7f69eace800a03ecd13e883acfacc1e5d0988605f651e" dependencies = [ "libc", - "pyo3-build-config", + "pyo3-build-config 0.28.3", ] [[package]] name = "pyo3-macros" -version = "0.27.2" +version = "0.28.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a5b10c9bf9888125d917fb4d2ca2d25c8df94c7ab5a52e13313a07e050a3b02" +checksum = "df6e520eff47c45997d2fc7dd8214b25dd1310918bbb2642156ef66a67f29813" dependencies = [ "proc-macro2", "pyo3-macros-backend", @@ -3142,13 +3130,13 @@ dependencies = [ [[package]] name = "pyo3-macros-backend" -version = "0.27.2" +version = "0.28.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03b51720d314836e53327f5871d4c0cfb4fb37cc2c4a11cc71907a86342c40f9" +checksum = "c4cdc218d835738f81c2338f822078af45b4afdf8b2e33cbb5916f108b813acb" dependencies = [ "heck", "proc-macro2", - "pyo3-build-config", + "pyo3-build-config 0.28.3", "quote", "syn 2.0.119", ] @@ -4748,12 +4736,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "39ec24b3121d976906ece63c9daad25b85969647682eee313cb5779fdd69e14e" -[[package]] -name = "unindent" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7264e107f553ccae879d21fbea1d6724ac785e8c3bfc762137959b5802826ef3" - [[package]] name = "unsafe-libyaml" version = "0.2.11" diff --git a/Cargo.toml b/Cargo.toml index 4d10aa3922c6..546b309cca2c 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -54,7 +54,7 @@ insta = { version = "1.47.2", features = ["colors", "glob", "yaml", "filters"] } insta-cmd = "0.7.0" itertools = "0.15.0" log = "0.4.29" -pyo3 = { version = "0.27.1", features = ["abi3-py37", "anyhow"] } +pyo3 = { version = "0.28.3", features = ["abi3-py37", "anyhow"] } pyo3-build-config = "0.27.1" schemars = "1.2.1" semver = { version = "1.0.28", features = ["serde"] } From e978f7c56a58ab902663f30cdec91cc6e6525e0b Mon Sep 17 00:00:00 2001 From: prql-bot <107324867+prql-bot@users.noreply.github.com> Date: Mon, 31 Aug 2026 17:25:07 +0000 Subject: [PATCH 2/2] fix: opt in to `FromPyObject` for `CompileOptions` under pyo3 0.28 pyo3 0.28 deprecates the automatic `FromPyObject` impl for `#[pyclass]` types that derive `Clone`, which the clippy step's `-D warnings` turns into a build error. `compile` and `rq_to_sql` both take `Option`, so the derive is opted into rather than skipped. --- prqlc/bindings/prqlc-python/src/lib.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prqlc/bindings/prqlc-python/src/lib.rs b/prqlc/bindings/prqlc-python/src/lib.rs index 31a12374cdab..98f6d81eede9 100644 --- a/prqlc/bindings/prqlc-python/src/lib.rs +++ b/prqlc/bindings/prqlc-python/src/lib.rs @@ -99,7 +99,7 @@ fn prqlc(_py: Python, m: &Bound<'_, PyModule>) -> PyResult<()> { } /// Compilation options for SQL backend of the compiler. -#[pyclass] +#[pyclass(from_py_object)] #[derive(Clone, Debug)] pub struct CompileOptions { /// Pass generated SQL string through a formatter that splits it into