[INFO] cloning repository https://github.com/gabriel-araujjo/ad-hoc-parse-tables
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/gabriel-araujjo/ad-hoc-parse-tables" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgabriel-araujjo%2Fad-hoc-parse-tables", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgabriel-araujjo%2Fad-hoc-parse-tables'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] dc521976117a3ebbbcd3f44dee1e2a6ed747a213
[INFO] checking gabriel-araujjo/ad-hoc-parse-tables against try#4f260f0f20b3133d20cfb50353c0221943af5796+rustflags=-Dunmustuse_in_always_ok for pr-148577
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fgabriel-araujjo%2Fad-hoc-parse-tables" "/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/gabriel-araujjo/ad-hoc-parse-tables
[INFO] finished tweaking git repo https://github.com/gabriel-araujjo/ad-hoc-parse-tables
[INFO] tweaked toml for git repo https://github.com/gabriel-araujjo/ad-hoc-parse-tables written to /workspace/builds/worker-0-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/gabriel-araujjo/ad-hoc-parse-tables on toolchain 4f260f0f20b3133d20cfb50353c0221943af5796
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/gabriel-araujjo/ad-hoc-parse-tables 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" "+4f260f0f20b3133d20cfb50353c0221943af5796" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[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/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 32817a697d2131cf6fabe469728128e27981513204bb1485374b55655a245023
[INFO] running `Command { std: "docker" "start" "-a" "32817a697d2131cf6fabe469728128e27981513204bb1485374b55655a245023", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "32817a697d2131cf6fabe469728128e27981513204bb1485374b55655a245023", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "32817a697d2131cf6fabe469728128e27981513204bb1485374b55655a245023", kill_on_drop: false }`
[INFO] [stdout] 32817a697d2131cf6fabe469728128e27981513204bb1485374b55655a245023
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-0-tc2/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 -Dunmustuse_in_always_ok" "-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:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+4f260f0f20b3133d20cfb50353c0221943af5796" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] b2940a7b2b61f1d6360b5a7678923045d29d98abfb9c6106ba7215f35f503d60
[INFO] running `Command { std: "docker" "start" "-a" "b2940a7b2b61f1d6360b5a7678923045d29d98abfb9c6106ba7215f35f503d60", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.98
[INFO] [stderr]    Compiling syn v1.0.74
[INFO] [stderr]    Compiling num-traits v0.2.14
[INFO] [stderr]    Compiling memchr v2.4.0
[INFO] [stderr]    Compiling num-integer v0.1.44
[INFO] [stderr]     Checking never v0.1.0
[INFO] [stderr]     Checking aho-corasick v0.7.18
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]     Checking flate2 v1.0.20
[INFO] [stderr]     Checking chrono v0.4.19
[INFO] [stderr]     Checking regex v1.5.4
[INFO] [stderr]    Compiling thiserror-impl v1.0.26
[INFO] [stderr]     Checking thiserror v1.0.26
[INFO] [stderr]     Checking zip v0.5.13
[INFO] [stderr]     Checking parse-tables v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `DocumentType`
[INFO] [stdout]  --> src/data/mod.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use self::document_type::{DocumentType, DocumentTypes};
[INFO] [stdout]   |                               ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `DocumentType`
[INFO] [stdout]  --> src/data/mod.rs:5:31
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub use self::document_type::{DocumentType, DocumentTypes};
[INFO] [stdout]   |                               ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/main.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Io(IoError),
[INFO] [stdout]    |     -- ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CallError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 16 -     Io(IoError),
[INFO] [stdout] 16 +     Io(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/main.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     Xml(XmlError),
[INFO] [stdout]    |     --- ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CallError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 17 -     Xml(XmlError),
[INFO] [stdout] 17 +     Xml(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/main.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 |     Parse(ParseError),
[INFO] [stdout]    |     ----- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CallError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 18 -     Parse(ParseError),
[INFO] [stdout] 18 +     Parse(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/main.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     Zip(ZipError),
[INFO] [stdout]    |     --- ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CallError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 19 -     Zip(ZipError),
[INFO] [stdout] 19 +     Zip(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `year` is never used
[INFO] [stdout]    --> src/data/ata.rs:216:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl Ata {
[INFO] [stdout]     | -------- method in this implementation
[INFO] [stdout] 216 |     pub fn year(&self) -> i32 {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `present` and `take` are never used
[INFO] [stdout]    --> src/data/field.rs:152:12
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T> Field<T> {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] 151 |     #[inline]
[INFO] [stdout] 152 |     pub fn present(self) -> Option<T> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn take(&mut self) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Session, Never>
[INFO] [stdout]   --> src/data/ata.rs:21:53
[INFO] [stdout]    |
[INFO] [stdout] 21 |       fn from_str(s: &str) -> Result<Self, Self::Err> {
[INFO] [stdout]    |  _____________________________________________________^
[INFO] [stdout] 22 | |         match s.as_ref() {
[INFO] [stdout] 23 | |             "extraordinária" => Ok(Self::Extraordinary),
[INFO] [stdout] 24 | |             "ordinária" => Ok(Self::Ordinary),
[INFO] [stdout] ...  |
[INFO] [stdout] 27 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Session, Never>
[INFO] [stdout]   --> src/data/ata.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | /         match s.as_ref() {
[INFO] [stdout] 23 | |             "extraordinária" => Ok(Self::Extraordinary),
[INFO] [stdout] 24 | |             "ordinária" => Ok(Self::Ordinary),
[INFO] [stdout] 25 | |             s => Ok(Self::Other(s.to_owned())),
[INFO] [stdout] 26 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Session, Never>
[INFO] [stdout]   --> src/data/ata.rs:23:33
[INFO] [stdout]    |
[INFO] [stdout] 23 |             "extraordinária" => Ok(Self::Extraordinary),
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Session, Never>
[INFO] [stdout]   --> src/data/ata.rs:24:28
[INFO] [stdout]    |
[INFO] [stdout] 24 |             "ordinária" => Ok(Self::Ordinary),
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Session, Never>
[INFO] [stdout]   --> src/data/ata.rs:25:18
[INFO] [stdout]    |
[INFO] [stdout] 25 |             s => Ok(Self::Other(s.to_owned())),
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Session, Never>
[INFO] [stdout]    --> src/data/ata.rs:159:22
[INFO] [stdout]     |
[INFO] [stdout] 159 |             .map(|m| m.as_str().parse().unwrap())
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/data/document_type.rs:131:14
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fn index(&self) -> Index {
[INFO] [stdout]     |              ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |              |
[INFO] [stdout]     |              the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fn index(&self) -> Index<'_> {
[INFO] [stdout]     |                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<DocumentType, Never>
[INFO] [stdout]    --> src/data/document_type.rs:138:53
[INFO] [stdout]     |
[INFO] [stdout] 138 |       fn from_str(s: &str) -> Result<Self, Self::Err> {
[INFO] [stdout]     |  _____________________________________________________^
[INFO] [stdout] 139 | |         Ok(match s {
[INFO] [stdout] 140 | |             "periódico" | "jornais e revistas" | "jornal e revistas" => Self::Periodico,
[INFO] [stdout] 141 | |             "jornal" | "jornais" => Self::Jornal,
[INFO] [stdout] ...   |
[INFO] [stdout] 179 | |         })
[INFO] [stdout] 180 | |     }
[INFO] [stdout]     | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<DocumentType, Never>
[INFO] [stdout]    --> src/data/document_type.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 | /         Ok(match s {
[INFO] [stdout] 140 | |             "periódico" | "jornais e revistas" | "jornal e revistas" => Self::Periodico,
[INFO] [stdout] 141 | |             "jornal" | "jornais" => Self::Jornal,
[INFO] [stdout] 142 | |             "revista" | "revivsta" | "revistas" => Self::Revista,
[INFO] [stdout] ...   |
[INFO] [stdout] 178 | |             s => Self::Other(s.to_owned()),
[INFO] [stdout] 179 | |         })
[INFO] [stdout]     | |__________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/data/document_type.rs:210:18
[INFO] [stdout]     |
[INFO] [stdout] 210 |         for t in iter.next() {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to iterate over `iter` remove the call to `next`
[INFO] [stdout]     |
[INFO] [stdout] 210 -         for t in iter.next() {
[INFO] [stdout] 210 +         for t in iter.by_ref() {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 210 -         for t in iter.next() {
[INFO] [stdout] 210 +         if let Some(t) = iter.next() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<DocumentTypes, Never>
[INFO] [stdout]    --> src/data/document_type.rs:233:53
[INFO] [stdout]     |
[INFO] [stdout] 233 |       fn from_str(s: &str) -> Result<Self, Self::Err> {
[INFO] [stdout]     |  _____________________________________________________^
[INFO] [stdout] 234 | |         lazy_static! {
[INFO] [stdout] 235 | |             static ref RE: Regex = Regex::new(r"([^(?]+)?(?:\(([^)]+)\))?(\?)?").unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 248 | |         Ok(DocumentTypes { types })
[INFO] [stdout] 249 | |     }
[INFO] [stdout]     | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<DocumentType>, Never>
[INFO] [stdout]    --> src/data/document_type.rs:243:32
[INFO] [stdout]     |
[INFO] [stdout] 243 |                     types.push(cap.as_str().trim().parse().unwrap());
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<DocumentTypes, Never>
[INFO] [stdout]    --> src/data/document_type.rs:248:9
[INFO] [stdout]     |
[INFO] [stdout] 248 |         Ok(DocumentTypes { types })
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/data/field.rs:25:18
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn index(&self) -> Index {
[INFO] [stdout]    |                  ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn index(&self) -> Index<'_> {
[INFO] [stdout]    |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:137:53
[INFO] [stdout]     |
[INFO] [stdout] 137 |       fn from_str(s: &str) -> Result<Self, Self::Err> {
[INFO] [stdout]     |  _____________________________________________________^
[INFO] [stdout] 138 | |         match s.trim() {
[INFO] [stdout] 139 | |             "-" | "(?)" | "?" | "não mencionado" | "Não mencionado" | "Não mencionada" | "" | "a conferir" | "A conferir" | "x" | "X" | "...
[INFO] [stdout] 140 | |                 Ok(Self::Absent)
[INFO] [stdout] ...   |
[INFO] [stdout] 147 | |     }
[INFO] [stdout]     | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 | / ...   match s.trim() {
[INFO] [stdout] 139 | | ...       "-" | "(?)" | "?" | "não mencionado" | "Não mencionado" | "Não mencionada" | "" | "a conferir" | "A conferir" | "x" | "X" | "- ...
[INFO] [stdout] 140 | | ...           Ok(Self::Absent)
[INFO] [stdout] ...   |
[INFO] [stdout] 145 | | ...       },
[INFO] [stdout] 146 | | ...   }
[INFO] [stdout]     | |_______^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:139:146
[INFO] [stdout]     |
[INFO] [stdout] 139 |               "-" | "(?)" | "?" | "não mencionado" | "Não mencionado" | "Não mencionada" | "" | "a conferir" | "A conferir" | "x" | "X" | "- -" => {
[INFO] [stdout]     |  __________________________________________________________________________________________________________________________________________________^
[INFO] [stdout] 140 | |                 Ok(Self::Absent)
[INFO] [stdout] 141 | |             }
[INFO] [stdout]     | |_____________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:140:17
[INFO] [stdout]     |
[INFO] [stdout] 140 |                 Ok(Self::Absent)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:142:18
[INFO] [stdout]     |
[INFO] [stdout] 142 |               _ => match s.parse() {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 143 | |                 Ok(t) => Ok(Self::Present(t)),
[INFO] [stdout] 144 | |                 _ => Ok(Self::NotStandard(s.to_owned())),
[INFO] [stdout] 145 | |             },
[INFO] [stdout]     | |_____________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:143:26
[INFO] [stdout]     |
[INFO] [stdout] 143 |                 Ok(t) => Ok(Self::Present(t)),
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:144:22
[INFO] [stdout]     |
[INFO] [stdout] 144 |                 _ => Ok(Self::NotStandard(s.to_owned())),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `parse-tables` (bin "parse-tables") due to 18 previous errors; 10 warnings emitted
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/main.rs:16:8
[INFO] [stdout]    |
[INFO] [stdout] 16 |     Io(IoError),
[INFO] [stdout]    |     -- ^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CallError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 16 -     Io(IoError),
[INFO] [stdout] 16 +     Io(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/main.rs:17:9
[INFO] [stdout]    |
[INFO] [stdout] 17 |     Xml(XmlError),
[INFO] [stdout]    |     --- ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CallError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 17 -     Xml(XmlError),
[INFO] [stdout] 17 +     Xml(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/main.rs:18:11
[INFO] [stdout]    |
[INFO] [stdout] 18 |     Parse(ParseError),
[INFO] [stdout]    |     ----- ^^^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CallError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 18 -     Parse(ParseError),
[INFO] [stdout] 18 +     Parse(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]   --> src/main.rs:19:9
[INFO] [stdout]    |
[INFO] [stdout] 19 |     Zip(ZipError),
[INFO] [stdout]    |     --- ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     field in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CallError` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]    |
[INFO] [stdout] 19 -     Zip(ZipError),
[INFO] [stdout] 19 +     Zip(()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `year` is never used
[INFO] [stdout]    --> src/data/ata.rs:216:12
[INFO] [stdout]     |
[INFO] [stdout] 215 | impl Ata {
[INFO] [stdout]     | -------- method in this implementation
[INFO] [stdout] 216 |     pub fn year(&self) -> i32 {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `present` and `take` are never used
[INFO] [stdout]    --> src/data/field.rs:152:12
[INFO] [stdout]     |
[INFO] [stdout] 150 | impl<T> Field<T> {
[INFO] [stdout]     | ---------------- methods in this implementation
[INFO] [stdout] 151 |     #[inline]
[INFO] [stdout] 152 |     pub fn present(self) -> Option<T> {
[INFO] [stdout]     |            ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 160 |     pub fn take(&mut self) -> Self {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Session, Never>
[INFO] [stdout]   --> src/data/ata.rs:21:53
[INFO] [stdout]    |
[INFO] [stdout] 21 |       fn from_str(s: &str) -> Result<Self, Self::Err> {
[INFO] [stdout]    |  _____________________________________________________^
[INFO] [stdout] 22 | |         match s.as_ref() {
[INFO] [stdout] 23 | |             "extraordinária" => Ok(Self::Extraordinary),
[INFO] [stdout] 24 | |             "ordinária" => Ok(Self::Ordinary),
[INFO] [stdout] ...  |
[INFO] [stdout] 27 | |     }
[INFO] [stdout]    | |_____^
[INFO] [stdout]    |
[INFO] [stdout]    = note: requested on the command line with `-D unmustuse-in-always-ok`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Session, Never>
[INFO] [stdout]   --> src/data/ata.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 | /         match s.as_ref() {
[INFO] [stdout] 23 | |             "extraordinária" => Ok(Self::Extraordinary),
[INFO] [stdout] 24 | |             "ordinária" => Ok(Self::Ordinary),
[INFO] [stdout] 25 | |             s => Ok(Self::Other(s.to_owned())),
[INFO] [stdout] 26 | |         }
[INFO] [stdout]    | |_________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Session, Never>
[INFO] [stdout]   --> src/data/ata.rs:23:33
[INFO] [stdout]    |
[INFO] [stdout] 23 |             "extraordinária" => Ok(Self::Extraordinary),
[INFO] [stdout]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Session, Never>
[INFO] [stdout]   --> src/data/ata.rs:24:28
[INFO] [stdout]    |
[INFO] [stdout] 24 |             "ordinária" => Ok(Self::Ordinary),
[INFO] [stdout]    |                            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Session, Never>
[INFO] [stdout]   --> src/data/ata.rs:25:18
[INFO] [stdout]    |
[INFO] [stdout] 25 |             s => Ok(Self::Other(s.to_owned())),
[INFO] [stdout]    |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Session, Never>
[INFO] [stdout]    --> src/data/ata.rs:159:22
[INFO] [stdout]     |
[INFO] [stdout] 159 |             .map(|m| m.as_str().parse().unwrap())
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/data/document_type.rs:131:14
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fn index(&self) -> Index {
[INFO] [stdout]     |              ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |              |
[INFO] [stdout]     |              the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]     = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 131 |     fn index(&self) -> Index<'_> {
[INFO] [stdout]     |                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<DocumentType, Never>
[INFO] [stdout]    --> src/data/document_type.rs:138:53
[INFO] [stdout]     |
[INFO] [stdout] 138 |       fn from_str(s: &str) -> Result<Self, Self::Err> {
[INFO] [stdout]     |  _____________________________________________________^
[INFO] [stdout] 139 | |         Ok(match s {
[INFO] [stdout] 140 | |             "periódico" | "jornais e revistas" | "jornal e revistas" => Self::Periodico,
[INFO] [stdout] 141 | |             "jornal" | "jornais" => Self::Jornal,
[INFO] [stdout] ...   |
[INFO] [stdout] 179 | |         })
[INFO] [stdout] 180 | |     }
[INFO] [stdout]     | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<DocumentType, Never>
[INFO] [stdout]    --> src/data/document_type.rs:139:9
[INFO] [stdout]     |
[INFO] [stdout] 139 | /         Ok(match s {
[INFO] [stdout] 140 | |             "periódico" | "jornais e revistas" | "jornal e revistas" => Self::Periodico,
[INFO] [stdout] 141 | |             "jornal" | "jornais" => Self::Jornal,
[INFO] [stdout] 142 | |             "revista" | "revivsta" | "revistas" => Self::Revista,
[INFO] [stdout] ...   |
[INFO] [stdout] 178 | |             s => Self::Other(s.to_owned()),
[INFO] [stdout] 179 | |         })
[INFO] [stdout]     | |__________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: for loop over an `Option`. This is more readably written as an `if let` statement
[INFO] [stdout]    --> src/data/document_type.rs:210:18
[INFO] [stdout]     |
[INFO] [stdout] 210 |         for t in iter.next() {
[INFO] [stdout]     |                  ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(for_loops_over_fallibles)]` on by default
[INFO] [stdout] help: to iterate over `iter` remove the call to `next`
[INFO] [stdout]     |
[INFO] [stdout] 210 -         for t in iter.next() {
[INFO] [stdout] 210 +         for t in iter.by_ref() {
[INFO] [stdout]     |
[INFO] [stdout] help: consider using `if let` to clear intent
[INFO] [stdout]     |
[INFO] [stdout] 210 -         for t in iter.next() {
[INFO] [stdout] 210 +         if let Some(t) = iter.next() {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<DocumentTypes, Never>
[INFO] [stdout]    --> src/data/document_type.rs:233:53
[INFO] [stdout]     |
[INFO] [stdout] 233 |       fn from_str(s: &str) -> Result<Self, Self::Err> {
[INFO] [stdout]     |  _____________________________________________________^
[INFO] [stdout] 234 | |         lazy_static! {
[INFO] [stdout] 235 | |             static ref RE: Regex = Regex::new(r"([^(?]+)?(?:\(([^)]+)\))?(\?)?").unwrap();
[INFO] [stdout] ...   |
[INFO] [stdout] 248 | |         Ok(DocumentTypes { types })
[INFO] [stdout] 249 | |     }
[INFO] [stdout]     | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<DocumentType>, Never>
[INFO] [stdout]    --> src/data/document_type.rs:243:32
[INFO] [stdout]     |
[INFO] [stdout] 243 |                     types.push(cap.as_str().trim().parse().unwrap());
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<DocumentTypes, Never>
[INFO] [stdout]    --> src/data/document_type.rs:248:9
[INFO] [stdout]     |
[INFO] [stdout] 248 |         Ok(DocumentTypes { types })
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<DocumentTypes, Never>
[INFO] [stdout]    --> src/data/document_type.rs:254:32
[INFO] [stdout]     |
[INFO] [stdout] 254 |     let types: DocumentTypes = "periódico  (drama)".parse().unwrap();
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<DocumentTypes, Never>
[INFO] [stdout]    --> src/data/document_type.rs:266:32
[INFO] [stdout]     |
[INFO] [stdout] 266 |     let types: DocumentTypes = "boletim / documentos oficiais".parse().unwrap();
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<DocumentTypes, Never>
[INFO] [stdout]    --> src/data/document_type.rs:278:32
[INFO] [stdout]     |
[INFO] [stdout] 278 |     let types: DocumentTypes = "boletim ( a conferir )".parse().unwrap();
[INFO] [stdout]     |                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/data/field.rs:25:18
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn index(&self) -> Index {
[INFO] [stdout]    |                  ^^^^^     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 25 |     pub fn index(&self) -> Index<'_> {
[INFO] [stdout]    |                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:137:53
[INFO] [stdout]     |
[INFO] [stdout] 137 |       fn from_str(s: &str) -> Result<Self, Self::Err> {
[INFO] [stdout]     |  _____________________________________________________^
[INFO] [stdout] 138 | |         match s.trim() {
[INFO] [stdout] 139 | |             "-" | "(?)" | "?" | "não mencionado" | "Não mencionado" | "Não mencionada" | "" | "a conferir" | "A conferir" | "x" | "X" | "...
[INFO] [stdout] 140 | |                 Ok(Self::Absent)
[INFO] [stdout] ...   |
[INFO] [stdout] 147 | |     }
[INFO] [stdout]     | |_____^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:138:9
[INFO] [stdout]     |
[INFO] [stdout] 138 | / ...   match s.trim() {
[INFO] [stdout] 139 | | ...       "-" | "(?)" | "?" | "não mencionado" | "Não mencionado" | "Não mencionada" | "" | "a conferir" | "A conferir" | "x" | "X" | "- ...
[INFO] [stdout] 140 | | ...           Ok(Self::Absent)
[INFO] [stdout] ...   |
[INFO] [stdout] 145 | | ...       },
[INFO] [stdout] 146 | | ...   }
[INFO] [stdout]     | |_______^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:139:146
[INFO] [stdout]     |
[INFO] [stdout] 139 |               "-" | "(?)" | "?" | "não mencionado" | "Não mencionado" | "Não mencionada" | "" | "a conferir" | "A conferir" | "x" | "X" | "- -" => {
[INFO] [stdout]     |  __________________________________________________________________________________________________________________________________________________^
[INFO] [stdout] 140 | |                 Ok(Self::Absent)
[INFO] [stdout] 141 | |             }
[INFO] [stdout]     | |_____________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:140:17
[INFO] [stdout]     |
[INFO] [stdout] 140 |                 Ok(Self::Absent)
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:142:18
[INFO] [stdout]     |
[INFO] [stdout] 142 |               _ => match s.parse() {
[INFO] [stdout]     |  __________________^
[INFO] [stdout] 143 | |                 Ok(t) => Ok(Self::Present(t)),
[INFO] [stdout] 144 | |                 _ => Ok(Self::NotStandard(s.to_owned())),
[INFO] [stdout] 145 | |             },
[INFO] [stdout]     | |_____________^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:143:26
[INFO] [stdout]     |
[INFO] [stdout] 143 |                 Ok(t) => Ok(Self::Present(t)),
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: this type will no longer be must used: Result<Field<T>, Never>
[INFO] [stdout]    --> src/data/field.rs:144:22
[INFO] [stdout]     |
[INFO] [stdout] 144 |                 _ => Ok(Self::NotStandard(s.to_owned())),
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `parse-tables` (bin "parse-tables" test) due to 21 previous errors; 10 warnings emitted
[INFO] running `Command { std: "docker" "inspect" "b2940a7b2b61f1d6360b5a7678923045d29d98abfb9c6106ba7215f35f503d60", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b2940a7b2b61f1d6360b5a7678923045d29d98abfb9c6106ba7215f35f503d60", kill_on_drop: false }`
[INFO] [stdout] b2940a7b2b61f1d6360b5a7678923045d29d98abfb9c6106ba7215f35f503d60
