[INFO] cloning repository https://github.com/rahadianprasetya/rust_basic
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/rahadianprasetya/rust_basic" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frahadianprasetya%2Frust_basic", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frahadianprasetya%2Frust_basic'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] aef1bffcda921beab17dc298c8a815b4576126aa
[INFO] testing rahadianprasetya/rust_basic against 1.98.0-beta.1 for beta-1.98-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Frahadianprasetya%2Frust_basic" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/rahadianprasetya/rust_basic
[INFO] finished tweaking git repo https://github.com/rahadianprasetya/rust_basic
[INFO] tweaked toml for git repo https://github.com/rahadianprasetya/rust_basic written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/rahadianprasetya/rust_basic on toolchain 1.98.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/rahadianprasetya/rust_basic 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" "+1.98.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3d5ced03c013a94a2f102a4510f48a6e9184255caf5fd8244f58017bde7f5210" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] ed0f9981a7bbba6e80d957d72367dc01216d78b5228ea6f371e34930c81131f4
[INFO] running `Command { std: "docker" "start" "ed0f9981a7bbba6e80d957d72367dc01216d78b5228ea6f371e34930c81131f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ed0f9981a7bbba6e80d957d72367dc01216d78b5228ea6f371e34930c81131f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ed0f9981a7bbba6e80d957d72367dc01216d78b5228ea6f371e34930c81131f4" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ed0f9981a7bbba6e80d957d72367dc01216d78b5228ea6f371e34930c81131f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ed0f9981a7bbba6e80d957d72367dc01216d78b5228ea6f371e34930c81131f4" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling belajar-rust-dasar v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `BTreeMap`, `BTreeSet`, `Div`, `HashMap`, `HashSet`, `LinkedList`, `VecDeque`, and `vec`
[INFO] [stdout]  --> src/main.rs:4:19
[INFO] [stdout]   |
[INFO] [stdout] 4 |     collections::{BTreeMap, BTreeSet, HashMap, HashSet, LinkedList, VecDeque},
[INFO] [stdout]   |                   ^^^^^^^^  ^^^^^^^^  ^^^^^^^  ^^^^^^^  ^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 5 |     fmt::Debug,
[INFO] [stdout] 6 |     ops::{Add, Deref, Div},
[INFO] [stdout]   |                       ^^^
[INFO] [stdout] 7 |     rc::Rc,
[INFO] [stdout] 8 |     vec,
[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: `first::say_hallo`
[INFO] [stdout]    --> src/main.rs:982:5
[INFO] [stdout]     |
[INFO] [stdout] 982 | use first::say_hallo;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `second::say_hallo as say_hallo_second`
[INFO] [stdout]    --> src/main.rs:983:5
[INFO] [stdout]     |
[INFO] [stdout] 983 | use second::say_hallo as say_hallo_second;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `pertamax::say_hai as hai_guys`
[INFO] [stdout]    --> src/main.rs:986:5
[INFO] [stdout]     |
[INFO] [stdout] 986 | use pertamax::say_hai as hai_guys;
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `hi`
[INFO] [stdout]     --> src/main.rs:1796:14
[INFO] [stdout]      |
[INFO] [stdout] 1796 | macro_rules! hi {
[INFO] [stdout]      |              ^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_macros)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused macro definition: `iterate`
[INFO] [stdout]     --> src/main.rs:1816:14
[INFO] [stdout]      |
[INFO] [stdout] 1816 | macro_rules! iterate {
[INFO] [stdout]      |              ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/main.rs:1815:8
[INFO] [stdout]      |
[INFO] [stdout] 1815 | #[warn(unused_macros)]
[INFO] [stdout]      |        ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]     --> src/main.rs:1784:5
[INFO] [stdout]      |
[INFO] [stdout] 1784 |     COUNTER += 1;
[INFO] [stdout]      |     ^^^^^^^ use of mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/main.rs:1783:1
[INFO] [stdout]      |
[INFO] [stdout] 1783 | unsafe fn increment() {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]      = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `unit` is never used
[INFO] [stdout]   --> src/main.rs:82:4
[INFO] [stdout]    |
[INFO] [stdout] 82 | fn unit() {
[INFO] [stdout]    |    ^^^^
[INFO] [stdout]    |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]   --> src/main.rs:81:8
[INFO] [stdout]    |
[INFO] [stdout] 81 | #[warn(dead_code)]
[INFO] [stdout]    |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `function_a` is never used
[INFO] [stdout]    --> src/main.rs:251:4
[INFO] [stdout]     |
[INFO] [stdout] 251 | fn function_a() {
[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 `function_b` is never used
[INFO] [stdout]    --> src/main.rs:258:4
[INFO] [stdout]     |
[INFO] [stdout] 258 | fn function_b() {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `say_goodbye` is never used
[INFO] [stdout]    --> src/main.rs:423:4
[INFO] [stdout]     |
[INFO] [stdout] 423 | fn say_goodbye(first_name: &str, last_name: &str) {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `factorial_loop` is never used
[INFO] [stdout]    --> src/main.rs:432:4
[INFO] [stdout]     |
[INFO] [stdout] 432 | fn factorial_loop(n: i32) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_text` is never used
[INFO] [stdout]    --> src/main.rs:451:4
[INFO] [stdout]     |
[INFO] [stdout] 451 | fn print_text(value: String, times: u32) {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `factorial_recursive` is never used
[INFO] [stdout]    --> src/main.rs:466:4
[INFO] [stdout]     |
[INFO] [stdout] 466 | fn factorial_recursive(n: u32) -> u32 {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `full_name` is never used
[INFO] [stdout]    --> src/main.rs:480:4
[INFO] [stdout]     |
[INFO] [stdout] 480 | fn full_name(first_name: String, last_name: String) -> String {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `reference_name` is never used
[INFO] [stdout]    --> src/main.rs:485:4
[INFO] [stdout]     |
[INFO] [stdout] 485 | fn reference_name(first_name: &String, last_name: &String) -> String {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `change_value` is never used
[INFO] [stdout]    --> src/main.rs:503:4
[INFO] [stdout]     |
[INFO] [stdout] 503 | fn change_value(value: &mut String) {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Person` is never constructed
[INFO] [stdout]    --> src/main.rs:541:8
[INFO] [stdout]     |
[INFO] [stdout] 541 | struct Person {
[INFO] [stdout]     |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `say_hello` is never used
[INFO] [stdout]    --> src/main.rs:549:8
[INFO] [stdout]     |
[INFO] [stdout] 548 | impl Person {
[INFO] [stdout]     | ----------- method in this implementation
[INFO] [stdout] 549 |     fn say_hello(&self, name: &str) {
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_person` is never used
[INFO] [stdout]    --> src/main.rs:586:4
[INFO] [stdout]     |
[INFO] [stdout] 586 | fn print_person(person: &Person) {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `GeoPoint` is never constructed
[INFO] [stdout]    --> src/main.rs:662:8
[INFO] [stdout]     |
[INFO] [stdout] 662 | struct GeoPoint(f64, f64);
[INFO] [stdout]     |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Nothing` is never constructed
[INFO] [stdout]    --> src/main.rs:671:8
[INFO] [stdout]     |
[INFO] [stdout] 671 | struct Nothing;
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/main.rs:679:8
[INFO] [stdout]     |
[INFO] [stdout] 678 | impl GeoPoint {
[INFO] [stdout]     | ------------- associated function in this implementation
[INFO] [stdout] 679 |     fn new(lat: f64, long: f64) -> GeoPoint {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Pda` is never constructed
[INFO] [stdout]    --> src/main.rs:691:8
[INFO] [stdout]     |
[INFO] [stdout] 691 | struct Pda(String, f64);
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `input` is never used
[INFO] [stdout]    --> src/main.rs:694:8
[INFO] [stdout]     |
[INFO] [stdout] 693 | impl Pda {
[INFO] [stdout]     | -------- associated function in this implementation
[INFO] [stdout] 694 |     fn input(nama: String, tma: f64) -> Pda {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `pay` is never used
[INFO] [stdout]    --> src/main.rs:764:8
[INFO] [stdout]     |
[INFO] [stdout] 763 | impl Payment {
[INFO] [stdout]     | ------------ method in this implementation
[INFO] [stdout] 764 |     fn pay(&self, amount: u32) {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `CanSayHello` is never used
[INFO] [stdout]    --> src/main.rs:997:7
[INFO] [stdout]     |
[INFO] [stdout] 997 | trait CanSayHello {
[INFO] [stdout]     |       ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]    --> src/main.rs:996:8
[INFO] [stdout]     |
[INFO] [stdout] 996 | #[warn(dead_code)]
[INFO] [stdout]     |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `say_hello_trait` is never used
[INFO] [stdout]     --> src/main.rs:1012:4
[INFO] [stdout]      |
[INFO] [stdout] 1012 | fn say_hello_trait(person: &impl CanSayHello) {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `CanSayGoodbye` is never used
[INFO] [stdout]     --> src/main.rs:1031:7
[INFO] [stdout]      |
[INFO] [stdout] 1031 | trait CanSayGoodbye {
[INFO] [stdout]      |       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `hello_and_good_bye` is never used
[INFO] [stdout]     --> src/main.rs:1046:4
[INFO] [stdout]      |
[INFO] [stdout] 1046 | fn hello_and_good_bye(value: &(impl CanSayHello + CanSayGoodbye)) {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `create_person` is never used
[INFO] [stdout]     --> src/main.rs:1082:4
[INFO] [stdout]      |
[INFO] [stdout] 1082 | fn create_person(aran: String) -> impl CanSayGoodbye {
[INFO] [stdout]      |    ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `DoSomething` is never used
[INFO] [stdout]     --> src/main.rs:1093:7
[INFO] [stdout]      |
[INFO] [stdout] 1093 | trait DoSomething {
[INFO] [stdout]      |       ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `HavingSomething` is never used
[INFO] [stdout]     --> src/main.rs:1097:7
[INFO] [stdout]      |
[INFO] [stdout] 1097 | trait HavingSomething {
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `DoHave` is never used
[INFO] [stdout]     --> src/main.rs:1101:7
[INFO] [stdout]      |
[INFO] [stdout] 1101 | trait DoHave: DoSomething + HavingSomething {
[INFO] [stdout]      |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SimpleMan` is never constructed
[INFO] [stdout]     --> src/main.rs:1108:8
[INFO] [stdout]      |
[INFO] [stdout] 1108 | struct SimpleMan {
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Category` is never constructed
[INFO] [stdout]     --> src/main.rs:1312:8
[INFO] [stdout]      |
[INFO] [stdout] 1312 | struct Category {
[INFO] [stdout]      |        ^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/main.rs:1311:8
[INFO] [stdout]      |
[INFO] [stdout] 1311 | #[warn(dead_code)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `print_with_filter` is never used
[INFO] [stdout]     --> src/main.rs:1351:4
[INFO] [stdout]      |
[INFO] [stdout] 1351 | fn print_with_filter(value: String, filter: fn(String) -> String) {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_uppercase` is never used
[INFO] [stdout]     --> src/main.rs:1363:4
[INFO] [stdout]      |
[INFO] [stdout] 1363 | fn to_uppercase(val: String) -> String {
[INFO] [stdout]      |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Hitung` is never constructed
[INFO] [stdout]     --> src/main.rs:1374:8
[INFO] [stdout]      |
[INFO] [stdout] 1374 | struct Hitung {
[INFO] [stdout]      |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `kenaikan` is never used
[INFO] [stdout]     --> src/main.rs:1379:8
[INFO] [stdout]      |
[INFO] [stdout] 1378 | impl Hitung {
[INFO] [stdout]      | ----------- method in this implementation
[INFO] [stdout] 1379 |     fn kenaikan(&mut self) {
[INFO] [stdout]      |        ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `connect_database` is never used
[INFO] [stdout]     --> src/main.rs:1539:4
[INFO] [stdout]      |
[INFO] [stdout] 1539 | fn connect_database(host: Option<String>) {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/main.rs:1538:8
[INFO] [stdout]      |
[INFO] [stdout] 1538 | #[warn(dead_code)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `connect_cache` is never used
[INFO] [stdout]     --> src/main.rs:1557:4
[INFO] [stdout]      |
[INFO] [stdout] 1557 | fn connect_cache(host: Option<String>) -> Result<String, String> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/main.rs:1556:8
[INFO] [stdout]      |
[INFO] [stdout] 1556 | #[warn(dead_code)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `application_connect` is never used
[INFO] [stdout]     --> src/main.rs:1579:4
[INFO] [stdout]      |
[INFO] [stdout] 1579 | fn application_connect(host: Option<String>) -> Result<String, String> {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/main.rs:1578:8
[INFO] [stdout]      |
[INFO] [stdout] 1578 | #[warn(dead_code)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `longest` is never used
[INFO] [stdout]     --> src/main.rs:1599:4
[INFO] [stdout]      |
[INFO] [stdout] 1599 | fn longest<'a>(val1: &'a str, val2: &'a str) -> &'a str {
[INFO] [stdout]      |    ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/main.rs:1598:8
[INFO] [stdout]      |
[INFO] [stdout] 1598 | #[warn(dead_code)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Teacher` is never constructed
[INFO] [stdout]     --> src/main.rs:1610:8
[INFO] [stdout]      |
[INFO] [stdout] 1610 | struct Teacher<'a, ID>
[INFO] [stdout]      |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Company` is never constructed
[INFO] [stdout]     --> src/main.rs:1630:8
[INFO] [stdout]      |
[INFO] [stdout] 1630 | struct Company {
[INFO] [stdout]      |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_number_dereference` is never used
[INFO] [stdout]     --> src/main.rs:1654:4
[INFO] [stdout]      |
[INFO] [stdout] 1654 | fn display_number_dereference(value: i32) {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `display_number_reference` is never used
[INFO] [stdout]     --> src/main.rs:1658:4
[INFO] [stdout]      |
[INFO] [stdout] 1658 | fn display_number_reference(value: &i32) {
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Categ` is never used
[INFO] [stdout]     --> src/main.rs:1664:6
[INFO] [stdout]      |
[INFO] [stdout] 1664 | enum Categ {
[INFO] [stdout]      |      ^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/main.rs:1663:8
[INFO] [stdout]      |
[INFO] [stdout] 1663 | #[warn(dead_code)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MyValue` is never constructed
[INFO] [stdout]     --> src/main.rs:1689:8
[INFO] [stdout]      |
[INFO] [stdout] 1689 | struct MyValue<T> {
[INFO] [stdout]      |        ^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/main.rs:1688:8
[INFO] [stdout]      |
[INFO] [stdout] 1688 | #[warn(dead_code)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `send_name` is never used
[INFO] [stdout]     --> src/main.rs:1708:4
[INFO] [stdout]      |
[INFO] [stdout] 1708 | fn send_name(name: &String) {
[INFO] [stdout]      |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Book` is never constructed
[INFO] [stdout]     --> src/main.rs:1721:8
[INFO] [stdout]      |
[INFO] [stdout] 1721 | struct Book {
[INFO] [stdout]      |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `Brand` is never used
[INFO] [stdout]     --> src/main.rs:1741:6
[INFO] [stdout]      |
[INFO] [stdout] 1741 | enum Brand {
[INFO] [stdout]      |      ^^^^^
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/main.rs:1740:8
[INFO] [stdout]      |
[INFO] [stdout] 1740 | #[warn(dead_code)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Seller` is never constructed
[INFO] [stdout]     --> src/main.rs:1763:8
[INFO] [stdout]      |
[INFO] [stdout] 1763 | struct Seller {
[INFO] [stdout]      |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `COUNTER` is never used
[INFO] [stdout]     --> src/main.rs:1781:12
[INFO] [stdout]      |
[INFO] [stdout] 1781 | static mut COUNTER: u32 = 0;
[INFO] [stdout]      |            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `increment` is never used
[INFO] [stdout]     --> src/main.rs:1783:11
[INFO] [stdout]      |
[INFO] [stdout] 1783 | unsafe fn increment() {
[INFO] [stdout]      |           ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `say_hi` is never used
[INFO] [stdout]    --> src/main.rs:955:16
[INFO] [stdout]     |
[INFO] [stdout] 954 |     impl User {
[INFO] [stdout]     |     --------- method in this implementation
[INFO] [stdout] 955 |         pub fn say_hi(&self, name: &str) {
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `say_hallo` is never used
[INFO] [stdout]    --> src/main.rs:971:12
[INFO] [stdout]     |
[INFO] [stdout] 971 |     pub fn say_hallo() {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `say_hallo` is never used
[INFO] [stdout]    --> src/main.rs:977:12
[INFO] [stdout]     |
[INFO] [stdout] 977 |     pub fn say_hallo() {
[INFO] [stdout]     |            ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `say_hai` is never used
[INFO] [stdout]  --> src/pertamax.rs:3:8
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub fn say_hai() {
[INFO] [stdout]   |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `xyz` is never used
[INFO] [stdout]  --> src/include_file.rs:1:8
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub fn xyz() {
[INFO] [stdout]   |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `xxx` is never used
[INFO] [stdout]  --> src/include_file.rs:8:16
[INFO] [stdout]   |
[INFO] [stdout] 8 |         pub fn xxx() {
[INFO] [stdout]   |                ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.62s
[INFO] running `Command { std: "docker" "inspect" "ed0f9981a7bbba6e80d957d72367dc01216d78b5228ea6f371e34930c81131f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ed0f9981a7bbba6e80d957d72367dc01216d78b5228ea6f371e34930c81131f4" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling belajar-rust-dasar v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused variable: `laptop`
[INFO] [stdout]     --> src/main.rs:1749:9
[INFO] [stdout]      |
[INFO] [stdout] 1749 |     let laptop: Brand = Brand::Of("Laptop".to_string(), Rc::clone(&apple));
[INFO] [stdout]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_laptop`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `smart_phone`
[INFO] [stdout]     --> src/main.rs:1753:13
[INFO] [stdout]      |
[INFO] [stdout] 1753 |         let smart_phone: Brand = Brand::Of("Smartphone".to_string(), Rc::clone(&apple));
[INFO] [stdout]      |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_smart_phone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stdout]     --> src/main.rs:1784:5
[INFO] [stdout]      |
[INFO] [stdout] 1784 |     COUNTER += 1;
[INFO] [stdout]      |     ^^^^^^^ use of mutable static
[INFO] [stdout]      |
[INFO] [stdout]      = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/main.rs:1783:1
[INFO] [stdout]      |
[INFO] [stdout] 1783 | unsafe fn increment() {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]      = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]     --> src/main.rs:1665:8
[INFO] [stdout]      |
[INFO] [stdout] 1665 |     Of(String, Box<Categ>),
[INFO] [stdout]      |     -- ^^^^^^  ^^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     fields in this variant
[INFO] [stdout]      |
[INFO] [stdout]      = note: `Categ` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/main.rs:1663:8
[INFO] [stdout]      |
[INFO] [stdout] 1663 | #[warn(dead_code)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]      |
[INFO] [stdout] 1665 -     Of(String, Box<Categ>),
[INFO] [stdout] 1665 +     Of((), ()),
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]     --> src/main.rs:1742:8
[INFO] [stdout]      |
[INFO] [stdout] 1742 |     Of(String, Rc<Brand>),
[INFO] [stdout]      |     -- ^^^^^^  ^^^^^^^^^
[INFO] [stdout]      |     |
[INFO] [stdout]      |     fields in this variant
[INFO] [stdout]      |
[INFO] [stdout] note: the lint level is defined here
[INFO] [stdout]     --> src/main.rs:1740:8
[INFO] [stdout]      |
[INFO] [stdout] 1740 | #[warn(dead_code)]
[INFO] [stdout]      |        ^^^^^^^^^
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]      |
[INFO] [stdout] 1742 -     Of(String, Rc<Brand>),
[INFO] [stdout] 1742 +     Of((), ()),
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `active` is never read
[INFO] [stdout]     --> src/main.rs:1765:5
[INFO] [stdout]      |
[INFO] [stdout] 1763 | struct Seller {
[INFO] [stdout]      |        ------ field in this struct
[INFO] [stdout] 1764 |     name: RefCell<String>,
[INFO] [stdout] 1765 |     active: RefCell<bool>,
[INFO] [stdout]      |     ^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `Seller` 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] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.20s
[INFO] running `Command { std: "docker" "inspect" "ed0f9981a7bbba6e80d957d72367dc01216d78b5228ea6f371e34930c81131f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "ed0f9981a7bbba6e80d957d72367dc01216d78b5228ea6f371e34930c81131f4" "/opt/rustwide/cargo-home/bin/cargo" "+1.98.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: unused variable: `laptop`
[INFO] [stderr]     --> src/main.rs:1749:9
[INFO] [stderr]      |
[INFO] [stderr] 1749 |     let laptop: Brand = Brand::Of("Laptop".to_string(), Rc::clone(&apple));
[INFO] [stderr]      |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_laptop`
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `smart_phone`
[INFO] [stderr]     --> src/main.rs:1753:13
[INFO] [stderr]      |
[INFO] [stderr] 1753 |         let smart_phone: Brand = Brand::Of("Smartphone".to_string(), Rc::clone(&apple));
[INFO] [stderr]      |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_smart_phone`
[INFO] [stderr] 
[INFO] [stderr] warning[E0133]: use of mutable static is unsafe and requires unsafe block
[INFO] [stderr]     --> src/main.rs:1784:5
[INFO] [stderr]      |
[INFO] [stderr] 1784 |     COUNTER += 1;
[INFO] [stderr]      |     ^^^^^^^ use of mutable static
[INFO] [stderr]      |
[INFO] [stderr]      = note: mutable statics can be mutated by multiple threads: aliasing violations or data races will cause undefined behavior
[INFO] [stderr] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stderr]     --> src/main.rs:1783:1
[INFO] [stderr]      |
[INFO] [stderr] 1783 | unsafe fn increment() {
[INFO] [stderr]      | ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stderr]      = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: fields `0` and `1` are never read
[INFO] [stderr]     --> src/main.rs:1665:8
[INFO] [stderr]      |
[INFO] [stderr] 1665 |     Of(String, Box<Categ>),
[INFO] [stderr]      |     -- ^^^^^^  ^^^^^^^^^^
[INFO] [stderr]      |     |
[INFO] [stderr]      |     fields in this variant
[INFO] [stderr]      |
[INFO] [stderr]      = note: `Categ` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]     --> src/main.rs:1663:8
[INFO] [stderr]      |
[INFO] [stderr] 1663 | #[warn(dead_code)]
[INFO] [stderr]      |        ^^^^^^^^^
[INFO] [stderr] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stderr]      |
[INFO] [stderr] 1665 -     Of(String, Box<Categ>),
[INFO] [stderr] 1665 +     Of((), ()),
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: fields `0` and `1` are never read
[INFO] [stderr]     --> src/main.rs:1742:8
[INFO] [stderr]      |
[INFO] [stderr] 1742 |     Of(String, Rc<Brand>),
[INFO] [stderr]      |     -- ^^^^^^  ^^^^^^^^^
[INFO] [stderr]      |     |
[INFO] [stderr]      |     fields in this variant
[INFO] [stderr]      |
[INFO] [stderr] note: the lint level is defined here
[INFO] [stderr]     --> src/main.rs:1740:8
[INFO] [stderr]      |
[INFO] [stderr] 1740 | #[warn(dead_code)]
[INFO] [stderr]      |        ^^^^^^^^^
[INFO] [stderr] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stderr]      |
[INFO] [stderr] 1742 -     Of(String, Rc<Brand>),
[INFO] [stderr] 1742 +     Of((), ()),
[INFO] [stderr]      |
[INFO] [stderr] 
[INFO] [stderr] warning: field `active` is never read
[INFO] [stderr]     --> src/main.rs:1765:5
[INFO] [stderr]      |
[INFO] [stderr] 1763 | struct Seller {
[INFO] [stderr]      |        ------ field in this struct
[INFO] [stderr] 1764 |     name: RefCell<String>,
[INFO] [stderr] 1765 |     active: RefCell<bool>,
[INFO] [stderr]      |     ^^^^^^
[INFO] [stderr]      |
[INFO] [stderr]      = note: `Seller` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr]      = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] For more information about this error, try `rustc --explain E0133`.
[INFO] [stderr] warning: `belajar-rust-dasar` (bin "belajar-rust-dasar" test) generated 6 warnings (run `cargo fix --bin "belajar-rust-dasar" -p belajar-rust-dasar --tests` to apply 3 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.03s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/belajar_rust_dasar-a27b5764d05c34c8)
[INFO] [stdout] 
[INFO] [stdout] running 109 tests
[INFO] [stdout] test annotation_generic_test ... ok
[INFO] [stdout] test array_iteration_test ... ok
[INFO] [stdout] test array_for_test ... ok
[INFO] [stdout] test apple_test ... ok
[INFO] [stdout] test attribute_debug_test ... ok
[INFO] [stdout] test augmented_number ... ok
[INFO] [stdout] test box_enum_test ... ok
[INFO] [stdout] test array_test ... ok
[INFO] [stdout] test box_test ... ok
[INFO] [stdout] test btree_set_test ... ok
[INFO] [stdout] test btreemap_test ... ok
[INFO] [stdout] test category_test ... ok
[INFO] [stdout] test change_val_test ... ok
[INFO] [stdout] test closure_fn_test ... ok
[INFO] [stdout] test closure_scope_test ... ok
[INFO] [stdout] test closure_test ... ok
[INFO] [stdout] test comp_test ... ok
[INFO] [stdout] test constanta_test ... ok
[INFO] [stdout] test crot::test_doit_something_returns_string ... ok
[INFO] [stdout] test crot::test_doit_something_contains_name ... ok
[INFO] [stdout] test crot::test_empty_name ... ok
[INFO] [stdout] test denah_test ... ok
[INFO] [stdout] test crot::test_have_something_contains_name ... ok
[INFO] [stdout] test crot::test_have_something_returns_string ... ok
[INFO] [stdout] test generic_test ... ok
[INFO] [stdout] test geo_point_test ... ok
[INFO] [stdout] test crot::test_just_calls_both_traits ... ok
[INFO] [stdout] test crot::test_name_with_spaces ... ok
[INFO] [stdout] test crot::test_trait_object_do_something ... ok
[INFO] [stdout] test deref_function_test ... ok
[INFO] [stdout] test dereference_test ... ok
[INFO] [stdout] test drop_test ... ok
[INFO] [stdout] test deref_test ... ok
[INFO] [stdout] test factorial_recursive_test ... ok
[INFO] [stdout] test enum_test ... ok
[INFO] [stdout] test factorial_test ... ok
[INFO] [stdout] test fullname_test ... ok
[INFO] [stdout] test hash_set_test ... ok
[INFO] [stdout] test hashmap_test ... ok
[INFO] [stdout] test hello_test ... ok
[INFO] [stdout] test iter_test ... ok
[INFO] [stdout] test iterator_test ... ok
[INFO] [stdout] test iterate_test ... ok
[INFO] [stdout] test lifetime_annotation_test ... ok
[INFO] [stdout] test loop_return_test ... ok
[INFO] [stdout] test macro_test ... ok
[INFO] [stdout] test linkedlist_test ... ok
[INFO] [stdout] test loop_test ... ok
[INFO] [stdout] test loop_label_test ... ok
[INFO] [stdout] test match_test ... ok
[INFO] [stdout] test latlong_test ... ok
[INFO] [stdout] test match_value_test ... ok
[INFO] [stdout] test match_pipe_test ... ok
[INFO] [stdout] test crot::test_trait_object_have_something ... ok
[INFO] [stdout] test if_statement_test ... ok
[INFO] [stdout] test if_expression_test ... ok
[INFO] [stdout] test impl_test ... ok
[INFO] [stdout] test multiple_trait_test ... ok
[INFO] [stdout] test match_expression_test ... ok
[INFO] [stdout] test mod_test ... ok
[INFO] [stdout] test nilai_test ... ok
[INFO] [stdout] test multiple_owner_test ... ok
[INFO] [stdout] test number_conversion ... ok
[INFO] [stdout] test optional_values_test ... ok
[INFO] [stdout] test muttable_test ... ok
[INFO] [stdout] test ownership_movement_test ... ok
[INFO] [stdout] test nothing_test ... ok
[INFO] [stdout] test payment_test ... ok
[INFO] [stdout] test parameter_test ... ok
[INFO] [stdout] test payment_impl_test ... ok
[INFO] [stdout] test person_initshorthand_test ... ok
[INFO] [stdout] test pda_test ... ok
[INFO] [stdout] test person_match_test ... ok
[INFO] [stdout] test pipe_match_test ... ok
[INFO] [stdout] test print_closure_test ... ok
[INFO] [stdout] test person_update_syntax_test ... ok
[INFO] [stdout] test range_pattern_test ... ok
[INFO] [stdout] test person_parameter_test ... ok
[INFO] [stdout] test person_clone_test ... ok
[INFO] [stdout] test range_inclusive_test ... ok
[INFO] [stdout] test range_test ... ok
[INFO] [stdout] test recoverable_test ... ok
[INFO] [stdout] test recursive_print_test ... ok
[INFO] [stdout] test ref_cell_test ... ok
[INFO] [stdout] test return_trait_test ... ok
[INFO] [stdout] test shadowing_test ... ok
[INFO] [stdout] test slice_reference_test ... ok
[INFO] [stdout] test stack_heap_test ... ok
[INFO] [stdout] test static_mut_test ... ok
[INFO] [stdout] test string_manipulation_test ... ok
[INFO] [stdout] test string_slice_test ... ok
[INFO] [stdout] test string_test ... ok
[INFO] [stdout] test string_type_test ... ok
[INFO] [stdout] test struct_pattern_test ... ok
[INFO] [stdout] test struct_person_test ... ok
[INFO] [stdout] test suhu_test ... ok
[INFO] [stdout] test tanda_tanya_test ... ok
[INFO] [stdout] test trait_test ... ok
[INFO] [stdout] test tuple_test ... ok
[INFO] [stdout] test two_dimensional_array_test ... ok
[INFO] [stdout] test type_alias_test ... ok
[INFO] [stdout] test unit_test ... ok
[INFO] [stdout] test use_test ... ok
[INFO] [stdout] test variable_test ... ok
[INFO] [stdout] test variable_scope_test ... ok
[INFO] [stdout] test vecdeque_test ... ok
[INFO] [stdout] test vector_test ... ok
[INFO] [stdout] test while_loop_test ... ok
[INFO] [stdout] test unrecoverable_test ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- unrecoverable_test stdout ----
[INFO] [stdout] connecting to database localhost
[INFO] [stdout] 
[INFO] [stdout] thread 'unrecoverable_test' (274) panicked at src/main.rs:1545:13:
[INFO] [stdout] No Database connection
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x63c156f83731 - std[73adb7dc35730857]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x63c156f83731 - std[73adb7dc35730857]::backtrace_rs::backtrace::trace_unsynchronized::<std[73adb7dc35730857]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x63c156f83731 - std[73adb7dc35730857]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x63c156f83731 - <<std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[6883ba1bc0fe4ed1]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x63c156f9973a - <core[6883ba1bc0fe4ed1]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x63c156f9973a - core[6883ba1bc0fe4ed1]::fmt::write
[INFO] [stdout]    6:     0x63c156f87bec - std[73adb7dc35730857]::io::default_write_fmt::<alloc[55a36b64bcbf2c0d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:626:11
[INFO] [stdout]    7:     0x63c156f87bec - <alloc[55a36b64bcbf2c0d]::vec::Vec<u8> as std[73adb7dc35730857]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/io/mod.rs:1730:13
[INFO] [stdout]    8:     0x63c156f61ea6 - <std[73adb7dc35730857]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x63c156f61ea6 - std[73adb7dc35730857]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x63c156f7b959 - std[73adb7dc35730857]::panicking::default_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x63c156f169c0 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   12:     0x63c156f169c0 - test[980ffaebd391d06d]::test_main_inner::<test[980ffaebd391d06d]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x63c156f7bb12 - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn for<'a, 'b> core[6883ba1bc0fe4ed1]::ops::function::Fn<(&'a std[73adb7dc35730857]::panic::PanicHookInfo<'b>,), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send + core[6883ba1bc0fe4ed1]::marker::Sync> as core[6883ba1bc0fe4ed1]::ops::function::Fn<(&std[73adb7dc35730857]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2333:9
[INFO] [stdout]   14:     0x63c156f7bb12 - std[73adb7dc35730857]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:823:13
[INFO] [stdout]   15:     0x63c156f61f84 - std[73adb7dc35730857]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:681:13
[INFO] [stdout]   16:     0x63c156f598b9 - std[73adb7dc35730857]::sys::backtrace::__rust_end_short_backtrace::<std[73adb7dc35730857]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x63c156f62b4d - __rustc[a7b7b02e776dd976]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:679:5
[INFO] [stdout]   18:     0x63c156f99ecc - core[6883ba1bc0fe4ed1]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x63c156ed5820 - belajar_rust_dasar[b1aecbbed1386b34]::connect_database
[INFO] [stdout]                                at /opt/rustwide/workdir/src/main.rs:1545:13
[INFO] [stdout]   20:     0x63c156edc9d2 - belajar_rust_dasar[b1aecbbed1386b34]::unrecoverable_test
[INFO] [stdout]                                at /opt/rustwide/workdir/src/main.rs:1553:5
[INFO] [stdout]   21:     0x63c156ed4757 - belajar_rust_dasar[b1aecbbed1386b34]::unrecoverable_test::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/src/main.rs:1551:24
[INFO] [stdout]   22:     0x63c156f034c6 - <belajar_rust_dasar[b1aecbbed1386b34]::unrecoverable_test::{closure#0} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x63c156f09cfb - <fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   24:     0x63c156f09cfb - test[980ffaebd391d06d]::__rust_begin_short_backtrace::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, fn() -> core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:724:18
[INFO] [stdout]   25:     0x63c156f17345 - test[980ffaebd391d06d]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:74
[INFO] [stdout]   26:     0x63c156f17345 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   27:     0x63c156f17345 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   28:     0x63c156f17345 - std[73adb7dc35730857]::panicking::catch_unwind::<core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>, core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   29:     0x63c156f17345 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<test[980ffaebd391d06d]::run_test_in_process::{closure#0}>, core[6883ba1bc0fe4ed1]::result::Result<(), alloc[55a36b64bcbf2c0d]::string::String>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   30:     0x63c156f17345 - test[980ffaebd391d06d]::run_test_in_process
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:747:27
[INFO] [stdout]   31:     0x63c156f17345 - test[980ffaebd391d06d]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:668:43
[INFO] [stdout]   32:     0x63c156f11df4 - test[980ffaebd391d06d]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/test/src/lib.rs:698:41
[INFO] [stdout]   33:     0x63c156f11df4 - std[73adb7dc35730857]::sys::backtrace::__rust_begin_short_backtrace::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   34:     0x63c156f1a492 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   35:     0x63c156f1a492 - <core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   36:     0x63c156f1a492 - std[73adb7dc35730857]::panicking::catch_unwind::do_call::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:576:43
[INFO] [stdout]   37:     0x63c156f1a492 - std[73adb7dc35730857]::panicking::catch_unwind::<(), core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panicking.rs:544:19
[INFO] [stdout]   38:     0x63c156f1a492 - std[73adb7dc35730857]::panic::catch_unwind::<core[6883ba1bc0fe4ed1]::panic::unwind_safe::AssertUnwindSafe<std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/panic.rs:359:14
[INFO] [stdout]   39:     0x63c156f1a492 - std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked::<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   40:     0x63c156f1a492 - <std[73adb7dc35730857]::thread::lifecycle::spawn_unchecked<test[980ffaebd391d06d]::run_test::{closure#1}, ()>::{closure#1} as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   41:     0x63c156f82fbf - <alloc[55a36b64bcbf2c0d]::boxed::Box<dyn core[6883ba1bc0fe4ed1]::ops::function::FnOnce<(), Output = ()> + core[6883ba1bc0fe4ed1]::marker::Send> as core[6883ba1bc0fe4ed1]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/alloc/src/boxed.rs:2319:9
[INFO] [stdout]   42:     0x63c156f82fbf - <std[73adb7dc35730857]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/6b3fa26749ab40e159b2dd5cf577acaaf5902772/library/std/src/sys/thread/unix.rs:123:17
[INFO] [stdout]   43:     0x77a2dbffbaa4 - <unknown>
[INFO] [stdout]   44:     0x77a2dc088a64 - clone
[INFO] [stdout]   45:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     unrecoverable_test
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 108 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.07s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--bin belajar-rust-dasar`
[INFO] running `Command { std: "docker" "inspect" "ed0f9981a7bbba6e80d957d72367dc01216d78b5228ea6f371e34930c81131f4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ed0f9981a7bbba6e80d957d72367dc01216d78b5228ea6f371e34930c81131f4", kill_on_drop: false }`
[INFO] [stdout] ed0f9981a7bbba6e80d957d72367dc01216d78b5228ea6f371e34930c81131f4
