[INFO] fetching crate osm-katana 0.2.11...
[INFO] checking osm-katana-0.2.11 against e4d5758286bf2cf6f415802f2cf861747a7c6c8c for pr-152972
[INFO] extracting crate osm-katana 0.2.11 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate osm-katana 0.2.11
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate osm-katana 0.2.11
[INFO] tweaked toml for crates.io crate osm-katana 0.2.11 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate osm-katana 0.2.11 on toolchain e4d5758286bf2cf6f415802f2cf861747a7c6c8c
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+e4d5758286bf2cf6f415802f2cf861747a7c6c8c" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate osm-katana 0.2.11 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" "+e4d5758286bf2cf6f415802f2cf861747a7c6c8c" "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/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 5efc6f6125636b79fabddae6b88e4c128da5499aaf91160efd2047ea66c9d866
[INFO] running `Command { std: "docker" "start" "5efc6f6125636b79fabddae6b88e4c128da5499aaf91160efd2047ea66c9d866", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5efc6f6125636b79fabddae6b88e4c128da5499aaf91160efd2047ea66c9d866", 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" "5efc6f6125636b79fabddae6b88e4c128da5499aaf91160efd2047ea66c9d866" "/opt/rustwide/cargo-home/bin/cargo" "+e4d5758286bf2cf6f415802f2cf861747a7c6c8c" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5efc6f6125636b79fabddae6b88e4c128da5499aaf91160efd2047ea66c9d866", 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" "5efc6f6125636b79fabddae6b88e4c128da5499aaf91160efd2047ea66c9d866" "/opt/rustwide/cargo-home/bin/cargo" "+e4d5758286bf2cf6f415802f2cf861747a7c6c8c" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]     Checking arrow-schema v59.2.0
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling memchr v2.8.2
[INFO] [stderr]    Compiling bitflags v2.13.0
[INFO] [stderr]    Compiling either v1.16.0
[INFO] [stderr]    Compiling zerocopy-derive v0.8.52
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling cc v1.2.65
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling protobuf v3.7.2
[INFO] [stderr]    Compiling clang-sys v1.8.1
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]    Compiling linux-raw-sys v0.4.15
[INFO] [stderr]    Compiling flatbuffers v25.12.19
[INFO] [stderr]    Compiling getrandom v0.4.3
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]     Checking aho-corasick v1.1.4
[INFO] [stderr]     Checking base64 v0.23.1
[INFO] [stderr]    Compiling home v0.5.12
[INFO] [stderr]    Compiling bindgen v0.72.1
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling itertools v0.13.0
[INFO] [stderr]    Compiling num_enum_derive v0.7.6
[INFO] [stderr]     Checking serde_json v1.0.150
[INFO] [stderr]    Compiling rustc-hash v2.1.2
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]     Checking alloc-stdlib v0.2.4
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking num-bigint v0.5.1
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking chrono v0.4.45
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling protobuf-support v3.7.2
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]     Checking regex-automata v0.4.14
[INFO] [stderr]     Checking geo-types v0.7.19
[INFO] [stderr]     Checking atoi v2.0.0
[INFO] [stderr]     Checking num_enum v0.7.6
[INFO] [stderr]     Checking zerocopy v0.8.52
[INFO] [stderr]     Checking csv-core v0.1.13
[INFO] [stderr]    Compiling snap v1.1.1
[INFO] [stderr]     Checking zlib-rs v0.6.4
[INFO] [stderr]     Checking geo-traits v0.3.0
[INFO] [stderr]     Checking csv v1.4.0
[INFO] [stderr]     Checking indexmap v2.14.0
[INFO] [stderr]     Checking brotli-decompressor v5.0.3
[INFO] [stderr]    Compiling which v4.4.2
[INFO] [stderr]     Checking xattr v1.6.1
[INFO] [stderr]     Checking wkb v0.9.2
[INFO] [stderr]     Checking memmap2 v0.9.11
[INFO] [stderr]     Checking filetime v0.2.29
[INFO] [stderr]     Checking twox-hash v2.1.2
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]     Checking brotli v8.0.4
[INFO] [stderr]     Checking console v0.16.3
[INFO] [stderr]     Checking lz4_flex v0.14.0
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]     Checking tar v0.4.46
[INFO] [stderr]    Compiling seq-macro v0.3.6
[INFO] [stderr]     Checking unit-prefix v0.5.2
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking linflate v0.1.12
[INFO] [stderr]     Checking indicatif v0.18.4
[INFO] [stderr]     Checking regex v1.12.4
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]     Checking rotaryengine v0.1.12
[INFO] [stderr]     Checking parquet-geospatial v59.2.0
[INFO] [stderr]     Checking lbzip2 v0.5.12
[INFO] [stderr]     Checking lgz v0.3.14
[INFO] [stderr]     Checking znippy-zoomies v0.1.25
[INFO] [stderr]     Checking clap v4.6.1
[INFO] [stderr]    Compiling protobuf-parse v3.7.2
[INFO] [stderr]     Checking zstd v0.13.3
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]    Compiling protobuf-codegen v3.7.2
[INFO] [stderr]     Checking arrow-buffer v59.2.0
[INFO] [stderr]     Checking arrow-data v59.2.0
[INFO] [stderr]     Checking arrow-array v59.2.0
[INFO] [stderr]    Compiling osm-katana v0.2.11 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking arrow-select v59.2.0
[INFO] [stderr]     Checking arrow-row v59.2.0
[INFO] [stderr]     Checking arrow-arith v59.2.0
[INFO] [stderr]    Compiling zstd-sys-rs v1.5.19
[INFO] [stderr]     Checking arrow-ord v59.2.0
[INFO] [stderr]     Checking arrow-ipc v59.2.0
[INFO] [stderr]     Checking arrow-string v59.2.0
[INFO] [stderr]     Checking arrow-cast v59.2.0
[INFO] [stderr]     Checking parquet v59.2.0
[INFO] [stderr]     Checking arrow-json v59.2.0
[INFO] [stderr]     Checking arrow-csv v59.2.0
[INFO] [stderr]     Checking arrow v59.2.0
[INFO] [stdout] warning: unused import: `BBOX_COLUMN`
[INFO] [stdout]   --> src/network.rs:77:29
[INFO] [stdout]    |
[INFO] [stdout] 77 | use crate::metadata::{self, BBOX_COLUMN, GeoMeta};
[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/relgeom.rs:983:9
[INFO] [stdout]     |
[INFO] [stdout] 983 |     let mut flush = |ids: &mut Int64Builder,
[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: variable does not need to be mutable
[INFO] [stdout]     --> src/tiles.rs:4264:21
[INFO] [stdout]      |
[INFO] [stdout] 4264 |                 let mut replay = |segs: &[Seg],
[INFO] [stdout]      |                     ----^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `node_count_override` is never read
[INFO] [stdout]     --> src/lib.rs:1091:50
[INFO] [stdout]      |
[INFO] [stdout] 1091 |     let mut node_count_override: Option<usize> = None; // set when nodes written in pass 1
[INFO] [stdout]      |                                                  ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 1275 |         node_count_override = Some(nc);
[INFO] [stdout]      |         ------------------------------ `node_count_override` is overwritten here before the previous value is read
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `way_count_override` is never read
[INFO] [stdout]     --> src/lib.rs:1092:49
[INFO] [stdout]      |
[INFO] [stdout] 1092 |     let mut way_count_override: Option<usize> = None; // set when ways written during pass 2
[INFO] [stdout]      |                                                 ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 1276 |         way_count_override = Some(wc);
[INFO] [stdout]      |         ----------------------------- `way_count_override` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `rel_count_override` is never read
[INFO] [stdout]     --> src/lib.rs:1093:49
[INFO] [stdout]      |
[INFO] [stdout] 1093 |     let mut rel_count_override: Option<usize> = None; // set when rels written during pass 2
[INFO] [stdout]      |                                                 ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 1277 |         rel_count_override = Some(rc);
[INFO] [stdout]      |         ----------------------------- `rel_count_override` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `DpScratch` is more private than the item `generalise_wkb_into`
[INFO] [stdout]    --> src/shared/generalise.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / pub fn generalise_wkb_into(
[INFO] [stdout] 112 | |     wkb: &[u8],
[INFO] [stdout] 113 | |     eps: f64,
[INFO] [stdout] 114 | |     scratch: &mut DpScratch,
[INFO] [stdout] 115 | |     thin: &mut Vec<(f64, f64)>,
[INFO] [stdout] 116 | |     out: &mut Vec<u8>,
[INFO] [stdout] 117 | | ) -> bool {
[INFO] [stdout]     | |_________^ function `generalise_wkb_into` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `DpScratch` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/tiles.rs:760:1
[INFO] [stdout]     |
[INFO] [stdout] 760 | pub(crate) struct DpScratch {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `push` is never used
[INFO] [stdout]    --> src/node_store.rs:347:12
[INFO] [stdout]     |
[INFO] [stdout] 328 | impl CoordFileWriter {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 347 |     pub fn push(&mut self, id: i64, lat: f32, lon: f32) -> Result<()> {
[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 `merge_sorted_chunks` is never used
[INFO] [stdout]     --> src/node_store.rs:1137:8
[INFO] [stdout]      |
[INFO] [stdout] 1137 | pub fn merge_sorted_chunks(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_pass1_mmap` is never used
[INFO] [stdout]    --> src/reader.rs:403:8
[INFO] [stdout]     |
[INFO] [stdout] 403 | pub fn read_pass1_mmap(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `read_pass2_mmap` is never used
[INFO] [stdout]    --> src/reader.rs:474:8
[INFO] [stdout]     |
[INFO] [stdout] 474 | pub fn read_pass2_mmap(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parse_node_coords` is never used
[INFO] [stdout]    --> src/reader.rs:562:4
[INFO] [stdout]     |
[INFO] [stdout] 562 | fn parse_node_coords(bytes: &[u8], clip: Option<&Clip>) -> Vec<(i64, f32, f32)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `kind` is never read
[INFO] [stdout]    --> src/relgeom.rs:325:9
[INFO] [stdout]     |
[INFO] [stdout] 320 |     struct Kept {
[INFO] [stdout]     |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 325 |         kind: RelationKind,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Json` is never constructed
[INFO] [stdout]    --> src/writer.rs:195:5
[INFO] [stdout]     |
[INFO] [stdout] 184 | pub(crate) enum OutputKind {
[INFO] [stdout]     |                 ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 195 |     Json,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `OutputKind` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `json` is never used
[INFO] [stdout]    --> src/writer.rs:259:19
[INFO] [stdout]     |
[INFO] [stdout] 244 | impl PendingOutput {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 259 |     pub(crate) fn json(final_path: &Path) -> anyhow::Result<(Self, fs::File)> {
[INFO] [stdout]     |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `write_ways` is never used
[INFO] [stdout]    --> src/writer.rs:553:8
[INFO] [stdout]     |
[INFO] [stdout] 553 | pub fn write_ways(path: &Path, records: &[WayRecord], compression: &str) -> anyhow::Result<()> {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `writer`, `pending`, and `cols` are never read
[INFO] [stdout]    --> src/writer.rs:673:16
[INFO] [stdout]     |
[INFO] [stdout] 672 | pub struct WayWriter {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] 673 |     pub(crate) writer: ArrowWriter<fs::File>,
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 674 |     pending: PendingOutput,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 675 |     cols: WayColumns,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `with_node_refs`, `push`, `flush`, `take_batch`, and `finish` are never used
[INFO] [stdout]    --> src/writer.rs:679:12
[INFO] [stdout]     |
[INFO] [stdout] 678 | impl WayWriter {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 679 |     pub fn new(path: &Path, compression: &str) -> anyhow::Result<Self> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 683 |     pub fn with_node_refs(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 700 |     pub fn push(&mut self, r: &crate::reader::WayRecord) -> anyhow::Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 708 |     fn flush(&mut self) -> anyhow::Result<()> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 718 |     pub fn take_batch(&mut self) -> anyhow::Result<RecordBatch> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 722 |     pub fn finish(mut self) -> anyhow::Result<()> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]    --> src/writer.rs:730:16
[INFO] [stdout]     |
[INFO] [stdout] 729 | pub struct RelWriter {
[INFO] [stdout]     |            --------- fields in this struct
[INFO] [stdout] 730 |     pub(crate) writer: ArrowWriter<fs::File>,
[INFO] [stdout]     |                ^^^^^^
[INFO] [stdout] 731 |     pending: PendingOutput,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 732 |     schema: Arc<Schema>,
[INFO] [stdout]     |     ^^^^^^
[INFO] [stdout] 733 |     ids: Int64Builder,
[INFO] [stdout]     |     ^^^
[INFO] [stdout] 734 |     geoms: BinaryBuilder,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 735 |     tags: StringBuilder,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 736 |     members: StringBuilder,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 737 |     vers: Int32Builder,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 738 |     min_zooms: UInt8Builder,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 739 |     count: usize,
[INFO] [stdout]     |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `push`, `flush`, `take_batch`, and `finish` are never used
[INFO] [stdout]    --> src/writer.rs:743:12
[INFO] [stdout]     |
[INFO] [stdout] 742 | impl RelWriter {
[INFO] [stdout]     | -------------- associated items in this implementation
[INFO] [stdout] 743 |     pub fn new(path: &Path, compression: &str) -> anyhow::Result<Self> {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 763 |     pub fn push(&mut self, r: &crate::reader::RelationRecord) -> anyhow::Result<()> {
[INFO] [stdout]     |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 778 |     fn flush(&mut self) -> anyhow::Result<()> {
[INFO] [stdout]     |        ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 788 |     pub fn take_batch(&mut self) -> anyhow::Result<RecordBatch> {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 804 |     pub fn finish(mut self) -> anyhow::Result<()> {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]     --> src/writer.rs:1065:12
[INFO] [stdout]      |
[INFO] [stdout] 1064 | impl WayAccumulator {
[INFO] [stdout]      | ------------------- associated function in this implementation
[INFO] [stdout] 1065 |     pub fn new() -> Self {
[INFO] [stdout]      |            ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `parallel_way_writer` is never used
[INFO] [stdout]     --> src/writer.rs:1314:8
[INFO] [stdout]      |
[INFO] [stdout] 1314 | pub fn parallel_way_writer(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `finish` is never used
[INFO] [stdout]     --> src/xml_reader.rs:2919:8
[INFO] [stdout]      |
[INFO] [stdout] 2763 | impl Pass2TypedSink<'_> {
[INFO] [stdout]      | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 2919 |     fn finish(self) -> Result<(usize, usize)> {
[INFO] [stdout]      |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `coords_bbox` is never used
[INFO] [stdout]    --> src/tiles.rs:848:4
[INFO] [stdout]     |
[INFO] [stdout] 848 | fn coords_bbox(coords: &[(f64, f64)]) -> Option<(f64, f64, f64, f64)> {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `way_tiles` is never used
[INFO] [stdout]     --> src/tiles.rs:1199:4
[INFO] [stdout]      |
[INFO] [stdout] 1199 | fn way_tiles(minx: f64, miny: f64, maxx: f64, maxy: f64, z: u8) -> (Vec<(u32, u32)>, bool) {
[INFO] [stdout]      |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `way_tiles_into` is never used
[INFO] [stdout]     --> src/tiles.rs:1212:4
[INFO] [stdout]      |
[INFO] [stdout] 1212 | fn way_tiles_into(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `parquet::file::properties::WriterPropertiesBuilder::set_max_row_group_size`: Use `set_max_row_group_row_count` instead
[INFO] [stdout]     --> src/tiles.rs:6152:18
[INFO] [stdout]      |
[INFO] [stdout] 6152 |                 .set_max_row_group_size(64)
[INFO] [stdout]      |                  ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]   --> benches/clip_containment.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 33 | use std::path::PathBuf;
[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: `std::time::Instant`
[INFO] [stdout]   --> benches/clip_containment.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 | use std::time::Instant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `DEFAULT_NODES` is never used
[INFO] [stdout]   --> benches/clip_containment.rs:38:7
[INFO] [stdout]    |
[INFO] [stdout] 38 | const DEFAULT_NODES: &str = concat!(
[INFO] [stdout]    |       ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `INSIDE` is never used
[INFO] [stdout]   --> benches/clip_containment.rs:47:7
[INFO] [stdout]    |
[INFO] [stdout] 47 | const INSIDE: &[(&str, f64, f64)] = &[
[INFO] [stdout]    |       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `OUTSIDE` is never used
[INFO] [stdout]   --> benches/clip_containment.rs:73:7
[INFO] [stdout]    |
[INFO] [stdout] 73 | const OUTSIDE: &[(&str, f64, f64)] = &[
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `probes_wrong` is never used
[INFO] [stdout]   --> benches/clip_containment.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn probes_wrong(poly: &Polygon) -> (usize, Vec<String>) {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `area` is never used
[INFO] [stdout]    --> benches/clip_containment.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn area(poly: &Polygon) -> f64 {
[INFO] [stdout]     |    ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::path::PathBuf`
[INFO] [stdout]   --> benches/tile_pyramid_parallel.rs:70:5
[INFO] [stdout]    |
[INFO] [stdout] 70 | use std::path::PathBuf;
[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: `std::time::Instant`
[INFO] [stdout]   --> benches/tile_pyramid_parallel.rs:71:5
[INFO] [stdout]    |
[INFO] [stdout] 71 | use std::time::Instant;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `osm_katana::Bounds`
[INFO] [stdout]   --> benches/tile_pyramid_parallel.rs:73:5
[INFO] [stdout]    |
[INFO] [stdout] 73 | use osm_katana::Bounds;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `osm_katana::digest::PyramidFingerprint`
[INFO] [stdout]   --> benches/tile_pyramid_parallel.rs:74:5
[INFO] [stdout]    |
[INFO] [stdout] 74 | use osm_katana::digest::PyramidFingerprint;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `osm_katana::phase_log::RssWatch`
[INFO] [stdout]   --> benches/tile_pyramid_parallel.rs:75:5
[INFO] [stdout]    |
[INFO] [stdout] 75 | use osm_katana::phase_log::RssWatch;
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `TileOptions`, `TileSource`, and `tile_region`
[INFO] [stdout]   --> benches/tile_pyramid_parallel.rs:76:25
[INFO] [stdout]    |
[INFO] [stdout] 76 | use osm_katana::tiles::{TileOptions, TileSource, TileStats, tile_region};
[INFO] [stdout]    |                         ^^^^^^^^^^^  ^^^^^^^^^^             ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Row` is never constructed
[INFO] [stdout]   --> benches/tile_pyramid_parallel.rs:79:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | struct Row {
[INFO] [stdout]    |        ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `arm_rss` is never used
[INFO] [stdout]    --> benches/tile_pyramid_parallel.rs:104:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | impl Row {
[INFO] [stdout]     | -------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 104 |     fn arm_rss(&self) -> u64 {
[INFO] [stdout]     |        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `gib` is never used
[INFO] [stdout]    --> benches/tile_pyramid_parallel.rs:109:4
[INFO] [stdout]     |
[INFO] [stdout] 109 | fn gib(b: u64) -> f64 {
[INFO] [stdout]     |    ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `env_f64` is never used
[INFO] [stdout]    --> benches/tile_pyramid_parallel.rs:113:4
[INFO] [stdout]     |
[INFO] [stdout] 113 | fn env_f64(k: &str, d: f64) -> f64 {
[INFO] [stdout]     |    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `load_avg_1` is never used
[INFO] [stdout]    --> benches/tile_pyramid_parallel.rs:121:4
[INFO] [stdout]     |
[INFO] [stdout] 121 | fn load_avg_1() -> f64 {
[INFO] [stdout]     |    ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `LOAD_CEILING` is never used
[INFO] [stdout]    --> benches/tile_pyramid_parallel.rs:138:7
[INFO] [stdout]     |
[INFO] [stdout] 138 | const LOAD_CEILING: f64 = 0.25;
[INFO] [stdout]     |       ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/relations.rs:1892:13
[INFO] [stdout]      |
[INFO] [stdout] 1892 |         let mut st3 = pbf_enc::StringTable::new();
[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: variable does not need to be mutable
[INFO] [stdout]    --> src/relgeom.rs:983:9
[INFO] [stdout]     |
[INFO] [stdout] 983 |     let mut flush = |ids: &mut Int64Builder,
[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/spatial.rs:2882:48
[INFO] [stdout]      |
[INFO] [stdout] 2882 |         let (mut id, mut g, mut tags, mut ver, mut mz) = (
[INFO] [stdout]      |                                                ----^^
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mz`
[INFO] [stdout]     --> src/spatial.rs:2882:48
[INFO] [stdout]      |
[INFO] [stdout] 2882 |         let (mut id, mut g, mut tags, mut ver, mut mz) = (
[INFO] [stdout]      |                                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mz`
[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/spatial.rs:3239:48
[INFO] [stdout]      |
[INFO] [stdout] 3239 |         let (mut id, mut g, mut tags, mut ver, mut mz) = (
[INFO] [stdout]      |                                                ----^^
[INFO] [stdout]      |                                                |
[INFO] [stdout]      |                                                help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mz`
[INFO] [stdout]     --> src/spatial.rs:3239:48
[INFO] [stdout]      |
[INFO] [stdout] 3239 |         let (mut id, mut g, mut tags, mut ver, mut mz) = (
[INFO] [stdout]      |                                                ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mz`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/tiles.rs:4264:21
[INFO] [stdout]      |
[INFO] [stdout] 4264 |                 let mut replay = |segs: &[Seg],
[INFO] [stdout]      |                     ----^^^^^^
[INFO] [stdout]      |                     |
[INFO] [stdout]      |                     help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `node_count_override` is never read
[INFO] [stdout]     --> src/lib.rs:1091:50
[INFO] [stdout]      |
[INFO] [stdout] 1091 |     let mut node_count_override: Option<usize> = None; // set when nodes written in pass 1
[INFO] [stdout]      |                                                  ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 1275 |         node_count_override = Some(nc);
[INFO] [stdout]      |         ------------------------------ `node_count_override` is overwritten here before the previous value is read
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_assignments)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `way_count_override` is never read
[INFO] [stdout]     --> src/lib.rs:1092:49
[INFO] [stdout]      |
[INFO] [stdout] 1092 |     let mut way_count_override: Option<usize> = None; // set when ways written during pass 2
[INFO] [stdout]      |                                                 ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 1276 |         way_count_override = Some(wc);
[INFO] [stdout]      |         ----------------------------- `way_count_override` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: value assigned to `rel_count_override` is never read
[INFO] [stdout]     --> src/lib.rs:1093:49
[INFO] [stdout]      |
[INFO] [stdout] 1093 |     let mut rel_count_override: Option<usize> = None; // set when rels written during pass 2
[INFO] [stdout]      |                                                 ^^^^ this value is reassigned later and never used
[INFO] [stdout] ...
[INFO] [stdout] 1277 |         rel_count_override = Some(rc);
[INFO] [stdout]      |         ----------------------------- `rel_count_override` is overwritten here before the previous value is read
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `tiles::DpScratch` is more private than the item `generalise_wkb_into`
[INFO] [stdout]    --> src/shared/generalise.rs:111:1
[INFO] [stdout]     |
[INFO] [stdout] 111 | / pub fn generalise_wkb_into(
[INFO] [stdout] 112 | |     wkb: &[u8],
[INFO] [stdout] 113 | |     eps: f64,
[INFO] [stdout] 114 | |     scratch: &mut DpScratch,
[INFO] [stdout] 115 | |     thin: &mut Vec<(f64, f64)>,
[INFO] [stdout] 116 | |     out: &mut Vec<u8>,
[INFO] [stdout] 117 | | ) -> bool {
[INFO] [stdout]     | |_________^ function `generalise_wkb_into` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `tiles::DpScratch` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/tiles.rs:760:1
[INFO] [stdout]     |
[INFO] [stdout] 760 | pub(crate) struct DpScratch {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `merge_sorted_chunks` is never used
[INFO] [stdout]     --> src/node_store.rs:1137:8
[INFO] [stdout]      |
[INFO] [stdout] 1137 | pub fn merge_sorted_chunks(
[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 `parse_node_coords` is never used
[INFO] [stdout]    --> src/reader.rs:562:4
[INFO] [stdout]     |
[INFO] [stdout] 562 | fn parse_node_coords(bytes: &[u8], clip: Option<&Clip>) -> Vec<(i64, f32, f32)> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `kind` is never read
[INFO] [stdout]    --> src/relgeom.rs:325:9
[INFO] [stdout]     |
[INFO] [stdout] 320 |     struct Kept {
[INFO] [stdout]     |            ---- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 325 |         kind: RelationKind,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `json` is never used
[INFO] [stdout]    --> src/writer.rs:259:19
[INFO] [stdout]     |
[INFO] [stdout] 244 | impl PendingOutput {
[INFO] [stdout]     | ------------------ associated function in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 259 |     pub(crate) fn json(final_path: &Path) -> anyhow::Result<(Self, fs::File)> {
[INFO] [stdout]     |                   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `finish` is never used
[INFO] [stdout]     --> src/xml_reader.rs:2919:8
[INFO] [stdout]      |
[INFO] [stdout] 2763 | impl Pass2TypedSink<'_> {
[INFO] [stdout]      | ----------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 2919 |     fn finish(self) -> Result<(usize, usize)> {
[INFO] [stdout]      |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `coords_bbox` is never used
[INFO] [stdout]    --> src/tiles.rs:848:4
[INFO] [stdout]     |
[INFO] [stdout] 848 | fn coords_bbox(coords: &[(f64, f64)]) -> Option<(f64, f64, f64, f64)> {
[INFO] [stdout]     |    ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 20s
[INFO] running `Command { std: "docker" "inspect" "5efc6f6125636b79fabddae6b88e4c128da5499aaf91160efd2047ea66c9d866", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5efc6f6125636b79fabddae6b88e4c128da5499aaf91160efd2047ea66c9d866", kill_on_drop: false }`
[INFO] [stdout] 5efc6f6125636b79fabddae6b88e4c128da5499aaf91160efd2047ea66c9d866
