[INFO] cloning repository https://github.com/ZhuoruLin/fast-wordpiece [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/ZhuoruLin/fast-wordpiece" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FZhuoruLin%2Ffast-wordpiece", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FZhuoruLin%2Ffast-wordpiece'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] 8e36dfb10b7dbe1ebc90801d8c7de63dcd05735f [INFO] checking ZhuoruLin/fast-wordpiece/8e36dfb10b7dbe1ebc90801d8c7de63dcd05735f against master#ab869e094a907cc5d19b4080f22eccaf347f1f95 for pr-129604 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FZhuoruLin%2Ffast-wordpiece" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/ZhuoruLin/fast-wordpiece on toolchain ab869e094a907cc5d19b4080f22eccaf347f1f95 [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/ZhuoruLin/fast-wordpiece [INFO] finished tweaking git repo https://github.com/ZhuoruLin/fast-wordpiece [INFO] tweaked toml for git repo https://github.com/ZhuoruLin/fast-wordpiece written to /workspace/builds/worker-6-tc1/source/Cargo.toml [INFO] crate git repo https://github.com/ZhuoruLin/fast-wordpiece 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" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Updating crates.io index [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded macro_rules_attribute v0.2.0 [INFO] [stderr] Downloaded monostate-impl v0.1.11 [INFO] [stderr] Downloaded monostate v0.1.11 [INFO] [stderr] Downloaded macro_rules_attribute-proc_macro v0.2.0 [INFO] [stderr] Downloaded tokenizers v0.15.2 [INFO] [stderr] Downloaded rayon-cond v0.3.0 [INFO] [stderr] Downloaded unicode-normalization-alignments v0.1.12 [INFO] [stderr] Downloaded esaxx-rs v0.1.10 [INFO] [stderr] Downloaded spm_precompiled v0.1.4 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 7c8ae944f622ae8f87b53cda8393eb567b2704f4dc22a101eb62c5d0e5444154 [INFO] running `Command { std: "docker" "start" "-a" "7c8ae944f622ae8f87b53cda8393eb567b2704f4dc22a101eb62c5d0e5444154", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "7c8ae944f622ae8f87b53cda8393eb567b2704f4dc22a101eb62c5d0e5444154", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "7c8ae944f622ae8f87b53cda8393eb567b2704f4dc22a101eb62c5d0e5444154", kill_on_drop: false }` [INFO] [stdout] 7c8ae944f622ae8f87b53cda8393eb567b2704f4dc22a101eb62c5d0e5444154 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-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" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:923055f121b5182466d55868a8b05e67af8ba4a3a3f6bad814e953ca3cd3ac2a" "/opt/rustwide/cargo-home/bin/cargo" "+ab869e094a907cc5d19b4080f22eccaf347f1f95" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 88389b62878e72c561e16a31f67c4f0c0a7f593a5cb068f0f02391cfe5ca3c97 [INFO] running `Command { std: "docker" "start" "-a" "88389b62878e72c561e16a31f67c4f0c0a7f593a5cb068f0f02391cfe5ca3c97", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.79 [INFO] [stderr] Compiling libc v0.2.153 [INFO] [stderr] Compiling syn v1.0.109 [INFO] [stderr] Compiling cc v1.0.90 [INFO] [stderr] Compiling crossbeam-utils v0.8.19 [INFO] [stderr] Checking memchr v2.7.1 [INFO] [stderr] Compiling serde v1.0.197 [INFO] [stderr] Compiling rayon-core v1.12.1 [INFO] [stderr] Checking either v1.10.0 [INFO] [stderr] Checking anstyle-parse v0.2.3 [INFO] [stderr] Checking anstyle v1.0.6 [INFO] [stderr] Checking colorchoice v1.0.0 [INFO] [stderr] Checking anstyle-query v1.0.2 [INFO] [stderr] Compiling portable-atomic v1.6.0 [INFO] [stderr] Checking unicode-width v0.1.11 [INFO] [stderr] Compiling serde_json v1.0.114 [INFO] [stderr] Checking regex-syntax v0.8.2 [INFO] [stderr] Checking strsim v0.11.0 [INFO] [stderr] Compiling thiserror v1.0.58 [INFO] [stderr] Checking base64 v0.13.1 [INFO] [stderr] Checking ryu v1.0.17 [INFO] [stderr] Checking anstream v0.6.13 [INFO] [stderr] Checking number_prefix v0.4.0 [INFO] [stderr] Compiling macro_rules_attribute-proc_macro v0.2.0 [INFO] [stderr] Checking smallvec v1.13.1 [INFO] [stderr] Checking unicode_categories v0.1.1 [INFO] [stderr] Checking itertools v0.11.0 [INFO] [stderr] Checking itertools v0.12.1 [INFO] [stderr] Checking clap_builder v4.5.2 [INFO] [stderr] Checking unicode-normalization-alignments v0.1.12 [INFO] [stderr] Checking macro_rules_attribute v0.2.0 [INFO] [stderr] Checking aho-corasick v1.1.2 [INFO] [stderr] Checking nom v7.1.3 [INFO] [stderr] Compiling quote v1.0.35 [INFO] [stderr] Compiling onig_sys v69.8.1 [INFO] [stderr] Compiling esaxx-rs v0.1.10 [INFO] [stderr] Checking crossbeam-epoch v0.9.18 [INFO] [stderr] Compiling syn v2.0.53 [INFO] [stderr] Checking getrandom v0.2.12 [INFO] [stderr] Checking console v0.15.8 [INFO] [stderr] Checking crossbeam-deque v0.8.5 [INFO] [stderr] Checking rand_core v0.6.4 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking indicatif v0.17.8 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking rayon v1.9.0 [INFO] [stderr] Checking regex-automata v0.4.6 [INFO] [stderr] Checking rayon-cond v0.3.0 [INFO] [stderr] Checking regex v1.10.3 [INFO] [stderr] Compiling serde_derive v1.0.197 [INFO] [stderr] Compiling monostate-impl v0.1.11 [INFO] [stderr] Compiling clap_derive v4.5.3 [INFO] [stderr] Compiling thiserror-impl v1.0.58 [INFO] [stderr] Compiling darling_core v0.14.4 [INFO] [stderr] Checking clap v4.5.3 [INFO] [stderr] Checking onig v6.4.0 [INFO] [stderr] Compiling darling_macro v0.14.4 [INFO] [stderr] Compiling darling v0.14.4 [INFO] [stderr] Compiling derive_builder_core v0.12.0 [INFO] [stderr] Compiling derive_builder_macro v0.12.0 [INFO] [stderr] Checking derive_builder v0.12.0 [INFO] [stderr] Checking monostate v0.1.11 [INFO] [stderr] Checking spm_precompiled v0.1.4 [INFO] [stderr] Checking tokenizers v0.15.2 [INFO] [stderr] Checking fast-wordpiece v0.1.0 (/opt/rustwide/workdir) [INFO] [stdout] warning: unused import: `tokenizers::pre_tokenizers::punctuation` [INFO] [stdout] --> src/linmaxmatch/trie.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use tokenizers::pre_tokenizers::punctuation; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokenizers::utils` [INFO] [stdout] --> src/linmaxmatch/trie.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use tokenizers::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::Peekable` [INFO] [stdout] --> src/linmaxmatch/trie.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::iter::Peekable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::result` [INFO] [stdout] --> src/linmaxmatch/trie.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::result; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::linmaxmatch` [INFO] [stdout] --> src/linmaxmatch/trie.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::linmaxmatch; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `is_space` [INFO] [stdout] --> src/linmaxmatch/trie.rs:13:20 [INFO] [stdout] | [INFO] [stdout] 13 | use super::utils::{is_space, is_word_boundary}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokenizers::pre_tokenizers::punctuation` [INFO] [stdout] --> src/linmaxmatch/trie.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use tokenizers::pre_tokenizers::punctuation; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokenizers::utils` [INFO] [stdout] --> src/linmaxmatch/trie.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use tokenizers::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::Peekable` [INFO] [stdout] --> src/linmaxmatch/trie.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::iter::Peekable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::result` [INFO] [stdout] --> src/linmaxmatch/trie.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::result; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::linmaxmatch` [INFO] [stdout] --> src/linmaxmatch/trie.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::linmaxmatch; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `is_space` [INFO] [stdout] --> src/linmaxmatch/trie.rs:13:20 [INFO] [stdout] | [INFO] [stdout] 13 | use super::utils::{is_space, is_word_boundary}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `model` [INFO] [stdout] --> src/linmaxmatch/trainer.rs:167:25 [INFO] [stdout] | [INFO] [stdout] 167 | pub fn train(&self, model: &mut WordPiece) -> Result> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_model` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/linmaxmatch/trie.rs:146:14 [INFO] [stdout] | [INFO] [stdout] 146 | for (i, c) in token_value.chars().enumerate(){ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token_id` [INFO] [stdout] --> src/linmaxmatch/trie.rs:454:27 [INFO] [stdout] | [INFO] [stdout] 454 | for (token_value, token_id) in pairs{ [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/linmaxmatch/trie.rs:396:18 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn build(mut self) -> Result{ [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `last` [INFO] [stdout] --> src/linmaxmatch/trie.rs:518:33 [INFO] [stdout] | [INFO] [stdout] 518 | let (token_node_ids, u, last, n) = self.match_loop(&mut chars_iterator); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_last` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/linmaxmatch/trie.rs:518:39 [INFO] [stdout] | [INFO] [stdout] 518 | let (token_node_ids, u, last, n) = self.match_loop(&mut chars_iterator); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/linmaxmatch/trie.rs:569:13 [INFO] [stdout] | [INFO] [stdout] 569 | let mut vocab = get_example1_vocab(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokens` [INFO] [stdout] --> src/linmaxmatch/trie.rs:615:14 [INFO] [stdout] | [INFO] [stdout] 615 | let (tokens, u_id, last, _) = test_trie.match_loop(&mut fail_input); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `u_id` [INFO] [stdout] --> src/linmaxmatch/trie.rs:615:22 [INFO] [stdout] | [INFO] [stdout] 615 | let (tokens, u_id, last, _) = test_trie.match_loop(&mut fail_input); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_u_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokens` [INFO] [stdout] --> src/linmaxmatch/trie.rs:619:14 [INFO] [stdout] | [INFO] [stdout] 619 | let (tokens, u_id, last, _) = test_trie.match_loop(&mut fail_input2); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `model` [INFO] [stdout] --> src/linmaxmatch/trainer.rs:167:25 [INFO] [stdout] | [INFO] [stdout] 167 | pub fn train(&self, model: &mut WordPiece) -> Result> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_model` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/linmaxmatch/trie.rs:146:14 [INFO] [stdout] | [INFO] [stdout] 146 | for (i, c) in token_value.chars().enumerate(){ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `TrieNode` is more private than the item `trie::Trie::get_node` [INFO] [stdout] --> src/linmaxmatch/trie.rs:125:5 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn get_node(&self, id:usize) -> Option<&TrieNode>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `trie::Trie::get_node` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `TrieNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | struct TrieNode{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `TrieNode` is more private than the item `trie::Trie::add_node` [INFO] [stdout] --> src/linmaxmatch/trie.rs:131:5 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn add_node(&mut self, node:TrieNode){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `trie::Trie::add_node` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `TrieNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | struct TrieNode{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `TrieNode` is more private than the item `trie::Trie::get_node_mut` [INFO] [stdout] --> src/linmaxmatch/trie.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | pub fn get_node_mut(&mut self, id:usize) -> Option<&mut TrieNode>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `trie::Trie::get_node_mut` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `TrieNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | struct TrieNode{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `trie::Trie` is more private than the item `trie::TrieBuilder::build` [INFO] [stdout] --> src/linmaxmatch/trie.rs:396:5 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn build(mut self) -> Result{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `trie::TrieBuilder::build` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `trie::Trie` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | pub(crate) struct Trie{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `e2e` is never read [INFO] [stdout] --> src/linmaxmatch/trie.rs:99:16 [INFO] [stdout] | [INFO] [stdout] 95 | pub(crate) struct Trie{ [INFO] [stdout] | ---- field in this struct [INFO] [stdout] ... [INFO] [stdout] 99 | pub(super) e2e: bool [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Trie` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_e2e`, `add_node`, and `contains_token_value` are never used [INFO] [stdout] --> src/linmaxmatch/trie.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 115 | impl Trie{ [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 116 | [INFO] [stdout] 117 | fn set_e2e(&mut self, e2e: bool){ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | pub fn add_node(&mut self, node:TrieNode){ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn contains_token_value(&self, token_value: &str) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token_id` [INFO] [stdout] --> src/linmaxmatch/trie.rs:454:27 [INFO] [stdout] | [INFO] [stdout] 454 | for (token_value, token_id) in pairs{ [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/linmaxmatch/trie.rs:396:18 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn build(mut self) -> Result{ [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `last` [INFO] [stdout] --> src/linmaxmatch/trie.rs:518:33 [INFO] [stdout] | [INFO] [stdout] 518 | let (token_node_ids, u, last, n) = self.match_loop(&mut chars_iterator); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_last` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/linmaxmatch/trie.rs:518:39 [INFO] [stdout] | [INFO] [stdout] 518 | let (token_node_ids, u, last, n) = self.match_loop(&mut chars_iterator); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 22 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `TrieNode` is more private than the item `Trie::get_node` [INFO] [stdout] --> src/linmaxmatch/trie.rs:125:5 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn get_node(&self, id:usize) -> Option<&TrieNode>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Trie::get_node` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `TrieNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | struct TrieNode{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `TrieNode` is more private than the item `Trie::add_node` [INFO] [stdout] --> src/linmaxmatch/trie.rs:131:5 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn add_node(&mut self, node:TrieNode){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Trie::add_node` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `TrieNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | struct TrieNode{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `TrieNode` is more private than the item `Trie::get_node_mut` [INFO] [stdout] --> src/linmaxmatch/trie.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | pub fn get_node_mut(&mut self, id:usize) -> Option<&mut TrieNode>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Trie::get_node_mut` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `TrieNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | struct TrieNode{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Trie` is more private than the item `TrieBuilder::build` [INFO] [stdout] --> src/linmaxmatch/trie.rs:396:5 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn build(mut self) -> Result{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `TrieBuilder::build` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `Trie` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | pub(crate) struct Trie{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `val` is never read [INFO] [stdout] --> src/linmaxmatch/trie.rs:29:5 [INFO] [stdout] | [INFO] [stdout] 27 | struct TrieNode{ [INFO] [stdout] | -------- field in this struct [INFO] [stdout] 28 | id: usize, [INFO] [stdout] 29 | val: NodeValue, [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `TrieNode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `is_head` and `is_rp` are never used [INFO] [stdout] --> src/linmaxmatch/trie.rs:69:12 [INFO] [stdout] | [INFO] [stdout] 37 | impl TrieNode{ [INFO] [stdout] | ------------- methods in this implementation [INFO] [stdout] ... [INFO] [stdout] 69 | pub fn is_head(&self) -> bool{ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 73 | pub fn is_rp(&self) -> bool{ [INFO] [stdout] | ^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `e2e` is never read [INFO] [stdout] --> src/linmaxmatch/trie.rs:99:16 [INFO] [stdout] | [INFO] [stdout] 95 | pub(crate) struct Trie{ [INFO] [stdout] | ---- field in this struct [INFO] [stdout] ... [INFO] [stdout] 99 | pub(super) e2e: bool [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Trie` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_e2e`, `add_node`, `contains_token_value`, and `e2e_tokenization` are never used [INFO] [stdout] --> src/linmaxmatch/trie.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 115 | impl Trie{ [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 116 | [INFO] [stdout] 117 | fn set_e2e(&mut self, e2e: bool){ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | pub fn add_node(&mut self, node:TrieNode){ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn contains_token_value(&self, token_value: &str) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 271 | pub fn e2e_tokenization(&self, text: &str) -> Result>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 20 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `WordPieceBuilder` [INFO] [stdout] --> src/main.rs:2:48 [INFO] [stdout] | [INFO] [stdout] 2 | use tokenizers::models::wordpiece::{WordPiece, WordPieceBuilder}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Tokenizer` [INFO] [stdout] --> src/main.rs:5:96 [INFO] [stdout] | [INFO] [stdout] 5 | use tokenizers::{DecoderWrapper, NormalizerWrapper, PostProcessorWrapper, PreTokenizerWrapper, Tokenizer, TokenizerImpl}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokenizers::pre_tokenizers::punctuation` [INFO] [stdout] --> src/linmaxmatch/trie.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use tokenizers::pre_tokenizers::punctuation; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokenizers::utils` [INFO] [stdout] --> src/linmaxmatch/trie.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use tokenizers::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::Peekable` [INFO] [stdout] --> src/linmaxmatch/trie.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::iter::Peekable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::result` [INFO] [stdout] --> src/linmaxmatch/trie.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::result; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::linmaxmatch` [INFO] [stdout] --> src/linmaxmatch/trie.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::linmaxmatch; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `is_space` [INFO] [stdout] --> src/linmaxmatch/trie.rs:13:20 [INFO] [stdout] | [INFO] [stdout] 13 | use super::utils::{is_space, is_word_boundary}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `WordPieceBuilder` [INFO] [stdout] --> src/main.rs:2:48 [INFO] [stdout] | [INFO] [stdout] 2 | use tokenizers::models::wordpiece::{WordPiece, WordPieceBuilder}; [INFO] [stdout] | ^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `Tokenizer` [INFO] [stdout] --> src/main.rs:5:96 [INFO] [stdout] | [INFO] [stdout] 5 | use tokenizers::{DecoderWrapper, NormalizerWrapper, PostProcessorWrapper, PreTokenizerWrapper, Tokenizer, TokenizerImpl}; [INFO] [stdout] | ^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokenizers::pre_tokenizers::punctuation` [INFO] [stdout] --> src/linmaxmatch/trie.rs:1:5 [INFO] [stdout] | [INFO] [stdout] 1 | use tokenizers::pre_tokenizers::punctuation; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `tokenizers::utils` [INFO] [stdout] --> src/linmaxmatch/trie.rs:2:5 [INFO] [stdout] | [INFO] [stdout] 2 | use tokenizers::utils; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::iter::Peekable` [INFO] [stdout] --> src/linmaxmatch/trie.rs:5:5 [INFO] [stdout] | [INFO] [stdout] 5 | use std::iter::Peekable; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `std::result` [INFO] [stdout] --> src/linmaxmatch/trie.rs:6:5 [INFO] [stdout] | [INFO] [stdout] 6 | use std::result; [INFO] [stdout] | ^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `crate::linmaxmatch` [INFO] [stdout] --> src/linmaxmatch/trie.rs:11:5 [INFO] [stdout] | [INFO] [stdout] 11 | use crate::linmaxmatch; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused import: `is_space` [INFO] [stdout] --> src/linmaxmatch/trie.rs:13:20 [INFO] [stdout] | [INFO] [stdout] 13 | use super::utils::{is_space, is_word_boundary}; [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `model` [INFO] [stdout] --> src/linmaxmatch/trainer.rs:167:25 [INFO] [stdout] | [INFO] [stdout] 167 | pub fn train(&self, model: &mut WordPiece) -> Result> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_model` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/linmaxmatch/trie.rs:146:14 [INFO] [stdout] | [INFO] [stdout] 146 | for (i, c) in token_value.chars().enumerate(){ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token_id` [INFO] [stdout] --> src/linmaxmatch/trie.rs:454:27 [INFO] [stdout] | [INFO] [stdout] 454 | for (token_value, token_id) in pairs{ [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/linmaxmatch/trie.rs:396:18 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn build(mut self) -> Result{ [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `last` [INFO] [stdout] --> src/linmaxmatch/trie.rs:518:33 [INFO] [stdout] | [INFO] [stdout] 518 | let (token_node_ids, u, last, n) = self.match_loop(&mut chars_iterator); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_last` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/linmaxmatch/trie.rs:518:39 [INFO] [stdout] | [INFO] [stdout] 518 | let (token_node_ids, u, last, n) = self.match_loop(&mut chars_iterator); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> src/main.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let err = tokenizer [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `encoded` [INFO] [stdout] --> src/main.rs:96:13 [INFO] [stdout] | [INFO] [stdout] 96 | let encoded = trie_tokenizer.e2e_tokenization(&line.unwrap()); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_encoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `encoded` [INFO] [stdout] --> src/main.rs:106:13 [INFO] [stdout] | [INFO] [stdout] 106 | let encoded = wordpiece_tokenizer.encode(line.unwrap(), false); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_encoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | let mut wordpiece_tokenizer = TokenizerBuilder::< [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `model` [INFO] [stdout] --> src/linmaxmatch/trainer.rs:167:25 [INFO] [stdout] | [INFO] [stdout] 167 | pub fn train(&self, model: &mut WordPiece) -> Result> { [INFO] [stdout] | ^^^^^ help: if this is intentional, prefix it with an underscore: `_model` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_variables)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `i` [INFO] [stdout] --> src/linmaxmatch/trie.rs:146:14 [INFO] [stdout] | [INFO] [stdout] 146 | for (i, c) in token_value.chars().enumerate(){ [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_i` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `TrieNode` is more private than the item `Trie::get_node` [INFO] [stdout] --> src/linmaxmatch/trie.rs:125:5 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn get_node(&self, id:usize) -> Option<&TrieNode>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Trie::get_node` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `TrieNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | struct TrieNode{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `TrieNode` is more private than the item `Trie::add_node` [INFO] [stdout] --> src/linmaxmatch/trie.rs:131:5 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn add_node(&mut self, node:TrieNode){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Trie::add_node` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `TrieNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | struct TrieNode{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `TrieNode` is more private than the item `Trie::get_node_mut` [INFO] [stdout] --> src/linmaxmatch/trie.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | pub fn get_node_mut(&mut self, id:usize) -> Option<&mut TrieNode>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `Trie::get_node_mut` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `TrieNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | struct TrieNode{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `Trie` is more private than the item `TrieBuilder::build` [INFO] [stdout] --> src/linmaxmatch/trie.rs:396:5 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn build(mut self) -> Result{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `TrieBuilder::build` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `Trie` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | pub(crate) struct Trie{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `train_wordpiece` is never used [INFO] [stdout] --> src/main.rs:14:4 [INFO] [stdout] | [INFO] [stdout] 14 | fn train_wordpiece() -> Result, Box>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `e2e` is never read [INFO] [stdout] --> src/linmaxmatch/trie.rs:99:16 [INFO] [stdout] | [INFO] [stdout] 95 | pub(crate) struct Trie{ [INFO] [stdout] | ---- field in this struct [INFO] [stdout] ... [INFO] [stdout] 99 | pub(super) e2e: bool [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Trie` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_e2e`, `add_node`, and `contains_token_value` are never used [INFO] [stdout] --> src/linmaxmatch/trie.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 115 | impl Trie{ [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 116 | [INFO] [stdout] 117 | fn set_e2e(&mut self, e2e: bool){ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | pub fn add_node(&mut self, node:TrieNode){ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn contains_token_value(&self, token_value: &str) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `token_id` [INFO] [stdout] --> src/linmaxmatch/trie.rs:454:27 [INFO] [stdout] | [INFO] [stdout] 454 | for (token_value, token_id) in pairs{ [INFO] [stdout] | ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_token_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/linmaxmatch/trie.rs:396:18 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn build(mut self) -> Result{ [INFO] [stdout] | ----^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_mut)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 25 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `last` [INFO] [stdout] --> src/linmaxmatch/trie.rs:518:33 [INFO] [stdout] | [INFO] [stdout] 518 | let (token_node_ids, u, last, n) = self.match_loop(&mut chars_iterator); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_last` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `n` [INFO] [stdout] --> src/linmaxmatch/trie.rs:518:39 [INFO] [stdout] | [INFO] [stdout] 518 | let (token_node_ids, u, last, n) = self.match_loop(&mut chars_iterator); [INFO] [stdout] | ^ help: if this is intentional, prefix it with an underscore: `_n` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/linmaxmatch/trie.rs:569:13 [INFO] [stdout] | [INFO] [stdout] 569 | let mut vocab = get_example1_vocab(); [INFO] [stdout] | ----^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokens` [INFO] [stdout] --> src/linmaxmatch/trie.rs:615:14 [INFO] [stdout] | [INFO] [stdout] 615 | let (tokens, u_id, last, _) = test_trie.match_loop(&mut fail_input); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `u_id` [INFO] [stdout] --> src/linmaxmatch/trie.rs:615:22 [INFO] [stdout] | [INFO] [stdout] 615 | let (tokens, u_id, last, _) = test_trie.match_loop(&mut fail_input); [INFO] [stdout] | ^^^^ help: if this is intentional, prefix it with an underscore: `_u_id` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `tokens` [INFO] [stdout] --> src/linmaxmatch/trie.rs:619:14 [INFO] [stdout] | [INFO] [stdout] 619 | let (tokens, u_id, last, _) = test_trie.match_loop(&mut fail_input2); [INFO] [stdout] | ^^^^^^ help: if this is intentional, prefix it with an underscore: `_tokens` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `err` [INFO] [stdout] --> src/main.rs:34:9 [INFO] [stdout] | [INFO] [stdout] 34 | let err = tokenizer [INFO] [stdout] | ^^^ help: if this is intentional, prefix it with an underscore: `_err` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `encoded` [INFO] [stdout] --> src/main.rs:96:13 [INFO] [stdout] | [INFO] [stdout] 96 | let encoded = trie_tokenizer.e2e_tokenization(&line.unwrap()); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_encoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: unused variable: `encoded` [INFO] [stdout] --> src/main.rs:106:13 [INFO] [stdout] | [INFO] [stdout] 106 | let encoded = wordpiece_tokenizer.encode(line.unwrap(), false); [INFO] [stdout] | ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_encoded` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: variable does not need to be mutable [INFO] [stdout] --> src/main.rs:70:9 [INFO] [stdout] | [INFO] [stdout] 70 | let mut wordpiece_tokenizer = TokenizerBuilder::< [INFO] [stdout] | ----^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | | [INFO] [stdout] | help: remove this `mut` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `TrieNode` is more private than the item `trie::Trie::get_node` [INFO] [stdout] --> src/linmaxmatch/trie.rs:125:5 [INFO] [stdout] | [INFO] [stdout] 125 | pub fn get_node(&self, id:usize) -> Option<&TrieNode>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `trie::Trie::get_node` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `TrieNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | struct TrieNode{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] = note: `#[warn(private_interfaces)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `TrieNode` is more private than the item `trie::Trie::add_node` [INFO] [stdout] --> src/linmaxmatch/trie.rs:131:5 [INFO] [stdout] | [INFO] [stdout] 131 | pub fn add_node(&mut self, node:TrieNode){ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `trie::Trie::add_node` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `TrieNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | struct TrieNode{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `TrieNode` is more private than the item `trie::Trie::get_node_mut` [INFO] [stdout] --> src/linmaxmatch/trie.rs:135:5 [INFO] [stdout] | [INFO] [stdout] 135 | pub fn get_node_mut(&mut self, id:usize) -> Option<&mut TrieNode>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `trie::Trie::get_node_mut` is reachable at visibility `pub(crate)` [INFO] [stdout] | [INFO] [stdout] note: but type `TrieNode` is only usable at visibility `pub(self)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:27:1 [INFO] [stdout] | [INFO] [stdout] 27 | struct TrieNode{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: type `trie::Trie` is more private than the item `trie::TrieBuilder::build` [INFO] [stdout] --> src/linmaxmatch/trie.rs:396:5 [INFO] [stdout] | [INFO] [stdout] 396 | pub fn build(mut self) -> Result{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `trie::TrieBuilder::build` is reachable at visibility `pub` [INFO] [stdout] | [INFO] [stdout] note: but type `trie::Trie` is only usable at visibility `pub(crate)` [INFO] [stdout] --> src/linmaxmatch/trie.rs:95:1 [INFO] [stdout] | [INFO] [stdout] 95 | pub(crate) struct Trie{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: function `train_wordpiece` is never used [INFO] [stdout] --> src/main.rs:14:4 [INFO] [stdout] | [INFO] [stdout] 14 | fn train_wordpiece() -> Result, Box>{ [INFO] [stdout] | ^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(dead_code)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: field `e2e` is never read [INFO] [stdout] --> src/linmaxmatch/trie.rs:99:16 [INFO] [stdout] | [INFO] [stdout] 95 | pub(crate) struct Trie{ [INFO] [stdout] | ---- field in this struct [INFO] [stdout] ... [INFO] [stdout] 99 | pub(super) e2e: bool [INFO] [stdout] | ^^^ [INFO] [stdout] | [INFO] [stdout] = note: `Trie` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: methods `set_e2e`, `add_node`, and `contains_token_value` are never used [INFO] [stdout] --> src/linmaxmatch/trie.rs:117:8 [INFO] [stdout] | [INFO] [stdout] 115 | impl Trie{ [INFO] [stdout] | --------- methods in this implementation [INFO] [stdout] 116 | [INFO] [stdout] 117 | fn set_e2e(&mut self, e2e: bool){ [INFO] [stdout] | ^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 131 | pub fn add_node(&mut self, node:TrieNode){ [INFO] [stdout] | ^^^^^^^^ [INFO] [stdout] ... [INFO] [stdout] 179 | pub fn contains_token_value(&self, token_value: &str) -> bool{ [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: 29 warnings emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 26.03s [INFO] running `Command { std: "docker" "inspect" "88389b62878e72c561e16a31f67c4f0c0a7f593a5cb068f0f02391cfe5ca3c97", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "88389b62878e72c561e16a31f67c4f0c0a7f593a5cb068f0f02391cfe5ca3c97", kill_on_drop: false }` [INFO] [stdout] 88389b62878e72c561e16a31f67c4f0c0a7f593a5cb068f0f02391cfe5ca3c97