[1m[32m    Checking[0m saorsa-core v0.3.8 (/Users/davidirvine/Desktop/Devel/projects/saorsa-core)
[0m[1m[38;5;9merror[0m[0m[1m: implementation is not supported in `trait`s or `impl`s[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mexamples/dht_performance_demo.rs:31:1[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m31[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0mimpl Default for LegacyDHTStorage {[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: consider moving the implementation out to a nearby module scope[0m

[0m[1m[38;5;9merror[0m[0m[1m: this import is redundant[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/q_learning_cache_integration_test.rs:21:1[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m21[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0muse tokio;[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: remove it entirely[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#single_component_path_imports[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D clippy::single-component-path-imports` implied by `-D warnings`[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(clippy::single_component_path_imports)]`[0m

[0m[1m[38;5;9merror[0m[0m[1m: `assert!(true)` will be optimized out by the compiler[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/network_error_tests.rs:40:13[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m40[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            assert!(true);[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m             [0m[0m[1m[38;5;9m^^^^^^^^^^^^^[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: remove it[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#assertions_on_constants[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D clippy::assertions-on-constants` implied by `-D warnings`[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(clippy::assertions_on_constants)]`[0m

[0m[1m[38;5;9merror[0m[0m[1m: field assignment outside of initializer for an instance created with Default::default()[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/network_error_tests.rs:63:5[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m63[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    config.listen_addr = "127.0.0.1:80".parse().unwrap();[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m     [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;10mnote[0m[0m: consider initializing the variable with `saorsa_core::NodeConfig { listen_addr: "127.0.0.1:80".parse().unwrap(), ..Default::default() }` and removing relevant reassignments[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/network_error_tests.rs:60:5[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m60[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let mut config = P2PNodeConfig::default();[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m     [0m[0m[1m[38;5;10m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D clippy::field-reassign-with-default` implied by `-D warnings`[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(clippy::field_reassign_with_default)]`[0m

[0m[1m[38;5;9merror[0m[0m[1m: field assignment outside of initializer for an instance created with Default::default()[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/network_error_tests.rs:135:5[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m135[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    config.mcp_server_config = None;[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m     [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;10mnote[0m[0m: consider initializing the variable with `saorsa_core::NodeConfig { mcp_server_config: None, ..Default::default() }` and removing relevant reassignments[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/network_error_tests.rs:134:5[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m134[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let mut config = P2PNodeConfig::default();[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m     [0m[0m[1m[38;5;10m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#field_reassign_with_default[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `ContentHash` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/eviction_strategy_test.rs:165:36[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m165[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        (state, CacheAction::Evict(popular_recent.clone())),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                    [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `popular_recent`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D clippy::clone-on-copy` implied by `-D warnings`[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(clippy::clone_on_copy)]`[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `ContentHash` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/eviction_strategy_test.rs:174:36[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m174[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        (state, CacheAction::Evict(stale_old.clone())),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                    [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `stale_old`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[E0425][0m[0m[1m: cannot find value `exploitation_count` in this scope[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/multi_armed_bandit_integration_test.rs:260:13[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m249[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let mut _exploitation_count = 0;[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m             [0m[0m[1m[38;5;12m-------------------[0m[0m [0m[0m[1m[38;5;12m`_exploitation_count` defined here[0m
[0m[1m[38;5;12m...[0m
[0m[1m[38;5;12m260[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            exploitation_count += 1;[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m             [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;14mhelp[0m[0m: the leading underscore in `_exploitation_count` marks it as unused, consider renaming it to `exploitation_count`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m249[0m[0m [0m[0m[38;5;9m- [0m[0m    let mut [0m[0m[38;5;9m_exploitation_count[0m[0m = 0;[0m
[0m[1m[38;5;12m249[0m[0m [0m[0m[38;5;10m+ [0m[0m    let mut [0m[0m[38;5;10mexploitation_count[0m[0m = 0;[0m
[0m    [0m[0m[1m[38;5;12m|[0m

[1m[31merror[0m[1m:[0m could not compile `saorsa-core` (test "network_error_tests") due to 3 previous errors
[1m[33mwarning[0m[1m:[0m build failed, waiting for other jobs to finish...
[1m[31merror[0m[1m:[0m could not compile `saorsa-core` (example "dht_performance_demo") due to 1 previous error
[0m[1m[38;5;9merror[0m[0m[1m: unused variable: `signing_key`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:118:9[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m118[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let signing_key = identity.signing_key_bytes();[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m         [0m[0m[1m[38;5;9m^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: if this is intentional, prefix it with an underscore: `_signing_key`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D unused-variables` implied by `-D warnings`[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(unused_variables)]`[0m

[0m[1m[38;5;9merror[0m[0m[1m: fields `network_latency` and `packet_loss_rate` are never read[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/full_network_simulation.rs:31:5[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m29[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0mstruct NetworkSimulation {[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m        [0m[0m[1m[38;5;12m-----------------[0m[0m [0m[0m[1m[38;5;12mfields in this struct[0m
[0m[1m[38;5;12m30[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    nodes: HashMap<NodeId, Arc<NetworkCoordinator>>,[0m
[0m[1m[38;5;12m31[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    network_latency: Duration,[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m     [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^[0m
[0m[1m[38;5;12m32[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    packet_loss_rate: f64,[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m     [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D dead-code` implied by `-D warnings`[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(dead_code)]`[0m

[0m[1m[38;5;9merror[E0599][0m[0m[1m: no method named `to_async` found for mutable reference `&mut criterion::Bencher<'_>` in the current scope[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mbenches/adaptive_benchmarks.rs:52:11[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m52[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        b.to_async(&rt).iter(|| async {[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m           [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mmethod not found in `&mut criterion::Bencher<'_>`[0m

[0m[1m[38;5;9merror[E0433][0m[0m[1m: failed to resolve: use of undeclared type `ChurnPredictor`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/adaptive_network_integration_test.rs:229:21[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m229[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let predictor = ChurnPredictor::new();[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                     [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9muse of undeclared type `ChurnPredictor`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;14mhelp[0m[0m: consider importing this struct[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m5[0m[0m   [0m[0m[38;5;10m+ use saorsa_core::adaptive::ChurnPredictor;[0m
[0m    [0m[0m[1m[38;5;12m|[0m

[0m[1m[38;5;9merror[E0433][0m[0m[1m: failed to resolve: use of undeclared type `AdaptiveStrategy`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/adaptive_network_integration_test.rs:283:24[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m283[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let mut eviction = AdaptiveStrategy::new(Arc::new(RwLock::new(HashMap::new())));[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                        [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9muse of undeclared type `AdaptiveStrategy`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;14mhelp[0m[0m: consider importing this struct[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m5[0m[0m   [0m[0m[38;5;10m+ use saorsa_core::adaptive::AdaptiveStrategy;[0m
[0m    [0m[0m[1m[38;5;12m|[0m

[0m[1m[38;5;9merror[E0433][0m[0m[1m: failed to resolve: use of undeclared type `SecurityManager`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/adaptive_network_integration_test.rs:420:19[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m420[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let monitor = SecurityManager::new([0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                   [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9muse of undeclared type `SecurityManager`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;14mhelp[0m[0m: consider importing this struct[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m5[0m[0m   [0m[0m[38;5;10m+ use saorsa_core::adaptive::SecurityManager;[0m
[0m    [0m[0m[1m[38;5;12m|[0m

[0m[1m[38;5;9merror[E0433][0m[0m[1m: failed to resolve: use of undeclared type `SecurityConfig`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/adaptive_network_integration_test.rs:421:9[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m421[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        SecurityConfig::default(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m         [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9muse of undeclared type `SecurityConfig`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;14mhelp[0m[0m: consider importing one of these structs[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m5[0m[0m   [0m[0m[38;5;10m+ use saorsa_core::adaptive::SecurityConfig;[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m5[0m[0m   [0m[0m[38;5;10m+ use saorsa_core::config::SecurityConfig;[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m5[0m[0m   [0m[0m[38;5;10m+ use saorsa_core::network::SecurityConfig;[0m
[0m    [0m[0m[1m[38;5;12m|[0m

[0m[1m[38;5;9merror[E0433][0m[0m[1m: failed to resolve: use of undeclared type `AdaptiveStrategy`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/adaptive_network_integration_test.rs:478:40[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m478[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let eviction = Arc::new(Mutex::new(AdaptiveStrategy::new(Arc::new(RwLock::new([0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                        [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9muse of undeclared type `AdaptiveStrategy`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;14mhelp[0m[0m: consider importing this struct[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m5[0m[0m   [0m[0m[38;5;10m+ use saorsa_core::adaptive::AdaptiveStrategy;[0m
[0m    [0m[0m[1m[38;5;12m|[0m

[0m[1m[38;5;9merror[0m[0m[1m: field `cache_evictions` is never read[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mexamples/adaptive_network_monitor.rs:35:5[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m24[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0mstruct NetworkMetrics {[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m        [0m[0m[1m[38;5;12m--------------[0m[0m [0m[0m[1m[38;5;12mfield in this struct[0m
[0m[1m[38;5;12m...[0m
[0m[1m[38;5;12m35[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    cache_evictions: usize,[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m     [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D dead-code` implied by `-D warnings`[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(dead_code)]`[0m

[0m[1m[38;5;9merror[0m[0m[1m: field `coordinator` is never read[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mexamples/adaptive_network_monitor.rs:84:5[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m82[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0mstruct AdaptiveNetworkMonitor {[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m        [0m[0m[1m[38;5;12m----------------------[0m[0m [0m[0m[1m[38;5;12mfield in this struct[0m
[0m[1m[38;5;12m83[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    network: Arc<Network>,[0m
[0m[1m[38;5;12m84[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    coordinator: Arc<AdaptiveCoordinator>,[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m     [0m[0m[1m[38;5;9m^^^^^^^^^^^[0m

[1m[31merror[0m[1m:[0m could not compile `saorsa-core` (test "eviction_strategy_test") due to 2 previous errors
[0m[1m[38;5;9merror[E0599][0m[0m[1m: no method named `to_async` found for mutable reference `&mut criterion::Bencher<'_>` in the current scope[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mbenches/adaptive_benchmarks.rs:59:11[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m59[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        b.to_async(&rt).iter(|| async {[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m           [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mmethod not found in `&mut criterion::Bencher<'_>`[0m

[0m[1m[38;5;9merror[0m[0m[1m: useless use of `vec!`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/adaptive_components_test.rs:253:22[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m253[0m[0m [0m[0m[1m[38;5;12m|[0m[0m   [0m[0m    let test_cases = vec![[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m ______________________^[0m
[0m[1m[38;5;12m254[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m        (0.5, 10.0, 300, 1024 * 50),   // 50% util, 10/hr freq, 5min recency, 50KB[0m
[0m[1m[38;5;12m255[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m        (0.9, 100.0, 60, 1024 * 1024), // 90% util, 100/hr freq, 1min recency, 1MB[0m
[0m[1m[38;5;12m256[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m        (0.1, 1.0, 86400, 500),        // 10% util, 1/hr freq, 1day recency, 500B[0m
[0m[1m[38;5;12m257[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m    ];[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|_____^[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D clippy::useless-vec` implied by `-D warnings`[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(clippy::useless_vec)]`[0m
[0m[1m[38;5;14mhelp[0m[0m: you can use an array directly[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m253[0m[0m [0m[0m[38;5;10m~ [0m[0m    let test_cases = [0m[0m[38;5;10m[(0.5, 10.0, 300, 1024 * 50),   // 50% util, 10/hr freq, 5min recency, 50KB[0m
[0m[1m[38;5;12m254[0m[0m [0m[0m[38;5;10m+         (0.9, 100.0, 60, 1024 * 1024), // 90% util, 100/hr freq, 1min recency, 1MB[0m
[0m[1m[38;5;12m255[0m[0m [0m[0m[38;5;10m~         (0.1, 1.0, 86400, 500)][0m[0m;[0m
[0m    [0m[0m[1m[38;5;12m|[0m

[0m[1m[38;5;9merror[0m[0m[1m: useless use of `vec!`[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/full_network_simulation.rs:80:26[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m80[0m[0m [0m[0m[1m[38;5;12m|[0m[0m   [0m[0m        let data_items = vec![[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m __________________________^[0m
[0m[1m[38;5;12m81[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m            b"Important document".to_vec(),[0m
[0m[1m[38;5;12m82[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m            b"Video file chunk 1".to_vec(),[0m
[0m[1m[38;5;12m83[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m            b"Configuration data".to_vec(),[0m
[0m[1m[38;5;12m84[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m            b"User profile information".to_vec(),[0m
[0m[1m[38;5;12m85[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m            b"Cached web content".to_vec(),[0m
[0m[1m[38;5;12m86[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m        ];[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|_________^[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D clippy::useless-vec` implied by `-D warnings`[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(clippy::useless_vec)]`[0m
[0m[1m[38;5;14mhelp[0m[0m: you can use an array directly[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m80[0m[0m [0m[0m[38;5;10m~ [0m[0m        let data_items = [0m[0m[38;5;10m[b"Important document".to_vec(),[0m
[0m[1m[38;5;12m81[0m[0m [0m[0m[38;5;10m+             b"Video file chunk 1".to_vec(),[0m
[0m[1m[38;5;12m82[0m[0m [0m[0m[38;5;10m+             b"Configuration data".to_vec(),[0m
[0m[1m[38;5;12m83[0m[0m [0m[0m[38;5;10m+             b"User profile information".to_vec(),[0m
[0m[1m[38;5;12m84[0m[0m [0m[0m[38;5;10m~             b"Cached web content".to_vec()][0m[0m;[0m
[0m   [0m[0m[1m[38;5;12m|[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:36:13[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m36[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            root_cid.clone(),[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m             [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D clippy::clone-on-copy` implied by `-D warnings`[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(clippy::clone_on_copy)]`[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:40:17[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m40[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                root_cid.clone(),[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m                 [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[E0599][0m[0m[1m: no method named `to_async` found for mutable reference `&mut criterion::Bencher<'_>` in the current scope[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mbenches/adaptive_benchmarks.rs:71:11[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m71[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        b.to_async(&rt).iter(|| async {[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m           [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mmethod not found in `&mut criterion::Bencher<'_>`[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:68:13[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m68[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            included_root.clone(),[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m             [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `included_root`[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:72:17[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m72[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                included_root.clone(),[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m                 [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `included_root`[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:90:17[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m90[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                included_root.clone(),[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m                 [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `included_root`[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:101:17[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m101[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                excluded_root.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                 [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `excluded_root`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:121:13[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m121[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m             [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:125:17[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m125[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                 [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:157:13[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m157[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m             [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:161:17[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m161[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                 [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:195:13[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m195[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m             [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:199:17[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m199[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                 [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:219:31[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m219[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            .cache_if_allowed(root_cid.clone(), cid, content.clone())[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                               [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: useless conversion to the same type: `saorsa_core::adaptive::NodeIdentity`[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mexamples/adaptive_network_monitor.rs:97:61[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m97[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        let coordinator = Arc::new(AdaptiveCoordinator::new(identity.into(), coord_cfg).await?);[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m                                                             [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: consider removing `.into()`: `identity`[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_conversion[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D clippy::useless-conversion` implied by `-D warnings`[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(clippy::useless_conversion)]`[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:242:13[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m242[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m             [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:246:17[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m246[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                 [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:283:17[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m283[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                 [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:287:21[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m287[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                    root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                     [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:324:21[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m324[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                    root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                     [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:328:25[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m328[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                        root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                         [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:369:17[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m369[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                 [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:373:21[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m373[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                    root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                     [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:386:35[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m386[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                .cache_if_allowed(root_cid.clone(), content, vec![])[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                   [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:410:13[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m410[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m             [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `[u8; 32]` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/rsps_integration_test.rs:414:17[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m414[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                root_cid.clone(),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                 [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `root_cid`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: unused variable: `epoch`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/q_learning_cache_integration_test.rs:503:9[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m503[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    for epoch in 0..100 {[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m         [0m[0m[1m[38;5;9m^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: if this is intentional, prefix it with an underscore: `_epoch`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D unused-variables` implied by `-D warnings`[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(unused_variables)]`[0m

[0m[1m[38;5;9merror[E0599][0m[0m[1m: no method named `to_async` found for mutable reference `&mut criterion::Bencher<'_>` in the current scope[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mbenches/adaptive_benchmarks.rs:94:15[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m94[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            b.to_async(&rt)[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m               [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mmethod not found in `&mut criterion::Bencher<'_>`[0m

[0m[1m[38;5;9merror[0m[0m[1m: unused variable: `identity`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:776:10[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m776[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    for (identity, addr) in &network_identities {[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m          [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: if this is intentional, prefix it with an underscore: `_identity`[0m

[1m[31merror[0m[1m:[0m could not compile `saorsa-core` (test "full_network_simulation") due to 2 previous errors
[0m[1m[38;5;9merror[0m[0m[1m: variant `Uniform` is never constructed[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/q_learning_cache_integration_test.rs:27:5[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m25[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0menum WorkloadPattern {[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m      [0m[0m[1m[38;5;12m---------------[0m[0m [0m[0m[1m[38;5;12mvariant in this enum[0m
[0m[1m[38;5;12m26[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    /// Uniform random access[0m
[0m[1m[38;5;12m27[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    Uniform,[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m     [0m[0m[1m[38;5;9m^^^^^^^[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `WorkloadPattern` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D dead-code` implied by `-D warnings`[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(dead_code)]`[0m

[0m[1m[38;5;9merror[E0061][0m[0m[1m: this function takes 3 arguments but 2 arguments were supplied[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mbenches/adaptive_benchmarks.rs:157:9[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m157[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        AdaptiveRouter::new(NodeId { hash: [0u8; 32] }, Default::default()).await[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m         [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^[0m[0m[1m[38;5;12m------------------------------------------------[0m[0m [0m[0m[1m[38;5;12margument #3 of type `std::sync::Arc<saorsa_core::adaptive::SelfOrganizingMap>` is missing[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;10mnote[0m[0m: expected `Arc<dyn TrustProvider>`, found `UserId`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mbenches/adaptive_benchmarks.rs:157:29[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m157[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        AdaptiveRouter::new(NodeId { hash: [0u8; 32] }, Default::default()).await[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                             [0m[0m[1m[38;5;10m^^^^^^^^^^^^^^^^^^^^^^^^^^[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: expected struct `[0m[0m[1m[35mstd::sync::Arc<(dyn saorsa_core::adaptive::TrustProvider + 'static)>[0m[0m`[0m
[0m               found struct `[0m[0m[1m[35msaorsa_core::UserId[0m[0m`[0m
[0m[1m[38;5;10mnote[0m[0m: associated function defined here[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0m/Users/davidirvine/Desktop/Devel/projects/saorsa-core/src/adaptive/routing.rs:78:12[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m78[0m[0m  [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    pub fn new([0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m            [0m[0m[1m[38;5;10m^^^[0m
[0m[1m[38;5;14mhelp[0m[0m: provide the argument[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m157[0m[0m [0m[0m[38;5;9m- [0m[0m        AdaptiveRouter::new[0m[0m[38;5;9m(NodeId { hash: [0u8; 32] }, Default::default())[0m[0m.await[0m
[0m[1m[38;5;12m157[0m[0m [0m[0m[38;5;10m+ [0m[0m        AdaptiveRouter::new[0m[0m[38;5;10m(/* std::sync::Arc<(dyn saorsa_core::adaptive::TrustProvider + 'static)> */, Default::default(), /* std::sync::Arc<saorsa_core::adaptive::SelfOrganizingMap> */)[0m[0m.await[0m
[0m    [0m[0m[1m[38;5;12m|[0m

[1m[31merror[0m[1m:[0m could not compile `saorsa-core` (test "adaptive_components_test") due to 1 previous error
[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:51:60[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m51[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        let four_word_addr = FourWordAddress::from_node_id(&node_id);[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m                                                            [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `node_id`[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D clippy::needless-borrow` implied by `-D warnings`[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(clippy::needless_borrow)]`[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:54:61[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m54[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        let four_word_addr2 = FourWordAddress::from_node_id(&node_id);[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m                                                             [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `node_id`[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[E0277][0m[0m[1m: `saorsa_core::adaptive::AdaptiveRouter` is not a future[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mbenches/adaptive_benchmarks.rs:157:77[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m157[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        AdaptiveRouter::new(NodeId { hash: [0u8; 32] }, Default::default()).await[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m         [0m[0m[1m[38;5;12m-------------------------------------------------------------------[0m[0m [0m[0m[1m[38;5;9m^^^^^[0m[0m [0m[0m[1m[38;5;9m`saorsa_core::adaptive::AdaptiveRouter` is not a future[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m         [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m         [0m[0m[1m[38;5;12mthis call returns `saorsa_core::adaptive::AdaptiveRouter`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: the trait `futures::Future` is not implemented for `saorsa_core::adaptive::AdaptiveRouter`[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: saorsa_core::adaptive::AdaptiveRouter must be a future or must implement `IntoFuture` to be awaited[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: required for `saorsa_core::adaptive::AdaptiveRouter` to implement `std::future::IntoFuture`[0m
[0m[1m[38;5;14mhelp[0m[0m: remove the `.await`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m157[0m[0m [0m[0m[38;5;9m- [0m[0m        AdaptiveRouter::new(NodeId { hash: [0u8; 32] }, Default::default())[0m[0m[38;5;9m.await[0m
[0m[1m[38;5;12m157[0m[0m [0m[0m[38;5;10m+ [0m[0m        AdaptiveRouter::new(NodeId { hash: [0u8; 32] }, Default::default())[0m
[0m    [0m[0m[1m[38;5;12m|[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:93:50[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m93[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        let addr = FourWordAddress::from_node_id(&node_id);[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m                                                  [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `node_id`[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:121:52[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m121[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let expected_node_id = NodeId::from_public_key(&public_key);[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                                    [0m[0m[1m[38;5;9m^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `public_key`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[1m[31merror[0m[1m:[0m could not compile `saorsa-core` (example "adaptive_network_monitor") due to 3 previous errors
[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:190:36[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m190[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let dist_12 = id1.xor_distance(&id2);[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                    [0m[0m[1m[38;5;9m^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `id2`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:191:36[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m191[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let dist_21 = id2.xor_distance(&id1);[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                    [0m[0m[1m[38;5;9m^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `id1`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:195:38[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m195[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let self_dist = id1.xor_distance(&id1);[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                      [0m[0m[1m[38;5;9m^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `id1`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:199:36[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m199[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let dist_13 = id1.xor_distance(&id3);[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                    [0m[0m[1m[38;5;9m^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `id3`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:200:36[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m200[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let dist_23 = id2.xor_distance(&id3);[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                    [0m[0m[1m[38;5;9m^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `id3`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[1m[31merror[0m[1m:[0m could not compile `saorsa-core` (test "rsps_integration_test") due to 24 previous errors
[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:335:40[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m335[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        let proof = ProofOfWork::solve(&node_id, difficulty)?;[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                        [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `node_id`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:340:26[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m340[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            proof.verify(&node_id, difficulty),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                          [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `node_id`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: the borrowed expression implements the required traits[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:347:23[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m347[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        hasher.update(&proof.nonce.to_le_bytes());[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                       [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `proof.nonce.to_le_bytes()`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrows_for_generic_args[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D clippy::needless-borrows-for-generic-args` implied by `-D warnings`[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(clippy::needless_borrows_for_generic_args)]`[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:365:36[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m365[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let proof = ProofOfWork::solve(&node_id, 8)?;[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                    [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `node_id`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:370:23[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m370[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        !proof.verify(&other_node_id, 8),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                       [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `other_node_id`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:376:23[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m376[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        !proof.verify(&node_id, 16),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                       [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `node_id`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:407:47[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m407[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let addr1 = FourWordAddress::from_node_id(&identity1.node_id());[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                               [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `identity1.node_id()`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:408:47[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m408[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let addr2 = FourWordAddress::from_node_id(&identity2.node_id());[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                               [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `identity2.node_id()`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:416:56[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m416[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let four_word_addr = FourWordAddress::from_node_id(&original_node_id);[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                                        [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `original_node_id`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:476:50[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m476[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        let addr = FourWordAddress::from_node_id(&identity.node_id());[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                                  [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `identity.node_id()`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `(ContentHash, u64)` which implements the `Copy` trait[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/q_learning_cache_integration_test.rs:96:28[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m96[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        let (hash, size) = self.content_pool[idx].clone();[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m                            [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `self.content_pool[idx]`[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D clippy::clone-on-copy` implied by `-D warnings`[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(clippy::clone_on_copy)]`[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `ContentHash` which implements the `Copy` trait[0m
[0m  [0m[0m[1m[38;5;12m--> [0m[0mtests/q_learning_cache_integration_test.rs:97:34[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m97[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        self.access_history.push(hash.clone());[0m
[0m   [0m[0m[1m[38;5;12m|[0m[0m                                  [0m[0m[1m[38;5;9m^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `hash`[0m
[0m   [0m[0m[1m[38;5;12m|[0m
[0m   [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `ContentHash` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/q_learning_cache_integration_test.rs:136:35[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m136[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                    .map(|(h, _)| h.clone())[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                   [0m[0m[1m[38;5;9m^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try dereferencing it: `*h`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `ContentHash` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/q_learning_cache_integration_test.rs:146:35[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m146[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                self.items.insert(hash.clone(), (size, Instant::now()));[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                   [0m[0m[1m[38;5;9m^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try dereferencing it: `*hash`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1mFor more information about this error, try `rustc --explain E0425`.[0m
[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:701:60[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m701[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        let four_word_addr = FourWordAddress::from_node_id(&identity.node_id());[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                                            [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `identity.node_id()`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[E0599][0m[0m[1m: no method named `to_async` found for mutable reference `&mut criterion::Bencher<'_>` in the current scope[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mbenches/adaptive_benchmarks.rs:163:11[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m163[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        b.to_async(&rt)[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m           [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mmethod not found in `&mut criterion::Bencher<'_>`[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:794:40[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m794[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        let proof = ProofOfWork::solve(&node_id, difficulty)?;[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                        [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `node_id`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[0m[1m[38;5;9merror[0m[0m[1m: this expression creates a reference which is immediately dereferenced by the compiler[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/identity_management_test.rs:797:26[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m797[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            proof.verify(&node_id, difficulty),[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                          [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: change this to: `node_id`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow[0m

[1m[31merror[0m[1m:[0m could not compile `saorsa-core` (test "multi_armed_bandit_integration_test") due to 1 previous error
[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `ContentHash` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/q_learning_cache_integration_test.rs:412:23[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m412[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            0..=5 => (small_content.clone(), small_size), // 60% small[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                       [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `small_content`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `ContentHash` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/q_learning_cache_integration_test.rs:413:23[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m413[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            6..=8 => (medium_content.clone(), medium_size), // 30% medium[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                       [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `medium_content`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `ContentHash` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/q_learning_cache_integration_test.rs:414:19[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m414[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            _ => (large_content.clone(), large_size),     // 10% large[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                   [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `large_content`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: using `clone` on type `(ContentHash, u64)` which implements the `Copy` trait[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/q_learning_cache_integration_test.rs:520:48[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m520[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            let (content_hash, content_size) = content_items[selected_idx].clone();[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                                [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: try removing the `clone` call: `content_items[selected_idx]`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy[0m

[0m[1m[38;5;9merror[0m[0m[1m: useless use of `vec!`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/q_learning_cache_integration_test.rs:491:25[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m491[0m[0m [0m[0m[1m[38;5;12m|[0m[0m   [0m[0m    let content_items = vec![[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m _________________________^[0m
[0m[1m[38;5;12m492[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m        (ContentHash([1u8; 32]), 100 * 1024), // 100KB, accessed frequently[0m
[0m[1m[38;5;12m493[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m        (ContentHash([2u8; 32]), 200 * 1024), // 200KB, accessed moderately[0m
[0m[1m[38;5;12m494[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m        (ContentHash([3u8; 32]), 300 * 1024), // 300KB, accessed rarely[0m
[0m[1m[38;5;12m495[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m        (ContentHash([4u8; 32]), 400 * 1024), // 400KB, accessed very rarely[0m
[0m[1m[38;5;12m496[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|[0m[0m [0m[0m    ];[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m [0m[0m[1m[38;5;9m|_____^[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D clippy::useless-vec` implied by `-D warnings`[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(clippy::useless_vec)]`[0m
[0m[1m[38;5;14mhelp[0m[0m: you can use an array directly[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m491[0m[0m [0m[0m[38;5;10m~ [0m[0m    let content_items = [0m[0m[38;5;10m[(ContentHash([1u8; 32]), 100 * 1024), // 100KB, accessed frequently[0m
[0m[1m[38;5;12m492[0m[0m [0m[0m[38;5;10m+         (ContentHash([2u8; 32]), 200 * 1024), // 200KB, accessed moderately[0m
[0m[1m[38;5;12m493[0m[0m [0m[0m[38;5;10m+         (ContentHash([3u8; 32]), 300 * 1024), // 300KB, accessed rarely[0m
[0m[1m[38;5;12m494[0m[0m [0m[0m[38;5;10m~         (ContentHash([4u8; 32]), 400 * 1024)][0m[0m;[0m
[0m    [0m[0m[1m[38;5;12m|[0m

[0m[1m[38;5;9merror[0m[0m[1m: useless use of `vec!`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/q_learning_cache_integration_test.rs:498:32[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m498[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let access_probabilities = vec![0.5, 0.3, 0.15, 0.05];[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: you can use an array directly: `[0.5, 0.3, 0.15, 0.05]`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#useless_vec[0m

[0m[1m[38;5;9merror[E0599][0m[0m[1m: no method named `to_async` found for mutable reference `&mut criterion::Bencher<'_>` in the current scope[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mbenches/adaptive_benchmarks.rs:208:19[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m208[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m                b.to_async(&rt).iter(|| async {[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                   [0m[0m[1m[38;5;9m^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mmethod not found in `&mut criterion::Bencher<'_>`[0m

[1m[31merror[0m[1m:[0m could not compile `saorsa-core` (test "q_learning_cache_integration_test") due to 13 previous errors
[1m[31merror[0m[1m:[0m could not compile `saorsa-core` (test "identity_management_test") due to 24 previous errors
[0m[1m[38;5;9merror[E0599][0m[0m[1m: no function or associated item named `generate_blocking` found for struct `saorsa_core::adaptive::NodeIdentity` in the current scope[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mbenches/adaptive_benchmarks.rs:270:34[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m270[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let identity = NodeIdentity::generate_blocking();[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                                  [0m[0m[1m[38;5;9m^^^^^^^^^^^^^^^^^[0m[0m [0m[0m[1m[38;5;9mfunction or associated item not found in `saorsa_core::adaptive::NodeIdentity`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;10mnote[0m[0m: if you're trying to build a new `saorsa_core::adaptive::NodeIdentity` consider using one of the following associated functions:[0m
[0m      saorsa_core::adaptive::NodeIdentity::generate[0m
[0m      saorsa_core::adaptive::NodeIdentity::from_signing_key[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0m/Users/davidirvine/Desktop/Devel/projects/saorsa-core/src/adaptive/identity.rs:65:5[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m65[0m[0m  [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    pub fn generate() -> Result<Self> {[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m     [0m[0m[1m[38;5;10m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^[0m
[0m[1m[38;5;12m...[0m
[0m[1m[38;5;12m80[0m[0m  [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    pub fn from_signing_key(signing_key: SigningKey) -> Result<Self> {[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m     [0m[0m[1m[38;5;10m^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^[0m

[0m[1m[38;5;9merror[0m[0m[1m: unused variable: `q_cache`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/adaptive_network_integration_test.rs:173:13[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m173[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let mut q_cache = saorsa_core::adaptive::QLearningCacheManager::new(q_config, 1024);[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m             [0m[0m[1m[38;5;9m^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: if this is intentional, prefix it with an underscore: `_q_cache`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D unused-variables` implied by `-D warnings`[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(unused_variables)]`[0m

[0m[1m[38;5;9merror[0m[0m[1m: unused variable: `epoch`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/adaptive_network_integration_test.rs:185:9[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m185[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    for epoch in 0..10 {[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m         [0m[0m[1m[38;5;9m^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: if this is intentional, prefix it with an underscore: `_epoch`[0m

[0m[1m[38;5;9merror[0m[0m[1m: unused variable: `i`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/adaptive_network_integration_test.rs:186:13[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m186[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m        for i in 0..30 {[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m             [0m[0m[1m[38;5;9m^[0m[0m [0m[0m[1m[38;5;9mhelp: if this is intentional, prefix it with an underscore: `_i`[0m

[0m[1m[38;5;9merror[0m[0m[1m: unused variable: `key`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/adaptive_network_integration_test.rs:195:17[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m195[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m            let key = &keys[key_idx];[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m                 [0m[0m[1m[38;5;9m^^^[0m[0m [0m[0m[1m[38;5;9mhelp: if this is intentional, prefix it with an underscore: `_key`[0m

[0m[1m[38;5;9merror[0m[0m[1m: variable does not need to be mutable[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/adaptive_network_integration_test.rs:173:9[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m173[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let mut q_cache = saorsa_core::adaptive::QLearningCacheManager::new(q_config, 1024);[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m         [0m[0m[1m[38;5;12m----[0m[0m[1m[38;5;9m^^^^^^^[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m         [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m         [0m[0m[1m[38;5;12mhelp: remove this `mut`[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mnote[0m[0m: `-D unused-mut` implied by `-D warnings`[0m
[0m    [0m[0m[1m[38;5;12m= [0m[0m[1mhelp[0m[0m: to override `-D warnings` add `#[allow(unused_mut)]`[0m

[0m[1m[38;5;9merror[0m[0m[1m: unused variable: `topic`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/adaptive_network_integration_test.rs:379:9[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m379[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    for topic in &topics {[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m         [0m[0m[1m[38;5;9m^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: if this is intentional, prefix it with an underscore: `_topic`[0m

[0m[1m[38;5;9merror[0m[0m[1m: unused variable: `message`[0m
[0m   [0m[0m[1m[38;5;12m--> [0m[0mtests/adaptive_network_integration_test.rs:385:9[0m
[0m    [0m[0m[1m[38;5;12m|[0m
[0m[1m[38;5;12m385[0m[0m [0m[0m[1m[38;5;12m|[0m[0m [0m[0m    let message = b"test_message".to_vec();[0m
[0m    [0m[0m[1m[38;5;12m|[0m[0m         [0m[0m[1m[38;5;9m^^^^^^^[0m[0m [0m[0m[1m[38;5;9mhelp: if this is intentional, prefix it with an underscore: `_message`[0m

[0m[1mSome errors have detailed explanations: E0061, E0277, E0599.[0m
[0m[1mFor more information about an error, try `rustc --explain E0061`.[0m
[1m[31merror[0m[1m:[0m could not compile `saorsa-core` (bench "adaptive_benchmarks") due to 9 previous errors
[0m[1mFor more information about this error, try `rustc --explain E0433`.[0m
[1m[31merror[0m[1m:[0m could not compile `saorsa-core` (test "adaptive_network_integration_test") due to 12 previous errors
