Skip to content

Updated docs

Updated docs #1

Triggered via push May 26, 2025 22:03
Status Failure
Total duration 18s
Artifacts

deploy-docs.yml

on: push
deploy-gh-pages
12s
deploy-gh-pages
Fit to window
Zoom out
Zoom in

Annotations

1 error and 347 warnings
deploy-gh-pages
Process completed with exit code 1.
for loop over a `Result`. This is more readably written as an `if let` statement: src/driver/transaction.rs#L280
warning: for loop over a `Result`. This is more readably written as an `if let` statement --> src/driver/transaction.rs:280:41 | 280 | for single_query in queries.into_bound(gil).iter() { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = note: `#[warn(for_loops_over_fallibles)]` on by default help: to check pattern in a loop use `while let` | 280 - for single_query in queries.into_bound(gil).iter() { 280 + while let Ok(single_query) = queries.into_bound(gil).iter() { | help: consider unwrapping the `Result` with `?` to iterate over its contents | 280 | for single_query in queries.into_bound(gil).iter()? { | + help: consider using `if let` to clear intent | 280 - for single_query in queries.into_bound(gil).iter() { 280 + if let Ok(single_query) = queries.into_bound(gil).iter() { |
this type has been superceded by `LazyLock` in the standard library: src/value_converter/consts.rs#L14
warning: this type has been superceded by `LazyLock` in the standard library --> src/value_converter/consts.rs:14:33 | 14 | pub static KWARGS_QUERYSTRINGS: Lazy<RwLock<HashMap<String, (String, Vec<String>)>>> = | ^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#non_std_lazy_statics help: use `std::sync::LazyLock` instead | 14 ~ pub static KWARGS_QUERYSTRINGS: std::sync::LazyLock<RwLock<HashMap<String, (String, Vec<String>)>>> = 15 ~ std::sync::LazyLock::new(|| RwLock::new(Default::default())); |
this type has been superceded by `LazyLock` in the standard library: src/statement/cache.rs#L57
warning: this type has been superceded by `LazyLock` in the standard library --> src/statement/cache.rs:57:32 | 57 | pub(crate) static STMTS_CACHE: Lazy<RwLock<StatementsCache>> = | ^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#non_std_lazy_statics = note: `-W clippy::non-std-lazy-statics` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::non_std_lazy_statics)]` help: use `std::sync::LazyLock` instead | 57 ~ pub(crate) static STMTS_CACHE: std::sync::LazyLock<RwLock<StatementsCache>> = 58 ~ std::sync::LazyLock::new(|| RwLock::new(Default::default())); |
unused `async` for function with no await statements: src/statement/statement_builder.rs#L116
warning: unused `async` for function with no await statements --> src/statement/statement_builder.rs:116:5 | 116 | / async fn write_to_cache( 117 | | &self, 118 | | mut cache_guard: RwLockWriteGuard<'_, StatementsCache>, 119 | | query: &QueryString, ... | 122 | | cache_guard.add_cache(query, inner_stmt); 123 | | } | |_____^ | = help: consider removing the `async` from this function = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_async
unused `async` for function with no await statements: src/driver/listener/core.rs#L237
warning: unused `async` for function with no await statements --> src/driver/listener/core.rs:237:5 | 237 | / async fn shutdown(&mut self) { 238 | | self.abort_listen(); 239 | | std::mem::take(&mut self.connection); 240 | | std::mem::take(&mut self.receiver); 241 | | 242 | | self.is_started = false; 243 | | } | |_____^ | = help: consider removing the `async` from this function = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_async
unused `async` for function with no await statements: src/driver/cursor.rs#L137
warning: unused `async` for function with no await statements --> src/driver/cursor.rs:137:5 | 137 | / async fn __aexit__<'a>( 138 | | &mut self, 139 | | _exception_type: Py<PyAny>, 140 | | exception: Py<PyAny>, ... | 155 | | Ok(()) 156 | | } | |_____^ | = help: consider removing the `async` from this function = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_async = note: `-W clippy::unused-async` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::unused_async)]`
docs for function returning `Result` missing `# Errors` section: src/value_converter/traits.rs#L13
warning: docs for function returning `Result` missing `# Errors` section --> src/value_converter/traits.rs:13:5 | 13 | / fn to_python_dto( 14 | | python_param: &pyo3::Bound<'_, PyAny>, 15 | | array_type_: Type, 16 | | ) -> PSQLPyResult<PythonDTO>; | |_________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/value_converter/traits.rs#L9
warning: docs for function returning `Result` missing `# Errors` section --> src/value_converter/traits.rs:9:5 | 9 | fn to_python_dto(python_param: &pyo3::Bound<'_, PyAny>) -> PSQLPyResult<PythonDTO>; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
unnecessary semicolon: src/value_converter/to_python.rs#L143
warning: unnecessary semicolon --> src/value_converter/to_python.rs:143:22 | 143 | }; | ^ help: remove | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_semicolon
unnecessary semicolon: src/value_converter/models/serde_value.rs#L166
warning: unnecessary semicolon --> src/value_converter/models/serde_value.rs:166:22 | 166 | }; | ^ help: remove | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_semicolon
docs for function returning `Result` missing `# Errors` section: src/value_converter/models/serde_value.rs#L125
warning: docs for function returning `Result` missing `# Errors` section --> src/value_converter/models/serde_value.rs:125:1 | 125 | pub fn pythondto_array_to_serde(array: Option<Array<PythonDTO>>) -> PSQLPyResult<Value> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
unneeded `return` statement: src/value_converter/models/serde_value.rs#L111
warning: unneeded `return` statement --> src/value_converter/models/serde_value.rs:111:13 | 111 | return serde_value_from_list(gil, value); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 111 - return serde_value_from_list(gil, value); 111 + serde_value_from_list(gil, value) |
unneeded `return` statement: src/value_converter/models/serde_value.rs#L100
warning: unneeded `return` statement --> src/value_converter/models/serde_value.rs:100:5 | 100 | return Ok(Value::Object(serde_map)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 100 - return Ok(Value::Object(serde_map)); 100 + Ok(Value::Object(serde_map)) |
unnecessary semicolon: src/value_converter/from_python.rs#L786
warning: unnecessary semicolon --> src/value_converter/from_python.rs:786:6 | 786 | }; | ^ help: remove | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_semicolon
unnecessary semicolon: src/value_converter/from_python.rs#L747
warning: unnecessary semicolon --> src/value_converter/from_python.rs:747:10 | 747 | }; | ^ help: remove | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_semicolon
unnecessary semicolon: src/value_converter/from_python.rs#L738
warning: unnecessary semicolon --> src/value_converter/from_python.rs:738:10 | 738 | }; | ^ help: remove | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_semicolon
unnecessary semicolon: src/value_converter/from_python.rs#L696
warning: unnecessary semicolon --> src/value_converter/from_python.rs:696:10 | 696 | }; | ^ help: remove | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_semicolon
unnecessary semicolon: src/value_converter/from_python.rs#L630
warning: unnecessary semicolon --> src/value_converter/from_python.rs:630:14 | 630 | }; | ^ help: remove | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_semicolon
useless use of `format!`: src/value_converter/from_python.rs#L429
warning: useless use of `format!` --> src/value_converter/from_python.rs:429:59 | 429 | Err(RustPSQLDriverError::PyToRustValueConversionError(format!( | ___________________________________________________________^ 430 | | "Cannot convert parameter in extra types Array", 431 | | ))) | |_____^ help: consider using `.to_string()`: `"Cannot convert parameter in extra types Array".to_string()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_format = note: `-W clippy::useless-format` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::useless_format)]`
this function could have a `#[must_use]` attribute: src/value_converter/dto/funcs.rs#L3
warning: this function could have a `#[must_use]` attribute --> src/value_converter/dto/funcs.rs:3:1 | 3 | pub fn array_type_to_single_type(array_type: &Type) -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn array_type_to_single_type(array_type: &Type) -> Type` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate
unneeded `return` statement: src/value_converter/dto/converter_impls.rs#L92
warning: unneeded `return` statement --> src/value_converter/dto/converter_impls.rs:92:9 | 92 | return Ok(PythonDTO::PyJsonb(serde_value)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 92 - return Ok(PythonDTO::PyJsonb(serde_value)); 92 + Ok(PythonDTO::PyJsonb(serde_value)) |
unneeded `return` statement: src/value_converter/dto/converter_impls.rs#L82
warning: unneeded `return` statement --> src/value_converter/dto/converter_impls.rs:82:9 | 82 | / return Err(RustPSQLDriverError::PyToRustValueConversionError( 83 | | "Cannot convert timedelta from Python to inner Rust type.".to_string(), 84 | | )); | |__________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 82 ~ Err(RustPSQLDriverError::PyToRustValueConversionError( 83 + "Cannot convert timedelta from Python to inner Rust type.".to_string(), 84 ~ )) |
unneeded `return` statement: src/value_converter/dto/converter_impls.rs#L70
warning: unneeded `return` statement --> src/value_converter/dto/converter_impls.rs:70:9 | 70 | / return Err(RustPSQLDriverError::PyToRustValueConversionError( 71 | | "Can not convert you datetime to rust type".into(), 72 | | )); | |__________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 70 ~ Err(RustPSQLDriverError::PyToRustValueConversionError( 71 + "Can not convert you datetime to rust type".into(), 72 ~ )) |
docs for function returning `Result` missing `# Errors` section: src/value_converter/consts.rs#L26
warning: docs for function returning `Result` missing `# Errors` section --> src/value_converter/consts.rs:26:1 | 26 | pub fn get_timedelta_cls(py: Python<'_>) -> PyResult<&Bound<'_, PyType>> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/value_converter/consts.rs#L17
warning: docs for function returning `Result` missing `# Errors` section --> src/value_converter/consts.rs:17:1 | 17 | pub fn get_decimal_cls(py: Python<'_>) -> PyResult<&Bound<'_, PyType>> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
calling `HashMap::default()` is more clear than this expression: src/value_converter/consts.rs#L15
warning: calling `HashMap::default()` is more clear than this expression --> src/value_converter/consts.rs:15:30 | 15 | Lazy::new(|| RwLock::new(Default::default())); | ^^^^^^^^^^^^^^^^^^ help: try: `HashMap::default()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_trait_access
very complex type used. Consider factoring parts into `type` definitions: src/value_converter/consts.rs#L14
warning: very complex type used. Consider factoring parts into `type` definitions --> src/value_converter/consts.rs:14:33 | 14 | pub static KWARGS_QUERYSTRINGS: Lazy<RwLock<HashMap<String, (String, Vec<String>)>>> = | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity = note: `-W clippy::type-complexity` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::type_complexity)]`
docs for function returning `Result` missing `# Errors` section: src/transaction/impls.rs#L20
warning: docs for function returning `Result` missing `# Errors` section --> src/transaction/impls.rs:20:5 | 20 | / pub async fn portal<T>( 21 | | &self, 22 | | querystring: &T, 23 | | params: &[&(dyn postgres_types::ToSql + Sync)], 24 | | ) -> PSQLPyResult<tp_Portal> 25 | | where 26 | | T: ?Sized + ToStatement, | |________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/transaction/impls.rs#L7
warning: docs for function returning `Result` missing `# Errors` section --> src/transaction/impls.rs:7:5 | 7 | / pub async fn query_portal( 8 | | &self, 9 | | portal: &tp_Portal, 10 | | size: i32, 11 | | ) -> PSQLPyResult<PSQLDriverPyQueryResult> { | |______________________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
`match` on a boolean expression: src/statement/statement_builder.rs#L100
warning: `match` on a boolean expression --> src/statement/statement_builder.rs:100:9 | 100 | / match self.prepared { 101 | | true => { 102 | | return Ok(PsqlpyStatement::new( 103 | | querystring, ... | 113 | | } | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool help: consider using an `if`/`else` expression | 100 ~ if self.prepared { 101 + return Ok(PsqlpyStatement::new( 102 + querystring, 103 + prepared_parameters, 104 + Some(prepared_stmt), 105 + )) 106 + } else { 107 + self.write_to_cache(cache_guard, &querystring, &prepared_stmt) 108 + .await; 109 + return Ok(PsqlpyStatement::new(querystring, prepared_parameters, None)); 110 + } |
manual implementation of `Option::map`: src/statement/statement_builder.rs#L92
warning: manual implementation of `Option::map` --> src/statement/statement_builder.rs:92:32 | 92 | let parameters_names = if let Some(converted_qs) = &querystring.converted_qs { | ________________________________^ 93 | | Some(converted_qs.params_names().clone()) 94 | | } else { 95 | | None 96 | | }; | |_________^ help: try: `querystring.converted_qs.as_ref().map(|converted_qs| converted_qs.params_names().clone())` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_map
this expression creates a reference which is immediately dereferenced by the compiler: src/statement/statement_builder.rs#L87
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/statement/statement_builder.rs:87:13 | 87 | &self.parameters, | ^^^^^^^^^^^^^^^^ help: change this to: `self.parameters` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
using `clone` on type `Option<u32>` which implements the `Copy` trait: src/statement/statement_builder.rs#L84
warning: using `clone` on type `Option<u32>` which implements the `Copy` trait --> src/statement/statement_builder.rs:84:66 | 84 | .map(|column| Column::new(column.name().to_string(), column.table_oid().clone())) | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `column.table_oid()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
this expression creates a reference which is immediately dereferenced by the compiler: src/statement/statement_builder.rs#L76
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/statement/statement_builder.rs:76:48 | 76 | let mut querystring = QueryString::new(&self.querystring); | ^^^^^^^^^^^^^^^^^ help: change this to: `self.querystring` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
unneeded `return` statement: src/statement/statement_builder.rs#L111
warning: unneeded `return` statement --> src/statement/statement_builder.rs:111:17 | 111 | return Ok(PsqlpyStatement::new(querystring, prepared_parameters, None)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 111 - return Ok(PsqlpyStatement::new(querystring, prepared_parameters, None)); 111 + Ok(PsqlpyStatement::new(querystring, prepared_parameters, None)) |
unneeded `return` statement: src/statement/statement_builder.rs#L102
warning: unneeded `return` statement --> src/statement/statement_builder.rs:102:17 | 102 | / return Ok(PsqlpyStatement::new( 103 | | querystring, 104 | | prepared_parameters, 105 | | Some(prepared_stmt), 106 | | )) | |__________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 102 ~ Ok(PsqlpyStatement::new( 103 + querystring, 104 + prepared_parameters, 105 + Some(prepared_stmt), 106 + )) |
manual implementation of `Option::map`: src/statement/statement_builder.rs#L57
warning: manual implementation of `Option::map` --> src/statement/statement_builder.rs:57:32 | 57 | let parameters_names = if let Some(converted_qs) = &cached.query.converted_qs { | ________________________________^ 58 | | Some(converted_qs.params_names().clone()) 59 | | } else { 60 | | None 61 | | }; | |_________^ help: try: `cached.query.converted_qs.as_ref().map(|converted_qs| converted_qs.params_names().clone())` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#manual_map = note: `-W clippy::manual-map` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::manual_map)]`
this expression creates a reference which is immediately dereferenced by the compiler: src/statement/statement_builder.rs#L55
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/statement/statement_builder.rs:55:36 | 55 | ParametersBuilder::new(&self.parameters, Some(cached.types()), cached.columns()); | ^^^^^^^^^^^^^^^^ help: change this to: `self.parameters` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
unneeded `return` statement: src/statement/statement_builder.rs#L65
warning: unneeded `return` statement --> src/statement/statement_builder.rs:65:9 | 65 | / return Ok(PsqlpyStatement::new( 66 | | cached.query, 67 | | prepared_parameters, 68 | | None, 69 | | )); | |__________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 65 ~ Ok(PsqlpyStatement::new( 66 + cached.query, 67 + prepared_parameters, 68 + None, 69 ~ )) |
this expression creates a reference which is immediately dereferenced by the compiler: src/statement/statement_builder.rs#L43
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/statement/statement_builder.rs:43:66 | 43 | if let Some(cached) = stmt_cache_guard.get_cache(&self.querystring) { | ^^^^^^^^^^^^^^^^^ help: change this to: `self.querystring` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
docs for function returning `Result` missing `# Errors` section: src/statement/statement_builder.rs#L39
warning: docs for function returning `Result` missing `# Errors` section --> src/statement/statement_builder.rs:39:5 | 39 | pub async fn build(self) -> PSQLPyResult<PsqlpyStatement> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
this method could have a `#[must_use]` attribute: src/statement/statement_builder.rs#L25
warning: this method could have a `#[must_use]` attribute --> src/statement/statement_builder.rs:25:5 | 25 | / pub fn new( 26 | | querystring: &'a String, 27 | | parameters: &'a Option<PyObject>, 28 | | inner_conn: &'a PSQLPyConnection, 29 | | prepared: Option<bool>, 30 | | ) -> Self { | |_____________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate help: add the attribute | 25 | #[must_use] pub fn new( | +++++++++++
this expression creates a reference which is immediately dereferenced by the compiler: src/statement/statement.rs#L55
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/statement/statement.rs:55:9 | 55 | &self.prepared_parameters.columns() | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `self.prepared_parameters.columns()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
this method could have a `#[must_use]` attribute: src/statement/statement.rs#L54
warning: this method could have a `#[must_use]` attribute --> src/statement/statement.rs:54:5 | 54 | pub fn columns(&self) -> &Vec<Column> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn columns(&self) -> &Vec<Column>` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate
this method could have a `#[must_use]` attribute: src/statement/statement.rs#L50
warning: this method could have a `#[must_use]` attribute --> src/statement/statement.rs:50:5 | 50 | pub fn params_typed(&self) -> Box<[(&(dyn ToSql + Sync), Type)]> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn params_typed(&self) -> Box<[(&(dyn ToSql + Sync), Type)]>` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate
this method could have a `#[must_use]` attribute: src/statement/statement.rs#L46
warning: this method could have a `#[must_use]` attribute --> src/statement/statement.rs:46:5 | 46 | pub fn params(&self) -> Box<[&(dyn ToSql + Sync)]> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn params(&self) -> Box<[&(dyn ToSql + Sync)]>` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate
unneeded `return` statement: src/statement/statement.rs#L39
warning: unneeded `return` statement --> src/statement/statement.rs:39:17 | 39 | / return Err(RustPSQLDriverError::ConnectionExecuteError( 40 | | "No prepared parameters".into(), 41 | | )) | |__________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 39 ~ Err(RustPSQLDriverError::ConnectionExecuteError( 40 + "No prepared parameters".into(), 41 + )) |
unneeded `return` statement: src/statement/statement.rs#L37
warning: unneeded `return` statement --> src/statement/statement.rs:37:36 | 37 | Some(prepared_stmt) => return Ok(prepared_stmt), | ^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 37 - Some(prepared_stmt) => return Ok(prepared_stmt), 37 + Some(prepared_stmt) => Ok(prepared_stmt), |
this method could have a `#[must_use]` attribute: src/statement/statement.rs#L31
warning: this method could have a `#[must_use]` attribute --> src/statement/statement.rs:31:5 | 31 | pub fn raw_query(&self) -> &str { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn raw_query(&self) -> &str` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate
module has the same name as its containing module: src/statement/mod.rs#L4
warning: module has the same name as its containing module --> src/statement/mod.rs:4:1 | 4 | pub mod statement; | ^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#module_inception = note: `-W clippy::module-inception` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::module_inception)]`
unneeded `return` statement: src/statement/query.rs#L36
warning: unneeded `return` statement --> src/statement/query.rs:36:9 | 36 | return &self.initial_qs; | ^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 36 - return &self.initial_qs; 36 + &self.initial_qs |
writing `&String` instead of `&str` involves a new object where a slice will do: src/statement/query.rs#L24
warning: writing `&String` instead of `&str` involves a new object where a slice will do --> src/statement/query.rs:24:28 | 24 | pub fn new(initial_qs: &String) -> Self { | ^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ptr_arg = note: `-W clippy::ptr-arg` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::ptr_arg)]` help: change this to | 24 ~ pub fn new(initial_qs: &str) -> Self { 25 | return Self { 26 ~ initial_qs: initial_qs.to_owned(), |
unneeded `return` statement: src/statement/query.rs#L25
warning: unneeded `return` statement --> src/statement/query.rs:25:9 | 25 | / return Self { 26 | | initial_qs: initial_qs.clone(), 27 | | converted_qs: None, 28 | | }; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 25 ~ Self { 26 + initial_qs: initial_qs.clone(), 27 + converted_qs: None, 28 ~ } |
this method could have a `#[must_use]` attribute: src/statement/query.rs#L24
warning: this method could have a `#[must_use]` attribute --> src/statement/query.rs:24:5 | 24 | pub fn new(initial_qs: &String) -> Self { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn new(initial_qs: &String) -> Self` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate
this method could have a `#[must_use]` attribute: src/statement/parameters.rs#L315
warning: this method could have a `#[must_use]` attribute --> src/statement/parameters.rs:315:5 | 315 | pub fn columns(&self) -> &Vec<Column> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn columns(&self) -> &Vec<Column>` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate
this method could have a `#[must_use]` attribute: src/statement/parameters.rs#L305
warning: this method could have a `#[must_use]` attribute --> src/statement/parameters.rs:305:5 | 305 | pub fn params_typed(&self) -> Box<[(&(dyn ToSql + Sync), Type)]> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn params_typed(&self) -> Box<[(&(dyn ToSql + Sync), Type)]>` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate
this method could have a `#[must_use]` attribute: src/statement/parameters.rs#L296
warning: this method could have a `#[must_use]` attribute --> src/statement/parameters.rs:296:5 | 296 | pub fn params(&self) -> Box<[&(dyn ToSql + Sync)]> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn params(&self) -> Box<[&(dyn ToSql + Sync)]>` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate
this method could have a `#[must_use]` attribute: src/statement/parameters.rs#L288
warning: this method could have a `#[must_use]` attribute --> src/statement/parameters.rs:288:5 | 288 | pub fn new(parameters: Vec<PythonDTO>, types: Vec<Type>, columns: Vec<Column>) -> Self { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn new(parameters: Vec<PythonDTO>, types: Vec<Type>, columns: Vec<Column>) -> Self` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate
this expression creates a reference which is immediately dereferenced by the compiler: src/statement/parameters.rs#L255
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/statement/parameters.rs:255:78 | 255 | .map(|(parameter, type_)| from_python_typed(parameter.bind(gil), &type_)) | ^^^^^^ help: change this to: `type_` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
unneeded `return` statement: src/statement/parameters.rs#L248
warning: unneeded `return` statement --> src/statement/parameters.rs:248:21 | 248 | None => return self.prepare_not_typed(gil), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 248 - None => return self.prepare_not_typed(gil), 248 + None => self.prepare_not_typed(gil), |
unneeded `return` statement: src/statement/parameters.rs#L247
warning: unneeded `return` statement --> src/statement/parameters.rs:247:28 | 247 | Some(types) => return self.prepare_typed(gil, types), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 247 - Some(types) => return self.prepare_typed(gil, types), 247 + Some(types) => self.prepare_typed(gil, types), |
variables can be used directly in the `format!` string: src/statement/parameters.rs#L220
warning: variables can be used directly in the `format!` string --> src/statement/parameters.rs:220:25 | 220 | format!("Cannot find parameter with name <{}>", param_name).into(), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#uninlined_format_args = note: `-W clippy::uninlined-format-args` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::uninlined_format_args)]` help: change this to | 220 - format!("Cannot find parameter with name <{}>", param_name).into(), 220 + format!("Cannot find parameter with name <{param_name}>").into(), |
useless conversion to the same type: `std::string::String`: src/statement/parameters.rs#L220
warning: useless conversion to the same type: `std::string::String` --> src/statement/parameters.rs:220:25 | 220 | format!("Cannot find parameter with name <{}>", param_name).into(), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `format!("Cannot find parameter with name <{}>", param_name)` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion
this expression creates a reference which is immediately dereferenced by the compiler: src/statement/parameters.rs#L180
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/statement/parameters.rs:180:78 | 180 | .map(|(parameter, type_)| from_python_typed(parameter.bind(gil), &type_)) | ^^^^^^ help: change this to: `type_` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
unneeded `return` statement: src/statement/parameters.rs#L167
warning: unneeded `return` statement --> src/statement/parameters.rs:167:21 | 167 | None => return self.prepare_not_typed(gil, parameters_names), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 167 - None => return self.prepare_not_typed(gil, parameters_names), 167 + None => self.prepare_not_typed(gil, parameters_names), |
unneeded `return` statement: src/statement/parameters.rs#L166
warning: unneeded `return` statement --> src/statement/parameters.rs:166:28 | 166 | Some(types) => return self.prepare_typed(gil, parameters_names, types), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 166 - Some(types) => return self.prepare_typed(gil, parameters_names, types), 166 + Some(types) => self.prepare_typed(gil, parameters_names, types), |
consider adding a `;` to the last statement for consistent formatting: src/statement/parameters.rs#L98
warning: consider adding a `;` to the last statement for consistent formatting --> src/statement/parameters.rs:98:21 | 98 | / prepared_parameters = Some( 99 | | MappingParametersBuilder::new(mapping, self.types, self.columns) 100 | | .prepare(gil, parameters_names)?, 101 | | ) | |_____________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#semicolon_if_nothing_returned = note: `-W clippy::semicolon-if-nothing-returned` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::semicolon_if_nothing_returned)]` help: add a `;` here | 101 | prepared_parameters = Some( 102 | MappingParametersBuilder::new(mapping, self.types, self.columns) 103 | .prepare(gil, parameters_names)?, 104 ~ ); |
unneeded `return` statement: src/statement/parameters.rs#L111
warning: unneeded `return` statement --> src/statement/parameters.rs:111:9 | 111 | / return Err(RustPSQLDriverError::PyToRustValueConversionError( 112 | | "Parameters must be sequence or mapping".into(), 113 | | )); | |__________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 111 ~ Err(RustPSQLDriverError::PyToRustValueConversionError( 112 + "Parameters must be sequence or mapping".into(), 113 ~ )) |
it is more idiomatic to use `Option<&T>` instead of `&Option<T>`: src/statement/parameters.rs#L54
warning: it is more idiomatic to use `Option<&T>` instead of `&Option<T>` --> src/statement/parameters.rs:54:5 | 54 | / pub fn new( 55 | | parameters: &Option<PyObject>, | | ----------------- help: change this to: `Option<&PyObject>` 56 | | types: Option<Vec<Type>>, 57 | | columns: Vec<Column>, ... | 64 | | } | |_____^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#ref_option = note: `-W clippy::ref-option` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::ref_option)]`
using `clone` on type `Option<u32>` which implements the `Copy` trait: src/statement/parameters.rs#L43
warning: using `clone` on type `Option<u32>` which implements the `Copy` trait --> src/statement/parameters.rs:43:9 | 43 | self.table_oid.clone() | ^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.table_oid` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
this method could have a `#[must_use]` attribute: src/statement/parameters.rs#L29
warning: this method could have a `#[must_use]` attribute --> src/statement/parameters.rs:29:5 | 29 | pub fn new(name: String, table_oid: Option<u32>) -> Self { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn new(name: String, table_oid: Option<u32>) -> Self` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate
calling `StatementsCache::default()` is more clear than this expression: src/statement/cache.rs#L58
warning: calling `StatementsCache::default()` is more clear than this expression --> src/statement/cache.rs:58:30 | 58 | Lazy::new(|| RwLock::new(Default::default())); | ^^^^^^^^^^^^^^^^^^ help: try: `StatementsCache::default()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#default_trait_access = note: `-W clippy::default-trait-access` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::default_trait_access)]`
using `clone` on type `Option<u32>` which implements the `Copy` trait: src/statement/cache.rs#L52
warning: using `clone` on type `Option<u32>` which implements the `Copy` trait --> src/statement/cache.rs:52:66 | 52 | .map(|column| Column::new(column.name().to_string(), column.table_oid().clone())) | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `column.table_oid()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
unneeded `return` statement: src/statement/cache.rs#L38
warning: unneeded `return` statement --> src/statement/cache.rs:38:9 | 38 | / return Self { 39 | | query: query.clone(), 40 | | inner_stmt: inner_stmt.clone(), 41 | | }; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 38 ~ Self { 39 + query: query.clone(), 40 + inner_stmt: inner_stmt.clone(), 41 ~ } |
this expression creates a reference which is immediately dereferenced by the compiler: src/statement/cache.rs#L20
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/statement/cache.rs:20:32 | 20 | let qs_hash = hash_str(&querystring); | ^^^^^^^^^^^^ help: change this to: `querystring` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 404 | build_array_type!(IntervalArray, PythonDTO::PyIntervalArray, Type::INTERVAL); | ---------------------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 403 | build_array_type!(CircleArray, PythonDTO::PyCircleArray, Type::CIRCLE); | ---------------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 402 | build_array_type!(LsegArray, PythonDTO::PyLsegArray, Type::LSEG); | ---------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 401 | build_array_type!(LineArray, PythonDTO::PyLineArray, Type::LINE); | ---------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 400 | build_array_type!(PathArray, PythonDTO::PyPathArray, Type::PATH); | ---------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 399 | build_array_type!(BoxArray, PythonDTO::PyBoxArray, Type::BOX); | ------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 398 | build_array_type!(PointArray, PythonDTO::PyPointArray, Type::POINT); | ------------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 397 | build_array_type!(NumericArray, PythonDTO::PyNumericArray, Type::NUMERIC); | ------------------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 396 | build_array_type!(MacAddr8Array, PythonDTO::PyMacAddr8Array, Type::MACADDR8); | ---------------------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 395 | build_array_type!(MacAddr6Array, PythonDTO::PyMacAddr6Array, Type::MACADDR); | --------------------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 390 | / build_array_type!( 391 | | DateTimeTZArray, 392 | | PythonDTO::PyDateTimeTZArray, 393 | | Type::TIMESTAMPTZ 394 | | ); | |_- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 389 | build_array_type!(DateTimeArray, PythonDTO::PyDateTimeArray, Type::TIMESTAMP); | ----------------------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 388 | build_array_type!(TimeArray, PythonDTO::PyTimeArray, Type::TIME); | ---------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 387 | build_array_type!(DateArray, PythonDTO::PyDateArray, Type::DATE); | ---------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 386 | build_array_type!(JSONArray, PythonDTO::PyJSONArray, Type::JSON); | ---------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 385 | build_array_type!(JSONBArray, PythonDTO::PyJSONBArray, Type::JSONB); | ------------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 384 | build_array_type!(IpAddressArray, PythonDTO::PyIpAddressArray, Type::INET); | -------------------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 383 | build_array_type!(MoneyArray, PythonDTO::PyMoneyArray, Type::MONEY); | ------------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 382 | build_array_type!(Float64Array, PythonDTO::PyFloat64Array, Type::FLOAT8); | ------------------------------------------------------------------------ in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 381 | build_array_type!(Float32Array, PythonDTO::PyFloat32Array, Type::FLOAT4); | ------------------------------------------------------------------------ in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 380 | build_array_type!(Int64Array, PythonDTO::PyInt64Array, Type::INT8); | ------------------------------------------------------------------ in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 379 | build_array_type!(Int32Array, PythonDTO::PyInt32Array, Type::INT4); | ------------------------------------------------------------------ in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 378 | build_array_type!(Int16Array, PythonDTO::PyInt16Array, Type::INT2); | ------------------------------------------------------------------ in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 377 | build_array_type!(TextArray, PythonDTO::PyTextArray, Type::TEXT); | ---------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 376 | build_array_type!(VarCharArray, PythonDTO::PyVarCharArray, Type::VARCHAR); | ------------------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 375 | build_array_type!(UUIDArray, PythonDTO::PyUuidArray, Type::UUID); | ---------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this method could have a `#[must_use]` attribute: src/extra_types.rs#L350
warning: this method could have a `#[must_use]` attribute --> src/extra_types.rs:350:13 | 350 | pub fn element_type() -> Type { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn element_type() -> Type` ... 374 | build_array_type!(BoolArray, PythonDTO::PyBoolArray, Type::BOOL); | ---------------------------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: this warning originates in the macro `build_array_type` (in Nightly builds, run with -Z macro-backtrace for more info)
this lifetime isn't used in the function definition: src/driver/transaction.rs#L264
warning: this lifetime isn't used in the function definition --> src/driver/transaction.rs:264:27 | 264 | pub async fn pipeline<'py>( | ^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes
docs for function returning `Result` missing `# Errors` section: src/driver/transaction.rs#L264
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/transaction.rs:264:5 | 264 | / pub async fn pipeline<'py>( 265 | | self_: Py<Self>, 266 | | queries: Option<Py<PyList>>, 267 | | prepared: Option<bool>, 268 | | ) -> PSQLPyResult<Vec<PSQLDriverPyQueryResult>> { | |___________________________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/driver/transaction.rs#L250
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/transaction.rs:250:5 | 250 | pub async fn rollback_savepoint(&mut self, savepoint_name: String) -> PSQLPyResult<()> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/driver/transaction.rs#L237
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/transaction.rs:237:5 | 237 | pub async fn release_savepoint(&mut self, savepoint_name: String) -> PSQLPyResult<()> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/driver/transaction.rs#L224
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/transaction.rs:224:5 | 224 | pub async fn create_savepoint(&mut self, savepoint_name: String) -> PSQLPyResult<()> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/driver/transaction.rs#L208
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/transaction.rs:208:5 | 208 | / pub async fn fetch_row( 209 | | &self, 210 | | querystring: String, 211 | | parameters: Option<Py<PyAny>>, 212 | | prepared: Option<bool>, 213 | | ) -> PSQLPyResult<PSQLDriverSinglePyQueryResult> { | |____________________________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/driver/transaction.rs#L191
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/transaction.rs:191:5 | 191 | / pub async fn execute_many( 192 | | &self, 193 | | querystring: String, 194 | | parameters: Option<Vec<Py<PyAny>>>, 195 | | prepared: Option<bool>, 196 | | ) -> PSQLPyResult<()> { | |_________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/driver/transaction.rs#L181
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/transaction.rs:181:5 | 181 | pub async fn execute_batch(&self, querystring: String) -> PSQLPyResult<()> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/driver/transaction.rs#L165
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/transaction.rs:165:5 | 165 | / pub async fn fetch_val( 166 | | &self, 167 | | querystring: String, 168 | | parameters: Option<pyo3::Py<PyAny>>, 169 | | prepared: Option<bool>, 170 | | ) -> PSQLPyResult<Py<PyAny>> { | |________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/driver/transaction.rs#L150
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/transaction.rs:150:5 | 150 | / pub async fn fetch( 151 | | &self, 152 | | querystring: String, 153 | | parameters: Option<pyo3::Py<PyAny>>, 154 | | prepared: Option<bool>, 155 | | ) -> PSQLPyResult<PSQLDriverPyQueryResult> { | |______________________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/driver/transaction.rs#L135
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/transaction.rs:135:5 | 135 | / pub async fn execute( 136 | | &self, 137 | | querystring: String, 138 | | parameters: Option<pyo3::Py<PyAny>>, 139 | | prepared: Option<bool>, 140 | | ) -> PSQLPyResult<PSQLDriverPyQueryResult> { | |______________________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/driver/transaction.rs#L121
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/transaction.rs:121:5 | 121 | pub async fn begin(&mut self) -> PSQLPyResult<()> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
unneeded `return` statement: src/driver/transaction.rs#L117
warning: unneeded `return` statement --> src/driver/transaction.rs:117:13 | 117 | return Err(RustPSQLDriverError::RustPyError(py_err)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 117 - return Err(RustPSQLDriverError::RustPyError(py_err)); 117 + Err(RustPSQLDriverError::RustPyError(py_err)) |
this lifetime isn't used in the function definition: src/driver/transaction.rs#L85
warning: this lifetime isn't used in the function definition --> src/driver/transaction.rs:85:24 | 85 | async fn __aexit__<'a>( | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes
unneeded `return` statement: src/driver/transaction.rs#L81
warning: unneeded `return` statement --> src/driver/transaction.rs:81:9 | 81 | return Ok(self_); | ^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 81 - return Ok(self_); 81 + Ok(self_) |
this lifetime isn't used in the function definition: src/driver/transaction.rs#L62
warning: this lifetime isn't used in the function definition --> src/driver/transaction.rs:62:25 | 62 | async fn __aenter__<'a>(self_: Py<Self>) -> PSQLPyResult<Py<Self>> { | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes
this method could have a `#[must_use]` attribute: src/driver/transaction.rs#L34
warning: this method could have a `#[must_use]` attribute --> src/driver/transaction.rs:34:5 | 34 | / pub fn new( 35 | | conn: Option<Arc<RwLock<PSQLPyConnection>>>, 36 | | pg_config: Arc<Config>, 37 | | isolation_level: Option<IsolationLevel>, 38 | | read_variant: Option<ReadVariant>, 39 | | deferrable: Option<bool>, 40 | | ) -> Self { | |_____________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate help: add the attribute | 34 | #[must_use] pub fn new( | +++++++++++
this function's return value is unnecessarily wrapped by `Result`: src/driver/prepared_statement.rs#L49
warning: this function's return value is unnecessarily wrapped by `Result` --> src/driver/prepared_statement.rs:49:5 | 49 | / fn cursor(&self) -> PSQLPyResult<Cursor> { 50 | | Ok(Cursor::new( 51 | | self.conn.clone(), 52 | | None, ... | 57 | | )) 58 | | } | |_____^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_wraps = note: `-W clippy::unnecessary-wraps` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::unnecessary_wraps)]` help: remove `Result` from the return type... | 49 - fn cursor(&self) -> PSQLPyResult<Cursor> { 49 + fn cursor(&self) -> driver::cursor::Cursor { | help: ...and then change returning expressions | 50 ~ Cursor::new( 51 + self.conn.clone(), 52 + None, 53 + None, 54 + None, 55 + self.pg_config.clone(), 56 + Some(self.statement.clone()), 57 + ) |
this method could have a `#[must_use]` attribute: src/driver/prepared_statement.rs#L25
warning: this method could have a `#[must_use]` attribute --> src/driver/prepared_statement.rs:25:5 | 25 | / pub fn new( 26 | | conn: Option<Arc<RwLock<PSQLPyConnection>>>, 27 | | pg_config: Arc<Config>, 28 | | statement: PsqlpyStatement, 29 | | ) -> Self { | |_____________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate help: add the attribute | 25 | #[must_use] pub fn new( | +++++++++++
unnecessary semicolon: src/driver/listener/structs.rs#L25
warning: unnecessary semicolon --> src/driver/listener/structs.rs:25:10 | 25 | }; | ^ help: remove | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_semicolon
this lifetime isn't used in the function definition: src/driver/listener/core.rs#L100
warning: this lifetime isn't used in the function definition --> src/driver/listener/core.rs:100:24 | 100 | async fn __aexit__<'a>( | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes
this lifetime isn't used in the function definition: src/driver/listener/core.rs#L95
warning: this lifetime isn't used in the function definition --> src/driver/listener/core.rs:95:25 | 95 | async fn __aenter__<'a>(slf: Py<Self>) -> PSQLPyResult<Py<Self>> { | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes
this argument is passed by value, but not consumed in the function body: src/driver/listener/core.rs#L48
warning: this argument is passed by value, but not consumed in the function body --> src/driver/listener/core.rs:48:27 | 48 | pub fn new(pg_config: Arc<Config>, ca_file: Option<String>, ssl_mode: Option<SslMode>) -> Self { | ^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_pass_by_value = note: `-W clippy::needless-pass-by-value` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::needless_pass_by_value)]` help: consider taking a reference instead | 48 | pub fn new(pg_config: &Arc<Config>, ca_file: Option<String>, ssl_mode: Option<SslMode>) -> Self { | +
this expression creates a reference which is immediately dereferenced by the compiler: src/driver/cursor.rs#L205
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/driver/cursor.rs:205:55 | 205 | write_conn_g.portal(None, &None, Some(&statement)).await? | ^^^^^^^^^^ help: change this to: `statement` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
this expression creates a reference which is immediately dereferenced by the compiler: src/driver/cursor.rs#L196
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/driver/cursor.rs:196:34 | 196 | .portal(Some(&querystring), &self.parameters, None) | ^^^^^^^^^^^^ help: change this to: `querystring` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let`: src/driver/cursor.rs#L193
warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` --> src/driver/cursor.rs:193:36 | 193 | let (txid, inner_portal) = match &self.querystring { | ____________________________________^ 194 | | Some(querystring) => { 195 | | write_conn_g 196 | | .portal(Some(&querystring), &self.parameters, None) ... | 207 | | }; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match_else help: try | 193 ~ let (txid, inner_portal) = if let Some(querystring) = &self.querystring { 194 + write_conn_g 195 + .portal(Some(&querystring), &self.parameters, None) 196 + .await? 197 + } else { 198 + let Some(statement) = &self.statement else { 199 + return Err(RustPSQLDriverError::CursorStartError( 200 + "Cannot start cursor".into(), 201 + )); 202 + }; 203 + write_conn_g.portal(None, &None, Some(&statement)).await? 204 ~ }; |
unnecessary semicolon: src/driver/cursor.rs#L178
warning: unnecessary semicolon --> src/driver/cursor.rs:178:18 | 178 | }; | ^ help: remove | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_semicolon
this expression creates a reference which is immediately dereferenced by the compiler: src/driver/cursor.rs#L171
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/driver/cursor.rs:171:48 | 171 | let result = txid.query_portal(&portal, size).await?; | ^^^^^^^ help: change this to: `portal` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
using `clone` on type `i32` which implements the `Copy` trait: src/driver/cursor.rs#L161
warning: using `clone` on type `i32` which implements the `Copy` trait --> src/driver/cursor.rs:161:20 | 161 | let size = self.array_size.clone(); | ^^^^^^^^^^^^^^^^^^^^^^^ help: try removing the `clone` call: `self.array_size` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy = note: `-W clippy::clone-on-copy` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::clone_on_copy)]`
this lifetime isn't used in the function definition: src/driver/cursor.rs#L137
warning: this lifetime isn't used in the function definition --> src/driver/cursor.rs:137:24 | 137 | async fn __aexit__<'a>( | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes
you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let`: src/driver/cursor.rs#L110
warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` --> src/driver/cursor.rs:110:36 | 110 | let (txid, inner_portal) = match querystring { | ____________________________________^ 111 | | Some(querystring) => { 112 | | write_conn_g 113 | | .portal(Some(&querystring), &parameters, None) ... | 124 | | }; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match_else help: try | 110 ~ let (txid, inner_portal) = if let Some(querystring) = querystring { 111 + write_conn_g 112 + .portal(Some(&querystring), &parameters, None) 113 + .await? 114 + } else { 115 + let Some(statement) = statement else { 116 + return Err(RustPSQLDriverError::CursorStartError( 117 + "Cannot start cursor".into(), 118 + )); 119 + }; 120 + write_conn_g.portal(None, &None, Some(&statement)).await? 121 ~ }; |
this lifetime isn't used in the function definition: src/driver/cursor.rs#L94
warning: this lifetime isn't used in the function definition --> src/driver/cursor.rs:94:25 | 94 | async fn __aenter__<'a>(slf: Py<Self>) -> PSQLPyResult<Py<Self>> { | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes
this expression creates a reference which is immediately dereferenced by the compiler: src/driver/cursor.rs#L63
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/driver/cursor.rs:63:34 | 63 | transaction.query_portal(&portal, size).await | ^^^^^^^ help: change this to: `portal` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
this method could have a `#[must_use]` attribute: src/driver/cursor.rs#L36
warning: this method could have a `#[must_use]` attribute --> src/driver/cursor.rs:36:5 | 36 | / pub fn new( 37 | | conn: Option<Arc<RwLock<PSQLPyConnection>>>, 38 | | querystring: Option<String>, 39 | | parameters: Option<Py<PyAny>>, ... | 42 | | statement: Option<PsqlpyStatement>, 43 | | ) -> Self { | |_____________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate help: add the attribute | 36 | #[must_use] pub fn new( | +++++++++++
unnecessary semicolon: src/driver/connection_pool_builder.rs#L55
warning: unnecessary semicolon --> src/driver/connection_pool_builder.rs:55:10 | 55 | }; | ^ help: remove | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_semicolon
docs for function returning `Result` missing `# Errors` section: src/driver/connection_pool.rs#L247
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/connection_pool.rs:247:5 | 247 | pub async fn retrieve_connection(&mut self) -> PSQLPyResult<Connection> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
this lifetime isn't used in the function definition: src/driver/connection.rs#L372
warning: this lifetime isn't used in the function definition --> src/driver/connection.rs:372:28 | 372 | pub async fn fetch_val<'a>( | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes
this lifetime isn't used in the function definition: src/driver/connection.rs#L281
warning: this lifetime isn't used in the function definition --> src/driver/connection.rs:281:31 | 281 | pub async fn execute_many<'a>( | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes
this lifetime isn't used in the function definition: src/driver/connection.rs#L194
warning: this lifetime isn't used in the function definition --> src/driver/connection.rs:194:24 | 194 | async fn __aexit__<'a>( | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes
this lifetime isn't used in the function definition: src/driver/connection.rs#L161
warning: this lifetime isn't used in the function definition --> src/driver/connection.rs:161:25 | 161 | async fn __aenter__<'a>(self_: Py<Self>) -> PSQLPyResult<Py<Self>> { | ^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#extra_unused_lifetimes = note: `-W clippy::extra-unused-lifetimes` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::extra_unused_lifetimes)]`
docs for function returning `Result` missing `# Errors` section: src/driver/common.rs#L234
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/common.rs:234:13 | 234 | / pub async fn binary_copy_to_table( 235 | | self_: pyo3::Py<Self>, 236 | | source: Py<PyAny>, 237 | | table_name: String, 238 | | columns: Option<Vec<String>>, 239 | | schema_name: Option<String>, 240 | | ) -> PSQLPyResult<u64> { | |__________________________________^ ... 291 | impl_binary_copy_method!(Transaction); | ------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc = note: this warning originates in the macro `impl_binary_copy_method` (in Nightly builds, run with -Z macro-backtrace for more info)
docs for function returning `Result` missing `# Errors` section: src/driver/common.rs#L234
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/common.rs:234:13 | 234 | / pub async fn binary_copy_to_table( 235 | | self_: pyo3::Py<Self>, 236 | | source: Py<PyAny>, 237 | | table_name: String, 238 | | columns: Option<Vec<String>>, 239 | | schema_name: Option<String>, 240 | | ) -> PSQLPyResult<u64> { | |__________________________________^ ... 290 | impl_binary_copy_method!(Connection); | ------------------------------------ in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc = note: this warning originates in the macro `impl_binary_copy_method` (in Nightly builds, run with -Z macro-backtrace for more info)
docs for function returning `Result` missing `# Errors` section: src/driver/common.rs#L209
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/common.rs:209:13 | 209 | pub async fn rollback(&mut self) -> PSQLPyResult<()> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ... 227 | impl_transaction_methods!(Transaction, true); | -------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc = note: this warning originates in the macro `impl_transaction_methods` (in Nightly builds, run with -Z macro-backtrace for more info)
docs for function returning `Result` missing `# Errors` section: src/driver/common.rs#L194
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/common.rs:194:13 | 194 | pub async fn commit(&mut self) -> PSQLPyResult<()> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ... 227 | impl_transaction_methods!(Transaction, true); | -------------------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc = note: this warning originates in the macro `impl_transaction_methods` (in Nightly builds, run with -Z macro-backtrace for more info)
docs for function returning `Result` missing `# Errors` section: src/driver/common.rs#L163
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/common.rs:163:13 | 163 | / pub async fn prepare( 164 | | &self, 165 | | querystring: String, 166 | | parameters: Option<pyo3::Py<PyAny>>, 167 | | ) -> PSQLPyResult<PreparedStatement> { | |________________________________________________^ ... 188 | impl_prepare_method!(Connection); | -------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc = note: this warning originates in the macro `impl_prepare_method` (in Nightly builds, run with -Z macro-backtrace for more info)
docs for function returning `Result` missing `# Errors` section: src/driver/common.rs#L163
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/common.rs:163:13 | 163 | / pub async fn prepare( 164 | | &self, 165 | | querystring: String, 166 | | parameters: Option<pyo3::Py<PyAny>>, 167 | | ) -> PSQLPyResult<PreparedStatement> { | |________________________________________________^ ... 187 | impl_prepare_method!(Transaction); | --------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc = note: this warning originates in the macro `impl_prepare_method` (in Nightly builds, run with -Z macro-backtrace for more info)
docs for function returning `Result` missing `# Errors` section: src/driver/common.rs#L136
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/common.rs:136:13 | 136 | / pub fn cursor( 137 | | &self, 138 | | querystring: Option<String>, 139 | | parameters: Option<Py<PyAny>>, 140 | | fetch_number: Option<i32>, 141 | | ) -> PSQLPyResult<Cursor> { | |_____________________________________^ ... 156 | impl_cursor_method!(Connection); | ------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc = note: this warning originates in the macro `impl_cursor_method` (in Nightly builds, run with -Z macro-backtrace for more info)
docs for function returning `Result` missing `# Errors` section: src/driver/common.rs#L136
warning: docs for function returning `Result` missing `# Errors` section --> src/driver/common.rs:136:13 | 136 | / pub fn cursor( 137 | | &self, 138 | | querystring: Option<String>, 139 | | parameters: Option<Py<PyAny>>, 140 | | fetch_number: Option<i32>, 141 | | ) -> PSQLPyResult<Cursor> { | |_____________________________________^ ... 155 | impl_cursor_method!(Transaction); | -------------------------------- in this macro invocation | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc = note: this warning originates in the macro `impl_cursor_method` (in Nightly builds, run with -Z macro-backtrace for more info)
unnecessary semicolon: src/connection/traits.rs#L61
warning: unnecessary semicolon --> src/connection/traits.rs:61:10 | 61 | }; | ^ help: remove | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unnecessary_semicolon = note: `-W clippy::unnecessary-semicolon` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::unnecessary_semicolon)]`
this method could have a `#[must_use]` attribute: src/connection/structs.rs#L34
warning: this method could have a `#[must_use]` attribute --> src/connection/structs.rs:34:5 | 34 | pub fn new(connection: Client, pg_config: Arc<Config>) -> Self { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn new(connection: Client, pg_config: Arc<Config>) -> Self` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate
this method could have a `#[must_use]` attribute: src/connection/structs.rs#L15
warning: this method could have a `#[must_use]` attribute --> src/connection/structs.rs:15:5 | 15 | pub fn new(connection: Object, pg_config: Arc<Config>) -> Self { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn new(connection: Object, pg_config: Arc<Config>) -> Self` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate
you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let`: src/connection/impls.rs#L542
warning: you seem to be trying to use `match` for destructuring a single pattern. Consider using `if let` --> src/connection/impls.rs:542:13 | 542 | / match statement { 543 | | Some(stmt) => stmt, 544 | | None => { 545 | | let Some(querystring) = querystring else { ... | 555 | | } | |_____________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_match_else = note: `-W clippy::single-match-else` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::single_match_else)]` help: try | 542 ~ if let Some(stmt) = statement { stmt } else { 543 + let Some(querystring) = querystring else { 544 + return Err(RustPSQLDriverError::ConnectionExecuteError( 545 + "Can't create cursor without querystring".into(), 546 + )); 547 + }; 548 + 549 + &StatementBuilder::new(querystring, parameters, self, Some(false)) 550 + .build() 551 + .await? 552 + } |
docs for function returning `Result` missing `# Errors` section: src/connection/impls.rs#L535
warning: docs for function returning `Result` missing `# Errors` section --> src/connection/impls.rs:535:5 | 535 | / pub async fn portal( 536 | | &mut self, 537 | | querystring: Option<&String>, 538 | | parameters: &Option<pyo3::Py<PyAny>>, 539 | | statement: Option<&PsqlpyStatement>, 540 | | ) -> PSQLPyResult<(PSQLPyTransaction, tp_Portal)> { | |_____________________________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/connection/impls.rs#L514
warning: docs for function returning `Result` missing `# Errors` section --> src/connection/impls.rs:514:5 | 514 | pub async fn transaction(&mut self) -> PSQLPyResult<PSQLPyTransaction> { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/connection/impls.rs#L499
warning: docs for function returning `Result` missing `# Errors` section --> src/connection/impls.rs:499:5 | 499 | / pub async fn copy_in<T, U>(&self, statement: &T) -> PSQLPyResult<CopyInSink<U>> 500 | | where 501 | | T: ?Sized + ToStatement, 502 | | U: Buf + 'static + Send, | |________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
unneeded `return` statement: src/connection/impls.rs#L493
warning: unneeded `return` statement --> src/connection/impls.rs:493:9 | 493 | / return Python::with_gil(|gil| match result.columns().first() { 494 | | Some(first_column) => postgres_to_py(gil, &result, first_column, 0, &None), 495 | | None => Ok(gil.None()), 496 | | }); | |__________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 493 ~ Python::with_gil(|gil| match result.columns().first() { 494 + Some(first_column) => postgres_to_py(gil, &result, first_column, 0, &None), 495 + None => Ok(gil.None()), 496 ~ }) |
docs for function returning `Result` missing `# Errors` section: src/connection/impls.rs#L483
warning: docs for function returning `Result` missing `# Errors` section --> src/connection/impls.rs:483:5 | 483 | / pub async fn fetch_val( 484 | | &self, 485 | | querystring: String, 486 | | parameters: Option<pyo3::Py<PyAny>>, 487 | | prepared: Option<bool>, 488 | | ) -> PSQLPyResult<pyo3::Py<PyAny>> { | |______________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
unneeded `return` statement: src/connection/impls.rs#L480
warning: unneeded `return` statement --> src/connection/impls.rs:480:9 | 480 | return Ok(PSQLDriverSinglePyQueryResult::new(result)); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 480 - return Ok(PSQLDriverSinglePyQueryResult::new(result)); 480 + Ok(PSQLDriverSinglePyQueryResult::new(result)) |
docs for function returning `Result` missing `# Errors` section: src/connection/impls.rs#L470
warning: docs for function returning `Result` missing `# Errors` section --> src/connection/impls.rs:470:5 | 470 | / pub async fn fetch_row( 471 | | &self, 472 | | querystring: String, 473 | | parameters: Option<pyo3::Py<PyAny>>, 474 | | prepared: Option<bool>, 475 | | ) -> PSQLPyResult<PSQLDriverSinglePyQueryResult> { | |____________________________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
this expression creates a reference which is immediately dereferenced by the compiler: src/connection/impls.rs#L450
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/connection/impls.rs:450:30 | 450 | .prepare(&statement.raw_query(), true) | ^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `statement.raw_query()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
unneeded `return` statement: src/connection/impls.rs#L467
warning: unneeded `return` statement --> src/connection/impls.rs:467:9 | 467 | return Ok(result); | ^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 467 - return Ok(result); 467 + Ok(result) |
docs for function returning `Result` missing `# Errors` section: src/connection/impls.rs#L435
warning: docs for function returning `Result` missing `# Errors` section --> src/connection/impls.rs:435:5 | 435 | / pub async fn fetch_row_raw( 436 | | &self, 437 | | querystring: String, 438 | | parameters: Option<pyo3::Py<PyAny>>, 439 | | prepared: Option<bool>, 440 | | ) -> PSQLPyResult<Row> { | |__________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
this expression creates a reference which is immediately dereferenced by the compiler: src/connection/impls.rs#L417
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/connection/impls.rs:417:35 | 417 | &self.prepare(&statement.raw_query(), true).await?, | ^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `statement.raw_query()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
this expression creates a reference which is immediately dereferenced by the compiler: src/connection/impls.rs#L410
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/connection/impls.rs:410:51 | 410 | let prepared_stmt = &self.prepare(&statement.raw_query(), true).await; | ^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `statement.raw_query()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow = note: `-W clippy::needless-borrow` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_borrow)]`
unneeded `return` statement: src/connection/impls.rs#L432
warning: unneeded `return` statement --> src/connection/impls.rs:432:9 | 432 | return Ok(()); | ^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 432 - return Ok(()); 432 + Ok(()) |
docs for function returning `Result` missing `# Errors` section: src/connection/impls.rs#L387
warning: docs for function returning `Result` missing `# Errors` section --> src/connection/impls.rs:387:5 | 387 | / pub async fn execute_many( 388 | | &self, 389 | | querystring: String, 390 | | parameters: Option<Vec<pyo3::Py<PyAny>>>, 391 | | prepared: Option<bool>, 392 | | ) -> PSQLPyResult<()> { | |_________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
`match` on a boolean expression: src/connection/impls.rs#L367
warning: `match` on a boolean expression --> src/connection/impls.rs:367:22 | 367 | let result = match prepared { | ______________________^ 368 | | true => { 369 | | self.query(statement.statement_query()?, &statement.params()) 370 | | .await ... | 376 | | }; | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#match_bool = note: `-W clippy::match-bool` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::match_bool)]` help: consider using an `if`/`else` expression | 367 ~ let result = if prepared { 368 + self.query(statement.statement_query()?, &statement.params()) 369 + .await 370 + } else { 371 + self.query_typed(statement.raw_query(), &statement.params_typed()) 372 + .await 373 ~ }; |
docs for function returning `Result` missing `# Errors` section: src/connection/impls.rs#L356
warning: docs for function returning `Result` missing `# Errors` section --> src/connection/impls.rs:356:5 | 356 | / pub async fn execute( 357 | | &self, 358 | | querystring: String, 359 | | parameters: Option<pyo3::Py<PyAny>>, 360 | | prepared: Option<bool>, 361 | | ) -> PSQLPyResult<PSQLDriverPyQueryResult> { | |______________________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/connection/impls.rs#L345
warning: docs for function returning `Result` missing `# Errors` section --> src/connection/impls.rs:345:5 | 345 | / pub async fn execute_statement( 346 | | &self, 347 | | statement: &PsqlpyStatement, 348 | | ) -> PSQLPyResult<PSQLDriverPyQueryResult> { | |______________________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc
docs for function returning `Result` missing `# Errors` section: src/connection/impls.rs#L335
warning: docs for function returning `Result` missing `# Errors` section --> src/connection/impls.rs:335:5 | 335 | / pub async fn prepare_statement( 336 | | &self, 337 | | querystring: String, 338 | | parameters: Option<pyo3::Py<PyAny>>, 339 | | ) -> PSQLPyResult<PsqlpyStatement> { | |______________________________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#missing_errors_doc = note: `-W clippy::missing-errors-doc` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::missing_errors_doc)]`
this method could have a `#[must_use]` attribute: src/connection/impls.rs#L328
warning: this method could have a `#[must_use]` attribute --> src/connection/impls.rs:328:5 | 328 | pub fn in_transaction(&self) -> bool { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: add the attribute: `#[must_use] pub fn in_transaction(&self) -> bool` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#must_use_candidate = note: `-W clippy::must-use-candidate` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::must_use_candidate)]`
used underscore-prefixed item: src/connection/impls.rs#L218
warning: used underscore-prefixed item --> src/connection/impls.rs:218:19 | 218 | let res = self._rollback().await?; | ^^^^^^^^^^^^^^^^ | note: item is defined here --> src/connection/traits.rs:87:5 | 87 | fn _rollback(&self) -> impl std::future::Future<Output = PSQLPyResult<()>>; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#used_underscore_items
this let-binding has unit value: src/connection/impls.rs#L218
warning: this let-binding has unit value --> src/connection/impls.rs:218:9 | 218 | let res = self._rollback().await?; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value help: omit the `let` binding and replace variable usages with `()` | 218 ~ self._rollback().await?; 219 | self.in_transaction = false; 220 | 221 ~ Ok(()) |
used underscore-prefixed item: src/connection/impls.rs#L211
warning: used underscore-prefixed item --> src/connection/impls.rs:211:19 | 211 | let res = self._commit().await?; | ^^^^^^^^^^^^^^ | note: item is defined here --> src/connection/traits.rs:85:5 | 85 | fn _commit(&self) -> impl std::future::Future<Output = PSQLPyResult<()>>; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#used_underscore_items
this let-binding has unit value: src/connection/impls.rs#L211
warning: this let-binding has unit value --> src/connection/impls.rs:211:9 | 211 | let res = self._commit().await?; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value help: omit the `let` binding and replace variable usages with `()` | 211 ~ self._commit().await?; 212 | self.in_transaction = false; 213 | 214 ~ Ok(()) |
used underscore-prefixed item: src/connection/impls.rs#L204
warning: used underscore-prefixed item --> src/connection/impls.rs:204:9 | 204 | self._start_transaction(isolation_level, read_variant, deferrable) | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | note: item is defined here --> src/connection/traits.rs:78:5 | 78 | / fn _start_transaction( 79 | | &mut self, 80 | | isolation_level: Option<IsolationLevel>, 81 | | read_variant: Option<ReadVariant>, 82 | | deferrable: Option<bool>, 83 | | ) -> impl std::future::Future<Output = PSQLPyResult<()>>; | |_____________________________________________________________^ = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#used_underscore_items
unneeded `return` statement: src/connection/impls.rs#L152
warning: unneeded `return` statement --> src/connection/impls.rs:152:9 | 152 | return Ok(prepared); | ^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return help: remove `return` | 152 - return Ok(prepared); 152 + Ok(prepared) |
used underscore-prefixed item: src/connection/impls.rs#L137
warning: used underscore-prefixed item --> src/connection/impls.rs:137:19 | 137 | let res = self._rollback().await?; | ^^^^^^^^^^^^^^^^ | note: item is defined here --> src/connection/traits.rs:87:5 | 87 | fn _rollback(&self) -> impl std::future::Future<Output = PSQLPyResult<()>>; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#used_underscore_items
this let-binding has unit value: src/connection/impls.rs#L137
warning: this let-binding has unit value --> src/connection/impls.rs:137:9 | 137 | let res = self._rollback().await?; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value help: omit the `let` binding and replace variable usages with `()` | 137 ~ self._rollback().await?; 138 | self.in_transaction = false; 139 | 140 ~ Ok(()) |
used underscore-prefixed item: src/connection/impls.rs#L130
warning: used underscore-prefixed item --> src/connection/impls.rs:130:19 | 130 | let res = self._commit().await?; | ^^^^^^^^^^^^^^ | note: item is defined here --> src/connection/traits.rs:85:5 | 85 | fn _commit(&self) -> impl std::future::Future<Output = PSQLPyResult<()>>; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#used_underscore_items
this let-binding has unit value: src/connection/impls.rs#L130
warning: this let-binding has unit value --> src/connection/impls.rs:130:9 | 130 | let res = self._commit().await?; | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value help: omit the `let` binding and replace variable usages with `()` | 130 ~ self._commit().await?; 131 | self.in_transaction = false; 132 | 133 ~ Ok(()) |
used underscore-prefixed item: src/connection/impls.rs#L119
warning: used underscore-prefixed item --> src/connection/impls.rs:119:19 | 119 | let res = self | ___________________^ 120 | | ._start_transaction(isolation_level, read_variant, deferrable) | |__________________________________________________________________________^ | note: item is defined here --> src/connection/traits.rs:78:5 | 78 | / fn _start_transaction( 79 | | &mut self, 80 | | isolation_level: Option<IsolationLevel>, 81 | | read_variant: Option<ReadVariant>, 82 | | deferrable: Option<bool>, 83 | | ) -> impl std::future::Future<Output = PSQLPyResult<()>>; | |_____________________________________________________________^ = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#used_underscore_items = note: `-W clippy::used-underscore-items` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::used_underscore_items)]`
this let-binding has unit value: src/connection/impls.rs#L119
warning: this let-binding has unit value --> src/connection/impls.rs:119:9 | 119 | / let res = self 120 | | ._start_transaction(isolation_level, read_variant, deferrable) 121 | | .await?; | |____________________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#let_unit_value = note: `-W clippy::let-unit-value` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::let_unit_value)]` help: omit the `let` binding and replace variable usages with `()` | 119 ~ self 120 + ._start_transaction(isolation_level, read_variant, deferrable) 121 + .await?; 122 | self.in_transaction = true; 123 | 124 ~ Ok(()) |
unneeded `return` statement: src/connection/impls.rs#L68
warning: unneeded `return` statement --> src/connection/impls.rs:68:9 | 68 | return Ok(prepared_stmt); | ^^^^^^^^^^^^^^^^^^^^^^^^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_return = note: `-W clippy::needless-return` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::needless_return)]` help: remove `return` | 68 - return Ok(prepared_stmt); 68 + Ok(prepared_stmt) |
useless conversion to the same type: `std::string::String`: src/connection/impls.rs#L35
warning: useless conversion to the same type: `std::string::String` --> src/connection/impls.rs:35:17 | 35 | format!("Cannot start transaction due to - {err}").into(), | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: consider removing `.into()`: `format!("Cannot start transaction due to - {err}")` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion = note: `-W clippy::useless-conversion` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::useless_conversion)]`
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L582
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:582:23 | 582 | Ok(result_py_dict.to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L576
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:576:26 | 576 | .to_object(py), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L567
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:567:75 | 567 | postgres_bytes_to_py(py, &Type::VARCHAR, buf, false)?.to_object(py), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L561
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:561:74 | 561 | postgres_bytes_to_py(py, field.type_(), buf, false)?.to_object(py), | ^^^^^^^^^
use of deprecated associated function `pyo3::types::PyDict::new_bound`: renamed to `PyDict::new`: src/value_converter/to_python.rs#L529
warning: use of deprecated associated function `pyo3::types::PyDict::new_bound`: renamed to `PyDict::new` --> src/value_converter/to_python.rs:529:53 | 529 | let result_py_dict: Bound<'_, PyDict> = PyDict::new_bound(py); | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L507
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:507:48 | 507 | return Ok(real_vector.to_vec().to_object(py)); | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L487
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:487:58 | 487 | Ok(postgres_array_to_py(py, interval_array_).to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L480
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:480:56 | 480 | Ok(postgres_array_to_py(py, circle_array_).to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L474
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:474:54 | 474 | Ok(postgres_array_to_py(py, lseg_array_).to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L467
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:467:54 | 467 | Ok(postgres_array_to_py(py, line_array_).to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L461
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:461:54 | 461 | Ok(postgres_array_to_py(py, path_array_).to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L454
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:454:53 | 454 | Ok(postgres_array_to_py(py, box_array_).to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L448
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:448:55 | 448 | Ok(postgres_array_to_py(py, point_array_).to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L442
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:442:10 | 442 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L436
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:436:56 | 436 | Ok(postgres_array_to_py(py, db_json_array).to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L431
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:431:10 | 431 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L424
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:424:53 | 424 | Ok(postgres_array_to_py(py, uuid_array).to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L418
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:418:10 | 418 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L410
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:410:10 | 410 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L404
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:404:10 | 404 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L398
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:398:10 | 398 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L392
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:392:10 | 392 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L386
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:386:10 | 386 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L380
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:380:10 | 380 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L374
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:374:10 | 374 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L368
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:368:10 | 368 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L361
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:361:10 | 361 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L355
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:355:10 | 355 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L350
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:350:10 | 350 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L341
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:341:51 | 341 | return Ok(InnerInterval(interval).to_object(py)); | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L334
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:334:38 | 334 | None => Ok(py.None().to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L333
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:333:45 | 333 | Some(circle_) => Ok(circle_.into_py(py)), | ^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L326
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:326:38 | 326 | None => Ok(py.None().to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L325
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:325:41 | 325 | Some(lseg_) => Ok(lseg_.into_py(py)), | ^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L317
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:317:38 | 317 | None => Ok(py.None().to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L316
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:316:41 | 316 | Some(line_) => Ok(line_.into_py(py)), | ^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L309
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:309:38 | 309 | None => Ok(py.None().to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L308
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:308:41 | 308 | Some(path_) => Ok(path_.into_py(py)), | ^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L300
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:300:38 | 300 | None => Ok(py.None().to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L299
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:299:39 | 299 | Some(box_) => Ok(box_.into_py(py)), | ^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L292
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:292:38 | 292 | None => Ok(py.None().to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L291
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:291:43 | 291 | Some(point_) => Ok(point_.into_py(py)), | ^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L283
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:283:26 | 283 | Ok(py.None().to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L281
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:281:50 | 281 | return Ok(InnerDecimal(numeric_).to_object(py)); | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L274
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:274:30 | 274 | Ok(py.None().to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L272
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:272:49 | 272 | Ok(macaddr_.inner().to_string().to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L265
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:265:30 | 265 | Ok(py.None().to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L263
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:263:49 | 263 | Ok(macaddr_.inner().to_string().to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L255
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:255:38 | 255 | None => Ok(py.None().to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L247
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:247:86 | 247 | composite_field_postgres_to_py::<Option<IpAddr>>(type_, buf, is_simple)?.to_object(py), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L240
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:240:79 | 240 | return Ok(PyString::new_bound(py, &rust_uuid.to_string()).to_object(py)) | ^^^^^^^^^
use of deprecated associated function `pyo3::types::PyString::new_bound`: renamed to `PyString::new`: src/value_converter/to_python.rs#L240
warning: use of deprecated associated function `pyo3::types::PyString::new_bound`: renamed to `PyString::new` --> src/value_converter/to_python.rs:240:41 | 240 | return Ok(PyString::new_bound(py, &rust_uuid.to_string()).to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L232
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:232:18 | 232 | .to_object(py), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L228
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:228:10 | 228 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L223
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:223:10 | 223 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L218
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:218:10 | 218 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L211
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:211:86 | 211 | Ok(composite_field_postgres_to_py::<Option<f64>>(type_, buf, is_simple)?.to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L207
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:207:86 | 207 | Ok(composite_field_postgres_to_py::<Option<f32>>(type_, buf, is_simple)?.to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L203
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:203:86 | 203 | Ok(composite_field_postgres_to_py::<Option<i64>>(type_, buf, is_simple)?.to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L199
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:199:86 | 199 | Ok(composite_field_postgres_to_py::<Option<i32>>(type_, buf, is_simple)?.to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L195
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:195:86 | 195 | Ok(composite_field_postgres_to_py::<Option<i16>>(type_, buf, is_simple)?.to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L190
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:190:84 | 190 | composite_field_postgres_to_py::<Option<bool>>(type_, buf, is_simple)?.to_object(py), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L186
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:186:10 | 186 | .to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L179
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:179:86 | 179 | composite_field_postgres_to_py::<Option<String>>(type_, buf, is_simple)?.to_object(py), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L176
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:176:86 | 176 | Ok(composite_field_postgres_to_py::<Option<i32>>(type_, buf, is_simple)?.to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L171
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:171:65 | 171 | return Ok(PyBytes::new_bound(py, &vec_of_bytes).to_object(py)); | ^^^^^^^^^
use of deprecated associated function `pyo3::types::PyBytes::new_bound`: renamed to `PyBytes::new`: src/value_converter/to_python.rs#L171
warning: use of deprecated associated function `pyo3::types::PyBytes::new_bound`: renamed to `PyBytes::new` --> src/value_converter/to_python.rs:171:36 | 171 | return Ok(PyBytes::new_bound(py, &vec_of_bytes).to_object(py)); | ^^^^^^^^^
use of deprecated associated function `pyo3::types::PyList::empty_bound`: renamed to `PyList::empty`: src/value_converter/to_python.rs#L154
warning: use of deprecated associated function `pyo3::types::PyList::empty_bound`: renamed to `PyList::empty` --> src/value_converter/to_python.rs:154:13 | 154 | PyList::empty_bound(py).unbind() | ^^^^^^^^^^^
use of deprecated associated function `pyo3::types::PyList::new_bound`: renamed to `PyList::new`: src/value_converter/to_python.rs#L149
warning: use of deprecated associated function `pyo3::types::PyList::new_bound`: renamed to `PyList::new` --> src/value_converter/to_python.rs:149:32 | 149 | return PyList::new_bound(py, data).unbind(); | ^^^^^^^^^
use of deprecated associated function `pyo3::types::PyList::empty_bound`: renamed to `PyList::empty`: src/value_converter/to_python.rs#L130
warning: use of deprecated associated function `pyo3::types::PyList::empty_bound`: renamed to `PyList::empty` --> src/value_converter/to_python.rs:130:42 | 130 | let final_list = PyList::empty_bound(py); | ^^^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L70
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:70:44 | 70 | Value::String(string) => Ok(string.to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L67
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:67:36 | 67 | Ok(number.as_u64().to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L65
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:65:36 | 65 | Ok(number.as_i64().to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L63
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:63:36 | 63 | Ok(number.as_f64().to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L60
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:60:44 | 60 | Value::Bool(boolean) => Ok(boolean.to_object(py)), | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L58
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:58:24 | 58 | Ok(py_dict.to_object(py)) | ^^^^^^^^^
use of deprecated associated function `pyo3::types::PyDict::new_bound`: renamed to `PyDict::new`: src/value_converter/to_python.rs#L49
warning: use of deprecated associated function `pyo3::types::PyDict::new_bound`: renamed to `PyDict::new` --> src/value_converter/to_python.rs:49:35 | 49 | let py_dict = PyDict::new_bound(py); | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L46
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:46:27 | 46 | Ok(result_vec.to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/models/uuid.rs#L31
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/models/uuid.rs:31:37 | 31 | self.0.to_string().as_str().to_object(py) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/models/interval.rs#L22
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/models/interval.rs:22:13 | 22 | ret.to_object(py) | ^^^^^^^^^
use of deprecated associated function `pyo3::types::PyDict::new_bound`: renamed to `PyDict::new`: src/value_converter/models/interval.rs#L15
warning: use of deprecated associated function `pyo3::types::PyDict::new_bound`: renamed to `PyDict::new` --> src/value_converter/models/interval.rs:15:30 | 15 | let pydict = PyDict::new_bound(py); | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/models/decimal.rs#L15
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/models/decimal.rs:15:13 | 15 | ret.to_object(py) | ^^^^^^^^^
use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new`: src/value_converter/additional_types.rs#L578
warning: use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new` --> src/value_converter/additional_types.rs:578:18 | 578 | PyTuple::new_bound(py, result_vec).into() | ^^^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L575
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:575:27 | 575 | self.radius().into_py(py), | ^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L574
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:574:72 | 574 | PyTuple::new_bound(py, vec![center.x.into_py(py), center.y.into_py(py)]).into(), | ^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L574
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:574:50 | 574 | PyTuple::new_bound(py, vec![center.x.into_py(py), center.y.into_py(py)]).into(), | ^^^^^^^
use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new`: src/value_converter/additional_types.rs#L574
warning: use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new` --> src/value_converter/additional_types.rs:574:22 | 574 | PyTuple::new_bound(py, vec![center.x.into_py(py), center.y.into_py(py)]).into(), | ^^^^^^^^^
use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new`: src/value_converter/additional_types.rs#L459
warning: use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new` --> src/value_converter/additional_types.rs:459:18 | 459 | PyTuple::new_bound(py, result_vec).into() | ^^^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L456
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:456:22 | 456 | self.c().into_py(py), | ^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L455
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:455:22 | 455 | self.b().into_py(py), | ^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L454
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:454:22 | 454 | self.a().into_py(py), | ^^^^^^^
use of deprecated associated function `pyo3::types::PyList::new_bound`: renamed to `PyList::new`: src/value_converter/additional_types.rs#L277
warning: use of deprecated associated function `pyo3::types::PyList::new_bound`: renamed to `PyList::new` --> src/value_converter/additional_types.rs:277:17 | 277 | PyList::new_bound(py, result_vec).into() | ^^^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L272
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:272:84 | 272 | PyTuple::new_bound(py, vec![coordinate.x.into_py(py), coordinate.y.into_py(py)]) | ^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L272
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:272:58 | 272 | PyTuple::new_bound(py, vec![coordinate.x.into_py(py), coordinate.y.into_py(py)]) | ^^^^^^^
use of deprecated associated function `pyo3::types::PyList::new_bound`: renamed to `PyList::new`: src/value_converter/additional_types.rs#L229
warning: use of deprecated associated function `pyo3::types::PyList::new_bound`: renamed to `PyList::new` --> src/value_converter/additional_types.rs:229:17 | 229 | PyList::new_bound(py, result_vec).into() | ^^^^^^^^^
use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new`: src/value_converter/additional_types.rs#L227
warning: use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new` --> src/value_converter/additional_types.rs:227:29 | 227 | return PyTuple::new_bound(py, result_vec).into(); | ^^^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L221
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:221:84 | 221 | PyTuple::new_bound(py, vec![coordinate.x.into_py(py), coordinate.y.into_py(py)]) | ^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L221
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:221:58 | 221 | PyTuple::new_bound(py, vec![coordinate.x.into_py(py), coordinate.y.into_py(py)]) | ^^^^^^^
use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new`: src/value_converter/additional_types.rs#L221
warning: use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new` --> src/value_converter/additional_types.rs:221:26 | 221 | PyTuple::new_bound(py, vec![coordinate.x.into_py(py), coordinate.y.into_py(py)]) | ^^^^^^^^^
use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new`: src/value_converter/additional_types.rs#L178
warning: use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new` --> src/value_converter/additional_types.rs:178:18 | 178 | PyTuple::new_bound(py, result_vec).into() | ^^^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L173
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:173:73 | 173 | vec![one_coordinate.x.into_py(py), one_coordinate.y.into_py(py)], | ^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L173
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:173:43 | 173 | vec![one_coordinate.x.into_py(py), one_coordinate.y.into_py(py)], | ^^^^^^^
use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new`: src/value_converter/additional_types.rs#L171
warning: use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new` --> src/value_converter/additional_types.rs:171:26 | 171 | PyTuple::new_bound( | ^^^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L125
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:125:63 | 125 | vec![inner_value.x().into_py(py), inner_value.y().into_py(py)], | ^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L125
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:125:34 | 125 | vec![inner_value.x().into_py(py), inner_value.y().into_py(py)], | ^^^^^^^
use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new`: src/value_converter/additional_types.rs#L123
warning: use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new` --> src/value_converter/additional_types.rs:123:18 | 123 | PyTuple::new_bound( | ^^^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L115
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:115:14 | 115 | self.into_py(py) | ^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L109
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:109:14 | 109 | self.into_py(py) | ^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L103
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:103:14 | 103 | self.into_py(py) | ^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L97
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:97:14 | 97 | self.into_py(py) | ^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L91
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:91:14 | 91 | self.into_py(py) | ^^^^^^^
use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L85
warning: use of deprecated method `pyo3::IntoPy::into_py`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:85:14 | 85 | self.into_py(py) | ^^^^^^^
use of deprecated method `pyo3::Py::<T>::call_bound`: renamed to `Py::call`: src/row_factories.rs#L38
warning: use of deprecated method `pyo3::Py::<T>::call_bound`: renamed to `Py::call` --> src/row_factories.rs:38:19 | 38 | Ok(self.0.call_bound(py, (), Some(dict_))?) | ^^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/row_factories.rs#L17
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/row_factories.rs:17:46 | 17 | Ok(PyTuple::new_bound(py, dict_.items()).to_object(py)) | ^^^^^^^^^
use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new`: src/row_factories.rs#L17
warning: use of deprecated associated function `pyo3::types::PyTuple::new_bound`: renamed to `PyTuple::new` --> src/row_factories.rs:17:17 | 17 | Ok(PyTuple::new_bound(py, dict_.items()).to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/query_result.rs#L187
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/query_result.rs:187:70 | 187 | let pydict = row_to_dict(py, &self.inner, &custom_decoders)?.to_object(py); | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/query_result.rs#L157
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/query_result.rs:157:60 | 157 | Ok(row_to_dict(py, &self.inner, &custom_decoders)?.to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/query_result.rs#L116
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/query_result.rs:116:16 | 116 | Ok(res.to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/query_result.rs#L93
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/query_result.rs:93:16 | 93 | Ok(res.to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/query_result.rs#L75
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/query_result.rs:75:19 | 75 | Ok(result.to_object(py)) | ^^^^^^^^^
use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/query_result.rs#L27
warning: use of deprecated method `pyo3::ToPyObject::to_object`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/query_result.rs:27:44 | 27 | python_dict.set_item(column.name().to_object(py), python_type)?; | ^^^^^^^^^
use of deprecated method `pyo3::types::PyAnyMethods::iter`: use `try_iter` instead: src/driver/transaction.rs#L280
warning: use of deprecated method `pyo3::types::PyAnyMethods::iter`: use `try_iter` instead --> src/driver/transaction.rs:280:65 | 280 | for single_query in queries.into_bound(gil).iter() { | ^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L122
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:122:8 | 122 | T: ToPyObject, | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L97
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:97:28 | 97 | fn postgres_array_to_py<T: ToPyObject>( | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L16
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:16:39 | 16 | Bound, IntoPy, Py, PyAny, Python, ToPyObject, | ^^^^^^^^^^
use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/to_python.rs#L16
warning: use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/to_python.rs:16:12 | 16 | Bound, IntoPy, Py, PyAny, Python, ToPyObject, | ^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/models/uuid.rs#L29
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/models/uuid.rs:29:6 | 29 | impl ToPyObject for InternalUuid { | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/models/uuid.rs#L5
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/models/uuid.rs:5:82 | 5 | types::PyAnyMethods, Bound, FromPyObject, PyAny, PyObject, PyResult, Python, ToPyObject, | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/models/serde_value.rs#L34
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/models/serde_value.rs:34:6 | 34 | impl ToPyObject for InternalSerdeValue { | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/models/serde_value.rs#L7
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/models/serde_value.rs:7:65 | 7 | Bound, FromPyObject, Py, PyAny, PyObject, PyResult, Python, ToPyObject, | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/models/interval.rs#L12
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/models/interval.rs:12:6 | 12 | impl ToPyObject for InnerInterval { | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/models/interval.rs#L5
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/models/interval.rs:5:23 | 5 | PyObject, Python, ToPyObject, | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/models/decimal.rs#L9
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/models/decimal.rs:9:6 | 9 | impl ToPyObject for InnerDecimal { | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/models/decimal.rs#L2
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/models/decimal.rs:2:79 | 2 | use pyo3::{types::PyAnyMethods, Bound, IntoPyObject, PyAny, PyObject, Python, ToPyObject}; | ^^^^^^^^^^
use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L568
warning: use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:568:6 | 568 | impl IntoPy<PyObject> for &Circle { | ^^^^^^
use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L450
warning: use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:450:6 | 450 | impl IntoPy<PyObject> for &Line { | ^^^^^^
use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L264
warning: use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:264:6 | 264 | impl IntoPy<PyObject> for &RustLineSegment { | ^^^^^^
use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L213
warning: use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:213:6 | 213 | impl IntoPy<PyObject> for &RustLineString { | ^^^^^^
use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L162
warning: use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:162:6 | 162 | impl IntoPy<PyObject> for &RustRect { | ^^^^^^
use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L119
warning: use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:119:6 | 119 | impl IntoPy<PyObject> for &RustPoint { | ^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L113
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:113:6 | 113 | impl ToPyObject for Circle { | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L107
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:107:6 | 107 | impl ToPyObject for Line { | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L101
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:101:6 | 101 | impl ToPyObject for RustLineSegment { | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L95
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:95:6 | 95 | impl ToPyObject for RustLineString { | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L89
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:89:6 | 89 | impl ToPyObject for RustRect { | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L83
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:83:6 | 83 | impl ToPyObject for RustPoint { | ^^^^^^^^^^
use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/value_converter/additional_types.rs#L11
warning: use of deprecated trait `pyo3::IntoPy`: `IntoPy` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/value_converter/additional_types.rs:11:5 | 11 | IntoPy, Py, PyAny, PyObject, Python, ToPyObject, | ^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/row_factories.rs#L4
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/row_factories.rs:4:58 | 4 | wrap_pyfunction, Bound, Py, PyAny, PyResult, Python, ToPyObject, | ^^^^^^^^^^
use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information.: src/query_result.rs#L5
warning: use of deprecated trait `pyo3::ToPyObject`: `ToPyObject` is going to be replaced by `IntoPyObject`. See the migration guide (https://pyo3.rs/v0.23.0/migration) for more information. --> src/query_result.rs:5:24 | 5 | Py, PyAny, Python, ToPyObject, | ^^^^^^^^^^ | = note: `#[warn(deprecated)]` on by default
unused imports: `PySet` and `PyTuple`: src/value_converter/to_python.rs#L13
warning: unused imports: `PySet` and `PyTuple` --> src/value_converter/to_python.rs:13:78 | 13 | PyAnyMethods, PyBytes, PyDict, PyDictMethods, PyList, PyListMethods, PySet, PyString, | ^^^^^ 14 | PyTuple, | ^^^^^^^
redundant else block: src/value_converter/models/serde_value.rs#L114
warning: redundant else block --> src/value_converter/models/serde_value.rs:114:10 | 114 | } else { | __________^ 115 | | return Err(RustPSQLDriverError::PyToRustValueConversionError( 116 | | "PyJSON must be dict value.".to_string(), 117 | | )); 118 | | } | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_else = note: `-W clippy::redundant-else` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::redundant_else)]` help: remove the `else` block and move the contents out | 114 ~ } 115 + return Err(RustPSQLDriverError::PyToRustValueConversionError( 116 + "PyJSON must be dict value.".to_string(), 117 + )); |
unused imports: `Bound`, `IntoPyObject`, and `PyAny`: src/value_converter/models/decimal.rs#L2
warning: unused imports: `Bound`, `IntoPyObject`, and `PyAny` --> src/value_converter/models/decimal.rs:2:33 | 2 | use pyo3::{types::PyAnyMethods, Bound, IntoPyObject, PyAny, PyObject, Python, ToPyObject}; | ^^^^^ ^^^^^^^^^^^^ ^^^^^
this `continue` expression is redundant: src/value_converter/from_python.rs#L584
warning: this `continue` expression is redundant --> src/value_converter/from_python.rs:584:13 | 584 | continue; | ^^^^^^^^ | = help: consider dropping the `continue` expression = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_continue = note: `-W clippy::needless-continue` implied by `-W clippy::pedantic` = help: to override `-W clippy::pedantic` add `#[allow(clippy::needless_continue)]`
unneeded `()`: src/statement/query.rs#L45
warning: unneeded `()` --> src/statement/query.rs:45:20 | 45 | return (); | ^^ help: remove the `()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#unused_unit = note: `-W clippy::unused-unit` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::unused_unit)]`
redundant field names in struct initialization: src/statement/parameters.rs#L239
warning: redundant field names in struct initialization --> src/statement/parameters.rs:239:13 | 239 | seq_parameters: seq_parameters, | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `seq_parameters` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names
unused import: `PyTuple`: src/query_result.rs#L4
warning: unused import: `PyTuple` --> src/query_result.rs:4:21 | 4 | types::{PyDict, PyTuple}, | ^^^^^^^
unused import: `types::PyNone`: src/driver/cursor.rs#L4
warning: unused import: `types::PyNone` --> src/driver/cursor.rs:4:59 | 4 | exceptions::PyStopAsyncIteration, pyclass, pymethods, types::PyNone, Py, PyAny, PyErr, | ^^^^^^^^^^^^^
redundant field names in struct initialization: src/driver/connection_pool.rs#L241
warning: redundant field names in struct initialization --> src/driver/connection_pool.rs:241:13 | 241 | pool: pool, | ^^^^^^^^^^ help: replace it with: `pool` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names = note: `-W clippy::redundant-field-names` implied by `-W clippy::all` = help: to override `-W clippy::all` add `#[allow(clippy::redundant_field_names)]`
unused import: `ffi::PyObject`: src/driver/connection.rs#L2
warning: unused import: `ffi::PyObject` --> src/driver/connection.rs:2:12 | 2 | use pyo3::{ffi::PyObject, pyclass, pyfunction, pymethods, Py, PyAny, PyErr}; | ^^^^^^^^^^^^^
unused import: `pyo3::PyAny`: src/connection/traits.rs#L2
warning: unused import: `pyo3::PyAny` --> src/connection/traits.rs:2:5 | 2 | use pyo3::PyAny; | ^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default