[INFO] cloning repository https://github.com/dethos/rgit
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/dethos/rgit" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdethos%2Frgit", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdethos%2Frgit'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 6fba638f98f15f9fd2e2ae2016c41a9702de8a47
[INFO] checking dethos/rgit against try#b1f2594eac607c1f051534800237eeedb5590a49 for pr-139493-3
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdethos%2Frgit" "/workspace/builds/worker-2-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-2-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/dethos/rgit
[INFO] finished tweaking git repo https://github.com/dethos/rgit
[INFO] tweaked toml for git repo https://github.com/dethos/rgit written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/dethos/rgit on toolchain b1f2594eac607c1f051534800237eeedb5590a49
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/dethos/rgit 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" "+b1f2594eac607c1f051534800237eeedb5590a49" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] bcf7c0292ee89fc37ad5549cc229d770a74254043a569c3018155c6476cb5d51
[INFO] running `Command { std: "docker" "start" "-a" "bcf7c0292ee89fc37ad5549cc229d770a74254043a569c3018155c6476cb5d51", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "bcf7c0292ee89fc37ad5549cc229d770a74254043a569c3018155c6476cb5d51", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "bcf7c0292ee89fc37ad5549cc229d770a74254043a569c3018155c6476cb5d51", kill_on_drop: false }`
[INFO] [stdout] bcf7c0292ee89fc37ad5549cc229d770a74254043a569c3018155c6476cb5d51
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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" "-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:aa71247004a7fa38d13ec170f48f06cdedf5bc50b2a8645e56ed7e992e6fa513" "/opt/rustwide/cargo-home/bin/cargo" "+b1f2594eac607c1f051534800237eeedb5590a49" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a38e1eaa9c4b146573e3c900898800a94481f2175a2905a0e495d5dd1b7cc1df
[INFO] running `Command { std: "docker" "start" "-a" "a38e1eaa9c4b146573e3c900898800a94481f2175a2905a0e495d5dd1b7cc1df", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.77
[INFO] [stderr]    Compiling syn v1.0.53
[INFO] [stderr]    Compiling serde_json v1.0.60
[INFO] [stderr]     Checking itoa v0.4.6
[INFO] [stderr]     Checking sha-1 v0.9.1
[INFO] [stderr]     Checking getrandom v0.1.15
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]     Checking tempfile v3.1.0
[INFO] [stderr]    Compiling serde_derive v1.0.118
[INFO] [stderr]     Checking serde v1.0.118
[INFO] [stderr]     Checking rgit v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `serde_json::Result`
[INFO] [stdout]  --> src/data.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_json::Result;
[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: `serde_json::Result`
[INFO] [stdout]  --> src/data.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use serde_json::Result;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/base.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 |     mut oids: Vec<&String>,
[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: unused variable: `path`
[INFO] [stdout]    --> src/base.rs:208:10
[INFO] [stdout]     |
[INFO] [stdout] 208 |     for (path, object_id) in get_tree(oid, "./".to_owned()).iter() {
[INFO] [stdout]     |          ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/base.rs:163:5
[INFO] [stdout]     |
[INFO] [stdout] 163 |     mut oids: Vec<&String>,
[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: unused variable: `path`
[INFO] [stdout]    --> src/base.rs:208:10
[INFO] [stdout]     |
[INFO] [stdout] 208 |     for (path, object_id) in get_tree(oid, "./".to_owned()).iter() {
[INFO] [stdout]     |          ^^^^ help: if this is intentional, prefix it with an underscore: `_path`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/base.rs:487:27
[INFO] [stdout]     |
[INFO] [stdout] 487 | fn add_file(file: String, mut index: &mut HashMap<String, String>) {
[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/base.rs:493:25
[INFO] [stdout]     |
[INFO] [stdout] 493 | fn add_dir(dir: String, mut index: &mut HashMap<String, String>) {
[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/base.rs:487:27
[INFO] [stdout]     |
[INFO] [stdout] 487 | fn add_file(file: String, mut index: &mut HashMap<String, String>) {
[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/base.rs:493:25
[INFO] [stdout]     |
[INFO] [stdout] 493 | fn add_dir(dir: String, mut index: &mut HashMap<String, String>) {
[INFO] [stdout]     |                         ----^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `copy_objects_in_commits_and_parents` is never used
[INFO] [stdout]    --> src/base.rs:162:8
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub fn copy_objects_in_commits_and_parents(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `copy_tree_objects` is never used
[INFO] [stdout]    --> src/base.rs:203:4
[INFO] [stdout]     |
[INFO] [stdout] 203 | fn copy_tree_objects(oid: String, visited: &mut HashSet<String>, remote_path: String, push: bool) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_ancestor_of` is never used
[INFO] [stdout]    --> src/base.rs:462:8
[INFO] [stdout]     |
[INFO] [stdout] 462 | pub fn is_ancestor_of(commit: String, maybe_ancestor: String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_rgit_dir` is never used
[INFO] [stdout]   --> src/data.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn set_rgit_dir(path: &str) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reset_rgit_dir` is never used
[INFO] [stdout]   --> src/data.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn reset_rgit_dir() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fetch_object_if_missing` is never used
[INFO] [stdout]    --> src/data.rs:171:8
[INFO] [stdout]     |
[INFO] [stdout] 171 | pub fn fetch_object_if_missing(oid: String, remote_git_dir: String) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `push_object` is never used
[INFO] [stdout]    --> src/data.rs:185:8
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub fn push_object(oid: String, remote_git_dir: String) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_exists` is never used
[INFO] [stdout]    --> src/data.rs:201:4
[INFO] [stdout]     |
[INFO] [stdout] 201 | fn object_exists(oid: String) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `diff_blobs` is never used
[INFO] [stdout]   --> src/diff.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn diff_blobs(o_from: String, o_to: String, path: String) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `diff_trees` is never used
[INFO] [stdout]   --> src/diff.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn diff_trees(t_from: HashMap<String, String>, t_to: HashMap<String, String>) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `changed_files` is never used
[INFO] [stdout]   --> src/diff.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub fn changed_files(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RefValue` is never constructed
[INFO] [stdout]   --> src/data.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct RefValue {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Index` is never constructed
[INFO] [stdout]   --> src/data.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct Index {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init` is never used
[INFO] [stdout]   --> src/data.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub fn init() -> std::io::Result<()> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hash_object` is never used
[INFO] [stdout]   --> src/data.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn hash_object(content: &Vec<u8>, _type: String) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_ref` is never used
[INFO] [stdout]   --> src/data.rs:91:8
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub fn update_ref(mut reference: String, value: RefValue, deref: bool) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_ref` is never used
[INFO] [stdout]    --> src/data.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn get_ref(reference: String, deref: bool) -> RefValue {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_ref` is never used
[INFO] [stdout]    --> src/data.rs:116:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub fn delete_ref(reference: String, deref: bool) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `iter_refs` is never used
[INFO] [stdout]    --> src/data.rs:122:8
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub fn iter_refs(prefix: &str, deref: bool) -> Vec<(String, RefValue)> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_ref_internal` is never used
[INFO] [stdout]    --> src/data.rs:154:8
[INFO] [stdout]     |
[INFO] [stdout] 154 | pub fn get_ref_internal(reference: String, deref: bool) -> (String, RefValue) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_index` is never used
[INFO] [stdout]    --> src/data.rs:207:8
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub fn get_index() -> HashMap<String, String> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_index` is never used
[INFO] [stdout]    --> src/data.rs:222:8
[INFO] [stdout]     |
[INFO] [stdout] 222 | pub fn set_index(files: HashMap<String, String>) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_trees` is never used
[INFO] [stdout]   --> src/diff.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub fn merge_trees(
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_blobs` is never used
[INFO] [stdout]    --> src/diff.rs:110:4
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn merge_blobs(o_base: String, o_head: String, o_other: String) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_object` is never used
[INFO] [stdout]   --> src/data.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub fn get_object(hash: String, expected: String) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `message` is never read
[INFO] [stdout]   --> src/base.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct Commit {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub message: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_tree` is never used
[INFO] [stdout]   --> src/base.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn write_tree(directory: String) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_tree` is never used
[INFO] [stdout]   --> src/base.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn read_tree(oid: String) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `commit` is never used
[INFO] [stdout]   --> src/base.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub fn commit(message: &str) -> String {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `checkout` is never used
[INFO] [stdout]    --> src/base.rs:220:8
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub fn checkout(name: String) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_tag` is never used
[INFO] [stdout]    --> src/base.rs:241:8
[INFO] [stdout]     |
[INFO] [stdout] 241 | pub fn create_tag(name: String, oid: String) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_branch` is never used
[INFO] [stdout]    --> src/base.rs:287:8
[INFO] [stdout]     |
[INFO] [stdout] 287 | pub fn create_branch(name: String, oid: String) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init` is never used
[INFO] [stdout]    --> src/base.rs:298:8
[INFO] [stdout]     |
[INFO] [stdout] 298 | pub fn init() -> std::io::Result<()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_branch_name` is never used
[INFO] [stdout]    --> src/base.rs:311:8
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub fn get_branch_name() -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `iter_branch_names` is never used
[INFO] [stdout]    --> src/base.rs:321:8
[INFO] [stdout]     |
[INFO] [stdout] 321 | pub fn iter_branch_names() -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reset` is never used
[INFO] [stdout]    --> src/base.rs:330:8
[INFO] [stdout]     |
[INFO] [stdout] 330 | pub fn reset(oid: String) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge` is never used
[INFO] [stdout]    --> src/base.rs:341:8
[INFO] [stdout]     |
[INFO] [stdout] 341 | pub fn merge(oid: String) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_merge_base` is never used
[INFO] [stdout]    --> src/base.rs:379:8
[INFO] [stdout]     |
[INFO] [stdout] 379 | pub fn get_merge_base(commit1: String, commit2: String) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_ignored` is never used
[INFO] [stdout]    --> src/base.rs:397:4
[INFO] [stdout]     |
[INFO] [stdout] 397 | fn is_ignored(path: &String) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_working_tree` is never used
[INFO] [stdout]    --> src/base.rs:443:8
[INFO] [stdout]     |
[INFO] [stdout] 443 | pub fn get_working_tree() -> HashMap<String, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add` is never used
[INFO] [stdout]    --> src/base.rs:473:8
[INFO] [stdout]     |
[INFO] [stdout] 473 | pub fn add(files: Vec<&str>) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_file` is never used
[INFO] [stdout]    --> src/base.rs:487:4
[INFO] [stdout]     |
[INFO] [stdout] 487 | fn add_file(file: String, mut index: &mut HashMap<String, String>) {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_dir` is never used
[INFO] [stdout]    --> src/base.rs:493:4
[INFO] [stdout]     |
[INFO] [stdout] 493 | fn add_dir(dir: String, mut index: &mut HashMap<String, String>) {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `empty_current_directory` is never used
[INFO] [stdout]    --> src/base.rs:505:4
[INFO] [stdout]     |
[INFO] [stdout] 505 | fn empty_current_directory(dir: &str) -> io::Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_branch` is never used
[INFO] [stdout]    --> src/base.rs:527:4
[INFO] [stdout]     |
[INFO] [stdout] 527 | fn is_branch(name: String) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_tree_merged` is never used
[INFO] [stdout]    --> src/base.rs:531:4
[INFO] [stdout]     |
[INFO] [stdout] 531 | fn read_tree_merged(base_tree: String, head_tree: String, commit_tree: String) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `symbolic` is never read
[INFO] [stdout]   --> src/data.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct RefValue {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 20 |     pub value: String,
[INFO] [stdout] 21 |     pub symbolic: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_trees` is never used
[INFO] [stdout]  --> src/diff.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn compare_trees(trees: Vec<HashMap<String, String>>) -> HashMap<String, Vec<String>> {
[INFO] [stdout]   |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `BASE_RGIT_DIR` is never used
[INFO] [stdout]   --> src/data.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | static BASE_RGIT_DIR: &'static str = ".rgit";
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/base.rs:284:12
[INFO] [stdout]     |
[INFO] [stdout] 284 |     panic!(format!("Unknown name {}", name));
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 284 -     panic!(format!("Unknown name {}", name));
[INFO] [stdout] 284 +     panic!("Unknown name {}", name);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `copy_objects_in_commits_and_parents` is never used
[INFO] [stdout]    --> src/base.rs:162:8
[INFO] [stdout]     |
[INFO] [stdout] 162 | pub fn copy_objects_in_commits_and_parents(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `copy_tree_objects` is never used
[INFO] [stdout]    --> src/base.rs:203:4
[INFO] [stdout]     |
[INFO] [stdout] 203 | fn copy_tree_objects(oid: String, visited: &mut HashSet<String>, remote_path: String, push: bool) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_ancestor_of` is never used
[INFO] [stdout]    --> src/base.rs:462:8
[INFO] [stdout]     |
[INFO] [stdout] 462 | pub fn is_ancestor_of(commit: String, maybe_ancestor: String) -> bool {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_rgit_dir` is never used
[INFO] [stdout]   --> src/data.rs:31:8
[INFO] [stdout]    |
[INFO] [stdout] 31 | pub fn set_rgit_dir(path: &str) {
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reset_rgit_dir` is never used
[INFO] [stdout]   --> src/data.rs:39:8
[INFO] [stdout]    |
[INFO] [stdout] 39 | pub fn reset_rgit_dir() {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `fetch_object_if_missing` is never used
[INFO] [stdout]    --> src/data.rs:171:8
[INFO] [stdout]     |
[INFO] [stdout] 171 | pub fn fetch_object_if_missing(oid: String, remote_git_dir: String) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `push_object` is never used
[INFO] [stdout]    --> src/data.rs:185:8
[INFO] [stdout]     |
[INFO] [stdout] 185 | pub fn push_object(oid: String, remote_git_dir: String) {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `object_exists` is never used
[INFO] [stdout]    --> src/data.rs:201:4
[INFO] [stdout]     |
[INFO] [stdout] 201 | fn object_exists(oid: String) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `diff_blobs` is never used
[INFO] [stdout]   --> src/diff.rs:27:4
[INFO] [stdout]    |
[INFO] [stdout] 27 | fn diff_blobs(o_from: String, o_to: String, path: String) -> String {
[INFO] [stdout]    |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `diff_trees` is never used
[INFO] [stdout]   --> src/diff.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn diff_trees(t_from: HashMap<String, String>, t_to: HashMap<String, String>) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `changed_files` is never used
[INFO] [stdout]   --> src/diff.rs:71:8
[INFO] [stdout]    |
[INFO] [stdout] 71 | pub fn changed_files(
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `RefValue` is never constructed
[INFO] [stdout]   --> src/data.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct RefValue {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Index` is never constructed
[INFO] [stdout]   --> src/data.rs:25:8
[INFO] [stdout]    |
[INFO] [stdout] 25 | struct Index {
[INFO] [stdout]    |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init` is never used
[INFO] [stdout]   --> src/data.rs:50:8
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub fn init() -> std::io::Result<()> {
[INFO] [stdout]    |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hash_object` is never used
[INFO] [stdout]   --> src/data.rs:57:8
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub fn hash_object(content: &Vec<u8>, _type: String) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `update_ref` is never used
[INFO] [stdout]   --> src/data.rs:91:8
[INFO] [stdout]    |
[INFO] [stdout] 91 | pub fn update_ref(mut reference: String, value: RefValue, deref: bool) {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_ref` is never used
[INFO] [stdout]    --> src/data.rs:112:8
[INFO] [stdout]     |
[INFO] [stdout] 112 | pub fn get_ref(reference: String, deref: bool) -> RefValue {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `delete_ref` is never used
[INFO] [stdout]    --> src/data.rs:116:8
[INFO] [stdout]     |
[INFO] [stdout] 116 | pub fn delete_ref(reference: String, deref: bool) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `iter_refs` is never used
[INFO] [stdout]    --> src/data.rs:122:8
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub fn iter_refs(prefix: &str, deref: bool) -> Vec<(String, RefValue)> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_ref_internal` is never used
[INFO] [stdout]    --> src/data.rs:154:8
[INFO] [stdout]     |
[INFO] [stdout] 154 | pub fn get_ref_internal(reference: String, deref: bool) -> (String, RefValue) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_index` is never used
[INFO] [stdout]    --> src/data.rs:207:8
[INFO] [stdout]     |
[INFO] [stdout] 207 | pub fn get_index() -> HashMap<String, String> {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_index` is never used
[INFO] [stdout]    --> src/data.rs:222:8
[INFO] [stdout]     |
[INFO] [stdout] 222 | pub fn set_index(files: HashMap<String, String>) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_trees` is never used
[INFO] [stdout]   --> src/diff.rs:94:8
[INFO] [stdout]    |
[INFO] [stdout] 94 | pub fn merge_trees(
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_blobs` is never used
[INFO] [stdout]    --> src/diff.rs:110:4
[INFO] [stdout]     |
[INFO] [stdout] 110 | fn merge_blobs(o_base: String, o_head: String, o_other: String) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_object` is never used
[INFO] [stdout]   --> src/data.rs:74:8
[INFO] [stdout]    |
[INFO] [stdout] 74 | pub fn get_object(hash: String, expected: String) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `message` is never read
[INFO] [stdout]   --> src/base.rs:15:9
[INFO] [stdout]    |
[INFO] [stdout] 12 | pub struct Commit {
[INFO] [stdout]    |            ------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub message: String,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_tree` is never used
[INFO] [stdout]   --> src/base.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub fn write_tree(directory: String) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_tree` is never used
[INFO] [stdout]   --> src/base.rs:61:8
[INFO] [stdout]    |
[INFO] [stdout] 61 | pub fn read_tree(oid: String) {
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `commit` is never used
[INFO] [stdout]   --> src/base.rs:75:8
[INFO] [stdout]    |
[INFO] [stdout] 75 | pub fn commit(message: &str) -> String {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `checkout` is never used
[INFO] [stdout]    --> src/base.rs:220:8
[INFO] [stdout]     |
[INFO] [stdout] 220 | pub fn checkout(name: String) {
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_tag` is never used
[INFO] [stdout]    --> src/base.rs:241:8
[INFO] [stdout]     |
[INFO] [stdout] 241 | pub fn create_tag(name: String, oid: String) {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_branch` is never used
[INFO] [stdout]    --> src/base.rs:287:8
[INFO] [stdout]     |
[INFO] [stdout] 287 | pub fn create_branch(name: String, oid: String) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `init` is never used
[INFO] [stdout]    --> src/base.rs:298:8
[INFO] [stdout]     |
[INFO] [stdout] 298 | pub fn init() -> std::io::Result<()> {
[INFO] [stdout]     |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_branch_name` is never used
[INFO] [stdout]    --> src/base.rs:311:8
[INFO] [stdout]     |
[INFO] [stdout] 311 | pub fn get_branch_name() -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `iter_branch_names` is never used
[INFO] [stdout]    --> src/base.rs:321:8
[INFO] [stdout]     |
[INFO] [stdout] 321 | pub fn iter_branch_names() -> Vec<String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reset` is never used
[INFO] [stdout]    --> src/base.rs:330:8
[INFO] [stdout]     |
[INFO] [stdout] 330 | pub fn reset(oid: String) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge` is never used
[INFO] [stdout]    --> src/base.rs:341:8
[INFO] [stdout]     |
[INFO] [stdout] 341 | pub fn merge(oid: String) {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_merge_base` is never used
[INFO] [stdout]    --> src/base.rs:379:8
[INFO] [stdout]     |
[INFO] [stdout] 379 | pub fn get_merge_base(commit1: String, commit2: String) -> String {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_ignored` is never used
[INFO] [stdout]    --> src/base.rs:397:4
[INFO] [stdout]     |
[INFO] [stdout] 397 | fn is_ignored(path: &String) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_working_tree` is never used
[INFO] [stdout]    --> src/base.rs:443:8
[INFO] [stdout]     |
[INFO] [stdout] 443 | pub fn get_working_tree() -> HashMap<String, String> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add` is never used
[INFO] [stdout]    --> src/base.rs:473:8
[INFO] [stdout]     |
[INFO] [stdout] 473 | pub fn add(files: Vec<&str>) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_file` is never used
[INFO] [stdout]    --> src/base.rs:487:4
[INFO] [stdout]     |
[INFO] [stdout] 487 | fn add_file(file: String, mut index: &mut HashMap<String, String>) {
[INFO] [stdout]     |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `add_dir` is never used
[INFO] [stdout]    --> src/base.rs:493:4
[INFO] [stdout]     |
[INFO] [stdout] 493 | fn add_dir(dir: String, mut index: &mut HashMap<String, String>) {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `empty_current_directory` is never used
[INFO] [stdout]    --> src/base.rs:505:4
[INFO] [stdout]     |
[INFO] [stdout] 505 | fn empty_current_directory(dir: &str) -> io::Result<()> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_branch` is never used
[INFO] [stdout]    --> src/base.rs:527:4
[INFO] [stdout]     |
[INFO] [stdout] 527 | fn is_branch(name: String) -> bool {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_tree_merged` is never used
[INFO] [stdout]    --> src/base.rs:531:4
[INFO] [stdout]     |
[INFO] [stdout] 531 | fn read_tree_merged(base_tree: String, head_tree: String, commit_tree: String) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `symbolic` is never read
[INFO] [stdout]   --> src/data.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct RefValue {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] 20 |     pub value: String,
[INFO] [stdout] 21 |     pub symbolic: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `compare_trees` is never used
[INFO] [stdout]  --> src/diff.rs:9:4
[INFO] [stdout]   |
[INFO] [stdout] 9 | fn compare_trees(trees: Vec<HashMap<String, String>>) -> HashMap<String, Vec<String>> {
[INFO] [stdout]   |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `BASE_RGIT_DIR` is never used
[INFO] [stdout]   --> src/data.rs:12:8
[INFO] [stdout]    |
[INFO] [stdout] 12 | static BASE_RGIT_DIR: &'static str = ".rgit";
[INFO] [stdout]    |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: panic message is not a string literal
[INFO] [stdout]    --> src/base.rs:284:12
[INFO] [stdout]     |
[INFO] [stdout] 284 |     panic!(format!("Unknown name {}", name));
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: this usage of `panic!()` is deprecated; it will be a hard error in Rust 2021
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/panic-macro-consistency.html>
[INFO] [stdout]     = note: the `panic!()` macro supports formatting, so there's no need for the `format!()` macro here
[INFO] [stdout]     = note: `#[warn(non_fmt_panics)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] help: remove the `format!(..)` macro call
[INFO] [stdout]     |
[INFO] [stdout] 284 -     panic!(format!("Unknown name {}", name));
[INFO] [stdout] 284 +     panic!("Unknown name {}", name);
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 12.81s
[INFO] running `Command { std: "docker" "inspect" "a38e1eaa9c4b146573e3c900898800a94481f2175a2905a0e495d5dd1b7cc1df", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a38e1eaa9c4b146573e3c900898800a94481f2175a2905a0e495d5dd1b7cc1df", kill_on_drop: false }`
[INFO] [stdout] a38e1eaa9c4b146573e3c900898800a94481f2175a2905a0e495d5dd1b7cc1df
