Skip to content

Commit 3afb9bf

Browse files
authored
Bump dependency versions and Rust edition (#98)
- Dependency Updates - pyo3: 0.19.0 -> 0.25.1 - pyo3-build-config: 0.19.0 -> 0.25.1 - tokio: 1.29.1 -> 1.47.0 - tracing-subscriber: 0.3.18 -> 0.3.19 - Rust Edition 2021 -> 2024 - PyO3 upgrade related code changes: - Migrated from GIL Refs to [Bound](https://pyo3.rs/main/doc/pyo3/struct.bound) API - Replaced all GIL reference types with `Bound` smart pointers: - `&PyAny` -> `Bound<'_, PyAny>` - `&PyList` -> `Bound<'_, PyList>` - `&PyTuple` -> `Bound<'_, PyTuple>` - `&PyModule` -> `&Bound<'_, PyModule>` - Updated Type Definitions - Modified `ListOrTuple` enum to use `Bound` types and added `#[derive(Clone)]` - Updated `ListOrTupleIterator` to return `Bound<'py, PyAny>` items - API Method Updates - Constructor methods: `PyTuple::new_bound` -> `PyTuple::new`, `PyList::new_bound` -> `PyList::new` - Type access: `py.get_type_bound` -> `py.get_type` - Added error handling for fallible constructors with `?` operator - Trait Implementation Changes - `FromPyObject`: Migrated from `extract` to `extract_bound` method - Conversion methods: Replaced `into_py()` and `to_object()` with `into_pyobject().unwrap().into()` - Thread Safety - Added `unsafe impl Sync` for both `Connection` and `Cursor` structs (required for PyO3 0.23+) - Function Signatures - Added explicit `#[pyo3(signature = ...)]` attributes for functions with trailing `Option<T>` parameters: - `execute` and `executemany`: `#[pyo3(signature = (sql, parameters=None))]` - `fetchmany`: `#[pyo3(signature = (size=None))]` - `__exit__`: `#[pyo3(signature = (exc_type=None, _exc_val=None, _exc_tb=None))]` - Module Initialization - Updated pymodule function signature to accept `&Bound<'_, PyModule>` instead of `&PyModule`
2 parents 1251fa5 + 477d6bf commit 3afb9bf

File tree

3 files changed

+153
-106
lines changed

3 files changed

+153
-106
lines changed

0 commit comments

Comments
 (0)