[INFO] cloning repository https://github.com/Independent-AI-Labs/RUST-TA [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Independent-AI-Labs/RUST-TA" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIndependent-AI-Labs%2FRUST-TA", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIndependent-AI-Labs%2FRUST-TA'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8b4304214356d7b7d9f672c3e00912b8d367dc81 [INFO] checking Independent-AI-Labs/RUST-TA against 52995a223f2919dd3e2e427231db90a257350ded for pr-129249-4 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FIndependent-AI-Labs%2FRUST-TA" "/workspace/builds/worker-0-tc2/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-0-tc2/source'... [INFO] [stderr] done. [INFO] started tweaking git repo https://github.com/Independent-AI-Labs/RUST-TA [INFO] finished tweaking git repo https://github.com/Independent-AI-Labs/RUST-TA [INFO] tweaked toml for git repo https://github.com/Independent-AI-Labs/RUST-TA written to /workspace/builds/worker-0-tc2/source/Cargo.toml [INFO] validating manifest of git repo https://github.com/Independent-AI-Labs/RUST-TA 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/Independent-AI-Labs/RUST-TA 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 `anyhow` [INFO] [stderr] --> Cargo.toml:48:1 [INFO] [stderr] | [INFO] [stderr] 48 | anyhow = "1.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 `anyhow` [INFO] [stderr] warning: unused field `categories` in `workspace.package` [INFO] [stderr] --> Cargo.toml:96:1 [INFO] [stderr] | [INFO] [stderr] 96 | categories = ["finance", "mathematics", "science"] [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.categories` [INFO] [stderr] warning: unused field `description` in `workspace.package` [INFO] [stderr] --> Cargo.toml:97:1 [INFO] [stderr] | [INFO] [stderr] 97 | description = "High-performance technical analysis library for Rust" [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: consider removing the field `workspace.package.description` [INFO] [stderr] warning: unused field `keywords` in `workspace.package` [INFO] [stderr] --> Cargo.toml:99:1 [INFO] [stderr] | [INFO] [stderr] 99 | keywords = ["trading", "technical-analysis", "finance", "indicators"] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: consider removing the field `workspace.package.keywords` [INFO] [stderr] warning: workspace (manifest) generated 4 warnings [INFO] [stderr] warning: missing `[lints]` to inherit `[workspace.lints]` [INFO] [stderr] --> Cargo.toml [INFO] [stderr] = note: `cargo::missing_lints_inheritance` is set to `warn` by default [INFO] [stderr] help: to inherit `workspace.lints, add: [INFO] [stderr] | [INFO] [stderr] 103 ~ version = "0.1.0" [INFO] [stderr] 104 + [lints] [INFO] [stderr] 105 + workspace = true [INFO] [stderr] | [INFO] [stderr] help: to clarify your intent to not inherit, add: [INFO] [stderr] | [INFO] [stderr] 103 ~ version = "0.1.0" [INFO] [stderr] 104 + [lints] [INFO] [stderr] | [INFO] [stderr] warning: `rust-ta` (manifest) generated 1 warning [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-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] 604e6f1ecb22eb9fd100130ab2e0a90f03b639f7b1d0b5e66507568dd0bb56e2 [INFO] running `Command { std: "docker" "start" "604e6f1ecb22eb9fd100130ab2e0a90f03b639f7b1d0b5e66507568dd0bb56e2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "604e6f1ecb22eb9fd100130ab2e0a90f03b639f7b1d0b5e66507568dd0bb56e2", 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" "604e6f1ecb22eb9fd100130ab2e0a90f03b639f7b1d0b5e66507568dd0bb56e2" "/opt/rustwide/cargo-home/bin/cargo" "+52995a223f2919dd3e2e427231db90a257350ded" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "604e6f1ecb22eb9fd100130ab2e0a90f03b639f7b1d0b5e66507568dd0bb56e2", 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" "604e6f1ecb22eb9fd100130ab2e0a90f03b639f7b1d0b5e66507568dd0bb56e2" "/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 `anyhow` [INFO] [stderr] --> Cargo.toml:48:1 [INFO] [stderr] | [INFO] [stderr] 48 | anyhow = "1.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 `anyhow` [INFO] [stderr] warning: unused field `categories` in `workspace.package` [INFO] [stderr] --> Cargo.toml:96:1 [INFO] [stderr] | [INFO] [stderr] 96 | categories = ["finance", "mathematics", "science"] [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.categories` [INFO] [stderr] warning: unused field `description` in `workspace.package` [INFO] [stderr] --> Cargo.toml:97:1 [INFO] [stderr] | [INFO] [stderr] 97 | description = "High-performance technical analysis library for Rust" [INFO] [stderr] | ^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: consider removing the field `workspace.package.description` [INFO] [stderr] warning: unused field `keywords` in `workspace.package` [INFO] [stderr] --> Cargo.toml:99:1 [INFO] [stderr] | [INFO] [stderr] 99 | keywords = ["trading", "technical-analysis", "finance", "indicators"] [INFO] [stderr] | ^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] help: consider removing the field `workspace.package.keywords` [INFO] [stderr] warning: workspace (manifest) generated 4 warnings [INFO] [stderr] warning: missing `[lints]` to inherit `[workspace.lints]` [INFO] [stderr] --> Cargo.toml [INFO] [stderr] = note: `cargo::missing_lints_inheritance` is set to `warn` by default [INFO] [stderr] help: to inherit `workspace.lints, add: [INFO] [stderr] | [INFO] [stderr] 103 ~ version = "0.1.0" [INFO] [stderr] 104 + [lints] [INFO] [stderr] 105 + workspace = true [INFO] [stderr] | [INFO] [stderr] help: to clarify your intent to not inherit, add: [INFO] [stderr] | [INFO] [stderr] 103 ~ version = "0.1.0" [INFO] [stderr] 104 + [lints] [INFO] [stderr] | [INFO] [stderr] warning: `rust-ta` (manifest) generated 1 warning [INFO] [stderr] Compiling zmij v1.0.18 [INFO] [stderr] Compiling target-lexicon v0.12.16 [INFO] [stderr] Compiling zerocopy v0.8.37 [INFO] [stderr] Compiling syn v2.0.114 [INFO] [stderr] Checking indexmap v2.13.0 [INFO] [stderr] Checking getrandom v0.3.4 [INFO] [stderr] Checking wait-timeout v0.2.1 [INFO] [stderr] Compiling matrixmultiply v0.3.10 [INFO] [stderr] Checking approx v0.5.1 [INFO] [stderr] Checking rawpointer v0.2.1 [INFO] [stderr] Checking num-integer v0.1.46 [INFO] [stderr] Checking num-complex v0.4.6 [INFO] [stderr] Checking clap_builder v4.5.56 [INFO] [stderr] Checking regex-automata v0.4.13 [INFO] [stderr] Checking plotters v0.3.7 [INFO] [stderr] Checking is-terminal v0.4.17 [INFO] [stderr] Checking rand_core v0.9.5 [INFO] [stderr] Checking tempfile v3.24.0 [INFO] [stderr] Checking rand_xorshift v0.4.0 [INFO] [stderr] Checking rand v0.9.2 [INFO] [stderr] Checking rusty-fork v0.3.1 [INFO] [stderr] Checking ndarray v0.16.1 [INFO] [stderr] Compiling pyo3-build-config v0.23.5 [INFO] [stderr] Checking serde_json v1.0.149 [INFO] [stderr] Checking regex v1.12.2 [INFO] [stderr] Compiling pyo3-macros-backend v0.23.5 [INFO] [stderr] Compiling pyo3-ffi v0.23.5 [INFO] [stderr] Compiling pyo3 v0.23.5 [INFO] [stderr] Checking clap v4.5.56 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Compiling thiserror-impl v2.0.18 [INFO] [stderr] Compiling zerocopy-derive v0.8.37 [INFO] [stderr] Checking thiserror v2.0.18 [INFO] [stderr] Compiling pyo3-macros v0.23.5 [INFO] [stderr] Checking serde v1.0.228 [INFO] [stderr] Checking ta-core v0.1.0 (/opt/rustwide/workdir/crates/ta-core) [INFO] [stderr] Checking tinytemplate v1.2.1 [INFO] [stdout] warning: unused variable: `name` [INFO] [stdout] --> crates/ta-core/src/dataframe.rs:81:14 [INFO] [stdout] | [INFO] [stdout] 81 | for (name, series) in &columns[1..] { [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_name` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking ta-indicators v0.1.0 (/opt/rustwide/workdir/crates/ta-indicators) [INFO] [stderr] Checking ta-simd v0.1.0 (/opt/rustwide/workdir/crates/ta-simd) [INFO] [stdout] warning: unused variable: `window` [INFO] [stdout] --> crates/ta-indicators/src/trend/wma.rs:190:13 [INFO] [stdout] | [INFO] [stdout] 190 | let window = self.config.window; [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_window` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable `initialized` is assigned to, but never used [INFO] [stdout] --> crates/ta-indicators/src/volatility/atr.rs:189:13 [INFO] [stdout] | [INFO] [stdout] 189 | let mut initialized = false; [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: consider using `_initialized` instead [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: value assigned to `initialized` is never read [INFO] [stdout] --> crates/ta-indicators/src/volatility/atr.rs:206:17 [INFO] [stdout] | [INFO] [stdout] 206 | initialized = true; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = help: maybe it is overwritten before being read? [INFO] [stdout] = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: associated function `new_with_alpha` is never used [INFO] [stdout] --> crates/ta-indicators/src/trend/ema.rs:131:19 [INFO] [stdout] | [INFO] [stdout] 110 | impl Ema { [INFO] [stdout] | ----------------------- associated function in this implementation [INFO] [stdout] ... [INFO] [stdout] 131 | pub(crate) fn new_with_alpha(alpha: T, fillna: bool) -> Self { [INFO] [stdout] | ^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> crates/ta-indicators/src/volatility/keltner.rs:91:5 [INFO] [stdout] | [INFO] [stdout] 91 | pub ema_count: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: the lint level is defined here [INFO] [stdout] --> crates/ta-indicators/src/lib.rs:31:9 [INFO] [stdout] | [INFO] [stdout] 31 | #![warn(missing_docs)] [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> crates/ta-indicators/src/volatility/keltner.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | pub ema_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> crates/ta-indicators/src/volatility/keltner.rs:95:5 [INFO] [stdout] | [INFO] [stdout] 95 | pub atr_count: usize, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> crates/ta-indicators/src/volatility/keltner.rs:96:5 [INFO] [stdout] | [INFO] [stdout] 96 | pub atr_initialized: bool, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: missing documentation for a struct field [INFO] [stdout] --> crates/ta-indicators/src/volatility/keltner.rs:97:5 [INFO] [stdout] | [INFO] [stdout] 97 | pub prev_close: T, [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking ta-transforms v0.1.0 (/opt/rustwide/workdir/crates/ta-transforms) [INFO] [stderr] Checking rust-ta v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:120:13 [INFO] [stdout] | [INFO] [stdout] 120 | let mut sma = Sma::::new(SmaConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | let mut sma = Sma::::new(SmaConfig { window: 50, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | let mut sma = Sma::::new(SmaConfig { window: 200, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:139:13 [INFO] [stdout] | [INFO] [stdout] 139 | let mut ema = Ema::::new(EmaConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:145:13 [INFO] [stdout] | [INFO] [stdout] 145 | let mut ema = Ema::::new(EmaConfig { window: 50, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:152:13 [INFO] [stdout] | [INFO] [stdout] 152 | let mut wma = Wma::::new(WmaConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:159:13 [INFO] [stdout] | [INFO] [stdout] 159 | let mut macd = Macd::::new(MacdConfig::default()); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:166:13 [INFO] [stdout] | [INFO] [stdout] 166 | let mut adx = Adx::::new(AdxConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:173:13 [INFO] [stdout] | [INFO] [stdout] 173 | let mut aroon = Aroon::::new(AroonConfig { window: 25, fillna: false }); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:180:13 [INFO] [stdout] | [INFO] [stdout] 180 | let mut rsi = Rsi::::new(RsiConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:186:13 [INFO] [stdout] | [INFO] [stdout] 186 | let mut rsi = Rsi::::new(RsiConfig { window: 7, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | let mut stoch = Stochastic::::new(StochasticConfig::default()); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:200:13 [INFO] [stdout] | [INFO] [stdout] 200 | let mut wr = WilliamsR::::new(WilliamsRConfig::default()); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:207:13 [INFO] [stdout] | [INFO] [stdout] 207 | let mut roc = Roc::::new(RocConfig { window: 12, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:214:13 [INFO] [stdout] | [INFO] [stdout] 214 | let mut bb = BollingerBands::::new(BollingerConfig::default()); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:221:13 [INFO] [stdout] | [INFO] [stdout] 221 | let mut atr = Atr::::new(AtrConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:228:13 [INFO] [stdout] | [INFO] [stdout] 228 | let mut kc = KeltnerChannel::::new(KeltnerConfig::default()); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:235:13 [INFO] [stdout] | [INFO] [stdout] 235 | let mut dc = DonchianChannel::::new(DonchianConfig::default()); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:242:13 [INFO] [stdout] | [INFO] [stdout] 242 | let mut obv = Obv::::new(ObvConfig::default()); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:249:13 [INFO] [stdout] | [INFO] [stdout] 249 | let mut mfi = Mfi::::new(MfiConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:256:13 [INFO] [stdout] | [INFO] [stdout] 256 | let mut cmf = Cmf::::new(CmfConfig { window: 20, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `close` [INFO] [stdout] --> src/bin/rust_ta_bench.rs:111:18 [INFO] [stdout] | [INFO] [stdout] 111 | let (series, close) = load_ohlcv(data_file); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_close` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking numpy v0.23.0 [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:120:13 [INFO] [stdout] | [INFO] [stdout] 120 | let mut sma = Sma::::new(SmaConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:126:13 [INFO] [stdout] | [INFO] [stdout] 126 | let mut sma = Sma::::new(SmaConfig { window: 50, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:132:13 [INFO] [stdout] | [INFO] [stdout] 132 | let mut sma = Sma::::new(SmaConfig { window: 200, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:139:13 [INFO] [stdout] | [INFO] [stdout] 139 | let mut ema = Ema::::new(EmaConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:145:13 [INFO] [stdout] | [INFO] [stdout] 145 | let mut ema = Ema::::new(EmaConfig { window: 50, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:152:13 [INFO] [stdout] | [INFO] [stdout] 152 | let mut wma = Wma::::new(WmaConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:159:13 [INFO] [stdout] | [INFO] [stdout] 159 | let mut macd = Macd::::new(MacdConfig::default()); [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:166:13 [INFO] [stdout] | [INFO] [stdout] 166 | let mut adx = Adx::::new(AdxConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:173:13 [INFO] [stdout] | [INFO] [stdout] 173 | let mut aroon = Aroon::::new(AroonConfig { window: 25, fillna: false }); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:180:13 [INFO] [stdout] | [INFO] [stdout] 180 | let mut rsi = Rsi::::new(RsiConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:186:13 [INFO] [stdout] | [INFO] [stdout] 186 | let mut rsi = Rsi::::new(RsiConfig { window: 7, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:193:13 [INFO] [stdout] | [INFO] [stdout] 193 | let mut stoch = Stochastic::::new(StochasticConfig::default()); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:200:13 [INFO] [stdout] | [INFO] [stdout] 200 | let mut wr = WilliamsR::::new(WilliamsRConfig::default()); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:207:13 [INFO] [stdout] | [INFO] [stdout] 207 | let mut roc = Roc::::new(RocConfig { window: 12, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:214:13 [INFO] [stdout] | [INFO] [stdout] 214 | let mut bb = BollingerBands::::new(BollingerConfig::default()); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:221:13 [INFO] [stdout] | [INFO] [stdout] 221 | let mut atr = Atr::::new(AtrConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:228:13 [INFO] [stdout] | [INFO] [stdout] 228 | let mut kc = KeltnerChannel::::new(KeltnerConfig::default()); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:235:13 [INFO] [stdout] | [INFO] [stdout] 235 | let mut dc = DonchianChannel::::new(DonchianConfig::default()); [INFO] [stdout] | ----^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:242:13 [INFO] [stdout] | [INFO] [stdout] 242 | let mut obv = Obv::::new(ObvConfig::default()); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:249:13 [INFO] [stdout] | [INFO] [stdout] 249 | let mut mfi = Mfi::::new(MfiConfig { window: 14, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/bin/rust_ta_bench.rs:256:13 [INFO] [stdout] | [INFO] [stdout] 256 | let mut cmf = Cmf::::new(CmfConfig { window: 20, fillna: false }); [INFO] [stdout] | ----^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `close` [INFO] [stdout] --> src/bin/rust_ta_bench.rs:111:18 [INFO] [stdout] | [INFO] [stdout] 111 | let (series, close) = load_ohlcv(data_file); [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_close` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: struct `FeatureStats` is never constructed [INFO] [stdout] --> crates/ta-transforms/src/normalization.rs:51:12 [INFO] [stdout] | [INFO] [stdout] 51 | pub struct FeatureStats { [INFO] [stdout] | ^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: method `is_fitted` is never used [INFO] [stdout] --> crates/ta-transforms/src/pipeline.rs:57:8 [INFO] [stdout] | [INFO] [stdout] 43 | pub trait ErasedTransform: Send + Sync { [INFO] [stdout] | --------------- method in this trait [INFO] [stdout] ... [INFO] [stdout] 57 | fn is_fitted(&self) -> bool; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Checking ppv-lite86 v0.2.21 [INFO] [stderr] Checking half v2.7.1 [INFO] [stderr] Checking ciborium-ll v0.2.2 [INFO] [stderr] Checking rand_chacha v0.9.0 [INFO] [stderr] Checking ciborium v0.2.2 [INFO] [stderr] Checking proptest v1.9.0 [INFO] [stderr] Checking ta-python v0.1.0 (/opt/rustwide/workdir/crates/ta-python) [INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr` [INFO] [stdout] --> crates/ta-python/src/indicators.rs:81:6 [INFO] [stdout] | [INFO] [stdout] 81 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:98:6 [INFO] [stdout] | [INFO] [stdout] 98 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:120:6 [INFO] [stdout] | [INFO] [stdout] 120 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:144:6 [INFO] [stdout] | [INFO] [stdout] 144 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:163:6 [INFO] [stdout] | [INFO] [stdout] 163 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:182:6 [INFO] [stdout] | [INFO] [stdout] 182 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:197:6 [INFO] [stdout] | [INFO] [stdout] 197 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:212:6 [INFO] [stdout] | [INFO] [stdout] 212 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:229:6 [INFO] [stdout] | [INFO] [stdout] 229 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:250:6 [INFO] [stdout] | [INFO] [stdout] 250 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:274:6 [INFO] [stdout] | [INFO] [stdout] 274 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:308:6 [INFO] [stdout] | [INFO] [stdout] 308 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:328:6 [INFO] [stdout] | [INFO] [stdout] 328 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:353:6 [INFO] [stdout] | [INFO] [stdout] 353 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:377:6 [INFO] [stdout] | [INFO] [stdout] 377 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:410:6 [INFO] [stdout] | [INFO] [stdout] 410 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:436:6 [INFO] [stdout] | [INFO] [stdout] 436 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:463:6 [INFO] [stdout] | [INFO] [stdout] 463 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:486:6 [INFO] [stdout] | [INFO] [stdout] 486 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] [stderr] error: could not compile `ta-python` (lib test) due to 19 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] --> crates/ta-python/src/indicators.rs:81:6 [INFO] [stdout] | [INFO] [stdout] 81 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:98:6 [INFO] [stdout] | [INFO] [stdout] 98 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:120:6 [INFO] [stdout] | [INFO] [stdout] 120 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:144:6 [INFO] [stdout] | [INFO] [stdout] 144 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:163:6 [INFO] [stdout] | [INFO] [stdout] 163 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:182:6 [INFO] [stdout] | [INFO] [stdout] 182 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:197:6 [INFO] [stdout] | [INFO] [stdout] 197 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] [stderr] error: could not compile `ta-python` (lib) due to 19 previous errors [INFO] [stdout] error: useless conversion to the same type: `pyo3::PyErr` [INFO] [stdout] --> crates/ta-python/src/indicators.rs:212:6 [INFO] [stdout] | [INFO] [stdout] 212 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:229:6 [INFO] [stdout] | [INFO] [stdout] 229 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:250:6 [INFO] [stdout] | [INFO] [stdout] 250 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:274:6 [INFO] [stdout] | [INFO] [stdout] 274 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:308:6 [INFO] [stdout] | [INFO] [stdout] 308 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:328:6 [INFO] [stdout] | [INFO] [stdout] 328 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:353:6 [INFO] [stdout] | [INFO] [stdout] 353 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:377:6 [INFO] [stdout] | [INFO] [stdout] 377 | ) -> PyResult> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:410:6 [INFO] [stdout] | [INFO] [stdout] 410 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:436:6 [INFO] [stdout] | [INFO] [stdout] 436 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:463:6 [INFO] [stdout] | [INFO] [stdout] 463 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] --> crates/ta-python/src/indicators.rs:486:6 [INFO] [stdout] | [INFO] [stdout] 486 | ) -> PyResult>> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: this method call relies on the `impl Into 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] [stderr] warning: unused dependency `ta-transforms` [INFO] [stderr] --> crates/ta-python/Cargo.toml:25:1 [INFO] [stderr] | [INFO] [stderr] 25 | ta-transforms = { path = "../ta-transforms" } [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stderr] | [INFO] [stderr] = note: `cargo::unused_dependencies` is set to `warn` by default [INFO] [stderr] help: consider removing the dependency on `ta-transforms` [INFO] [stderr] warning: `ta-python` (manifest) generated 1 warning [INFO] running `Command { std: "docker" "inspect" "604e6f1ecb22eb9fd100130ab2e0a90f03b639f7b1d0b5e66507568dd0bb56e2", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "604e6f1ecb22eb9fd100130ab2e0a90f03b639f7b1d0b5e66507568dd0bb56e2", kill_on_drop: false }` [INFO] [stdout] 604e6f1ecb22eb9fd100130ab2e0a90f03b639f7b1d0b5e66507568dd0bb56e2