[INFO] cloning repository https://github.com/g0ldyy/torrent-parse-rank
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/g0ldyy/torrent-parse-rank" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fg0ldyy%2Ftorrent-parse-rank", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fg0ldyy%2Ftorrent-parse-rank'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] e21b3e77987c4a51c8168d9d59de9a718a48c990
[INFO] checking g0ldyy/torrent-parse-rank against 52995a223f2919dd3e2e427231db90a257350ded for pr-129249-4
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fg0ldyy%2Ftorrent-parse-rank" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/g0ldyy/torrent-parse-rank
[INFO] finished tweaking git repo https://github.com/g0ldyy/torrent-parse-rank
[INFO] tweaked toml for git repo https://github.com/g0ldyy/torrent-parse-rank written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/g0ldyy/torrent-parse-rank on toolchain 52995a223f2919dd3e2e427231db90a257350ded
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/g0ldyy/torrent-parse-rank already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: unused workspace dependency `indexmap`
[INFO] [stderr]  --> Cargo.toml:9:1
[INFO] [stderr]   |
[INFO] [stderr] 9 | indexmap = "2.13.0"
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_workspace_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the workspace dependency `indexmap`
[INFO] [stderr] warning: unused field `description` in `workspace.package`
[INFO] [stderr]   --> Cargo.toml:32:1
[INFO] [stderr]    |
[INFO] [stderr] 32 | description = "A high-performance Rust implementation of The Best Damn Filename Parser You've Ever Used!"
[INFO] [stderr]    | ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_workspace_package_fields` is set to `warn` by default
[INFO] [stderr] help: consider removing the field `workspace.package.description`
[INFO] [stderr] warning: workspace (manifest) generated 2 warnings
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/ptt-core/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr] 9 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `ptt-core` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/rtn-core/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr] 9 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `rtn-core` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> python/torrent_parse_rank_native/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr] 9 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `torrent_parse_rank_native` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 79b011575f6ae1d571435a70a2bd01c3aa58a88399f929fe6b0542b798d5f9e4
[INFO] running `Command { std: "docker" "start" "79b011575f6ae1d571435a70a2bd01c3aa58a88399f929fe6b0542b798d5f9e4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "79b011575f6ae1d571435a70a2bd01c3aa58a88399f929fe6b0542b798d5f9e4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "79b011575f6ae1d571435a70a2bd01c3aa58a88399f929fe6b0542b798d5f9e4" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "79b011575f6ae1d571435a70a2bd01c3aa58a88399f929fe6b0542b798d5f9e4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "79b011575f6ae1d571435a70a2bd01c3aa58a88399f929fe6b0542b798d5f9e4" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: unused workspace dependency `indexmap`
[INFO] [stderr]  --> Cargo.toml:9:1
[INFO] [stderr]   |
[INFO] [stderr] 9 | indexmap = "2.13.0"
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::unused_workspace_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the workspace dependency `indexmap`
[INFO] [stderr] warning: unused field `description` in `workspace.package`
[INFO] [stderr]   --> Cargo.toml:32:1
[INFO] [stderr]    |
[INFO] [stderr] 32 | description = "A high-performance Rust implementation of The Best Damn Filename Parser You've Ever Used!"
[INFO] [stderr]    | ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_workspace_package_fields` is set to `warn` by default
[INFO] [stderr] help: consider removing the field `workspace.package.description`
[INFO] [stderr] warning: workspace (manifest) generated 2 warnings
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/rtn-core/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr] 9 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `rtn-core` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> python/torrent_parse_rank_native/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr] 9 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `torrent_parse_rank_native` (manifest) generated 1 warning
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]  --> crates/ptt-core/Cargo.toml:8:1
[INFO] [stderr]   |
[INFO] [stderr] 8 | homepage.workspace = true
[INFO] [stderr]   | ^^^^^^^^
[INFO] [stderr] 9 | repository.workspace = true
[INFO] [stderr]   | ----------
[INFO] [stderr]   |
[INFO] [stderr]   = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `ptt-core` (manifest) generated 1 warning
[INFO] [stderr]    Compiling target-lexicon v0.13.5
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]     Checking regex-syntax v0.8.10
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking bit-vec v0.8.0
[INFO] [stderr]    Compiling zerocopy v0.8.42
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking itertools v0.13.0
[INFO] [stderr]    Compiling pcre2-sys v0.2.10
[INFO] [stderr]    Compiling alloca v0.4.0
[INFO] [stderr]     Checking clap_builder v4.6.0
[INFO] [stderr]     Checking tinyvec v1.11.0
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking page_size v0.6.0
[INFO] [stderr]     Checking bit-set v0.8.0
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking unicode-normalization v0.1.25
[INFO] [stderr]     Checking pcre2 v0.2.11
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]    Compiling pyo3-build-config v0.28.2
[INFO] [stderr]     Checking clap v4.6.0
[INFO] [stderr]     Checking criterion-plot v0.8.2
[INFO] [stderr]    Compiling pyo3-ffi v0.28.2
[INFO] [stderr]    Compiling pyo3-macros-backend v0.28.2
[INFO] [stderr]    Compiling pyo3 v0.28.2
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling zerocopy-derive v0.8.42
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking fancy-regex v0.17.0
[INFO] [stderr]     Checking regex v1.12.3
[INFO] [stderr]    Compiling pyo3-macros v0.28.2
[INFO] [stderr]     Checking ptt-core v0.1.0 (/opt/rustwide/workdir/crates/ptt-core)
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking rtn-core v0.1.0 (/opt/rustwide/workdir/crates/rtn-core)
[INFO] [stderr]     Checking torrent_parse_rank_native v0.1.0 (/opt/rustwide/workdir/python/torrent_parse_rank_native)
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:177:6
[INFO] [stdout]     |
[INFO] [stdout] 177 | ) -> PyResult<Py<PyAny>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:196:64
[INFO] [stdout]     |
[INFO] [stdout] 196 | fn ptt_parse_title_context(py: Python<'_>, raw_title: &str) -> PyResult<Py<PyAny>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:231:6
[INFO] [stdout]     |
[INFO] [stdout] 231 | ) -> PyResult<Py<PyAny>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:257:55
[INFO] [stdout]     |
[INFO] [stdout] 257 | fn ptt_languages_translation_table(py: Python<'_>) -> PyResult<Py<PyAny>> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:267:73
[INFO] [stdout]     |
[INFO] [stdout] 267 | fn rtn_parse(py: Python<'_>, raw_title: &str, translate_langs: bool) -> PyResult<Py<PyAny>> {
[INFO] [stdout]     |                                                                         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:297:44
[INFO] [stdout]     |
[INFO] [stdout] 297 |     fn is_match(&self, raw_title: &str) -> PyResult<bool> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:312:6
[INFO] [stdout]     |
[INFO] [stdout] 312 | ) -> PyResult<f64> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:327:6
[INFO] [stdout]     |
[INFO] [stdout] 327 | ) -> PyResult<bool> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:333:44
[INFO] [stdout]     |
[INFO] [stdout] 333 | fn rtn_extract_seasons(raw_title: &str) -> PyResult<Vec<i64>> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:338:45
[INFO] [stdout]     |
[INFO] [stdout] 338 | fn rtn_extract_episodes(raw_title: &str) -> PyResult<Vec<i64>> {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:343:80
[INFO] [stdout]     |
[INFO] [stdout] 343 | fn rtn_episodes_from_season(raw_title: &str, season_num: NonBooleanInteger) -> PyResult<Vec<i64>> {
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:353:6
[INFO] [stdout]     |
[INFO] [stdout] 353 | ) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:365:6
[INFO] [stdout]     |
[INFO] [stdout] 365 | ) -> PyResult<(bool, Vec<String>, i64)> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:381:6
[INFO] [stdout]     |
[INFO] [stdout] 381 | ) -> PyResult<Vec<(bool, Vec<String>, i64)>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:407:64
[INFO] [stdout]     |
[INFO] [stdout] 407 | fn rtn_check_required(data_json: &str, settings_json: &str) -> PyResult<bool> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:421:47
[INFO] [stdout]     |
[INFO] [stdout] 421 | fn rtn_populate_langs(settings_json: &str) -> PyResult<(Vec<String>, Vec<String>, Vec<String>)> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:436:81
[INFO] [stdout]     |
[INFO] [stdout] 436 | fn rtn_get_rank(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:443:69
[INFO] [stdout]     |
[INFO] [stdout] 443 | fn rtn_calculate_preferred(data_json: &str, settings_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:456:75
[INFO] [stdout]     |
[INFO] [stdout] 456 | fn rtn_calculate_preferred_langs(data_json: &str, settings_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 402 | wrap_failed_bool_fn!(rtn_trash_handler, trash_handler);
[INFO] [stdout]     | ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 | wrap_failed_bool_fn!(rtn_adult_handler, adult_handler);
[INFO] [stdout]     | ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 404 | wrap_failed_bool_fn!(rtn_language_handler, language_handler);
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 413 | wrap_failed_bool_fn!(rtn_fetch_resolution, fetch_resolution);
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 414 | wrap_failed_bool_fn!(rtn_fetch_audio, fetch_audio);
[INFO] [stdout]     | -------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 415 | wrap_failed_bool_fn!(rtn_fetch_quality, fetch_quality);
[INFO] [stdout]     | ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 416 | wrap_failed_bool_fn!(rtn_fetch_codec, fetch_codec);
[INFO] [stdout]     | -------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 417 | wrap_failed_bool_fn!(rtn_fetch_hdr, fetch_hdr);
[INFO] [stdout]     | ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 418 | wrap_failed_bool_fn!(rtn_fetch_other, fetch_other);
[INFO] [stdout]     | -------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:151:59
[INFO] [stdout]     |
[INFO] [stdout] 148 | macro_rules! wrap_failed_result_fn {
[INFO] [stdout] ...
[INFO] [stdout] 151 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 412 | wrap_failed_result_fn!(rtn_check_exclude, check_exclude);
[INFO] [stdout]     | -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 160 | macro_rules! wrap_rank_component_fn {
[INFO] [stdout] ...
[INFO] [stdout] 163 |         fn $name(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 448 | wrap_rank_component_fn!(rtn_calculate_audio_rank, calculate_audio_rank);
[INFO] [stdout]     | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 160 | macro_rules! wrap_rank_component_fn {
[INFO] [stdout] ...
[INFO] [stdout] 163 |         fn $name(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 449 | wrap_rank_component_fn!(rtn_calculate_quality_rank, calculate_quality_rank);
[INFO] [stdout]     | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 160 | macro_rules! wrap_rank_component_fn {
[INFO] [stdout] ...
[INFO] [stdout] 163 |         fn $name(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 450 | wrap_rank_component_fn!(rtn_calculate_codec_rank, calculate_codec_rank);
[INFO] [stdout]     | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 160 | macro_rules! wrap_rank_component_fn {
[INFO] [stdout] ...
[INFO] [stdout] 163 |         fn $name(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 451 | wrap_rank_component_fn!(rtn_calculate_hdr_rank, calculate_hdr_rank);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 160 | macro_rules! wrap_rank_component_fn {
[INFO] [stdout] ...
[INFO] [stdout] 163 |         fn $name(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 452 | wrap_rank_component_fn!(rtn_calculate_channels_rank, calculate_channels_rank);
[INFO] [stdout]     | ----------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 160 | macro_rules! wrap_rank_component_fn {
[INFO] [stdout] ...
[INFO] [stdout] 163 |         fn $name(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | wrap_rank_component_fn!(rtn_calculate_extra_ranks, calculate_extra_ranks);
[INFO] [stdout]     | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `torrent_parse_rank_native` (lib) due to 35 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:177:6
[INFO] [stdout]     |
[INFO] [stdout] 177 | ) -> PyResult<Py<PyAny>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: `#[deny(self_type_conversion)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:196:64
[INFO] [stdout]     |
[INFO] [stdout] 196 | fn ptt_parse_title_context(py: Python<'_>, raw_title: &str) -> PyResult<Py<PyAny>> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:231:6
[INFO] [stdout]     |
[INFO] [stdout] 231 | ) -> PyResult<Py<PyAny>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:257:55
[INFO] [stdout]     |
[INFO] [stdout] 257 | fn ptt_languages_translation_table(py: Python<'_>) -> PyResult<Py<PyAny>> {
[INFO] [stdout]     |                                                       ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:267:73
[INFO] [stdout]     |
[INFO] [stdout] 267 | fn rtn_parse(py: Python<'_>, raw_title: &str, translate_langs: bool) -> PyResult<Py<PyAny>> {
[INFO] [stdout]     |                                                                         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:297:44
[INFO] [stdout]     |
[INFO] [stdout] 297 |     fn is_match(&self, raw_title: &str) -> PyResult<bool> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:312:6
[INFO] [stdout]     |
[INFO] [stdout] 312 | ) -> PyResult<f64> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:327:6
[INFO] [stdout]     |
[INFO] [stdout] 327 | ) -> PyResult<bool> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:333:44
[INFO] [stdout]     |
[INFO] [stdout] 333 | fn rtn_extract_seasons(raw_title: &str) -> PyResult<Vec<i64>> {
[INFO] [stdout]     |                                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:338:45
[INFO] [stdout]     |
[INFO] [stdout] 338 | fn rtn_extract_episodes(raw_title: &str) -> PyResult<Vec<i64>> {
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:343:80
[INFO] [stdout]     |
[INFO] [stdout] 343 | fn rtn_episodes_from_season(raw_title: &str, season_num: NonBooleanInteger) -> PyResult<Vec<i64>> {
[INFO] [stdout]     |                                                                                ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:353:6
[INFO] [stdout]     |
[INFO] [stdout] 353 | ) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:365:6
[INFO] [stdout]     |
[INFO] [stdout] 365 | ) -> PyResult<(bool, Vec<String>, i64)> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:381:6
[INFO] [stdout]     |
[INFO] [stdout] 381 | ) -> PyResult<Vec<(bool, Vec<String>, i64)>> {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:407:64
[INFO] [stdout]     |
[INFO] [stdout] 407 | fn rtn_check_required(data_json: &str, settings_json: &str) -> PyResult<bool> {
[INFO] [stdout]     |                                                                ^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:421:47
[INFO] [stdout]     |
[INFO] [stdout] 421 | fn rtn_populate_langs(settings_json: &str) -> PyResult<(Vec<String>, Vec<String>, Vec<String>)> {
[INFO] [stdout]     |                                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:436:81
[INFO] [stdout]     |
[INFO] [stdout] 436 | fn rtn_get_rank(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                 ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:443:69
[INFO] [stdout]     |
[INFO] [stdout] 443 | fn rtn_calculate_preferred(data_json: &str, settings_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                     ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:456:75
[INFO] [stdout]     |
[INFO] [stdout] 456 | fn rtn_calculate_preferred_langs(data_json: &str, settings_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                           ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 402 | wrap_failed_bool_fn!(rtn_trash_handler, trash_handler);
[INFO] [stdout]     | ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 403 | wrap_failed_bool_fn!(rtn_adult_handler, adult_handler);
[INFO] [stdout]     | ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 404 | wrap_failed_bool_fn!(rtn_language_handler, language_handler);
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 413 | wrap_failed_bool_fn!(rtn_fetch_resolution, fetch_resolution);
[INFO] [stdout]     | ------------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 414 | wrap_failed_bool_fn!(rtn_fetch_audio, fetch_audio);
[INFO] [stdout]     | -------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 415 | wrap_failed_bool_fn!(rtn_fetch_quality, fetch_quality);
[INFO] [stdout]     | ------------------------------------------------------ in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 416 | wrap_failed_bool_fn!(rtn_fetch_codec, fetch_codec);
[INFO] [stdout]     | -------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 417 | wrap_failed_bool_fn!(rtn_fetch_hdr, fetch_hdr);
[INFO] [stdout]     | ---------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:139:59
[INFO] [stdout]     |
[INFO] [stdout] 136 | macro_rules! wrap_failed_bool_fn {
[INFO] [stdout] ...
[INFO] [stdout] 139 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 418 | wrap_failed_bool_fn!(rtn_fetch_other, fetch_other);
[INFO] [stdout]     | -------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:151:59
[INFO] [stdout]     |
[INFO] [stdout] 148 | macro_rules! wrap_failed_result_fn {
[INFO] [stdout] ...
[INFO] [stdout] 151 |         fn $name(data_json: &str, settings_json: &str) -> PyResult<(bool, Vec<String>)> {
[INFO] [stdout]     |                                                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 412 | wrap_failed_result_fn!(rtn_check_exclude, check_exclude);
[INFO] [stdout]     | -------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 160 | macro_rules! wrap_rank_component_fn {
[INFO] [stdout] ...
[INFO] [stdout] 163 |         fn $name(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 448 | wrap_rank_component_fn!(rtn_calculate_audio_rank, calculate_audio_rank);
[INFO] [stdout]     | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 160 | macro_rules! wrap_rank_component_fn {
[INFO] [stdout] ...
[INFO] [stdout] 163 |         fn $name(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 449 | wrap_rank_component_fn!(rtn_calculate_quality_rank, calculate_quality_rank);
[INFO] [stdout]     | --------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 160 | macro_rules! wrap_rank_component_fn {
[INFO] [stdout] ...
[INFO] [stdout] 163 |         fn $name(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 450 | wrap_rank_component_fn!(rtn_calculate_codec_rank, calculate_codec_rank);
[INFO] [stdout]     | ----------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 160 | macro_rules! wrap_rank_component_fn {
[INFO] [stdout] ...
[INFO] [stdout] 163 |         fn $name(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 451 | wrap_rank_component_fn!(rtn_calculate_hdr_rank, calculate_hdr_rank);
[INFO] [stdout]     | ------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 160 | macro_rules! wrap_rank_component_fn {
[INFO] [stdout] ...
[INFO] [stdout] 163 |         fn $name(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 452 | wrap_rank_component_fn!(rtn_calculate_channels_rank, calculate_channels_rank);
[INFO] [stdout]     | ----------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr`
[INFO] [stdout]    --> python/torrent_parse_rank_native/src/lib.rs:163:82
[INFO] [stdout]     |
[INFO] [stdout] 160 | macro_rules! wrap_rank_component_fn {
[INFO] [stdout] ...
[INFO] [stdout] 163 |         fn $name(data_json: &str, settings_json: &str, rank_model_json: &str) -> PyResult<i64> {
[INFO] [stdout]     |                                                                                  ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 | wrap_rank_component_fn!(rtn_calculate_extra_ranks, calculate_extra_ranks);
[INFO] [stdout]     | ------------------------------------------------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this method call relies on the `impl<T> Into<T> for T` blanket implementation and type inference, which is a semver hazard as a new `impl Into<_>` that affects your type might be added in the future causing type inference errors
[INFO] [stdout]     = note: you can instead use the fully-qualified path `<pyo3::PyErr as Into<pyo3::PyErr>::into(val) to avoid triggering this lint
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `torrent_parse_rank_native` (lib test) due to 35 previous errors
[INFO] running `Command { std: "docker" "inspect" "79b011575f6ae1d571435a70a2bd01c3aa58a88399f929fe6b0542b798d5f9e4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "79b011575f6ae1d571435a70a2bd01c3aa58a88399f929fe6b0542b798d5f9e4", kill_on_drop: false }`
[INFO] [stdout] 79b011575f6ae1d571435a70a2bd01c3aa58a88399f929fe6b0542b798d5f9e4
