[INFO] cloning repository https://github.com/planet0104/art_pattern
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/planet0104/art_pattern" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fplanet0104%2Fart_pattern", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fplanet0104%2Fart_pattern'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 29d9431f547e265dbdd5416ccc3187a93f6a3da1
[INFO] checking planet0104/art_pattern against eca445e5ae4a6679cc27d3a09106ce245e13a5a6 for pr-162478
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fplanet0104%2Fart_pattern" "/workspace/builds/worker-3-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/planet0104/art_pattern
[INFO] finished tweaking git repo https://github.com/planet0104/art_pattern
[INFO] tweaked toml for git repo https://github.com/planet0104/art_pattern written to /workspace/builds/worker-3-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/planet0104/art_pattern on toolchain eca445e5ae4a6679cc27d3a09106ce245e13a5a6
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/planet0104/art_pattern 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" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: binary `art_pattern` should have a kebab-case name
[INFO] [stderr]    |
[INFO] [stderr]  1 | /workspace/builds/worker-3-tc1/source/target/.../art_pattern
[INFO] [stderr]    |                                                  ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::non_kebab_case_bins` is set to `warn` by default
[INFO] [stderr] help: to change the binary name to `art-pattern`, convert `package.name`
[INFO] [stderr]   --> Cargo.toml:7:8
[INFO] [stderr]    |
[INFO] [stderr]  7 - name = "art_pattern"
[INFO] [stderr]  7 + name = "art-pattern"
[INFO] [stderr]    |
[INFO] [stderr] help: to change the binary name to `art-pattern`, specify `bin.name`
[INFO] [stderr]   --> Cargo.toml:8:19
[INFO] [stderr]    |
[INFO] [stderr]  8 ~ version = "0.1.0"
[INFO] [stderr]  9 + [[bin]]
[INFO] [stderr] 10 + name = "art-pattern"
[INFO] [stderr] 11 + path = "src/main.rs"
[INFO] [stderr]    |
[INFO] [stderr] warning: `art_pattern` (manifest) generated 2 warnings
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded proc-macro2 v0.2.3
[INFO] [stderr]   Downloaded serde_json v1.0.24
[INFO] [stderr]   Downloaded stdweb-internal-macros v0.1.0
[INFO] [stderr]   Downloaded quote v0.6.3
[INFO] [stderr]   Downloaded base-x v0.2.2
[INFO] [stderr]   Downloaded stdweb-derive v0.4.0
[INFO] [stderr]   Downloaded discard v1.0.3
[INFO] [stderr]   Downloaded itoa v0.4.2
[INFO] [stderr]   Downloaded proc-macro2 v0.4.8
[INFO] [stderr]   Downloaded serde_derive v1.0.70
[INFO] [stderr]   Downloaded serde v1.0.70
[INFO] [stderr]   Downloaded stdweb v0.4.8
[INFO] [stderr]   Downloaded syn v0.12.15
[INFO] [stderr]   Downloaded syn v0.14.4
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc1/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:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 8300694bdba47e84ff8172b52071440c25cd6bb0cb4bf8c511d8a13a3a5af11b
[INFO] running `Command { std: "docker" "start" "8300694bdba47e84ff8172b52071440c25cd6bb0cb4bf8c511d8a13a3a5af11b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8300694bdba47e84ff8172b52071440c25cd6bb0cb4bf8c511d8a13a3a5af11b", 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" "8300694bdba47e84ff8172b52071440c25cd6bb0cb4bf8c511d8a13a3a5af11b" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "8300694bdba47e84ff8172b52071440c25cd6bb0cb4bf8c511d8a13a3a5af11b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "8300694bdba47e84ff8172b52071440c25cd6bb0cb4bf8c511d8a13a3a5af11b" "/opt/rustwide/cargo-home/bin/cargo" "+eca445e5ae4a6679cc27d3a09106ce245e13a5a6" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: Cargo.toml: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: binary `art_pattern` should have a kebab-case name
[INFO] [stderr]    |
[INFO] [stderr]  1 | /opt/rustwide/target/.../art_pattern
[INFO] [stderr]    |                          ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::non_kebab_case_bins` is set to `warn` by default
[INFO] [stderr] help: to change the binary name to `art-pattern`, convert `package.name`
[INFO] [stderr]   --> Cargo.toml:7:8
[INFO] [stderr]    |
[INFO] [stderr]  7 - name = "art_pattern"
[INFO] [stderr]  7 + name = "art-pattern"
[INFO] [stderr]    |
[INFO] [stderr] help: to change the binary name to `art-pattern`, specify `bin.name`
[INFO] [stderr]   --> Cargo.toml:8:19
[INFO] [stderr]    |
[INFO] [stderr]  8 ~ version = "0.1.0"
[INFO] [stderr]  9 + [[bin]]
[INFO] [stderr] 10 + name = "art-pattern"
[INFO] [stderr] 11 + path = "src/main.rs"
[INFO] [stderr]    |
[INFO] [stderr] warning: `art_pattern` (manifest) generated 2 warnings
[INFO] [stderr]    Compiling serde v1.0.70
[INFO] [stderr]    Compiling proc-macro2 v0.4.8
[INFO] [stderr]    Compiling proc-macro2 v0.2.3
[INFO] [stderr]     Checking dtoa v0.4.3
[INFO] [stderr]     Checking itoa v0.4.2
[INFO] [stderr]    Compiling stdweb v0.4.8
[INFO] [stderr]    Compiling art_pattern v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking discard v1.0.3
[INFO] [stderr]    Compiling quote v0.4.2
[INFO] [stderr]    Compiling quote v0.6.3
[INFO] [stderr]    Compiling syn v0.12.15
[INFO] [stderr]    Compiling syn v0.14.4
[INFO] [stderr]    Compiling serde_derive v1.0.70
[INFO] [stderr]     Checking serde_json v1.0.24
[INFO] [stderr]    Compiling stdweb-derive v0.4.0
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     js!(return Math.random(); ).try_into().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: `#[warn(semicolon_in_expressions_from_non_local_macros)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `_js_impl` which comes from the expansion of the macro `js` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     js!(return Math.random(); ).try_into().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `_js_impl` which comes from the expansion of the macro `js` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     js!(return Math.random(); ).try_into().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `_js_impl` which comes from the expansion of the macro `js` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     js!(return Math.random(); ).try_into().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `_js_impl` which comes from the expansion of the macro `js` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     js!(return Math.random(); ).try_into().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `_js_impl` which comes from the expansion of the macro `js` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     js!(return Math.random(); ).try_into().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `_js_impl` which comes from the expansion of the macro `js` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around method argument
[INFO] [stdout]   --> src/main.rs:75:21
[INFO] [stdout]    |
[INFO] [stdout] 75 |     ul.append_child({ &elem_content("li", "第一章 绘图入门") });
[INFO] [stdout]    |                     ^^                                      ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_braces)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 75 -     ul.append_child({ &elem_content("li", "第一章 绘图入门") });
[INFO] [stdout] 75 +     ul.append_child(&elem_content("li", "第一章 绘图入门"));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around method argument
[INFO] [stdout]    --> src/main.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 |     ul.append_child({ &elem_content("li", "第二章 图案变换及操作") });
[INFO] [stdout]     |                     ^^                                            ^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout] 177 -     ul.append_child({ &elem_content("li", "第二章 图案变换及操作") });
[INFO] [stdout] 177 +     ul.append_child(&elem_content("li", "第二章 图案变换及操作"));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around method argument
[INFO] [stdout]    --> src/main.rs:321:21
[INFO] [stdout]     |
[INFO] [stdout] 321 |     ul.append_child({ &elem_content("li", "第三章 图案程序60例") });
[INFO] [stdout]     |                     ^^                                          ^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout] 321 -     ul.append_child({ &elem_content("li", "第三章 图案程序60例") });
[INFO] [stdout] 321 +     ul.append_child(&elem_content("li", "第三章 图案程序60例"));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     js!(return Math.random(); ).try_into().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: `#[warn(semicolon_in_expressions_from_non_local_macros)]` (part of `#[warn(future_incompatible)]`) on by default
[INFO] [stdout]    = note: this warning originates in the macro `_js_impl` which comes from the expansion of the macro `js` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     js!(return Math.random(); ).try_into().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `_js_impl` which comes from the expansion of the macro `js` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     js!(return Math.random(); ).try_into().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `_js_impl` which comes from the expansion of the macro `js` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     js!(return Math.random(); ).try_into().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `_js_impl` which comes from the expansion of the macro `js` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     js!(return Math.random(); ).try_into().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `_js_impl` which comes from the expansion of the macro `js` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trailing semicolon in macro used in expression position
[INFO] [stdout]   --> src/main.rs:28:5
[INFO] [stdout]    |
[INFO] [stdout] 28 |     js!(return Math.random(); ).try_into().unwrap()
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stdout]    = note: for more information, see issue #79813 <https://github.com/rust-lang/rust/issues/79813>
[INFO] [stdout]    = note: this warning originates in the macro `_js_impl` which comes from the expansion of the macro `js` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around method argument
[INFO] [stdout]   --> src/main.rs:75:21
[INFO] [stdout]    |
[INFO] [stdout] 75 |     ul.append_child({ &elem_content("li", "第一章 绘图入门") });
[INFO] [stdout]    |                     ^^                                      ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_braces)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these braces
[INFO] [stdout]    |
[INFO] [stdout] 75 -     ul.append_child({ &elem_content("li", "第一章 绘图入门") });
[INFO] [stdout] 75 +     ul.append_child(&elem_content("li", "第一章 绘图入门"));
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around method argument
[INFO] [stdout]    --> src/main.rs:177:21
[INFO] [stdout]     |
[INFO] [stdout] 177 |     ul.append_child({ &elem_content("li", "第二章 图案变换及操作") });
[INFO] [stdout]     |                     ^^                                            ^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout] 177 -     ul.append_child({ &elem_content("li", "第二章 图案变换及操作") });
[INFO] [stdout] 177 +     ul.append_child(&elem_content("li", "第二章 图案变换及操作"));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary braces around method argument
[INFO] [stdout]    --> src/main.rs:321:21
[INFO] [stdout]     |
[INFO] [stdout] 321 |     ul.append_child({ &elem_content("li", "第三章 图案程序60例") });
[INFO] [stdout]     |                     ^^                                          ^^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these braces
[INFO] [stdout]     |
[INFO] [stdout] 321 -     ul.append_child({ &elem_content("li", "第三章 图案程序60例") });
[INFO] [stdout] 321 +     ul.append_child(&elem_content("li", "第三章 图案程序60例"));
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_param` is never used
[INFO] [stdout]   --> src/main.rs:46:4
[INFO] [stdout]    |
[INFO] [stdout] 46 | fn set_param(i: i32, value: &str) {
[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 `draw` is never used
[INFO] [stdout]  --> src/chapter2/sample11.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn draw(context: &CanvasRenderingContext2d) {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `set_param` is never used
[INFO] [stdout]   --> src/main.rs:46:4
[INFO] [stdout]    |
[INFO] [stdout] 46 | fn set_param(i: i32, value: &str) {
[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 `draw` is never used
[INFO] [stdout]  --> src/chapter2/sample11.rs:5:8
[INFO] [stdout]   |
[INFO] [stdout] 5 | pub fn draw(context: &CanvasRenderingContext2d) {
[INFO] [stdout]   |        ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 19.39s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: art_pattern v0.1.0 (/opt/rustwide/workdir), stdweb v0.4.8, syn v0.12.15, syn v0.14.4
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 6`
[INFO] running `Command { std: "docker" "inspect" "8300694bdba47e84ff8172b52071440c25cd6bb0cb4bf8c511d8a13a3a5af11b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8300694bdba47e84ff8172b52071440c25cd6bb0cb4bf8c511d8a13a3a5af11b", kill_on_drop: false }`
[INFO] [stdout] 8300694bdba47e84ff8172b52071440c25cd6bb0cb4bf8c511d8a13a3a5af11b
