[INFO] fetching crate xs_h3 0.2.0...
[INFO] testing xs_h3-0.2.0 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate xs_h3 0.2.0 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate xs_h3 0.2.0
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate xs_h3 0.2.0
[INFO] tweaked toml for crates.io crate xs_h3 0.2.0 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate xs_h3 0.2.0 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate xs_h3 0.2.0 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.100.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-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] ea820791a713d1f59ba88b543614aa34d6a2fc5ae722a1cccfe22043e6ac515a
[INFO] running `Command { std: "docker" "start" "ea820791a713d1f59ba88b543614aa34d6a2fc5ae722a1cccfe22043e6ac515a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ea820791a713d1f59ba88b543614aa34d6a2fc5ae722a1cccfe22043e6ac515a", 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" "ea820791a713d1f59ba88b543614aa34d6a2fc5ae722a1cccfe22043e6ac515a" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ea820791a713d1f59ba88b543614aa34d6a2fc5ae722a1cccfe22043e6ac515a", 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" "ea820791a713d1f59ba88b543614aa34d6a2fc5ae722a1cccfe22043e6ac515a" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling unicode-ident v1.0.18
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling serde_repr v0.1.20
[INFO] [stderr]    Compiling xs_h3 v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `M_ONETHIRD` and `M_SQRT7`
[INFO] [stdout]  --> src/coords/ijk.rs:3:47
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::constants::{EPSILON, M_ONESEVENTH, M_ONETHIRD, M_RSIN60, M_SQRT3_2, M_SQRT7};
[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: `crate::math::extensions::_ipow`
[INFO] [stdout]  --> src/coords/ijk.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::math::extensions::_ipow; // For _downAp* later, if needed here or used elsewhere
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `_h3_leading_non_zero_digit`
[INFO] [stdout]  --> src/hierarchy/parent_child.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 |   _h3_leading_non_zero_digit, get_index_digit, get_resolution, is_pentagon, set_index_digit, set_resolution,
[INFO] [stdout]   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IterCellsChildren`
[INFO] [stdout]  --> src/hierarchy/parent_child.rs:9:59
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::iterators::{iter_init_parent, iter_step_child, IterCellsChildren}; // For cellToChildren
[INFO] [stdout]   |                                                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_H3_RES`
[INFO] [stdout]  --> src/measures.rs:3:41
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::constants::{EARTH_RADIUS_KM, MAX_H3_RES};
[INFO] [stdout]   |                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CellBoundary` and `LatLng`
[INFO] [stdout]  --> src/measures.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::types::{CellBoundary, H3Error, H3Index, LatLng}; // Helper for spherical polygon area
[INFO] [stdout]   |                    ^^^^^^^^^^^^                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EPSILON_RAD`, `M_2PI`, and `M_PI`
[INFO] [stdout]  --> src/polygon.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::constants::{EPSILON_RAD, M_2PI, M_PI}; // DBL_EPSILON is from C float.h, Rust f64::EPSILON is different
[INFO] [stdout]   |                        ^^^^^^^^^^^  ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `constrain_lng`
[INFO] [stdout]  --> src/polygon.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::latlng::{constrain_lng, normalize_lng_for_comparison}; use crate::math::vec3d::_geo_to_vec3d;
[INFO] [stdout]   |                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LatLng`
[INFO] [stdout]   --> src/regions/polyfill.rs:17:73
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::types::{BBox, ContainmentMode, GeoPolygon, H3Error, H3Index, LatLng, H3_NULL};
[INFO] [stdout]    |                                                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_base_cell`
[INFO] [stdout]  --> src/regions/to_polygon.rs:8:23
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::h3_index::{get_base_cell, get_resolution};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CoordIJK`, `GeoPolygon`, and `Vec2d`
[INFO] [stdout]   --> src/regions/to_polygon.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::types::{CellBoundary, CoordIJK, FaceIJK, GeoLoop, GeoPolygon, H3Error, H3Index, LatLng, Vec2d};
[INFO] [stdout]    |                                  ^^^^^^^^                    ^^^^^^^^^^                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/regions/to_polygon.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::collections::HashMap; // Might be useful for _hashVertex alternative
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::i32`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/coords/ijk.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::i32; // For i32::MAX/MIN for overflow checks
[INFO] [stdout]   |          ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::INFINITY`: replaced by the `INFINITY` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:166:64
[INFO] [stdout]     |
[INFO] [stdout] 166 |                          else if coslng_numerator > 0.0 { f64::INFINITY } 
[INFO] [stdout]     |                                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::NEG_INFINITY`: replaced by the `NEG_INFINITY` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:167:38
[INFO] [stdout]     |
[INFO] [stdout] 167 |                          else { f64::NEG_INFINITY };
[INFO] [stdout]     |                                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec2d.rs:51:30
[INFO] [stdout]    |
[INFO] [stdout] 51 |   (v1.x - v2.x).abs() < f64::EPSILON && (v1.y - v2.y).abs() < f64::EPSILON
[INFO] [stdout]    |                              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec2d.rs:51:68
[INFO] [stdout]    |
[INFO] [stdout] 51 |   (v1.x - v2.x).abs() < f64::EPSILON && (v1.y - v2.y).abs() < f64::EPSILON
[INFO] [stdout]    |                                                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::f64::EPSILON as MACHINE_EPSILON_F64; // For DBL_MAX
[INFO] [stdout]    |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:62:19
[INFO] [stdout]    |
[INFO] [stdout] 62 |       lat += f64::EPSILON * 10.0; // Small nudge north
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:87:36
[INFO] [stdout]    |
[INFO] [stdout] 87 |     if (p1_lng - lng).abs() < f64::EPSILON || (p2_lng - lng).abs() < f64::EPSILON {
[INFO] [stdout]    |                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:87:75
[INFO] [stdout]    |
[INFO] [stdout] 87 |     if (p1_lng - lng).abs() < f64::EPSILON || (p2_lng - lng).abs() < f64::EPSILON {
[INFO] [stdout]    |                                                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:88:19
[INFO] [stdout]    |
[INFO] [stdout] 88 |       lng -= f64::EPSILON * 10.0;
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/polygon.rs:118:37
[INFO] [stdout]     |
[INFO] [stdout] 118 |     if (a.lat - b.lat).abs() < f64::EPSILON && (lat - a.lat).abs() < f64::EPSILON {
[INFO] [stdout]     |                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/polygon.rs:118:75
[INFO] [stdout]     |
[INFO] [stdout] 118 |     if (a.lat - b.lat).abs() < f64::EPSILON && (lat - a.lat).abs() < f64::EPSILON {
[INFO] [stdout]     |                                                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/polygon.rs:125:37
[INFO] [stdout]     |
[INFO] [stdout] 125 |     if (b.lat - a.lat).abs() < f64::EPSILON {
[INFO] [stdout]     |                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/polygon.rs:234:20
[INFO] [stdout]     |
[INFO] [stdout] 234 |   if denom.abs() < MACHINE_EPSILON_F64 {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]    --> src/coords/ijk.rs:250:1
[INFO] [stdout]     |
[INFO] [stdout] 250 | #[inline]
[INFO] [stdout]     | ^^^^^^^^^ help: remove this attribute
[INFO] [stdout]     |
[INFO] [stdout] note: attribute also specified here
[INFO] [stdout]    --> src/coords/ijk.rs:249:1
[INFO] [stdout]     |
[INFO] [stdout] 249 | #[inline]
[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: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `original_digit_at_r`
[INFO] [stdout]   --> src/hierarchy/parent_child.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     let original_digit_at_r = get_index_digit(parent_h, r_digit_to_invalidate);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original_digit_at_r`
[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/polygon.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     let mut p1_lng = normalize_lng_for_comparison(
[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/polygon.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut p2_lng = normalize_lng_for_comparison(
[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/regions/to_polygon.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let mut current_opt = &mut self.buckets[index];
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current_opt`
[INFO] [stdout]   --> src/regions/to_polygon.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let mut current_opt = &mut self.buckets[index];
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_opt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/regions/to_polygon.rs:373:7
[INFO] [stdout]     |
[INFO] [stdout] 373 |   for mut hole_info in hole_candidates {
[INFO] [stdout]     |       ----^^^^^^^^^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> src/traversal/neighbors.rs:351:7
[INFO] [stdout]     |
[INFO] [stdout] 351 |   let result = dir != Direction::InvalidDigit;
[INFO] [stdout]     |       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bbox_center` is never used
[INFO] [stdout]   --> src/bbox.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub(crate) fn bbox_center(bbox: &BBox, center: &mut LatLng) {
[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 `bbox_equals` is never used
[INFO] [stdout]    --> src/bbox.rs:176:15
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub(crate) fn bbox_equals(b1: &BBox, b2: &BBox) -> bool {
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bbox_hex_estimate` is never used
[INFO] [stdout]    --> src/bbox.rs:221:15
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub(crate) fn bbox_hex_estimate(bbox: &BBox, res: i32) -> Result<i64, H3Error> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `line_hex_estimate` is never used
[INFO] [stdout]    --> src/bbox.rs:273:15
[INFO] [stdout]     |
[INFO] [stdout] 273 | pub(crate) fn line_hex_estimate(origin: &LatLng, destination: &LatLng, res: i32) -> Result<i64, H3Error> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `h3_lround` is never used
[INFO] [stdout]    --> src/coords/ijk.rs:377:4
[INFO] [stdout]     |
[INFO] [stdout] 377 | fn h3_lround(val: f64) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `constrain_lat` is never used
[INFO] [stdout]   --> src/latlng.rs:60:15
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub(crate) fn constrain_lat(lat: f64) -> f64 {
[INFO] [stdout]    |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PENTAGON_ROTATIONS_REVERSE` is never used
[INFO] [stdout]   --> src/local_ij.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | static PENTAGON_ROTATIONS_REVERSE: [[i32; 7]; 7] = [
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_clockwise_geoloop` is never used
[INFO] [stdout]    --> src/polygon.rs:216:15
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub(crate) fn is_clockwise_geoloop(geoloop: &GeoLoop, bbox: &BBox) -> bool {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `res` is never read
[INFO] [stdout]   --> src/regions/to_polygon.rs:46:3
[INFO] [stdout]    |
[INFO] [stdout] 42 | struct VertexGraph {
[INFO] [stdout]    |        ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 46 |   res: i32, // Resolution of cells, useful for precision in hashing/equality
[INFO] [stdout]    |   ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VertexGraph` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bbox` is never read
[INFO] [stdout]    --> src/regions/to_polygon.rs:284:3
[INFO] [stdout]     |
[INFO] [stdout] 282 | struct RawLoopInfo {
[INFO] [stdout]     |        ----------- field in this struct
[INFO] [stdout] 283 |   verts: Vec<LatLng>,
[INFO] [stdout] 284 |   bbox: BBox,
[INFO] [stdout]     |   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `baseCellNumToCell` should have a snake case name
[INFO] [stdout]    --> src/base_cells.rs:791:15
[INFO] [stdout]     |
[INFO] [stdout] 791 | pub(crate) fn baseCellNumToCell(base_cell_num: i32) -> H3Index {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `base_cell_num_to_cell`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 6.94s
[INFO] running `Command { std: "docker" "inspect" "ea820791a713d1f59ba88b543614aa34d6a2fc5ae722a1cccfe22043e6ac515a", 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" "ea820791a713d1f59ba88b543614aa34d6a2fc5ae722a1cccfe22043e6ac515a" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling autocfg v1.4.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling rayon-core v1.12.1
[INFO] [stderr]    Compiling cfg-if v1.0.0
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]    Compiling regex-syntax v0.8.5
[INFO] [stderr]    Compiling clap_lex v0.7.4
[INFO] [stderr]    Compiling memchr v2.7.4
[INFO] [stderr]    Compiling itoa v1.0.15
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling ryu v1.0.20
[INFO] [stderr]    Compiling anstyle v1.0.10
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling half v2.6.0
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling once_cell v1.21.3
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling clap_builder v4.5.38
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling is-terminal v0.4.16
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling regex-automata v0.4.9
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling rayon v1.10.0
[INFO] [stderr]    Compiling clap v4.5.38
[INFO] [stderr]    Compiling regex v1.11.1
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling xs_h3 v0.2.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused imports: `M_ONETHIRD` and `M_SQRT7`
[INFO] [stdout]  --> src/coords/ijk.rs:3:47
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::constants::{EPSILON, M_ONESEVENTH, M_ONETHIRD, M_RSIN60, M_SQRT3_2, M_SQRT7};
[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: `crate::math::extensions::_ipow`
[INFO] [stdout]  --> src/coords/ijk.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::math::extensions::_ipow; // For _downAp* later, if needed here or used elsewhere
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `_h3_leading_non_zero_digit`
[INFO] [stdout]  --> src/hierarchy/parent_child.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 |   _h3_leading_non_zero_digit, get_index_digit, get_resolution, is_pentagon, set_index_digit, set_resolution,
[INFO] [stdout]   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IterCellsChildren`
[INFO] [stdout]  --> src/hierarchy/parent_child.rs:9:59
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::iterators::{iter_init_parent, iter_step_child, IterCellsChildren}; // For cellToChildren
[INFO] [stdout]   |                                                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_H3_RES`
[INFO] [stdout]  --> src/measures.rs:3:41
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::constants::{EARTH_RADIUS_KM, MAX_H3_RES};
[INFO] [stdout]   |                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CellBoundary` and `LatLng`
[INFO] [stdout]  --> src/measures.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::types::{CellBoundary, H3Error, H3Index, LatLng}; // Helper for spherical polygon area
[INFO] [stdout]   |                    ^^^^^^^^^^^^                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EPSILON_RAD`, `M_2PI`, and `M_PI`
[INFO] [stdout]  --> src/polygon.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::constants::{EPSILON_RAD, M_2PI, M_PI}; // DBL_EPSILON is from C float.h, Rust f64::EPSILON is different
[INFO] [stdout]   |                        ^^^^^^^^^^^  ^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `constrain_lng`
[INFO] [stdout]  --> src/polygon.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::latlng::{constrain_lng, normalize_lng_for_comparison}; use crate::math::vec3d::_geo_to_vec3d;
[INFO] [stdout]   |                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LatLng`
[INFO] [stdout]   --> src/regions/polyfill.rs:17:73
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::types::{BBox, ContainmentMode, GeoPolygon, H3Error, H3Index, LatLng, H3_NULL};
[INFO] [stdout]    |                                                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_base_cell`
[INFO] [stdout]  --> src/regions/to_polygon.rs:8:23
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::h3_index::{get_base_cell, get_resolution};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CoordIJK`, `GeoPolygon`, and `Vec2d`
[INFO] [stdout]   --> src/regions/to_polygon.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::types::{CellBoundary, CoordIJK, FaceIJK, GeoLoop, GeoPolygon, H3Error, H3Index, LatLng, Vec2d};
[INFO] [stdout]    |                                  ^^^^^^^^                    ^^^^^^^^^^                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/regions/to_polygon.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::collections::HashMap; // Might be useful for _hashVertex alternative
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::i32`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/coords/ijk.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::i32; // For i32::MAX/MIN for overflow checks
[INFO] [stdout]   |          ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::INFINITY`: replaced by the `INFINITY` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:166:64
[INFO] [stdout]     |
[INFO] [stdout] 166 |                          else if coslng_numerator > 0.0 { f64::INFINITY } 
[INFO] [stdout]     |                                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::NEG_INFINITY`: replaced by the `NEG_INFINITY` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:167:38
[INFO] [stdout]     |
[INFO] [stdout] 167 |                          else { f64::NEG_INFINITY };
[INFO] [stdout]     |                                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec2d.rs:51:30
[INFO] [stdout]    |
[INFO] [stdout] 51 |   (v1.x - v2.x).abs() < f64::EPSILON && (v1.y - v2.y).abs() < f64::EPSILON
[INFO] [stdout]    |                              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec2d.rs:51:68
[INFO] [stdout]    |
[INFO] [stdout] 51 |   (v1.x - v2.x).abs() < f64::EPSILON && (v1.y - v2.y).abs() < f64::EPSILON
[INFO] [stdout]    |                                                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::f64::EPSILON as MACHINE_EPSILON_F64; // For DBL_MAX
[INFO] [stdout]    |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:62:19
[INFO] [stdout]    |
[INFO] [stdout] 62 |       lat += f64::EPSILON * 10.0; // Small nudge north
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:87:36
[INFO] [stdout]    |
[INFO] [stdout] 87 |     if (p1_lng - lng).abs() < f64::EPSILON || (p2_lng - lng).abs() < f64::EPSILON {
[INFO] [stdout]    |                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:87:75
[INFO] [stdout]    |
[INFO] [stdout] 87 |     if (p1_lng - lng).abs() < f64::EPSILON || (p2_lng - lng).abs() < f64::EPSILON {
[INFO] [stdout]    |                                                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:88:19
[INFO] [stdout]    |
[INFO] [stdout] 88 |       lng -= f64::EPSILON * 10.0;
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/polygon.rs:118:37
[INFO] [stdout]     |
[INFO] [stdout] 118 |     if (a.lat - b.lat).abs() < f64::EPSILON && (lat - a.lat).abs() < f64::EPSILON {
[INFO] [stdout]     |                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/polygon.rs:118:75
[INFO] [stdout]     |
[INFO] [stdout] 118 |     if (a.lat - b.lat).abs() < f64::EPSILON && (lat - a.lat).abs() < f64::EPSILON {
[INFO] [stdout]     |                                                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/polygon.rs:125:37
[INFO] [stdout]     |
[INFO] [stdout] 125 |     if (b.lat - a.lat).abs() < f64::EPSILON {
[INFO] [stdout]     |                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/polygon.rs:234:20
[INFO] [stdout]     |
[INFO] [stdout] 234 |   if denom.abs() < MACHINE_EPSILON_F64 {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]    --> src/coords/ijk.rs:250:1
[INFO] [stdout]     |
[INFO] [stdout] 250 | #[inline]
[INFO] [stdout]     | ^^^^^^^^^ help: remove this attribute
[INFO] [stdout]     |
[INFO] [stdout] note: attribute also specified here
[INFO] [stdout]    --> src/coords/ijk.rs:249:1
[INFO] [stdout]     |
[INFO] [stdout] 249 | #[inline]
[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: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `original_digit_at_r`
[INFO] [stdout]   --> src/hierarchy/parent_child.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     let original_digit_at_r = get_index_digit(parent_h, r_digit_to_invalidate);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original_digit_at_r`
[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/polygon.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     let mut p1_lng = normalize_lng_for_comparison(
[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/polygon.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut p2_lng = normalize_lng_for_comparison(
[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/regions/to_polygon.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let mut current_opt = &mut self.buckets[index];
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current_opt`
[INFO] [stdout]   --> src/regions/to_polygon.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let mut current_opt = &mut self.buckets[index];
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_opt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/regions/to_polygon.rs:373:7
[INFO] [stdout]     |
[INFO] [stdout] 373 |   for mut hole_info in hole_candidates {
[INFO] [stdout]     |       ----^^^^^^^^^
[INFO] [stdout]     |       |
[INFO] [stdout]     |       help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> src/traversal/neighbors.rs:351:7
[INFO] [stdout]     |
[INFO] [stdout] 351 |   let result = dir != Direction::InvalidDigit;
[INFO] [stdout]     |       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bbox_center` is never used
[INFO] [stdout]   --> src/bbox.rs:32:15
[INFO] [stdout]    |
[INFO] [stdout] 32 | pub(crate) fn bbox_center(bbox: &BBox, center: &mut LatLng) {
[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 `bbox_equals` is never used
[INFO] [stdout]    --> src/bbox.rs:176:15
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub(crate) fn bbox_equals(b1: &BBox, b2: &BBox) -> bool {
[INFO] [stdout]     |               ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bbox_hex_estimate` is never used
[INFO] [stdout]    --> src/bbox.rs:221:15
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub(crate) fn bbox_hex_estimate(bbox: &BBox, res: i32) -> Result<i64, H3Error> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `line_hex_estimate` is never used
[INFO] [stdout]    --> src/bbox.rs:273:15
[INFO] [stdout]     |
[INFO] [stdout] 273 | pub(crate) fn line_hex_estimate(origin: &LatLng, destination: &LatLng, res: i32) -> Result<i64, H3Error> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `h3_lround` is never used
[INFO] [stdout]    --> src/coords/ijk.rs:377:4
[INFO] [stdout]     |
[INFO] [stdout] 377 | fn h3_lround(val: f64) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `constrain_lat` is never used
[INFO] [stdout]   --> src/latlng.rs:60:15
[INFO] [stdout]    |
[INFO] [stdout] 60 | pub(crate) fn constrain_lat(lat: f64) -> f64 {
[INFO] [stdout]    |               ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PENTAGON_ROTATIONS_REVERSE` is never used
[INFO] [stdout]   --> src/local_ij.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | static PENTAGON_ROTATIONS_REVERSE: [[i32; 7]; 7] = [
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `is_clockwise_geoloop` is never used
[INFO] [stdout]    --> src/polygon.rs:216:15
[INFO] [stdout]     |
[INFO] [stdout] 216 | pub(crate) fn is_clockwise_geoloop(geoloop: &GeoLoop, bbox: &BBox) -> bool {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `res` is never read
[INFO] [stdout]   --> src/regions/to_polygon.rs:46:3
[INFO] [stdout]    |
[INFO] [stdout] 42 | struct VertexGraph {
[INFO] [stdout]    |        ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 46 |   res: i32, // Resolution of cells, useful for precision in hashing/equality
[INFO] [stdout]    |   ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VertexGraph` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bbox` is never read
[INFO] [stdout]    --> src/regions/to_polygon.rs:284:3
[INFO] [stdout]     |
[INFO] [stdout] 282 | struct RawLoopInfo {
[INFO] [stdout]     |        ----------- field in this struct
[INFO] [stdout] 283 |   verts: Vec<LatLng>,
[INFO] [stdout] 284 |   bbox: BBox,
[INFO] [stdout]     |   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `baseCellNumToCell` should have a snake case name
[INFO] [stdout]    --> src/base_cells.rs:791:15
[INFO] [stdout]     |
[INFO] [stdout] 791 | pub(crate) fn baseCellNumToCell(base_cell_num: i32) -> H3Index {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `base_cell_num_to_cell`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stdout] warning: unused imports: `get_base_cell_number`, `get_resolution`, `h3_to_string_alloc`, `is_pentagon`, and `rads_to_degs`
[INFO] [stdout]  --> examples/basic_indexing.rs:2:52
[INFO] [stdout]   |
[INFO] [stdout] 2 |   cell_to_boundary, cell_to_lat_lng, degs_to_rads, get_base_cell_number, get_resolution, h3_to_string_alloc,
[INFO] [stdout]   |                                                    ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 3 |   is_pentagon, is_valid_cell, lat_lng_to_cell, rads_to_degs, H3Error, H3Index, LatLng,
[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 imports: `H3Index` and `h3_to_string_alloc`
[INFO] [stdout]  --> examples/cell_traversal.rs:4:91
[INFO] [stdout]   |
[INFO] [stdout] 4 |   are_neighbor_cells, degs_to_rads, grid_distance, grid_path_cells, grid_path_cells_size, h3_to_string_alloc,
[INFO] [stdout]   |                                                                                           ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 5 |   lat_lng_to_cell, H3Error, H3Index, LatLng, H3_NULL,
[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: `h3_to_string_alloc`
[INFO] [stdout]  --> examples/cell_measures.rs:5:3
[INFO] [stdout]   |
[INFO] [stdout] 5 |   h3_to_string_alloc, lat_lng_to_cell, H3Error, LatLng,
[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: `cube_to_ijk`
[INFO] [stdout]  --> tests/grid_path_internal_tests.rs:1:42
[INFO] [stdout]   |
[INFO] [stdout] 1 | use xs_h3::coords::ijk::{_ijk_normalize, cube_to_ijk, ijk_to_cube}; // Make cube_to_ijk pub(crate) if not already
[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 imports: `H3Index` and `h3_to_string_alloc`
[INFO] [stdout]  --> examples/k_ring_example.rs:4:43
[INFO] [stdout]   |
[INFO] [stdout] 4 |   degs_to_rads, grid_disk, grid_distance, h3_to_string_alloc, lat_lng_to_cell, max_grid_disk_size, H3Error, H3Index,
[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: `xs_h3::indexing::lat_lng_to_cell`
[INFO] [stdout]  --> tests/grid_path_internal_tests.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use xs_h3::indexing::lat_lng_to_cell;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `grid_path_cells_size` and `grid_path_cells`
[INFO] [stdout]  --> tests/grid_path_internal_tests.rs:5:35
[INFO] [stdout]   |
[INFO] [stdout] 5 | use xs_h3::traversal::grid_path::{grid_path_cells, grid_path_cells_size}; // Assuming grid_distance is pub
[INFO] [stdout]   |                                   ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LatLng`
[INFO] [stdout]  --> tests/grid_path_internal_tests.rs:6:39
[INFO] [stdout]   |
[INFO] [stdout] 6 | use xs_h3::types::{CoordIJK, H3Index, LatLng, H3_NULL};
[INFO] [stdout]   |                                       ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `cell_center`
[INFO] [stdout]   --> examples/basic_indexing.rs:42:7
[INFO] [stdout]    |
[INFO] [stdout] 42 |   let cell_center: LatLng = cell_to_lat_lng(cell)?;
[INFO] [stdout]    |       ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cell_center`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> examples/basic_indexing.rs:52:7
[INFO] [stdout]    |
[INFO] [stdout] 52 |   for i in 0..boundary.num_verts {
[INFO] [stdout]    |       ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `center_child`
[INFO] [stdout]   --> examples/basic_indexing.rs:75:7
[INFO] [stdout]    |
[INFO] [stdout] 75 |   let center_child = xs_h3::cell_to_center_child(parent_cell, center_child_res)?;
[INFO] [stdout]    |       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_center_child`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `are_neighbors`
[INFO] [stdout]   --> examples/cell_traversal.rs:36:7
[INFO] [stdout]    |
[INFO] [stdout] 36 |   let are_neighbors = are_neighbor_cells(cell1, cell2)?;
[INFO] [stdout]    |       ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_are_neighbors`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `avg_area_km2`
[INFO] [stdout]   --> examples/cell_measures.rs:21:9
[INFO] [stdout]    |
[INFO] [stdout] 21 |     let avg_area_km2 = get_hexagon_area_avg_km2(res)?;
[INFO] [stdout]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_avg_area_km2`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `avg_edge_km`
[INFO] [stdout]   --> examples/cell_measures.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     let avg_edge_km = get_hexagon_edge_length_avg_km(res)?;
[INFO] [stdout]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_avg_edge_km`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area_km2`
[INFO] [stdout]   --> examples/cell_measures.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 30 |     let area_km2 = cell_area_km2(cell)?;
[INFO] [stdout]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_area_km2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `area_m2`
[INFO] [stdout]   --> examples/cell_measures.rs:31:9
[INFO] [stdout]    |
[INFO] [stdout] 31 |     let area_m2 = cell_area_m2(cell)?;
[INFO] [stdout]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_area_m2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> examples/cell_traversal.rs:51:10
[INFO] [stdout]    |
[INFO] [stdout] 51 |     for (i, path_cell) in path_cells.iter().enumerate() {
[INFO] [stdout]    |          ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `h3_to_string_alloc`
[INFO] [stdout]  --> examples/uncompact_compact.rs:3:59
[INFO] [stdout]   |
[INFO] [stdout] 3 |   cell_to_children, cell_to_children_size, compact_cells, h3_to_string_alloc, uncompact_cells, uncompact_cells_size,
[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: `H3Index`
[INFO] [stdout]  --> examples/polyfill_example.rs:4:109
[INFO] [stdout]   |
[INFO] [stdout] 4 |   degs_to_rads, max_polygon_to_cells_size, polygon_to_cells, ContainmentMode, GeoLoop, GeoPolygon, H3Error, H3Index,
[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 variable: `distance`
[INFO] [stdout]   --> examples/k_ring_example.rs:42:11
[INFO] [stdout]    |
[INFO] [stdout] 42 |       let distance = grid_distance(origin_cell, *cell_h3)?;
[INFO] [stdout]    |           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_distance`
[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]   --> examples/uncompact_compact.rs:81:7
[INFO] [stdout]    |
[INFO] [stdout] 81 |   let mut match_count = 0;
[INFO] [stdout]    |       ----^^^^^^^^^^^
[INFO] [stdout]    |       |
[INFO] [stdout]    |       help: remove this `mut`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> examples/uncompact_compact.rs:30:7
[INFO] [stdout]    |
[INFO] [stdout] 30 |   for i in 0..std::cmp::min(5, num_children) {
[INFO] [stdout]    |       ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> examples/uncompact_compact.rs:46:7
[INFO] [stdout]    |
[INFO] [stdout] 46 |   for i in 0..num_compacted {
[INFO] [stdout]    |       ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `match_count`
[INFO] [stdout]   --> examples/uncompact_compact.rs:81:7
[INFO] [stdout]    |
[INFO] [stdout] 81 |   let mut match_count = 0;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_match_count`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> examples/uncompact_compact.rs:82:7
[INFO] [stdout]    |
[INFO] [stdout] 82 |   for i in 0..std::cmp::min(5, uncompacted_size) {
[INFO] [stdout]    |       ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]   --> examples/polyfill_example.rs:68:8
[INFO] [stdout]    |
[INFO] [stdout] 68 |   for (i, cell_h3) in polyfill_cells.iter().enumerate() {
[INFO] [stdout]    |        ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `_set_geo_degs`
[INFO] [stdout]    --> src/bbox.rs:447:23
[INFO] [stdout]     |
[INFO] [stdout] 447 |   use crate::latlng::{_set_geo_degs, geo_almost_equal};
[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 imports: `M_ONETHIRD` and `M_SQRT7`
[INFO] [stdout]  --> src/coords/ijk.rs:3:47
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::constants::{EPSILON, M_ONESEVENTH, M_ONETHIRD, M_RSIN60, M_SQRT3_2, M_SQRT7};
[INFO] [stdout]   |                                               ^^^^^^^^^^                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::math::extensions::_ipow`
[INFO] [stdout]  --> src/coords/ijk.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::math::extensions::_ipow; // For _downAp* later, if needed here or used elsewhere
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `_down_ap7` and `_down_ap7r`
[INFO] [stdout]     --> src/h3_index/mod.rs:1148:28
[INFO] [stdout]      |
[INFO] [stdout] 1148 |   use crate::coords::ijk::{_down_ap7, _down_ap7r, _up_ap7_checked, _up_ap7r_checked}; // Assuming pub(crate)
[INFO] [stdout]      |                            ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `_h3_leading_non_zero_digit`
[INFO] [stdout]  --> src/hierarchy/parent_child.rs:6:3
[INFO] [stdout]   |
[INFO] [stdout] 6 |   _h3_leading_non_zero_digit, get_index_digit, get_resolution, is_pentagon, set_index_digit, set_resolution,
[INFO] [stdout]   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `IterCellsChildren`
[INFO] [stdout]  --> src/hierarchy/parent_child.rs:9:59
[INFO] [stdout]   |
[INFO] [stdout] 9 | use crate::iterators::{iter_init_parent, iter_step_child, IterCellsChildren}; // For cellToChildren
[INFO] [stdout]   |                                                           ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::H3_NULL`
[INFO] [stdout]   --> src/indexing/to_h3.rs:51:7
[INFO] [stdout]    |
[INFO] [stdout] 51 |   use crate::types::H3_NULL;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `MAX_H3_RES`
[INFO] [stdout]  --> src/measures.rs:3:41
[INFO] [stdout]   |
[INFO] [stdout] 3 | use crate::constants::{EARTH_RADIUS_KM, MAX_H3_RES};
[INFO] [stdout]   |                                         ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CellBoundary` and `LatLng`
[INFO] [stdout]  --> src/measures.rs:7:20
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::types::{CellBoundary, H3Error, H3Index, LatLng}; // Helper for spherical polygon area
[INFO] [stdout]   |                    ^^^^^^^^^^^^                    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::indexing::lat_lng_to_cell`
[INFO] [stdout]   --> src/measures.rs:68:7
[INFO] [stdout]    |
[INFO] [stdout] 68 |   use crate::indexing::lat_lng_to_cell;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::types::LatLng`
[INFO] [stdout]   --> src/measures.rs:69:7
[INFO] [stdout]    |
[INFO] [stdout] 69 |   use crate::types::LatLng;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::f64::consts::PI`
[INFO] [stdout]   --> src/measures.rs:70:7
[INFO] [stdout]    |
[INFO] [stdout] 70 |   use std::f64::consts::PI;
[INFO] [stdout]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `EPSILON_RAD` and `M_2PI`
[INFO] [stdout]  --> src/polygon.rs:6:24
[INFO] [stdout]   |
[INFO] [stdout] 6 | use crate::constants::{EPSILON_RAD, M_2PI, M_PI}; // DBL_EPSILON is from C float.h, Rust f64::EPSILON is different
[INFO] [stdout]   |                        ^^^^^^^^^^^  ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `constrain_lng`
[INFO] [stdout]  --> src/polygon.rs:7:21
[INFO] [stdout]   |
[INFO] [stdout] 7 | use crate::latlng::{constrain_lng, normalize_lng_for_comparison}; use crate::math::vec3d::_geo_to_vec3d;
[INFO] [stdout]   |                     ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `LatLng`
[INFO] [stdout]   --> src/regions/polyfill.rs:17:73
[INFO] [stdout]    |
[INFO] [stdout] 17 | use crate::types::{BBox, ContainmentMode, GeoPolygon, H3Error, H3Index, LatLng, H3_NULL};
[INFO] [stdout]    |                                                                         ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `get_base_cell`
[INFO] [stdout]  --> src/regions/to_polygon.rs:8:23
[INFO] [stdout]   |
[INFO] [stdout] 8 | use crate::h3_index::{get_base_cell, get_resolution};
[INFO] [stdout]   |                       ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `CoordIJK`, `GeoPolygon`, and `Vec2d`
[INFO] [stdout]   --> src/regions/to_polygon.rs:10:34
[INFO] [stdout]    |
[INFO] [stdout] 10 | use crate::types::{CellBoundary, CoordIJK, FaceIJK, GeoLoop, GeoPolygon, H3Error, H3Index, LatLng, Vec2d};
[INFO] [stdout]    |                                  ^^^^^^^^                    ^^^^^^^^^^                            ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::HashMap`
[INFO] [stdout]   --> src/regions/to_polygon.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 16 | use std::collections::HashMap; // Might be useful for _hashVertex alternative
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated module `std::i32`: all constants in this module replaced by associated constants on the type
[INFO] [stdout]  --> src/coords/ijk.rs:8:10
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::i32; // For i32::MAX/MIN for overflow checks
[INFO] [stdout]   |          ^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:789:15
[INFO] [stdout]     |
[INFO] [stdout] 789 |       i: i32::MAX,
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:798:17
[INFO] [stdout]     |
[INFO] [stdout] 798 |         i: i32::MAX,
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:815:15
[INFO] [stdout]     |
[INFO] [stdout] 815 |       i: i32::MIN,
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:824:17
[INFO] [stdout]     |
[INFO] [stdout] 824 |         i: i32::MIN,
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:843:15
[INFO] [stdout]     |
[INFO] [stdout] 843 |       i: i32::MAX / 2 + 1,
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:851:17
[INFO] [stdout]     |
[INFO] [stdout] 851 |         i: i32::MAX,
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:885:15
[INFO] [stdout]     |
[INFO] [stdout] 885 |       i: i32::MIN,
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:894:17
[INFO] [stdout]     |
[INFO] [stdout] 894 |         j: i32::MAX,
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:895:17
[INFO] [stdout]     |
[INFO] [stdout] 895 |         k: i32::MAX
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:901:15
[INFO] [stdout]     |
[INFO] [stdout] 901 |       j: i32::MIN,
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:908:17
[INFO] [stdout]     |
[INFO] [stdout] 908 |         i: i32::MAX,
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:910:17
[INFO] [stdout]     |
[INFO] [stdout] 910 |         k: i32::MAX
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:917:15
[INFO] [stdout]     |
[INFO] [stdout] 917 |       k: i32::MIN,
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:923:17
[INFO] [stdout]     |
[INFO] [stdout] 923 |         i: i32::MAX,
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:924:17
[INFO] [stdout]     |
[INFO] [stdout] 924 |         j: i32::MAX,
[INFO] [stdout]     |                 ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stdout]    --> src/coords/ijk.rs:931:15
[INFO] [stdout]     |
[INFO] [stdout] 931 |       j: i32::MIN, // -2147483648
[INFO] [stdout]     |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stdout]     --> src/coords/ijk.rs:1019:26
[INFO] [stdout]      |
[INFO] [stdout] 1019 |         if min_c == i32::MIN && 0_i32.checked_sub(min_c).is_none() {
[INFO] [stdout]      |                          ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stdout]     --> src/coords/ijk.rs:1023:31
[INFO] [stdout]      |
[INFO] [stdout] 1023 |         else if min_c != i32::MIN && _sub_i32s_overflows(0, min_c) {
[INFO] [stdout]      |                               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]     --> src/coords/ijk.rs:1227:15
[INFO] [stdout]      |
[INFO] [stdout] 1227 |       i: i32::MAX,
[INFO] [stdout]      |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]     --> src/coords/ijk.rs:1238:15
[INFO] [stdout]      |
[INFO] [stdout] 1238 |       j: i32::MAX,
[INFO] [stdout]      |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stdout]     --> src/coords/ijk.rs:1259:15
[INFO] [stdout]      |
[INFO] [stdout] 1259 |       i: i32::MAX,
[INFO] [stdout]      |               ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::INFINITY`: replaced by the `INFINITY` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:166:64
[INFO] [stdout]     |
[INFO] [stdout] 166 |                          else if coslng_numerator > 0.0 { f64::INFINITY } 
[INFO] [stdout]     |                                                                ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::NEG_INFINITY`: replaced by the `NEG_INFINITY` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:167:38
[INFO] [stdout]     |
[INFO] [stdout] 167 |                          else { f64::NEG_INFINITY };
[INFO] [stdout]     |                                      ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:287:55
[INFO] [stdout]     |
[INFO] [stdout] 287 |     assert!((_pos_angle_rads(0.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:288:57
[INFO] [stdout]     |
[INFO] [stdout] 288 |     assert!((_pos_angle_rads(M_PI) - M_PI).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:289:69
[INFO] [stdout]     |
[INFO] [stdout] 289 |     assert!((_pos_angle_rads(M_PI * 1.5) - M_PI * 1.5).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:290:62
[INFO] [stdout]     |
[INFO] [stdout] 290 |     assert!((_pos_angle_rads(M_PI * 2.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:291:69
[INFO] [stdout]     |
[INFO] [stdout] 291 |     assert!((_pos_angle_rads(M_PI * 2.5) - M_PI * 0.5).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:292:68
[INFO] [stdout]     |
[INFO] [stdout] 292 |     assert!((_pos_angle_rads(-M_PI_2) - (M_PI * 1.5)).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:293:58
[INFO] [stdout]     |
[INFO] [stdout] 293 |     assert!((_pos_angle_rads(-M_PI) - M_PI).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:294:72
[INFO] [stdout]     |
[INFO] [stdout] 294 |     assert!((_pos_angle_rads(-M_PI * 1.5) - (M_PI * 0.5)).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:295:63
[INFO] [stdout]     |
[INFO] [stdout] 295 |     assert!((_pos_angle_rads(-M_PI * 2.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:296:62
[INFO] [stdout]     |
[INFO] [stdout] 296 |     assert!((_pos_angle_rads(M_PI * 4.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:297:63
[INFO] [stdout]     |
[INFO] [stdout] 297 |     assert!((_pos_angle_rads(-M_PI * 4.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:318:53
[INFO] [stdout]     |
[INFO] [stdout] 318 |     assert!((constrain_lat(0.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:319:53
[INFO] [stdout]     |
[INFO] [stdout] 319 |     assert!((constrain_lat(1.0) - 1.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:320:59
[INFO] [stdout]     |
[INFO] [stdout] 320 |     assert!((constrain_lat(M_PI_2) - M_PI_2).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:321:54
[INFO] [stdout]     |
[INFO] [stdout] 321 |     assert!((constrain_lat(M_PI) - 0.0).abs() < f64::EPSILON); // Folds to 0
[INFO] [stdout]     |                                                      ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:322:78
[INFO] [stdout]     |
[INFO] [stdout] 322 |     assert!((constrain_lat(M_PI + 1.0) - (M_PI - (M_PI + 1.0))).abs() < f64::EPSILON); // Folds: PI - (lat - PI) = 2PI - lat
[INFO] [stdout]     |                                                                              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:328:61
[INFO] [stdout]     |
[INFO] [stdout] 328 |     assert!((constrain_lat(M_PI + 1.0) - -1.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:331:61
[INFO] [stdout]     |
[INFO] [stdout] 331 |     assert!((constrain_lat(M_2PI + 1.0) - 1.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:332:61
[INFO] [stdout]     |
[INFO] [stdout] 332 |     assert!((constrain_lat(-M_PI_2) - -M_PI_2).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:333:55
[INFO] [stdout]     |
[INFO] [stdout] 333 |     assert!((constrain_lat(-M_PI) - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:334:61
[INFO] [stdout]     |
[INFO] [stdout] 334 |     assert!((constrain_lat(-M_PI - 1.0) - 1.0).abs() < f64::EPSILON); // -PI-1 (-4.14) -> norm: -4.14+2PI = 2.14. Fold: M_PI - 2.14...
[INFO] [stdout]     |                                                             ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:339:53
[INFO] [stdout]     |
[INFO] [stdout] 339 |     assert!((constrain_lng(0.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:340:53
[INFO] [stdout]     |
[INFO] [stdout] 340 |     assert!((constrain_lng(1.0) - 1.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:342:58
[INFO] [stdout]     |
[INFO] [stdout] 342 |     assert!((constrain_lng(M_PI) - (-M_PI)).abs() < f64::EPSILON); // wraps to -PI if input is PI
[INFO] [stdout]     |                                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:343:55
[INFO] [stdout]     |
[INFO] [stdout] 343 |     assert!((constrain_lng(M_2PI) - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:344:64
[INFO] [stdout]     |
[INFO] [stdout] 344 |     assert!((constrain_lng(M_PI * 3.0) - (-M_PI)).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                                ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:345:60
[INFO] [stdout]     |
[INFO] [stdout] 345 |     assert!((constrain_lng(M_PI * 4.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                            ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:346:59
[INFO] [stdout]     |
[INFO] [stdout] 346 |     assert!((constrain_lng(-M_PI) - (-M_PI)).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/latlng.rs:347:56
[INFO] [stdout]     |
[INFO] [stdout] 347 |     assert!((constrain_lng(-M_2PI) - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                                        ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec2d.rs:51:30
[INFO] [stdout]    |
[INFO] [stdout] 51 |   (v1.x - v2.x).abs() < f64::EPSILON && (v1.y - v2.y).abs() < f64::EPSILON
[INFO] [stdout]    |                              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec2d.rs:51:68
[INFO] [stdout]    |
[INFO] [stdout] 51 |   (v1.x - v2.x).abs() < f64::EPSILON && (v1.y - v2.y).abs() < f64::EPSILON
[INFO] [stdout]    |                                                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec2d.rs:64:43
[INFO] [stdout]    |
[INFO] [stdout] 64 |     assert!((mag - expected).abs() < f64::EPSILON, "magnitude as expected");
[INFO] [stdout]    |                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec2d.rs:81:50
[INFO] [stdout]    |
[INFO] [stdout] 81 |       (intersection.x - expected_x).abs() < f64::EPSILON,
[INFO] [stdout]    |                                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec2d.rs:85:50
[INFO] [stdout]    |
[INFO] [stdout] 85 |       (intersection.y - expected_y).abs() < f64::EPSILON,
[INFO] [stdout]    |                                                  ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec2d.rs:97:21
[INFO] [stdout]    |
[INFO] [stdout] 97 |       x: 3.0 + f64::EPSILON / 2.0, // Closer than EPSILON
[INFO] [stdout]    |                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec2d.rs:98:21
[INFO] [stdout]    |
[INFO] [stdout] 98 |       y: 4.0 - f64::EPSILON / 2.0,
[INFO] [stdout]    |                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/math/vec2d.rs:101:21
[INFO] [stdout]     |
[INFO] [stdout] 101 |       x: 3.0 + f64::EPSILON * 2.0, // Farther than EPSILON
[INFO] [stdout]     |                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec3d.rs:49:51
[INFO] [stdout]    |
[INFO] [stdout] 49 |       (_point_square_dist(&v1, &v1)).abs() < f64::EPSILON,
[INFO] [stdout]    |                                                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec3d.rs:53:57
[INFO] [stdout]    |
[INFO] [stdout] 53 |       (_point_square_dist(&v1, &v2) - 1.0).abs() < f64::EPSILON,
[INFO] [stdout]    |                                                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec3d.rs:57:57
[INFO] [stdout]    |
[INFO] [stdout] 57 |       (_point_square_dist(&v1, &v3) - 2.0).abs() < f64::EPSILON,
[INFO] [stdout]    |                                                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec3d.rs:61:57
[INFO] [stdout]    |
[INFO] [stdout] 61 |       (_point_square_dist(&v1, &v4) - 3.0).abs() < f64::EPSILON,
[INFO] [stdout]    |                                                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec3d.rs:65:57
[INFO] [stdout]    |
[INFO] [stdout] 65 |       (_point_square_dist(&v1, &v5) - 6.0).abs() < f64::EPSILON,
[INFO] [stdout]    |                                                         ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec3d.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 |     assert!((p1.x - 1.0).abs() < f64::EPSILON);
[INFO] [stdout]    |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec3d.rs:86:39
[INFO] [stdout]    |
[INFO] [stdout] 86 |     assert!((p1.y - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]    |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec3d.rs:87:39
[INFO] [stdout]    |
[INFO] [stdout] 87 |     assert!((p1.z - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]    |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec3d.rs:96:39
[INFO] [stdout]    |
[INFO] [stdout] 96 |     assert!((p2.x - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]    |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec3d.rs:97:39
[INFO] [stdout]    |
[INFO] [stdout] 97 |     assert!((p2.y - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]    |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/math/vec3d.rs:98:39
[INFO] [stdout]    |
[INFO] [stdout] 98 |     assert!((p2.z - 1.0).abs() < f64::EPSILON);
[INFO] [stdout]    |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/math/vec3d.rs:127:42
[INFO] [stdout]     |
[INFO] [stdout] 127 |     assert!((p3.x - (-1.0)).abs() < f64::EPSILON);
[INFO] [stdout]     |                                          ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/math/vec3d.rs:128:39
[INFO] [stdout]     |
[INFO] [stdout] 128 |     assert!((p3.y - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/math/vec3d.rs:129:39
[INFO] [stdout]     |
[INFO] [stdout] 129 |     assert!((p3.z - 0.0).abs() < f64::EPSILON);
[INFO] [stdout]     |                                       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:13:15
[INFO] [stdout]    |
[INFO] [stdout] 13 | use std::f64::EPSILON as MACHINE_EPSILON_F64; // For DBL_MAX
[INFO] [stdout]    |               ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:62:19
[INFO] [stdout]    |
[INFO] [stdout] 62 |       lat += f64::EPSILON * 10.0; // Small nudge north
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:87:36
[INFO] [stdout]    |
[INFO] [stdout] 87 |     if (p1_lng - lng).abs() < f64::EPSILON || (p2_lng - lng).abs() < f64::EPSILON {
[INFO] [stdout]    |                                    ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:87:75
[INFO] [stdout]    |
[INFO] [stdout] 87 |     if (p1_lng - lng).abs() < f64::EPSILON || (p2_lng - lng).abs() < f64::EPSILON {
[INFO] [stdout]    |                                                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]   --> src/polygon.rs:88:19
[INFO] [stdout]    |
[INFO] [stdout] 88 |       lng -= f64::EPSILON * 10.0;
[INFO] [stdout]    |                   ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/polygon.rs:118:37
[INFO] [stdout]     |
[INFO] [stdout] 118 |     if (a.lat - b.lat).abs() < f64::EPSILON && (lat - a.lat).abs() < f64::EPSILON {
[INFO] [stdout]     |                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/polygon.rs:118:75
[INFO] [stdout]     |
[INFO] [stdout] 118 |     if (a.lat - b.lat).abs() < f64::EPSILON && (lat - a.lat).abs() < f64::EPSILON {
[INFO] [stdout]     |                                                                           ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/polygon.rs:125:37
[INFO] [stdout]     |
[INFO] [stdout] 125 |     if (b.lat - a.lat).abs() < f64::EPSILON {
[INFO] [stdout]     |                                     ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stdout]    --> src/polygon.rs:234:20
[INFO] [stdout]     |
[INFO] [stdout] 234 |   if denom.abs() < MACHINE_EPSILON_F64 {
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused attribute
[INFO] [stdout]    --> src/coords/ijk.rs:250:1
[INFO] [stdout]     |
[INFO] [stdout] 250 | #[inline]
[INFO] [stdout]     | ^^^^^^^^^ help: remove this attribute
[INFO] [stdout]     |
[INFO] [stdout] note: attribute also specified here
[INFO] [stdout]    --> src/coords/ijk.rs:249:1
[INFO] [stdout]     |
[INFO] [stdout] 249 | #[inline]
[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: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]     --> src/coords/ijk.rs:1468:9
[INFO] [stdout]      |
[INFO] [stdout] 1468 |     let mut h3_ijk_normalized = CoordIJK { i: 1, j: 2, k: 0 }; // Start with H3 normalized
[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/h3_index/mod.rs:801:17
[INFO] [stdout]     |
[INFO] [stdout] 801 |             let mut fijk_orig = FaceIJK {
[INFO] [stdout]     |                 ----^^^^^^^^^
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `canonical_fijk_orig_for_comparison`
[INFO] [stdout]    --> src/h3_index/mod.rs:825:17
[INFO] [stdout]     |
[INFO] [stdout] 825 |             let canonical_fijk_orig_for_comparison = FaceIJK {
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_canonical_fijk_orig_for_comparison`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `original_digit_at_r`
[INFO] [stdout]   --> src/hierarchy/parent_child.rs:80:9
[INFO] [stdout]    |
[INFO] [stdout] 80 |     let original_digit_at_r = get_index_digit(parent_h, r_digit_to_invalidate);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original_digit_at_r`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/indexing/to_h3.rs:67:9
[INFO] [stdout]    |
[INFO] [stdout] 67 |     let mut geo_nan_lng = LatLng {
[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/indexing/to_h3.rs:73:9
[INFO] [stdout]    |
[INFO] [stdout] 73 |     let mut geo_inf_lat = LatLng {
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `avg_area_rads2`
[INFO] [stdout]   --> src/measures.rs:81:9
[INFO] [stdout]    |
[INFO] [stdout] 81 |     let avg_area_rads2 = crate::latlng::get_hexagon_area_avg_km2(5).unwrap() / (EARTH_RADIUS_KM * EARTH_RADIUS_KM);
[INFO] [stdout]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_avg_area_rads2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `avg_area_km2`
[INFO] [stdout]    --> src/measures.rs:101:9
[INFO] [stdout]     |
[INFO] [stdout] 101 |     let avg_area_km2 = crate::latlng::get_hexagon_area_avg_km2(5).unwrap();
[INFO] [stdout]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_avg_area_km2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/polygon.rs:70:9
[INFO] [stdout]    |
[INFO] [stdout] 70 |     let mut p1_lng = normalize_lng_for_comparison(
[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/polygon.rs:78:9
[INFO] [stdout]    |
[INFO] [stdout] 78 |     let mut p2_lng = normalize_lng_for_comparison(
[INFO] [stdout]    |         ----^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sq1`
[INFO] [stdout]    --> src/polygon.rs:576:9
[INFO] [stdout]     |
[INFO] [stdout] 576 |     let sq1 = LatLng { lat: 0.0, lng: 0.0 };
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_sq1`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sq2`
[INFO] [stdout]    --> src/polygon.rs:577:9
[INFO] [stdout]     |
[INFO] [stdout] 577 |     let sq2 = LatLng { lat: 0.0, lng: M_PI_2 }; // 90 deg east
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_sq2`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `sq3`
[INFO] [stdout]    --> src/polygon.rs:578:9
[INFO] [stdout]     |
[INFO] [stdout] 578 |     let sq3 = LatLng {
[INFO] [stdout]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_sq3`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]   --> src/regions/to_polygon.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let mut current_opt = &mut self.buckets[index];
[INFO] [stdout]    |         ----^^^^^^^^^^^
[INFO] [stdout]    |         |
[INFO] [stdout]    |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `current_opt`
[INFO] [stdout]   --> src/regions/to_polygon.rs:83:9
[INFO] [stdout]    |
[INFO] [stdout] 83 |     let mut current_opt = &mut self.buckets[index];
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_opt`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/regions/to_polygon.rs:373:7
[INFO] [stdout]     |
[INFO] [stdout] 373 |   for mut hole_info in hole_candidates {
[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/regions/to_polygon.rs:513:9
[INFO] [stdout]     |
[INFO] [stdout] 513 |     let mut disk_size = match max_grid_disk_size(k_radius) {
[INFO] [stdout]     |         ----^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `result`
[INFO] [stdout]    --> src/traversal/neighbors.rs:351:7
[INFO] [stdout]     |
[INFO] [stdout] 351 |   let result = dir != Direction::InvalidDigit;
[INFO] [stdout]     |       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `bbox_equals` is never used
[INFO] [stdout]    --> src/bbox.rs:176:15
[INFO] [stdout]     |
[INFO] [stdout] 176 | pub(crate) fn bbox_equals(b1: &BBox, b2: &BBox) -> bool {
[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 `bbox_hex_estimate` is never used
[INFO] [stdout]    --> src/bbox.rs:221:15
[INFO] [stdout]     |
[INFO] [stdout] 221 | pub(crate) fn bbox_hex_estimate(bbox: &BBox, res: i32) -> Result<i64, H3Error> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `line_hex_estimate` is never used
[INFO] [stdout]    --> src/bbox.rs:273:15
[INFO] [stdout]     |
[INFO] [stdout] 273 | pub(crate) fn line_hex_estimate(origin: &LatLng, destination: &LatLng, res: i32) -> Result<i64, H3Error> {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `h3_lround` is never used
[INFO] [stdout]    --> src/coords/ijk.rs:377:4
[INFO] [stdout]     |
[INFO] [stdout] 377 | fn h3_lround(val: f64) -> i32 {
[INFO] [stdout]     |    ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `test_overage_cases` is never used
[INFO] [stdout]    --> src/h3_index/mod.rs:926:6
[INFO] [stdout]     |
[INFO] [stdout] 926 |   fn test_overage_cases() {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FIJK_INPUT_N1` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1093:9
[INFO] [stdout]      |
[INFO] [stdout] 1093 |   const FIJK_INPUT_N1: FaceIJK = FaceIJK {
[INFO] [stdout]      |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RES_INPUT_N1` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1097:9
[INFO] [stdout]      |
[INFO] [stdout] 1097 |   const RES_INPUT_N1: i32 = 5;
[INFO] [stdout]      |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RUST_GENERATED_H3_N1` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1098:9
[INFO] [stdout]      |
[INFO] [stdout] 1098 |   const RUST_GENERATED_H3_N1: H3Index = H3Index(0x855943d3fffffff); // What Rust currently produces
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `C_EXPECTED_H3_N1` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1099:9
[INFO] [stdout]      |
[INFO] [stdout] 1099 |   const C_EXPECTED_H3_N1: H3Index = H3Index(0x855943cffffffff); // What C path implies
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FIJK_INPUT_N2` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1102:9
[INFO] [stdout]      |
[INFO] [stdout] 1102 |   const FIJK_INPUT_N2: FaceIJK = FaceIJK {
[INFO] [stdout]      |         ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RES_INPUT_N2` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1106:9
[INFO] [stdout]      |
[INFO] [stdout] 1106 |   const RES_INPUT_N2: i32 = 5;
[INFO] [stdout]      |         ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RUST_GENERATED_H3_N2` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1107:9
[INFO] [stdout]      |
[INFO] [stdout] 1107 |   const RUST_GENERATED_H3_N2: H3Index = H3Index(0x85594063fffffff); // What Rust currently produces
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `C_EXPECTED_H3_N2` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1108:9
[INFO] [stdout]      |
[INFO] [stdout] 1108 |   const C_EXPECTED_H3_N2: H3Index = H3Index(0x8559431bfffffff); // What C path implies
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FIJK_INPUT_N1_FOR_TEST` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1112:7
[INFO] [stdout]      |
[INFO] [stdout] 1112 | const FIJK_INPUT_N1_FOR_TEST: FaceIJK = FaceIJK { face: 4, coord: CoordIJK { i: 46, j: 100, k: 0 } };
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `RES_INPUT_FOR_TEST` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1113:7
[INFO] [stdout]      |
[INFO] [stdout] 1113 | const RES_INPUT_FOR_TEST: i32 = 5;
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `C_EXPECTED_H3_N1_FOR_TEST` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1114:7
[INFO] [stdout]      |
[INFO] [stdout] 1114 | const C_EXPECTED_H3_N1_FOR_TEST: H3Index = H3Index(0x855943cffffffff);
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `FIJK_INPUT_N2_FOR_TEST` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1117:7
[INFO] [stdout]      |
[INFO] [stdout] 1117 | const FIJK_INPUT_N2_FOR_TEST: FaceIJK = FaceIJK { face: 4, coord: CoordIJK { i: 47, j: 99, k: 0 } };
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `C_EXPECTED_H3_N2_FOR_TEST` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1118:7
[INFO] [stdout]      |
[INFO] [stdout] 1118 | const C_EXPECTED_H3_N2_FOR_TEST: H3Index = H3Index(0x8559431bfffffff);
[INFO] [stdout]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `assert_h3_components_match` is never used
[INFO] [stdout]     --> src/h3_index/mod.rs:1121:4
[INFO] [stdout]      |
[INFO] [stdout] 1121 | fn assert_h3_components_match(
[INFO] [stdout]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `PENTAGON_ROTATIONS_REVERSE` is never used
[INFO] [stdout]   --> src/local_ij.rs:35:8
[INFO] [stdout]    |
[INFO] [stdout] 35 | static PENTAGON_ROTATIONS_REVERSE: [[i32; 7]; 7] = [
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `res` is never read
[INFO] [stdout]   --> src/regions/to_polygon.rs:46:3
[INFO] [stdout]    |
[INFO] [stdout] 42 | struct VertexGraph {
[INFO] [stdout]    |        ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 46 |   res: i32, // Resolution of cells, useful for precision in hashing/equality
[INFO] [stdout]    |   ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `VertexGraph` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `bbox` is never read
[INFO] [stdout]    --> src/regions/to_polygon.rs:284:3
[INFO] [stdout]     |
[INFO] [stdout] 282 | struct RawLoopInfo {
[INFO] [stdout]     |        ----------- field in this struct
[INFO] [stdout] 283 |   verts: Vec<LatLng>,
[INFO] [stdout] 284 |   bbox: BBox,
[INFO] [stdout]     |   ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `baseCellNumToCell` should have a snake case name
[INFO] [stdout]    --> src/base_cells.rs:791:15
[INFO] [stdout]     |
[INFO] [stdout] 791 | pub(crate) fn baseCellNumToCell(base_cell_num: i32) -> H3Index {
[INFO] [stdout]     |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `base_cell_num_to_cell`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 9.10s
[INFO] running `Command { std: "docker" "inspect" "ea820791a713d1f59ba88b543614aa34d6a2fc5ae722a1cccfe22043e6ac515a", 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" "ea820791a713d1f59ba88b543614aa34d6a2fc5ae722a1cccfe22043e6ac515a" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: unused imports: `M_ONETHIRD` and `M_SQRT7`
[INFO] [stderr]  --> src/coords/ijk.rs:3:47
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::constants::{EPSILON, M_ONESEVENTH, M_ONETHIRD, M_RSIN60, M_SQRT3_2, M_SQRT7};
[INFO] [stderr]   |                                               ^^^^^^^^^^                       ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::math::extensions::_ipow`
[INFO] [stderr]  --> src/coords/ijk.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::math::extensions::_ipow; // For _downAp* later, if needed here or used elsewhere
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `_h3_leading_non_zero_digit`
[INFO] [stderr]  --> src/hierarchy/parent_child.rs:6:3
[INFO] [stderr]   |
[INFO] [stderr] 6 |   _h3_leading_non_zero_digit, get_index_digit, get_resolution, is_pentagon, set_index_digit, set_resolution,
[INFO] [stderr]   |   ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `IterCellsChildren`
[INFO] [stderr]  --> src/hierarchy/parent_child.rs:9:59
[INFO] [stderr]   |
[INFO] [stderr] 9 | use crate::iterators::{iter_init_parent, iter_step_child, IterCellsChildren}; // For cellToChildren
[INFO] [stderr]   |                                                           ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `MAX_H3_RES`
[INFO] [stderr]  --> src/measures.rs:3:41
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::constants::{EARTH_RADIUS_KM, MAX_H3_RES};
[INFO] [stderr]   |                                         ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CellBoundary` and `LatLng`
[INFO] [stderr]  --> src/measures.rs:7:20
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::types::{CellBoundary, H3Error, H3Index, LatLng}; // Helper for spherical polygon area
[INFO] [stderr]   |                    ^^^^^^^^^^^^                    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `EPSILON_RAD`, `M_2PI`, and `M_PI`
[INFO] [stderr]  --> src/polygon.rs:6:24
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::constants::{EPSILON_RAD, M_2PI, M_PI}; // DBL_EPSILON is from C float.h, Rust f64::EPSILON is different
[INFO] [stderr]   |                        ^^^^^^^^^^^  ^^^^^  ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `constrain_lng`
[INFO] [stderr]  --> src/polygon.rs:7:21
[INFO] [stderr]   |
[INFO] [stderr] 7 | use crate::latlng::{constrain_lng, normalize_lng_for_comparison}; use crate::math::vec3d::_geo_to_vec3d;
[INFO] [stderr]   |                     ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `LatLng`
[INFO] [stderr]   --> src/regions/polyfill.rs:17:73
[INFO] [stderr]    |
[INFO] [stderr] 17 | use crate::types::{BBox, ContainmentMode, GeoPolygon, H3Error, H3Index, LatLng, H3_NULL};
[INFO] [stderr]    |                                                                         ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `get_base_cell`
[INFO] [stderr]  --> src/regions/to_polygon.rs:8:23
[INFO] [stderr]   |
[INFO] [stderr] 8 | use crate::h3_index::{get_base_cell, get_resolution};
[INFO] [stderr]   |                       ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `CoordIJK`, `GeoPolygon`, and `Vec2d`
[INFO] [stderr]   --> src/regions/to_polygon.rs:10:34
[INFO] [stderr]    |
[INFO] [stderr] 10 | use crate::types::{CellBoundary, CoordIJK, FaceIJK, GeoLoop, GeoPolygon, H3Error, H3Index, LatLng, Vec2d};
[INFO] [stderr]    |                                  ^^^^^^^^                    ^^^^^^^^^^                            ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::collections::HashMap`
[INFO] [stderr]   --> src/regions/to_polygon.rs:16:5
[INFO] [stderr]    |
[INFO] [stderr] 16 | use std::collections::HashMap; // Might be useful for _hashVertex alternative
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated module `std::i32`: all constants in this module replaced by associated constants on the type
[INFO] [stderr]  --> src/coords/ijk.rs:8:10
[INFO] [stderr]   |
[INFO] [stderr] 8 | use std::i32; // For i32::MAX/MIN for overflow checks
[INFO] [stderr]   |          ^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(deprecated)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::INFINITY`: replaced by the `INFINITY` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:166:64
[INFO] [stderr]     |
[INFO] [stderr] 166 |                          else if coslng_numerator > 0.0 { f64::INFINITY } 
[INFO] [stderr]     |                                                                ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::NEG_INFINITY`: replaced by the `NEG_INFINITY` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:167:38
[INFO] [stderr]     |
[INFO] [stderr] 167 |                          else { f64::NEG_INFINITY };
[INFO] [stderr]     |                                      ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec2d.rs:51:30
[INFO] [stderr]    |
[INFO] [stderr] 51 |   (v1.x - v2.x).abs() < f64::EPSILON && (v1.y - v2.y).abs() < f64::EPSILON
[INFO] [stderr]    |                              ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec2d.rs:51:68
[INFO] [stderr]    |
[INFO] [stderr] 51 |   (v1.x - v2.x).abs() < f64::EPSILON && (v1.y - v2.y).abs() < f64::EPSILON
[INFO] [stderr]    |                                                                    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/polygon.rs:13:15
[INFO] [stderr]    |
[INFO] [stderr] 13 | use std::f64::EPSILON as MACHINE_EPSILON_F64; // For DBL_MAX
[INFO] [stderr]    |               ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/polygon.rs:62:19
[INFO] [stderr]    |
[INFO] [stderr] 62 |       lat += f64::EPSILON * 10.0; // Small nudge north
[INFO] [stderr]    |                   ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/polygon.rs:87:36
[INFO] [stderr]    |
[INFO] [stderr] 87 |     if (p1_lng - lng).abs() < f64::EPSILON || (p2_lng - lng).abs() < f64::EPSILON {
[INFO] [stderr]    |                                    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/polygon.rs:87:75
[INFO] [stderr]    |
[INFO] [stderr] 87 |     if (p1_lng - lng).abs() < f64::EPSILON || (p2_lng - lng).abs() < f64::EPSILON {
[INFO] [stderr]    |                                                                           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/polygon.rs:88:19
[INFO] [stderr]    |
[INFO] [stderr] 88 |       lng -= f64::EPSILON * 10.0;
[INFO] [stderr]    |                   ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/polygon.rs:118:37
[INFO] [stderr]     |
[INFO] [stderr] 118 |     if (a.lat - b.lat).abs() < f64::EPSILON && (lat - a.lat).abs() < f64::EPSILON {
[INFO] [stderr]     |                                     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/polygon.rs:118:75
[INFO] [stderr]     |
[INFO] [stderr] 118 |     if (a.lat - b.lat).abs() < f64::EPSILON && (lat - a.lat).abs() < f64::EPSILON {
[INFO] [stderr]     |                                                                           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/polygon.rs:125:37
[INFO] [stderr]     |
[INFO] [stderr] 125 |     if (b.lat - a.lat).abs() < f64::EPSILON {
[INFO] [stderr]     |                                     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/polygon.rs:234:20
[INFO] [stderr]     |
[INFO] [stderr] 234 |   if denom.abs() < MACHINE_EPSILON_F64 {
[INFO] [stderr]     |                    ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused attribute
[INFO] [stderr]    --> src/coords/ijk.rs:250:1
[INFO] [stderr]     |
[INFO] [stderr] 250 | #[inline]
[INFO] [stderr]     | ^^^^^^^^^ help: remove this attribute
[INFO] [stderr]     |
[INFO] [stderr] note: attribute also specified here
[INFO] [stderr]    --> src/coords/ijk.rs:249:1
[INFO] [stderr]     |
[INFO] [stderr] 249 | #[inline]
[INFO] [stderr]     | ^^^^^^^^^
[INFO] [stderr]     = warning: this was previously accepted by the compiler but is being phased out; it will become a hard error in a future release!
[INFO] [stderr]     = note: `#[warn(unused_attributes)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `original_digit_at_r`
[INFO] [stderr]   --> src/hierarchy/parent_child.rs:80:9
[INFO] [stderr]    |
[INFO] [stderr] 80 |     let original_digit_at_r = get_index_digit(parent_h, r_digit_to_invalidate);
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original_digit_at_r`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/polygon.rs:70:9
[INFO] [stderr]    |
[INFO] [stderr] 70 |     let mut p1_lng = normalize_lng_for_comparison(
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/polygon.rs:78:9
[INFO] [stderr]    |
[INFO] [stderr] 78 |     let mut p2_lng = normalize_lng_for_comparison(
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/regions/to_polygon.rs:83:9
[INFO] [stderr]    |
[INFO] [stderr] 83 |     let mut current_opt = &mut self.buckets[index];
[INFO] [stderr]    |         ----^^^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `current_opt`
[INFO] [stderr]   --> src/regions/to_polygon.rs:83:9
[INFO] [stderr]    |
[INFO] [stderr] 83 |     let mut current_opt = &mut self.buckets[index];
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_current_opt`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/regions/to_polygon.rs:373:7
[INFO] [stderr]     |
[INFO] [stderr] 373 |   for mut hole_info in hole_candidates {
[INFO] [stderr]     |       ----^^^^^^^^^
[INFO] [stderr]     |       |
[INFO] [stderr]     |       help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `result`
[INFO] [stderr]    --> src/traversal/neighbors.rs:351:7
[INFO] [stderr]     |
[INFO] [stderr] 351 |   let result = dir != Direction::InvalidDigit;
[INFO] [stderr]     |       ^^^^^^ help: if this is intentional, prefix it with an underscore: `_result`
[INFO] [stderr] 
[INFO] [stderr] warning: function `bbox_center` is never used
[INFO] [stderr]   --> src/bbox.rs:32:15
[INFO] [stderr]    |
[INFO] [stderr] 32 | pub(crate) fn bbox_center(bbox: &BBox, center: &mut LatLng) {
[INFO] [stderr]    |               ^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `bbox_equals` is never used
[INFO] [stderr]    --> src/bbox.rs:176:15
[INFO] [stderr]     |
[INFO] [stderr] 176 | pub(crate) fn bbox_equals(b1: &BBox, b2: &BBox) -> bool {
[INFO] [stderr]     |               ^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `bbox_hex_estimate` is never used
[INFO] [stderr]    --> src/bbox.rs:221:15
[INFO] [stderr]     |
[INFO] [stderr] 221 | pub(crate) fn bbox_hex_estimate(bbox: &BBox, res: i32) -> Result<i64, H3Error> {
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `line_hex_estimate` is never used
[INFO] [stderr]    --> src/bbox.rs:273:15
[INFO] [stderr]     |
[INFO] [stderr] 273 | pub(crate) fn line_hex_estimate(origin: &LatLng, destination: &LatLng, res: i32) -> Result<i64, H3Error> {
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `h3_lround` is never used
[INFO] [stderr]    --> src/coords/ijk.rs:377:4
[INFO] [stderr]     |
[INFO] [stderr] 377 | fn h3_lround(val: f64) -> i32 {
[INFO] [stderr]     |    ^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `constrain_lat` is never used
[INFO] [stderr]   --> src/latlng.rs:60:15
[INFO] [stderr]    |
[INFO] [stderr] 60 | pub(crate) fn constrain_lat(lat: f64) -> f64 {
[INFO] [stderr]    |               ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: static `PENTAGON_ROTATIONS_REVERSE` is never used
[INFO] [stderr]   --> src/local_ij.rs:35:8
[INFO] [stderr]    |
[INFO] [stderr] 35 | static PENTAGON_ROTATIONS_REVERSE: [[i32; 7]; 7] = [
[INFO] [stderr]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `is_clockwise_geoloop` is never used
[INFO] [stderr]    --> src/polygon.rs:216:15
[INFO] [stderr]     |
[INFO] [stderr] 216 | pub(crate) fn is_clockwise_geoloop(geoloop: &GeoLoop, bbox: &BBox) -> bool {
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: field `res` is never read
[INFO] [stderr]   --> src/regions/to_polygon.rs:46:3
[INFO] [stderr]    |
[INFO] [stderr] 42 | struct VertexGraph {
[INFO] [stderr]    |        ----------- field in this struct
[INFO] [stderr] ...
[INFO] [stderr] 46 |   res: i32, // Resolution of cells, useful for precision in hashing/equality
[INFO] [stderr]    |   ^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `VertexGraph` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stderr] 
[INFO] [stderr] warning: field `bbox` is never read
[INFO] [stderr]    --> src/regions/to_polygon.rs:284:3
[INFO] [stderr]     |
[INFO] [stderr] 282 | struct RawLoopInfo {
[INFO] [stderr]     |        ----------- field in this struct
[INFO] [stderr] 283 |   verts: Vec<LatLng>,
[INFO] [stderr] 284 |   bbox: BBox,
[INFO] [stderr]     |   ^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `baseCellNumToCell` should have a snake case name
[INFO] [stderr]    --> src/base_cells.rs:791:15
[INFO] [stderr]     |
[INFO] [stderr] 791 | pub(crate) fn baseCellNumToCell(base_cell_num: i32) -> H3Index {
[INFO] [stderr]     |               ^^^^^^^^^^^^^^^^^ help: convert the identifier to snake case: `base_cell_num_to_cell`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(non_snake_case)]` (part of `#[warn(nonstandard_style)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `xs_h3` (lib) generated 45 warnings (run `cargo fix --lib -p xs_h3` to apply 20 suggestions)
[INFO] [stderr] warning: unused import: `_set_geo_degs`
[INFO] [stderr]    --> src/bbox.rs:447:23
[INFO] [stderr]     |
[INFO] [stderr] 447 |   use crate::latlng::{_set_geo_degs, geo_almost_equal};
[INFO] [stderr]     |                       ^^^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `M_ONETHIRD` and `M_SQRT7`
[INFO] [stderr]  --> src/coords/ijk.rs:3:47
[INFO] [stderr]   |
[INFO] [stderr] 3 | use crate::constants::{EPSILON, M_ONESEVENTH, M_ONETHIRD, M_RSIN60, M_SQRT3_2, M_SQRT7};
[INFO] [stderr]   |                                               ^^^^^^^^^^                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `_down_ap7` and `_down_ap7r`
[INFO] [stderr]     --> src/h3_index/mod.rs:1148:28
[INFO] [stderr]      |
[INFO] [stderr] 1148 |   use crate::coords::ijk::{_down_ap7, _down_ap7r, _up_ap7_checked, _up_ap7r_checked}; // Assuming pub(crate)
[INFO] [stderr]      |                            ^^^^^^^^^  ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::types::H3_NULL`
[INFO] [stderr]   --> src/indexing/to_h3.rs:51:7
[INFO] [stderr]    |
[INFO] [stderr] 51 |   use crate::types::H3_NULL;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::indexing::lat_lng_to_cell`
[INFO] [stderr]   --> src/measures.rs:68:7
[INFO] [stderr]    |
[INFO] [stderr] 68 |   use crate::indexing::lat_lng_to_cell;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::types::LatLng`
[INFO] [stderr]   --> src/measures.rs:69:7
[INFO] [stderr]    |
[INFO] [stderr] 69 |   use crate::types::LatLng;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::f64::consts::PI`
[INFO] [stderr]   --> src/measures.rs:70:7
[INFO] [stderr]    |
[INFO] [stderr] 70 |   use std::f64::consts::PI;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `EPSILON_RAD` and `M_2PI`
[INFO] [stderr]  --> src/polygon.rs:6:24
[INFO] [stderr]   |
[INFO] [stderr] 6 | use crate::constants::{EPSILON_RAD, M_2PI, M_PI}; // DBL_EPSILON is from C float.h, Rust f64::EPSILON is different
[INFO] [stderr]   |                        ^^^^^^^^^^^  ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:789:15
[INFO] [stderr]     |
[INFO] [stderr] 789 |       i: i32::MAX,
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:798:17
[INFO] [stderr]     |
[INFO] [stderr] 798 |         i: i32::MAX,
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:815:15
[INFO] [stderr]     |
[INFO] [stderr] 815 |       i: i32::MIN,
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:824:17
[INFO] [stderr]     |
[INFO] [stderr] 824 |         i: i32::MIN,
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:843:15
[INFO] [stderr]     |
[INFO] [stderr] 843 |       i: i32::MAX / 2 + 1,
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:851:17
[INFO] [stderr]     |
[INFO] [stderr] 851 |         i: i32::MAX,
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:885:15
[INFO] [stderr]     |
[INFO] [stderr] 885 |       i: i32::MIN,
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:894:17
[INFO] [stderr]     |
[INFO] [stderr] 894 |         j: i32::MAX,
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:895:17
[INFO] [stderr]     |
[INFO] [stderr] 895 |         k: i32::MAX
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:901:15
[INFO] [stderr]     |
[INFO] [stderr] 901 |       j: i32::MIN,
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:908:17
[INFO] [stderr]     |
[INFO] [stderr] 908 |         i: i32::MAX,
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:910:17
[INFO] [stderr]     |
[INFO] [stderr] 910 |         k: i32::MAX
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:917:15
[INFO] [stderr]     |
[INFO] [stderr] 917 |       k: i32::MIN,
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:923:17
[INFO] [stderr]     |
[INFO] [stderr] 923 |         i: i32::MAX,
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:924:17
[INFO] [stderr]     |
[INFO] [stderr] 924 |         j: i32::MAX,
[INFO] [stderr]     |                 ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stderr]    --> src/coords/ijk.rs:931:15
[INFO] [stderr]     |
[INFO] [stderr] 931 |       j: i32::MIN, // -2147483648
[INFO] [stderr]     |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stderr]     --> src/coords/ijk.rs:1019:26
[INFO] [stderr]      |
[INFO] [stderr] 1019 |         if min_c == i32::MIN && 0_i32.checked_sub(min_c).is_none() {
[INFO] [stderr]      |                          ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MIN`: replaced by the `MIN` associated constant on this type
[INFO] [stderr]     --> src/coords/ijk.rs:1023:31
[INFO] [stderr]      |
[INFO] [stderr] 1023 |         else if min_c != i32::MIN && _sub_i32s_overflows(0, min_c) {
[INFO] [stderr]      |                               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]     --> src/coords/ijk.rs:1227:15
[INFO] [stderr]      |
[INFO] [stderr] 1227 |       i: i32::MAX,
[INFO] [stderr]      |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]     --> src/coords/ijk.rs:1238:15
[INFO] [stderr]      |
[INFO] [stderr] 1238 |       j: i32::MAX,
[INFO] [stderr]      |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::i32::MAX`: replaced by the `MAX` associated constant on this type
[INFO] [stderr]     --> src/coords/ijk.rs:1259:15
[INFO] [stderr]      |
[INFO] [stderr] 1259 |       i: i32::MAX,
[INFO] [stderr]      |               ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:287:55
[INFO] [stderr]     |
[INFO] [stderr] 287 |     assert!((_pos_angle_rads(0.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:288:57
[INFO] [stderr]     |
[INFO] [stderr] 288 |     assert!((_pos_angle_rads(M_PI) - M_PI).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                         ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:289:69
[INFO] [stderr]     |
[INFO] [stderr] 289 |     assert!((_pos_angle_rads(M_PI * 1.5) - M_PI * 1.5).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                                     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:290:62
[INFO] [stderr]     |
[INFO] [stderr] 290 |     assert!((_pos_angle_rads(M_PI * 2.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                              ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:291:69
[INFO] [stderr]     |
[INFO] [stderr] 291 |     assert!((_pos_angle_rads(M_PI * 2.5) - M_PI * 0.5).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                                     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:292:68
[INFO] [stderr]     |
[INFO] [stderr] 292 |     assert!((_pos_angle_rads(-M_PI_2) - (M_PI * 1.5)).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                                    ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:293:58
[INFO] [stderr]     |
[INFO] [stderr] 293 |     assert!((_pos_angle_rads(-M_PI) - M_PI).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:294:72
[INFO] [stderr]     |
[INFO] [stderr] 294 |     assert!((_pos_angle_rads(-M_PI * 1.5) - (M_PI * 0.5)).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                                        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:295:63
[INFO] [stderr]     |
[INFO] [stderr] 295 |     assert!((_pos_angle_rads(-M_PI * 2.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                               ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:296:62
[INFO] [stderr]     |
[INFO] [stderr] 296 |     assert!((_pos_angle_rads(M_PI * 4.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                              ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:297:63
[INFO] [stderr]     |
[INFO] [stderr] 297 |     assert!((_pos_angle_rads(-M_PI * 4.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                               ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:318:53
[INFO] [stderr]     |
[INFO] [stderr] 318 |     assert!((constrain_lat(0.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:319:53
[INFO] [stderr]     |
[INFO] [stderr] 319 |     assert!((constrain_lat(1.0) - 1.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:320:59
[INFO] [stderr]     |
[INFO] [stderr] 320 |     assert!((constrain_lat(M_PI_2) - M_PI_2).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:321:54
[INFO] [stderr]     |
[INFO] [stderr] 321 |     assert!((constrain_lat(M_PI) - 0.0).abs() < f64::EPSILON); // Folds to 0
[INFO] [stderr]     |                                                      ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:322:78
[INFO] [stderr]     |
[INFO] [stderr] 322 |     assert!((constrain_lat(M_PI + 1.0) - (M_PI - (M_PI + 1.0))).abs() < f64::EPSILON); // Folds: PI - (lat - PI) = 2PI - lat
[INFO] [stderr]     |                                                                              ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:328:61
[INFO] [stderr]     |
[INFO] [stderr] 328 |     assert!((constrain_lat(M_PI + 1.0) - -1.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:331:61
[INFO] [stderr]     |
[INFO] [stderr] 331 |     assert!((constrain_lat(M_2PI + 1.0) - 1.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:332:61
[INFO] [stderr]     |
[INFO] [stderr] 332 |     assert!((constrain_lat(-M_PI_2) - -M_PI_2).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:333:55
[INFO] [stderr]     |
[INFO] [stderr] 333 |     assert!((constrain_lat(-M_PI) - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:334:61
[INFO] [stderr]     |
[INFO] [stderr] 334 |     assert!((constrain_lat(-M_PI - 1.0) - 1.0).abs() < f64::EPSILON); // -PI-1 (-4.14) -> norm: -4.14+2PI = 2.14. Fold: M_PI - 2.14...
[INFO] [stderr]     |                                                             ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:339:53
[INFO] [stderr]     |
[INFO] [stderr] 339 |     assert!((constrain_lng(0.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:340:53
[INFO] [stderr]     |
[INFO] [stderr] 340 |     assert!((constrain_lng(1.0) - 1.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:342:58
[INFO] [stderr]     |
[INFO] [stderr] 342 |     assert!((constrain_lng(M_PI) - (-M_PI)).abs() < f64::EPSILON); // wraps to -PI if input is PI
[INFO] [stderr]     |                                                          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:343:55
[INFO] [stderr]     |
[INFO] [stderr] 343 |     assert!((constrain_lng(M_2PI) - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:344:64
[INFO] [stderr]     |
[INFO] [stderr] 344 |     assert!((constrain_lng(M_PI * 3.0) - (-M_PI)).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                                ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:345:60
[INFO] [stderr]     |
[INFO] [stderr] 345 |     assert!((constrain_lng(M_PI * 4.0) - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                            ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:346:59
[INFO] [stderr]     |
[INFO] [stderr] 346 |     assert!((constrain_lng(-M_PI) - (-M_PI)).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/latlng.rs:347:56
[INFO] [stderr]     |
[INFO] [stderr] 347 |     assert!((constrain_lng(-M_2PI) - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                                        ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec2d.rs:64:43
[INFO] [stderr]    |
[INFO] [stderr] 64 |     assert!((mag - expected).abs() < f64::EPSILON, "magnitude as expected");
[INFO] [stderr]    |                                           ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec2d.rs:81:50
[INFO] [stderr]    |
[INFO] [stderr] 81 |       (intersection.x - expected_x).abs() < f64::EPSILON,
[INFO] [stderr]    |                                                  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec2d.rs:85:50
[INFO] [stderr]    |
[INFO] [stderr] 85 |       (intersection.y - expected_y).abs() < f64::EPSILON,
[INFO] [stderr]    |                                                  ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec2d.rs:97:21
[INFO] [stderr]    |
[INFO] [stderr] 97 |       x: 3.0 + f64::EPSILON / 2.0, // Closer than EPSILON
[INFO] [stderr]    |                     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec2d.rs:98:21
[INFO] [stderr]    |
[INFO] [stderr] 98 |       y: 4.0 - f64::EPSILON / 2.0,
[INFO] [stderr]    |                     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/math/vec2d.rs:101:21
[INFO] [stderr]     |
[INFO] [stderr] 101 |       x: 3.0 + f64::EPSILON * 2.0, // Farther than EPSILON
[INFO] [stderr]     |                     ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec3d.rs:49:51
[INFO] [stderr]    |
[INFO] [stderr] 49 |       (_point_square_dist(&v1, &v1)).abs() < f64::EPSILON,
[INFO] [stderr]    |                                                   ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec3d.rs:53:57
[INFO] [stderr]    |
[INFO] [stderr] 53 |       (_point_square_dist(&v1, &v2) - 1.0).abs() < f64::EPSILON,
[INFO] [stderr]    |                                                         ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec3d.rs:57:57
[INFO] [stderr]    |
[INFO] [stderr] 57 |       (_point_square_dist(&v1, &v3) - 2.0).abs() < f64::EPSILON,
[INFO] [stderr]    |                                                         ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec3d.rs:61:57
[INFO] [stderr]    |
[INFO] [stderr] 61 |       (_point_square_dist(&v1, &v4) - 3.0).abs() < f64::EPSILON,
[INFO] [stderr]    |                                                         ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec3d.rs:65:57
[INFO] [stderr]    |
[INFO] [stderr] 65 |       (_point_square_dist(&v1, &v5) - 6.0).abs() < f64::EPSILON,
[INFO] [stderr]    |                                                         ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec3d.rs:85:39
[INFO] [stderr]    |
[INFO] [stderr] 85 |     assert!((p1.x - 1.0).abs() < f64::EPSILON);
[INFO] [stderr]    |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec3d.rs:86:39
[INFO] [stderr]    |
[INFO] [stderr] 86 |     assert!((p1.y - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]    |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec3d.rs:87:39
[INFO] [stderr]    |
[INFO] [stderr] 87 |     assert!((p1.z - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]    |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec3d.rs:96:39
[INFO] [stderr]    |
[INFO] [stderr] 96 |     assert!((p2.x - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]    |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec3d.rs:97:39
[INFO] [stderr]    |
[INFO] [stderr] 97 |     assert!((p2.y - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]    |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]   --> src/math/vec3d.rs:98:39
[INFO] [stderr]    |
[INFO] [stderr] 98 |     assert!((p2.z - 1.0).abs() < f64::EPSILON);
[INFO] [stderr]    |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/math/vec3d.rs:127:42
[INFO] [stderr]     |
[INFO] [stderr] 127 |     assert!((p3.x - (-1.0)).abs() < f64::EPSILON);
[INFO] [stderr]     |                                          ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/math/vec3d.rs:128:39
[INFO] [stderr]     |
[INFO] [stderr] 128 |     assert!((p3.y - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: use of deprecated constant `std::f64::EPSILON`: replaced by the `EPSILON` associated constant on `f64`
[INFO] [stderr]    --> src/math/vec3d.rs:129:39
[INFO] [stderr]     |
[INFO] [stderr] 129 |     assert!((p3.z - 0.0).abs() < f64::EPSILON);
[INFO] [stderr]     |                                       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]     --> src/coords/ijk.rs:1468:9
[INFO] [stderr]      |
[INFO] [stderr] 1468 |     let mut h3_ijk_normalized = CoordIJK { i: 1, j: 2, k: 0 }; // Start with H3 normalized
[INFO] [stderr]      |         ----^^^^^^^^^^^^^^^^^
[INFO] [stderr]      |         |
[INFO] [stderr]      |         help: remove this `mut`
[INFO] [stderr]      |
[INFO] [stderr]      = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/h3_index/mod.rs:801:17
[INFO] [stderr]     |
[INFO] [stderr] 801 |             let mut fijk_orig = FaceIJK {
[INFO] [stderr]     |                 ----^^^^^^^^^
[INFO] [stderr]     |                 |
[INFO] [stderr]     |                 help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `canonical_fijk_orig_for_comparison`
[INFO] [stderr]    --> src/h3_index/mod.rs:825:17
[INFO] [stderr]     |
[INFO] [stderr] 825 |             let canonical_fijk_orig_for_comparison = FaceIJK {
[INFO] [stderr]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_canonical_fijk_orig_for_comparison`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `original_digit_at_r`
[INFO] [stderr]   --> src/hierarchy/parent_child.rs:80:9
[INFO] [stderr]    |
[INFO] [stderr] 80 |     let original_digit_at_r = get_index_digit(parent_h, r_digit_to_invalidate);
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_original_digit_at_r`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/indexing/to_h3.rs:67:9
[INFO] [stderr]    |
[INFO] [stderr] 67 |     let mut geo_nan_lng = LatLng {
[INFO] [stderr]    |         ----^^^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/indexing/to_h3.rs:73:9
[INFO] [stderr]    |
[INFO] [stderr] 73 |     let mut geo_inf_lat = LatLng {
[INFO] [stderr]    |         ----^^^^^^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `avg_area_rads2`
[INFO] [stderr]   --> src/measures.rs:81:9
[INFO] [stderr]    |
[INFO] [stderr] 81 |     let avg_area_rads2 = crate::latlng::get_hexagon_area_avg_km2(5).unwrap() / (EARTH_RADIUS_KM * EARTH_RADIUS_KM);
[INFO] [stderr]    |         ^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_avg_area_rads2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `avg_area_km2`
[INFO] [stderr]    --> src/measures.rs:101:9
[INFO] [stderr]     |
[INFO] [stderr] 101 |     let avg_area_km2 = crate::latlng::get_hexagon_area_avg_km2(5).unwrap();
[INFO] [stderr]     |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_avg_area_km2`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> src/polygon.rs:70:9
[INFO] [stderr]    |
[INFO] [stderr] 70 |     let mut p1_lng = normalize_lng_for_comparison(
[INFO] [stderr]    |         ----^^^^^^
[INFO] [stderr]    |         |
[INFO] [stderr]    |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sq1`
[INFO] [stderr]    --> src/polygon.rs:576:9
[INFO] [stderr]     |
[INFO] [stderr] 576 |     let sq1 = LatLng { lat: 0.0, lng: 0.0 };
[INFO] [stderr]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_sq1`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sq2`
[INFO] [stderr]    --> src/polygon.rs:577:9
[INFO] [stderr]     |
[INFO] [stderr] 577 |     let sq2 = LatLng { lat: 0.0, lng: M_PI_2 }; // 90 deg east
[INFO] [stderr]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_sq2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `sq3`
[INFO] [stderr]    --> src/polygon.rs:578:9
[INFO] [stderr]     |
[INFO] [stderr] 578 |     let sq3 = LatLng {
[INFO] [stderr]     |         ^^^ help: if this is intentional, prefix it with an underscore: `_sq3`
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/regions/to_polygon.rs:513:9
[INFO] [stderr]     |
[INFO] [stderr] 513 |     let mut disk_size = match max_grid_disk_size(k_radius) {
[INFO] [stderr]     |         ----^^^^^^^^^
[INFO] [stderr]     |         |
[INFO] [stderr]     |         help: remove this `mut`
[INFO] [stderr] 
[INFO] [stderr] warning: function `bbox_equals` is never used
[INFO] [stderr]    --> src/bbox.rs:176:15
[INFO] [stderr]     |
[INFO] [stderr] 176 | pub(crate) fn bbox_equals(b1: &BBox, b2: &BBox) -> bool {
[INFO] [stderr]     |               ^^^^^^^^^^^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: function `test_overage_cases` is never used
[INFO] [stderr]    --> src/h3_index/mod.rs:926:6
[INFO] [stderr]     |
[INFO] [stderr] 926 |   fn test_overage_cases() {
[INFO] [stderr]     |      ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `FIJK_INPUT_N1` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1093:9
[INFO] [stderr]      |
[INFO] [stderr] 1093 |   const FIJK_INPUT_N1: FaceIJK = FaceIJK {
[INFO] [stderr]      |         ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `RES_INPUT_N1` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1097:9
[INFO] [stderr]      |
[INFO] [stderr] 1097 |   const RES_INPUT_N1: i32 = 5;
[INFO] [stderr]      |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `RUST_GENERATED_H3_N1` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1098:9
[INFO] [stderr]      |
[INFO] [stderr] 1098 |   const RUST_GENERATED_H3_N1: H3Index = H3Index(0x855943d3fffffff); // What Rust currently produces
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `C_EXPECTED_H3_N1` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1099:9
[INFO] [stderr]      |
[INFO] [stderr] 1099 |   const C_EXPECTED_H3_N1: H3Index = H3Index(0x855943cffffffff); // What C path implies
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `FIJK_INPUT_N2` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1102:9
[INFO] [stderr]      |
[INFO] [stderr] 1102 |   const FIJK_INPUT_N2: FaceIJK = FaceIJK {
[INFO] [stderr]      |         ^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `RES_INPUT_N2` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1106:9
[INFO] [stderr]      |
[INFO] [stderr] 1106 |   const RES_INPUT_N2: i32 = 5;
[INFO] [stderr]      |         ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `RUST_GENERATED_H3_N2` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1107:9
[INFO] [stderr]      |
[INFO] [stderr] 1107 |   const RUST_GENERATED_H3_N2: H3Index = H3Index(0x85594063fffffff); // What Rust currently produces
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `C_EXPECTED_H3_N2` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1108:9
[INFO] [stderr]      |
[INFO] [stderr] 1108 |   const C_EXPECTED_H3_N2: H3Index = H3Index(0x8559431bfffffff); // What C path implies
[INFO] [stderr]      |         ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `FIJK_INPUT_N1_FOR_TEST` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1112:7
[INFO] [stderr]      |
[INFO] [stderr] 1112 | const FIJK_INPUT_N1_FOR_TEST: FaceIJK = FaceIJK { face: 4, coord: CoordIJK { i: 46, j: 100, k: 0 } };
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `RES_INPUT_FOR_TEST` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1113:7
[INFO] [stderr]      |
[INFO] [stderr] 1113 | const RES_INPUT_FOR_TEST: i32 = 5;
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `C_EXPECTED_H3_N1_FOR_TEST` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1114:7
[INFO] [stderr]      |
[INFO] [stderr] 1114 | const C_EXPECTED_H3_N1_FOR_TEST: H3Index = H3Index(0x855943cffffffff);
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `FIJK_INPUT_N2_FOR_TEST` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1117:7
[INFO] [stderr]      |
[INFO] [stderr] 1117 | const FIJK_INPUT_N2_FOR_TEST: FaceIJK = FaceIJK { face: 4, coord: CoordIJK { i: 47, j: 99, k: 0 } };
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `C_EXPECTED_H3_N2_FOR_TEST` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1118:7
[INFO] [stderr]      |
[INFO] [stderr] 1118 | const C_EXPECTED_H3_N2_FOR_TEST: H3Index = H3Index(0x8559431bfffffff);
[INFO] [stderr]      |       ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `assert_h3_components_match` is never used
[INFO] [stderr]     --> src/h3_index/mod.rs:1121:4
[INFO] [stderr]      |
[INFO] [stderr] 1121 | fn assert_h3_components_match(
[INFO] [stderr]      |    ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `h3_to_string_alloc`
[INFO] [stderr]  --> examples/uncompact_compact.rs:3:59
[INFO] [stderr]   |
[INFO] [stderr] 3 |   cell_to_children, cell_to_children_size, compact_cells, h3_to_string_alloc, uncompact_cells, uncompact_cells_size,
[INFO] [stderr]   |                                                           ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]   --> examples/uncompact_compact.rs:81:7
[INFO] [stderr]    |
[INFO] [stderr] 81 |   let mut match_count = 0;
[INFO] [stderr]    |       ----^^^^^^^^^^^
[INFO] [stderr]    |       |
[INFO] [stderr]    |       help: remove this `mut`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> examples/uncompact_compact.rs:30:7
[INFO] [stderr]    |
[INFO] [stderr] 30 |   for i in 0..std::cmp::min(5, num_children) {
[INFO] [stderr]    |       ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> examples/uncompact_compact.rs:46:7
[INFO] [stderr]    |
[INFO] [stderr] 46 |   for i in 0..num_compacted {
[INFO] [stderr]    |       ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `match_count`
[INFO] [stderr]   --> examples/uncompact_compact.rs:81:7
[INFO] [stderr]    |
[INFO] [stderr] 81 |   let mut match_count = 0;
[INFO] [stderr]    |       ^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_match_count`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> examples/uncompact_compact.rs:82:7
[INFO] [stderr]    |
[INFO] [stderr] 82 |   for i in 0..std::cmp::min(5, uncompacted_size) {
[INFO] [stderr]    |       ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `H3Index`
[INFO] [stderr]  --> examples/polyfill_example.rs:4:109
[INFO] [stderr]   |
[INFO] [stderr] 4 |   degs_to_rads, max_polygon_to_cells_size, polygon_to_cells, ContainmentMode, GeoLoop, GeoPolygon, H3Error, H3Index,
[INFO] [stderr]   |                                                                                                             ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> examples/polyfill_example.rs:68:8
[INFO] [stderr]    |
[INFO] [stderr] 68 |   for (i, cell_h3) in polyfill_cells.iter().enumerate() {
[INFO] [stderr]    |        ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `H3Index` and `h3_to_string_alloc`
[INFO] [stderr]  --> examples/k_ring_example.rs:4:43
[INFO] [stderr]   |
[INFO] [stderr] 4 |   degs_to_rads, grid_disk, grid_distance, h3_to_string_alloc, lat_lng_to_cell, max_grid_disk_size, H3Error, H3Index,
[INFO] [stderr]   |                                           ^^^^^^^^^^^^^^^^^^                                                ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `distance`
[INFO] [stderr]   --> examples/k_ring_example.rs:42:11
[INFO] [stderr]    |
[INFO] [stderr] 42 |       let distance = grid_distance(origin_cell, *cell_h3)?;
[INFO] [stderr]    |           ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_distance`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `cube_to_ijk`
[INFO] [stderr]  --> tests/grid_path_internal_tests.rs:1:42
[INFO] [stderr]   |
[INFO] [stderr] 1 | use xs_h3::coords::ijk::{_ijk_normalize, cube_to_ijk, ijk_to_cube}; // Make cube_to_ijk pub(crate) if not already
[INFO] [stderr]   |                                          ^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `xs_h3::indexing::lat_lng_to_cell`
[INFO] [stderr]  --> tests/grid_path_internal_tests.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use xs_h3::indexing::lat_lng_to_cell;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `grid_path_cells_size` and `grid_path_cells`
[INFO] [stderr]  --> tests/grid_path_internal_tests.rs:5:35
[INFO] [stderr]   |
[INFO] [stderr] 5 | use xs_h3::traversal::grid_path::{grid_path_cells, grid_path_cells_size}; // Assuming grid_distance is pub
[INFO] [stderr]   |                                   ^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `LatLng`
[INFO] [stderr]  --> tests/grid_path_internal_tests.rs:6:39
[INFO] [stderr]   |
[INFO] [stderr] 6 | use xs_h3::types::{CoordIJK, H3Index, LatLng, H3_NULL};
[INFO] [stderr]   |                                       ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `H3Index` and `h3_to_string_alloc`
[INFO] [stderr]  --> examples/cell_traversal.rs:4:91
[INFO] [stderr]   |
[INFO] [stderr] 4 |   are_neighbor_cells, degs_to_rads, grid_distance, grid_path_cells, grid_path_cells_size, h3_to_string_alloc,
[INFO] [stderr]   |                                                                                           ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 5 |   lat_lng_to_cell, H3Error, H3Index, LatLng, H3_NULL,
[INFO] [stderr]   |                             ^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `are_neighbors`
[INFO] [stderr]   --> examples/cell_traversal.rs:36:7
[INFO] [stderr]    |
[INFO] [stderr] 36 |   let are_neighbors = are_neighbor_cells(cell1, cell2)?;
[INFO] [stderr]    |       ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_are_neighbors`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> examples/cell_traversal.rs:51:10
[INFO] [stderr]    |
[INFO] [stderr] 51 |     for (i, path_cell) in path_cells.iter().enumerate() {
[INFO] [stderr]    |          ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `h3_to_string_alloc`
[INFO] [stderr]  --> examples/cell_measures.rs:5:3
[INFO] [stderr]   |
[INFO] [stderr] 5 |   h3_to_string_alloc, lat_lng_to_cell, H3Error, LatLng,
[INFO] [stderr]   |   ^^^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `avg_area_km2`
[INFO] [stderr]   --> examples/cell_measures.rs:21:9
[INFO] [stderr]    |
[INFO] [stderr] 21 |     let avg_area_km2 = get_hexagon_area_avg_km2(res)?;
[INFO] [stderr]    |         ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_avg_area_km2`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `avg_edge_km`
[INFO] [stderr]   --> examples/cell_measures.rs:22:9
[INFO] [stderr]    |
[INFO] [stderr] 22 |     let avg_edge_km = get_hexagon_edge_length_avg_km(res)?;
[INFO] [stderr]    |         ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_avg_edge_km`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `area_km2`
[INFO] [stderr]   --> examples/cell_measures.rs:30:9
[INFO] [stderr]    |
[INFO] [stderr] 30 |     let area_km2 = cell_area_km2(cell)?;
[INFO] [stderr]    |         ^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_area_km2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `area_m2`
[INFO] [stderr]   --> examples/cell_measures.rs:31:9
[INFO] [stderr]    |
[INFO] [stderr] 31 |     let area_m2 = cell_area_m2(cell)?;
[INFO] [stderr]    |         ^^^^^^^ help: if this is intentional, prefix it with an underscore: `_area_m2`
[INFO] [stderr] 
[INFO] [stderr] warning: unused imports: `get_base_cell_number`, `get_resolution`, `h3_to_string_alloc`, `is_pentagon`, and `rads_to_degs`
[INFO] [stderr]  --> examples/basic_indexing.rs:2:52
[INFO] [stderr]   |
[INFO] [stderr] 2 |   cell_to_boundary, cell_to_lat_lng, degs_to_rads, get_base_cell_number, get_resolution, h3_to_string_alloc,
[INFO] [stderr]   |                                                    ^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^  ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 3 |   is_pentagon, is_valid_cell, lat_lng_to_cell, rads_to_degs, H3Error, H3Index, LatLng,
[INFO] [stderr]   |   ^^^^^^^^^^^                                  ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `cell_center`
[INFO] [stderr]   --> examples/basic_indexing.rs:42:7
[INFO] [stderr]    |
[INFO] [stderr] 42 |   let cell_center: LatLng = cell_to_lat_lng(cell)?;
[INFO] [stderr]    |       ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_cell_center`
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `i`
[INFO] [stderr]   --> examples/basic_indexing.rs:52:7
[INFO] [stderr]    |
[INFO] [stderr] 52 |   for i in 0..boundary.num_verts {
[INFO] [stderr]    |       ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `center_child`
[INFO] [stderr]   --> examples/basic_indexing.rs:75:7
[INFO] [stderr]    |
[INFO] [stderr] 75 |   let center_child = xs_h3::cell_to_center_child(parent_cell, center_child_res)?;
[INFO] [stderr]    |       ^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_center_child`
[INFO] [stderr] 
[INFO] [stderr] warning: `xs_h3` (lib test) generated 144 warnings (37 duplicates) (run `cargo fix --lib -p xs_h3 --tests` to apply 21 suggestions)
[INFO] [stderr] warning: `xs_h3` (example "uncompact_compact") generated 6 warnings (run `cargo fix --example "uncompact_compact" -p xs_h3` to apply 6 suggestions)
[INFO] [stderr] warning: `xs_h3` (example "polyfill_example") generated 2 warnings (run `cargo fix --example "polyfill_example" -p xs_h3` to apply 2 suggestions)
[INFO] [stderr] warning: `xs_h3` (example "k_ring_example") generated 2 warnings (run `cargo fix --example "k_ring_example" -p xs_h3` to apply 2 suggestions)
[INFO] [stderr] warning: `xs_h3` (test "grid_path_internal_tests") generated 4 warnings (run `cargo fix --test "grid_path_internal_tests" -p xs_h3` to apply 4 suggestions)
[INFO] [stderr] warning: `xs_h3` (example "cell_traversal") generated 3 warnings (run `cargo fix --example "cell_traversal" -p xs_h3` to apply 3 suggestions)
[INFO] [stderr] warning: `xs_h3` (example "cell_measures") generated 5 warnings (run `cargo fix --example "cell_measures" -p xs_h3` to apply 5 suggestions)
[INFO] [stderr] warning: `xs_h3` (example "basic_indexing") generated 4 warnings (run `cargo fix --example "basic_indexing" -p xs_h3` to apply 4 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.11s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/xs_h3/8b0a9c8433b53d14/out/xs_h3-8b0a9c8433b53d14)
[INFO] [stdout] 
[INFO] [stdout] running 159 tests
[INFO] [stdout] test bbox::tests::test_bbox_center ... ok
[INFO] [stdout] test coords::face_ijk::tests::test_adjust_overage_pent_leading_4 ... ok
[INFO] [stdout] test coords::face_ijk::tests::test_geo_to_closest_face_poles ... ok
[INFO] [stdout] test coords::face_ijk::tests::test_adjust_overage_class_ii_noop ... ok
[INFO] [stdout] test bbox::tests::test_bbox_contains_point ... ok
[INFO] [stdout] test coords::face_ijk::tests::test_face_ijk_to_cell_boundary_pentagon_class_iii ... ok
[INFO] [stdout] test coords::face_ijk::tests::test_face_ijk_to_verts_and_pent_to_verts ... ok
[INFO] [stdout] test coords::face_ijk::tests::test_face_ijk_to_cell_boundary_hexagon ... ok
[INFO] [stdout] test coords::face_ijk::tests::test_geo_to_face_ijk_face_centers ... ok
[INFO] [stdout] test coords::face_ijk::tests::test_face_ijk_to_geo_roundtrip ... ok
[INFO] [stdout] test coords::ijk::tests::test_down_ap3 ... ok
[INFO] [stdout] test coords::ijk::tests::test_down_ap7 ... ok
[INFO] [stdout] test coords::face_ijk::tests::test_adjust_pent_vert_overage ... ok
[INFO] [stdout] test coords::ijk::tests::test_hex2d_to_coord_ijk ... ok
[INFO] [stdout] test coords::ijk::tests::test_ijk_add ... ok
[INFO] [stdout] test coords::face_ijk::tests::test_face_ijk_to_cell_boundary_pentagon_class_ii ... ok
[INFO] [stdout] test bbox::tests::test_bbox_width_height_rads ... ok
[INFO] [stdout] test coords::face_ijk::tests::test_adjust_overage_class_ii_new_face ... ok
[INFO] [stdout] test coords::ijk::tests::test_ijk_cube_transformations ... ok
[INFO] [stdout] test coords::face_ijk::tests::test_geo_to_hex2d_exact ... ok
[INFO] [stdout] test coords::ijk::tests::test_ijk_distance ... ok
[INFO] [stdout] test coords::ijk::tests::test_ijk_matches ... ok
[INFO] [stdout] test coords::ijk::tests::test_ijk_normalize ... ok
[INFO] [stdout] test coords::ijk::tests::test_ijk_normalize_saturating_behavior ... ok
[INFO] [stdout] test coords::ijk::tests::test_ijk_scale ... ok
[INFO] [stdout] test coords::face_ijk::tests::test_hex2d_to_geo_roundtrip ... ok
[INFO] [stdout] test coords::ijk::tests::test_ijk_to_hex2d_roundtrip ... ok
[INFO] [stdout] test coords::ijk::tests::test_ijk_to_ij_and_back ... ok
[INFO] [stdout] test coords::ijk::tests::test_neighbor ... ok
[INFO] [stdout] test coords::ijk::tests::test_rotate_digit ... ok
[INFO] [stdout] test coords::ijk::tests::test_set_ijk ... ok
[INFO] [stdout] test coords::ijk::tests::test_ijk_sub ... ok
[INFO] [stdout] test coords::ijk::tests::test_up_ap7_checked ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_get_base_cell_for_specific_failing_h3index ... ok
[INFO] [stdout] test coords::ijk::tests::test_unit_ijk_to_digit ... ok
[INFO] [stdout] test coords::ijk::tests::test_ijk_rotate60 ... ok
[INFO] [stdout] test coords::ijk::tests::test_up_ap7r_checked ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_get_res0_cells ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_get_base_cell_with_known_valid_h3 ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_is_pentagon ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_get_icosahedron_faces_pentagon ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_is_res_class_iii_api ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_get_num_cells ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_is_valid_cell_base_cells ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_is_valid_cell_deleted_k_subsequence ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_is_valid_cell_invalid_base_cell ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_pentagon_count ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_get_icosahedron_faces_simple_hex ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_get_pentagons ... ok
[INFO] [stdout] test h3_index::string_conv::tests::test_h3_to_string ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_is_valid_cell_reserved_bits_set ... ok
[INFO] [stdout] test h3_index::string_conv::tests::test_string_to_h3 ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_is_valid_cell_resolutions ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_is_valid_cell_invalid_digits ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_max_face_count_simple ... ok
[INFO] [stdout] test h3_index::tests::test_get_set_base_cell ... ok
[INFO] [stdout] test h3_index::tests::test_get_set_index_digit ... ok
[INFO] [stdout] test h3_index::tests::test_get_set_reserved_bits ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_is_valid_cell_getters ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_is_valid_cell_high_bit_set ... ok
[INFO] [stdout] test h3_index::inspection::tests::test_is_valid_cell_modes ... ok
[INFO] [stdout] test h3_index::tests::test_h3_fijk_h3_roundtrip_finer_res ... ok
[INFO] [stdout] test h3_index::tests::test_get_set_high_bit ... ok
[INFO] [stdout] test h3_index::tests::test_get_set_mode ... ok
[INFO] [stdout] test h3_index::tests::test_face_ijk_h3_roundtrip_res0 ... ok
[INFO] [stdout] test h3_index::tests::test_is_resolution_class_iii ... ok
[INFO] [stdout] test h3_index::tests::test_pentagon_k_axis_rotation_in_face_ijk_to_h3 ... ok
[INFO] [stdout] test h3_index::tests::test_set_h3_index_function ... ok
[INFO] [stdout] test h3_index::string_conv::tests::test_h3_to_string_alloc ... ok
[INFO] [stdout] test h3_index::tests::test_face_ijk_h3_roundtrip_res0_all_valid_inputs ... ok
[INFO] [stdout] test hierarchy::compaction::tests::test_compact_cells_duplicate_input ... ok
[INFO] [stdout] test h3_index::tests::test_face_ijk_h3_roundtrip_res0_simple ... ok
[INFO] [stdout] test h3_index::tests::test_get_set_resolution ... ok
[INFO] [stdout] test h3_index::tests::test_h3_leading_non_zero_digit ... ok
[INFO] [stdout] test hierarchy::compaction::tests::test_compact_cells_mixed_res ... ok
[INFO] [stdout] test h3_index::tests::test_h3_rotations ... ok
[INFO] [stdout] test hierarchy::compaction::tests::test_compact_cells_simple_parent ... ok
[INFO] [stdout] test hierarchy::compaction::tests::test_uncompact_cells ... ok
[INFO] [stdout] test h3_index::tests::test_is_resolution_class_iii_test ... ok
[INFO] [stdout] test h3_index::tests::test_up_ap7_specific ... ok
[INFO] [stdout] test hierarchy::compaction::tests::test_uncompact_cells_size ... ok
[INFO] [stdout] test hierarchy::parent_child::tests::test_cell_to_center_child ... ok
[INFO] [stdout] test hierarchy::parent_child::tests::test_cell_to_child_pos_and_back ... ok
[INFO] [stdout] test hierarchy::parent_child::tests::test_cell_to_children_size ... ok
[INFO] [stdout] test hierarchy::parent_child::tests::test_cell_to_child_pos_and_back_pentagon ... ok
[INFO] [stdout] test hierarchy::compaction::tests::test_compact_cells_no_compaction ... ok
[INFO] [stdout] test hierarchy::parent_child::tests::test_cell_to_parent ... ok
[INFO] [stdout] test hierarchy::compaction::tests::test_compact_cells_pentagon_children ... ok
[INFO] [stdout] test hierarchy::parent_child::tests::test_cell_to_child_pos_errors ... ok
[INFO] [stdout] test indexing::to_h3::tests::test_lat_lng_to_cell_res_domain ... ok
[INFO] [stdout] test hierarchy::parent_child::tests::test_child_pos_to_cell_errors ... ok
[INFO] [stdout] test indexing::from_h3::tests::test_cell_to_lat_lng_invalid_input ... ok
[INFO] [stdout] test indexing::from_h3::tests::test_cell_to_lat_lng_and_boundary_roundtrip ... ok
[INFO] [stdout] test iterators::tests::test_iter_init_base_cell_num_invalid ... ok
[INFO] [stdout] test iterators::tests::test_iter_init_res_invalid ... ok
[INFO] [stdout] test iterators::tests::test_iter_children_pentagon ... ok
[INFO] [stdout] test iterators::tests::test_iter_init_parent_invalid ... ok
[INFO] [stdout] test latlng::tests::test_constrain_lat ... ok
[INFO] [stdout] test latlng::tests::test_geo_az_distance_rads_noop ... ok
[INFO] [stdout] test indexing::from_h3::tests::test_cell_to_boundary_invalid_input ... ok
[INFO] [stdout] test latlng::tests::test_geo_almost_equal_threshold ... ok
[INFO] [stdout] test indexing::to_h3::tests::test_lat_lng_to_cell_coord_domain ... ok
[INFO] [stdout] test latlng::tests::test_geo_az_distance_rads_invertible ... ok
[INFO] [stdout] test indexing::to_h3::tests::test_lat_lng_to_cell_known_values ... ok
[INFO] [stdout] test latlng::tests::test_pos_angle_rads ... ok
[INFO] [stdout] test latlng::tests::test_geo_az_distance_rads_c_north_to_south_pole_case ... ok
[INFO] [stdout] test local_ij::tests::test_local_ijk_roundtrip_neighbors ... ok
[INFO] [stdout] test local_ij::tests::test_cell_to_local_ijk_identity ... ok
[INFO] [stdout] test latlng::tests::test_geo_azimuth_rads ... ok
[INFO] [stdout] test local_ij::tests::test_local_ijk_to_cell_identity ... ok
[INFO] [stdout] test math::vec2d::tests::test_v2d_almost_equals ... ok
[INFO] [stdout] test math::vec2d::tests::test_v2d_mag ... ok
[INFO] [stdout] test measures::tests::test_cli_cell_area_km2 ... ok
[INFO] [stdout] test polygon::tests::test_is_clockwise_geoloop ... ok
[INFO] [stdout] test regions::to_polygon::tests::test_cells_to_multi_polygon_two_disjoint_cells ... ok
[INFO] [stdout] test regions::to_polygon::tests::test_cells_to_multi_polygon_donut ... ok
[INFO] [stdout] test traversal::distance::tests::test_grid_distance_identity ... ok
[INFO] [stdout] test regions::to_polygon::tests::test_cells_to_multi_polygon_single_cell ... ok
[INFO] [stdout] test traversal::distance::tests::test_grid_distance_invalid_input ... ok
[INFO] [stdout] test traversal::distance::tests::test_grid_distance_res_mismatch ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_grid_disk_distances_k0 ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_grid_disk_k1 ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_grid_disk_distances_pentagon_k1 ... ok
[INFO] [stdout] test polygon::tests::test_generic_area_rads2_simple_triangle ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_grid_disk_unsafe_near_pentagon ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_grid_disk_unsafe_k1_hex ... ok
[INFO] [stdout] test traversal::distance::tests::test_grid_distance_direct_neighbors ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_grid_disk_unsafe_pentagon_origin ... ok
[INFO] [stdout] test local_ij::tests::test_local_ij_roundtrip ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_grid_ring_unsafe_k0 ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_grid_ring_unsafe_on_pentagon_origin ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_grid_ring_unsafe_k1_hex ... ok
[INFO] [stdout] test iterators::tests::test_iter_children_hexagon ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_grid_ring_unsafe_k2_hex ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_grid_ring_unsafe_invalid_k ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_grid_ring_unsafe_near_pentagon_failure ... ok
[INFO] [stdout] test math::extensions::tests::test_ipow ... ok
[INFO] [stdout] test latlng::tests::test_constrain_lng ... ok
[INFO] [stdout] test measures::tests::test_cli_cell_area_rads2 ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_grid_ring_unsafe_output_too_small ... ok
[INFO] [stdout] test traversal::grid_path::tests::test_grid_distance_vs_are_neighbors ... ok
[INFO] [stdout] test traversal::grid_path::tests::test_grid_path_cells_res_mismatch ... ok
[INFO] [stdout] test traversal::grid_path::tests::test_grid_path_cells_properties_longer_path ... ok
[INFO] [stdout] test traversal::grid_path::tests::test_grid_path_cells_size_and_path_identity ... ok
[INFO] [stdout] test traversal::grid_path::tests::test_rounding_behavior ... ok
[INFO] [stdout] test traversal::grid_path::tests::test_local_ijk_roundtrip_simple ... ok
[INFO] [stdout] test traversal::grid_path::tests::test_specific_pair_distance_vs_neighbors ... ok
[INFO] [stdout] test traversal::neighbors::tests::test_direction_for_neighbor ... ok
[INFO] [stdout] test traversal::neighbors::tests::test_are_neighbor_cells ... ok
[INFO] [stdout] test math::vec3d::tests::test_point_square_dist ... ok
[INFO] [stdout] test traversal::grid_disk::tests::test_max_grid_disk_size ... ok
[INFO] [stdout] test math::vec2d::tests::test_v2d_intersect ... ok
[INFO] [stdout] test polygon::tests::test_point_inside_geoloop ... ok
[INFO] [stdout] test traversal::grid_path::tests::test_grid_path_cells_direct_neighbor ... ok
[INFO] [stdout] test traversal::neighbors::tests::test_direction_for_neighbor_pentagon ... ok
[INFO] [stdout] test polygon::tests::test_line_crosses_line ... ok
[INFO] [stdout] test traversal::grid_path::tests::test_cube_ijk_conversion_asymmetry ... ok
[INFO] [stdout] test math::vec3d::tests::test_geo_to_vec3d ... ok
[INFO] [stdout] test iterators::tests::test_iter_all_cells_at_resolution ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 159 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.03s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/grid_path_internal_tests.rs (/opt/rustwide/target/debug/build/xs_h3/f757bcb136d5ea66/out/grid_path_internal_tests-f757bcb136d5ea66)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test test_step1_cell_to_local_ijk ... ok
[INFO] [stdout] test test_step2_ijk_to_cube ... ok
[INFO] [stdout] test test_step6_local_ijk_to_cell_rust_path ... ok
[INFO] [stdout] test test_step4_ijk_round_to_axial_hex_center_tie_breaking ... ok
[INFO] [stdout] test test_step5_axial_to_h3_ijk_plus_conversion ... ok
[INFO] [stdout] test test_step7_compare_rust_rounded_axial_with_c_implied_axial ... ok
[INFO] [stdout] test test_grid_path_internals_for_failing_case ... ok
[INFO] [stdout] test test_step3_line_interpolation_steps ... ok
[INFO] [stdout] test test_step4_ijk_round_to_axial_hex_center ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/h3_properties_tests.rs (/opt/rustwide/target/debug/build/xs_h3/187a2201c8ec4bfe/out/h3_properties_tests-187a2201c8ec4bfe)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test test_cli_is_valid_cell ... ok
[INFO] [stdout] test test_cli_is_pentagon ... ok
[INFO] [stderr]      Running tests/hierarchy_tests.rs (/opt/rustwide/target/debug/build/xs_h3/2f0fe9756e25067b/out/hierarchy_tests-2f0fe9756e25067b)
[INFO] [stdout] test test_cli_get_base_cell_number ... ok
[INFO] [stdout] test test_cli_get_resolution ... ok
[INFO] [stdout] test test_cli_is_res_class_iii ... ok
[INFO] [stdout] test test_cli_string_to_h3_and_h3_to_string ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 5 tests
[INFO] [stdout] test test_cli_cell_to_child_pos ... ok
[INFO] [stdout] test test_cli_cell_to_center_child ... ok
[INFO] [stdout] test test_cli_cell_to_parent ... ok
[INFO] [stdout] test test_cli_child_pos_to_cell ... ok
[INFO] [stdout] test test_cli_cell_to_children_size ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/indexing_tests.rs (/opt/rustwide/target/debug/build/xs_h3/2c01510be320f285/out/indexing_tests-2c01510be320f285)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test test_cli_cell_to_boundary ... ok
[INFO] [stdout] test test_cli_cell_to_lat_lng ... ok
[INFO] [stdout] test test_cli_invalid_cell_to_lat_lng ... ok
[INFO] [stdout] test test_cli_lat_lng_to_cell ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/serde_tests.rs (/opt/rustwide/target/debug/build/xs_h3/bcb292a01c8d5a0f/out/serde_tests-bcb292a01c8d5a0f)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test test_latlng_serde ... ok
[INFO] [stdout] test test_cell_boundary_serde ... ok
[INFO] [stdout] test test_h3error_serde ... ok
[INFO] [stdout] test test_h3index_serde ... ok
[INFO] [stdout] test test_vec_h3index_serde ... ok
[INFO] [stdout] test test_polygon_rust_serde ... ok
[INFO] [stdout] test test_multi_polygon_rust_serde ... ok
[INFO] [stdout] test test_geopolygon_serde ... ok
[INFO] [stdout] test test_direction_serde ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/traversal_tests.rs (/opt/rustwide/target/debug/build/xs_h3/809f6b345fd492f7/out/traversal_tests-809f6b345fd492f7)
[INFO] [stdout] 
[INFO] [stdout] running 4 tests
[INFO] [stdout] test test_cli_are_neighbor_cells ... ok
[INFO] [stdout] test test_cli_grid_distance ... ok
[INFO] [stdout] test test_cli_grid_ring ... ok
[INFO] [stdout] test test_cli_grid_disk ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 4 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests xs_h3
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "ea820791a713d1f59ba88b543614aa34d6a2fc5ae722a1cccfe22043e6ac515a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ea820791a713d1f59ba88b543614aa34d6a2fc5ae722a1cccfe22043e6ac515a", kill_on_drop: false }`
[INFO] [stdout] ea820791a713d1f59ba88b543614aa34d6a2fc5ae722a1cccfe22043e6ac515a
