From 7d76a9945705e28219aaeb34b9497792b5bceae1 Mon Sep 17 00:00:00 2001 From: Pietro Date: Fri, 27 Sep 2024 17:43:31 +0200 Subject: [PATCH 01/16] Add unassigned days computation --- Cargo.lock | 1 + .../src/components/NodeRewardsChart.tsx | 17 +-- .../src/utils/utils.tsx | 5 +- .../src/types.rs | 5 +- .../src/trustworthy-node-metrics/Cargo.toml | 1 + .../src/chrono_utils.rs | 31 +++++ .../src/trustworthy-node-metrics/src/lib.rs | 12 +- .../src/metrics_manager.rs | 9 +- .../src/rewards_manager.rs | 118 ++++++++++-------- .../src/stable_memory.rs | 2 +- .../trustworthy-node-metrics.did | 5 +- 11 files changed, 134 insertions(+), 72 deletions(-) create mode 100644 rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/chrono_utils.rs diff --git a/Cargo.lock b/Cargo.lock index 4901e96ed..72ab4f089 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -8570,6 +8570,7 @@ version = "0.5.5" dependencies = [ "anyhow", "candid", + "chrono", "dfn_core", "futures", "ic-base-types", diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx index 59bcc6df8..9907097b0 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx @@ -33,13 +33,9 @@ export const NodeRewardsChart: React.FC = ({ node }) => { } const rewardsDailyData: ChartData[] = generateChartData(latestRewardRange, latestNodeRewards.daily_node_metrics); - const daysAssigned = latestNodeRewards.daily_node_metrics.length; const failureRateAvg = Math.round((latestNodeRewards.rewards_computation.failure_rate) * 100) - const rewardsPercent = Math.round((latestNodeRewards.rewards_computation.rewards_percent) * 100); - const rewardsReduction = 100 - rewardsPercent; - const millisecondsPerDay = 24 * 60 * 60 * 1000; - const daysTotal = Math.round((latestRewardRange.dateEnd.getTime() - latestRewardRange.dateStart.getTime()) / millisecondsPerDay); - const rewardMultiplier = Math.round((daysAssigned * rewardsPercent + (daysTotal - daysAssigned) * 100) / daysTotal); + const rewardsMultiplier = Math.round((latestNodeRewards.rewards_computation.rewards_multiplier) * 100); + const rewardsReduction = 100 - rewardsMultiplier; const rows: GridRowsProp = latestNodeRewards.rewards_computation.computation_log.map((data, index) => { return { id: index, @@ -50,9 +46,9 @@ export const NodeRewardsChart: React.FC = ({ node }) => { }; }); const colDef: GridColDef[] = [ - { field: 'col0', headerName: 'Step', width: 500}, - { field: 'col1', headerName: 'Description', width: 500}, - { field: 'col2', headerName: 'Operation', width: 1000 }, + { field: 'col0', headerName: 'Step', width: 100}, + { field: 'col1', headerName: 'Description', width: 300}, + { field: 'col2', headerName: 'Operation', width: 500 }, { field: 'col3', headerName: 'Result', width: 200 }, ]; @@ -63,8 +59,7 @@ export const NodeRewardsChart: React.FC = ({ node }) => { diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/utils/utils.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/utils/utils.tsx index e14fc21b1..546bf55a9 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/utils/utils.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/utils/utils.tsx @@ -188,14 +188,15 @@ export const LoadingIndicator: React.FC = () => ( export const NodeMetricsStats: React.FC<{ stats: NodeRewards['rewards_computation'] | null }> = ({ stats }) => ( + + ); -export const NodePerformanceStats: React.FC<{ failureRateAvg: string, rewardMultiplier: string , baseRewardsXDR: string}> = ({ failureRateAvg, rewardMultiplier, baseRewardsXDR }) => ( +export const NodePerformanceStats: React.FC<{ rewardMultiplier: string , baseRewardsXDR: string}> = ({ rewardMultiplier, baseRewardsXDR }) => ( - diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs index 551c76379..59489716f 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs @@ -213,7 +213,9 @@ impl DailyNodeMetrics { #[derive(Debug, Deserialize, CandidType)] pub struct RewardMultiplierResult { - pub rewards_percent: f64, + pub days_assigned: u64, + pub days_unassigned: u64, + pub rewards_multiplier: f64, pub rewards_reduction: f64, pub blocks_failed: u64, pub blocks_proposed: u64, @@ -234,6 +236,7 @@ pub struct NodeRewards { pub struct NodeProviderRewards { pub node_provider_id: Principal, pub rewards_xdr: u64, + pub rewards_xdr_no_reduction: u64, pub rewards_xdr_old: Option, pub ts_distribution: u64, pub xdr_conversion_rate: Option, diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/Cargo.toml b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/Cargo.toml index 4f2511b52..e1bfcf234 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/Cargo.toml +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/Cargo.toml @@ -33,3 +33,4 @@ rust_decimal_macros = { workspace = true } num-traits = { workspace = true } ic-nns-constants = { workspace = true } ic-nns-governance-api = { workspace = true } +chrono = { version = "0.4", default-features = false, features = ["std"] } diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/chrono_utils.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/chrono_utils.rs new file mode 100644 index 000000000..e1bf57b69 --- /dev/null +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/chrono_utils.rs @@ -0,0 +1,31 @@ +use chrono::{Duration, NaiveDateTime, TimeZone, Utc}; +use trustworthy_node_metrics_types::types::TimestampNanos; + +pub struct DateTimeRange { + start_dt: NaiveDateTime, + end_dt: NaiveDateTime, +} + +impl DateTimeRange { + pub fn new(from_ts: TimestampNanos, to_ts: TimestampNanos) -> Self { + let start_date = Utc.timestamp_nanos(from_ts as i64).date_naive().and_hms_opt(0, 0, 0).unwrap(); + let end_date = Utc.timestamp_nanos(to_ts as i64).date_naive().and_hms_opt(0, 0, 0).unwrap() + Duration::days(1); + + Self { + start_dt: start_date, + end_dt: end_date, + } + } + + pub fn days_between(&self) -> u64 { + (self.end_dt - self.start_dt).num_days() as u64 + } + + pub fn start_timestamp_nanos(&self) -> TimestampNanos { + self.start_dt.and_utc().timestamp_nanos_opt().unwrap() as u64 + } + + pub fn end_timestamp_nanos(&self) -> TimestampNanos { + self.end_dt.and_utc().timestamp_nanos_opt().unwrap() as u64 + } +} diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/lib.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/lib.rs index e409f9b8c..3dc39425c 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/lib.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/lib.rs @@ -1,4 +1,5 @@ use candid::Principal; +use chrono_utils::DateTimeRange; use ic_cdk_macros::*; use itertools::Itertools; use std::collections::{btree_map::Entry, BTreeMap}; @@ -6,6 +7,7 @@ use trustworthy_node_metrics_types::types::{ NodeMetadata, NodeMetrics, NodeMetricsStored, NodeMetricsStoredKey, NodeProviderRewards, NodeProviderRewardsArgs, NodeRewards, NodeRewardsArgs, SubnetNodeMetricsArgs, SubnetNodeMetricsResponse, }; +mod chrono_utils; mod computation_logger; mod metrics_manager; mod rewards_manager; @@ -108,19 +110,17 @@ fn nodes_metadata() -> Vec { #[query] fn node_rewards(args: NodeRewardsArgs) -> NodeRewards { - let period_start = args.from_ts; - let period_end = args.to_ts; + let rewarding_period = DateTimeRange::new(args.from_ts, args.to_ts); let node_id = args.node_id; - let rewards = rewards_manager::compute_node_rewards(vec![node_id], period_start, period_end); + let rewards = rewards_manager::compute_node_rewards(vec![node_id], rewarding_period); rewards.into_iter().next().unwrap() } #[query] fn node_provider_rewards(args: NodeProviderRewardsArgs) -> NodeProviderRewards { - let period_start = args.from_ts; - let period_end = args.to_ts; + let rewarding_period = DateTimeRange::new(args.from_ts, args.to_ts); let node_provider_id = args.node_provider_id; - rewards_manager::node_provider_rewards(node_provider_id, period_start, period_end) + rewards_manager::node_provider_rewards(node_provider_id, rewarding_period) } diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/metrics_manager.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/metrics_manager.rs index 005366b93..287a888c0 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/metrics_manager.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/metrics_manager.rs @@ -84,7 +84,14 @@ async fn fetch_metrics(subnets: Vec, refresh_ts: TimestampNanos) -> ) .map(move |result| { result - .map_err(|(code, msg)| anyhow::anyhow!("Error when calling management canister:\n Code:{:?}\nMsg:{}", code, msg)) + .map_err(|(code, msg)| { + anyhow::anyhow!( + "Error when calling management canister for subnet {}:\n Code:{:?}\nMsg:{}", + subnet_id, + code, + msg + ) + }) .map(|(node_metrics,)| (subnet_id, node_metrics)) }); diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs index ed7831683..097b48323 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs @@ -1,5 +1,3 @@ -use std::collections::{self, btree_map::Entry}; - use candid::Principal; use ic_nns_constants::GOVERNANCE_CANISTER_ID; use ic_nns_governance_api::pb::v1::MonthlyNodeProviderRewards; @@ -9,9 +7,11 @@ use itertools::Itertools; use num_traits::{FromPrimitive, ToPrimitive}; use rust_decimal::Decimal; use rust_decimal_macros::dec; -use trustworthy_node_metrics_types::types::{DailyNodeMetrics, NodeProviderRewards, NodeRewards, RewardMultiplierResult, TimestampNanos}; +use std::collections::{self}; +use trustworthy_node_metrics_types::types::{DailyNodeMetrics, NodeProviderRewards, NodeRewards, RewardMultiplierResult}; use crate::{ + chrono_utils::DateTimeRange, computation_logger::{ComputationLogger, Operation, OperationExecutor}, stable_memory, }; @@ -96,9 +96,13 @@ fn rewards_reduction_percent(failure_rate: &Decimal) -> (Vec, /// 2. The `overall_failure_rate` is calculated by dividing the `overall_failed` blocks by the `overall_total` blocks. /// 3. The `rewards_reduction` function is applied to `overall_failure_rate`. /// 3. Finally, the rewards percentage to be distrubuted to the node is computed. -fn compute_reward_multiplier(daily_metrics: &[DailyNodeMetrics]) -> RewardMultiplierResult { +fn compute_reward_multiplier(daily_metrics: &[DailyNodeMetrics], total_days: u64) -> RewardMultiplierResult { let mut computation_logger = ComputationLogger::new(); + let total_days = computation_logger.execute("Days In Period", Operation::Set(Decimal::from(total_days))); + let days_assigned = computation_logger.execute("Assigned Days In Period", Operation::Set(Decimal::from(daily_metrics.len()))); + let days_unassigned = computation_logger.execute("Unassigned Days In Period", Operation::Subtract(total_days, days_assigned)); + let daily_failed = daily_metrics.iter().map(|metrics| metrics.num_blocks_failed.into()).collect_vec(); let daily_proposed = daily_metrics.iter().map(|metrics| metrics.num_blocks_proposed.into()).collect_vec(); @@ -116,15 +120,23 @@ fn compute_reward_multiplier(daily_metrics: &[DailyNodeMetrics]) -> RewardMultip let (operations, rewards_reduction) = rewards_reduction_percent(&overall_failure_rate); computation_logger.add_executed(operations); - let rewards_percent = computation_logger.execute("Reward Multiplier", Operation::Subtract(dec!(1), rewards_reduction)); + let rewards_multiplier_unassigned = computation_logger.execute("Reward Multiplier Unassigned Days", Operation::Set(dec!(1))); + let rewards_multiplier_assigned = computation_logger.execute("Reward Multiplier Assigned Days", Operation::Subtract(dec!(1), rewards_reduction)); + let assigned_days_factor = computation_logger.execute("Assigned Days Factor", Operation::Multiply(days_assigned, rewards_multiplier_assigned)); + let unassigned_days_factor = computation_logger.execute( + "Unassigned Days Factor", + Operation::Multiply(days_unassigned, rewards_multiplier_unassigned), + ); + let rewards_multiplier = computation_logger.execute( + "Average reward multiplier", + Operation::Divide(assigned_days_factor + unassigned_days_factor, total_days), + ); RewardMultiplierResult { - // Overflow impossible - rewards_percent: rewards_percent.to_f64().unwrap(), + days_assigned: days_assigned.to_u64().unwrap(), + days_unassigned: days_unassigned.to_u64().unwrap(), + rewards_multiplier: rewards_multiplier.to_f64().unwrap(), rewards_reduction: rewards_reduction.to_f64().unwrap(), - - // Overflow impossible since u64 in input will always fit - // No negative numbers blocks_failed: overall_failed.to_u64().unwrap(), blocks_proposed: overall_proposed.to_u64().unwrap(), blocks_total: overall_total.to_u64().unwrap(), @@ -166,9 +178,18 @@ pub async fn update_node_rewards_table() -> anyhow::Result<()> { Ok(()) } -pub fn compute_node_rewards(node_id: Vec, period_start: TimestampNanos, period_end: TimestampNanos) -> Vec { - let nodes_metrics = stable_memory::get_metrics_range(period_start, Some(period_end), Some(node_id)); - let mut daily_metrics = collections::BTreeMap::new(); +pub fn compute_node_rewards(node_ids: Vec, rewarding_period: DateTimeRange) -> Vec { + let total_days = rewarding_period.days_between(); + let nodes_metrics = stable_memory::get_metrics_range( + rewarding_period.start_timestamp_nanos(), + Some(rewarding_period.end_timestamp_nanos()), + Some(&node_ids), + ); + let mut daily_metrics: collections::BTreeMap> = collections::BTreeMap::new(); + + for node_id in node_ids { + daily_metrics.entry(node_id).or_default(); + } for ((ts, node_id), node_metrics_value) in nodes_metrics { let daily_node_metrics = DailyNodeMetrics::new( @@ -178,21 +199,13 @@ pub fn compute_node_rewards(node_id: Vec, period_start: TimestampNano node_metrics_value.num_blocks_failed, ); - match daily_metrics.entry(node_id) { - Entry::Occupied(mut entry) => { - let v: &mut Vec = entry.get_mut(); - v.push(daily_node_metrics) - } - Entry::Vacant(entry) => { - entry.insert(vec![daily_node_metrics]); - } - } + daily_metrics.entry(node_id).or_default().push(daily_node_metrics); } daily_metrics .into_iter() .map(|(node_id, daily_node_metrics)| { - let rewards_computation = compute_reward_multiplier(&daily_node_metrics); + let rewards_computation = compute_reward_multiplier(&daily_node_metrics, total_days); let node_rate = get_node_rate(&node_id); NodeRewards { @@ -205,8 +218,9 @@ pub fn compute_node_rewards(node_id: Vec, period_start: TimestampNano .collect_vec() } -pub fn coumpute_node_provider_rewards(nodes_rewards: &[NodeRewards]) -> Decimal { +pub fn coumpute_node_provider_rewards(nodes_rewards: &[NodeRewards]) -> (Decimal, Decimal) { let mut rewards_xdr = dec!(0); + let mut rewards_xdr_no_reduction = dec!(0); let mut coefficient = dec!(1.0); let nodes_rewards_xdr_sum: Decimal = nodes_rewards @@ -219,7 +233,7 @@ pub fn coumpute_node_provider_rewards(nodes_rewards: &[NodeRewards]) -> Decimal for node_rewards in nodes_rewards.iter() { let metadata = stable_memory::get_node_metadata(&node_rewards.node_id).unwrap(); - rewards_xdr += match &metadata.node_type { + let node_xdr = match &metadata.node_type { t if t.starts_with("type3") => { let reward_coefficient_percent: Decimal = Decimal::from(node_rewards.node_rate.reward_coefficient_percent.unwrap_or(80)) / dec!(100); coefficient *= reward_coefficient_percent; @@ -227,15 +241,17 @@ pub fn coumpute_node_provider_rewards(nodes_rewards: &[NodeRewards]) -> Decimal nodes_rewards_xdr_avg * coefficient } _ => node_rewards.node_rate.xdr_permyriad_per_node_per_month.into(), - } * Decimal::from_f64(node_rewards.rewards_computation.rewards_percent).unwrap(); + }; + rewards_xdr_no_reduction += node_xdr; + rewards_xdr += node_xdr * Decimal::from_f64(node_rewards.rewards_computation.rewards_multiplier).unwrap(); } - rewards_xdr + (rewards_xdr_no_reduction, rewards_xdr) } -pub fn node_provider_rewards(node_provider_id: Principal, period_start: TimestampNanos, period_end: TimestampNanos) -> NodeProviderRewards { +pub fn node_provider_rewards(node_provider_id: Principal, rewarding_period: DateTimeRange) -> NodeProviderRewards { let node_ids = stable_memory::get_node_principals(&node_provider_id); - let nodes_rewards = compute_node_rewards(node_ids, period_start, period_end) + let nodes_rewards = compute_node_rewards(node_ids, rewarding_period) .into_iter() .sorted_by(|a, b| { Ord::cmp( @@ -244,7 +260,7 @@ pub fn node_provider_rewards(node_provider_id: Principal, period_start: Timestam ) }) .collect_vec(); - let rewards_xdr = coumpute_node_provider_rewards(&nodes_rewards); + let (rewards_xdr_no_reduction, rewards_xdr) = coumpute_node_provider_rewards(&nodes_rewards); let latest_np_rewards = stable_memory::get_latest_node_providers_rewards(); let ts_distribution = latest_np_rewards.timestamp; @@ -267,6 +283,7 @@ pub fn node_provider_rewards(node_provider_id: Principal, period_start: Timestam NodeProviderRewards { node_provider_id, rewards_xdr: rewards_xdr.to_u64().unwrap(), + rewards_xdr_no_reduction: rewards_xdr_no_reduction.to_u64().unwrap(), rewards_xdr_old, ts_distribution, xdr_conversion_rate, @@ -343,8 +360,8 @@ mod tests { fn test_rewards_percent() { // Overall failed = 130 Overall total = 500 Failure rate = 0.26 let daily_metrics: Vec = daily_mocked_metrics(vec![MockedMetrics::new(20, 6, 4), MockedMetrics::new(25, 10, 2)]); - let result = compute_reward_multiplier(&daily_metrics); - assert_eq!(result.rewards_percent, 0.744); + let result = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); + assert_eq!(result.rewards_multiplier, 0.744); // Overall failed = 45 Overall total = 450 Failure rate = 0.1 // rewards_reduction = 0.0 @@ -352,15 +369,15 @@ mod tests { MockedMetrics::new(1, 400, 20), MockedMetrics::new(1, 5, 25), // no penalty ]); - let result = compute_reward_multiplier(&daily_metrics); - assert_eq!(result.rewards_percent, 1.0); + let result = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); + assert_eq!(result.rewards_multiplier, 1.0); // Overall failed = 5 Overall total = 10 Failure rate = 0.5 let daily_metrics: Vec = daily_mocked_metrics(vec![ MockedMetrics::new(1, 5, 5), // no penalty ]); - let result = compute_reward_multiplier(&daily_metrics); - assert_eq!(result.rewards_percent, 0.36); + let result = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); + assert_eq!(result.rewards_multiplier, 0.36); } #[test] @@ -368,8 +385,8 @@ mod tests { let daily_metrics: Vec = daily_mocked_metrics(vec![ MockedMetrics::new(10, 5, 95), // max failure rate ]); - let result = compute_reward_multiplier(&daily_metrics); - assert_eq!(result.rewards_percent, 0.2); + let result = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); + assert_eq!(result.rewards_multiplier, 0.2); } #[test] @@ -377,8 +394,8 @@ mod tests { let daily_metrics: Vec = daily_mocked_metrics(vec![ MockedMetrics::new(10, 9, 1), // min failure rate ]); - let result = compute_reward_multiplier(&daily_metrics); - assert_eq!(result.rewards_percent, 1.0); + let result = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); + assert_eq!(result.rewards_multiplier, 1.0); } #[test] @@ -394,15 +411,18 @@ mod tests { let daily_metrics_right_gap: Vec = daily_mocked_metrics(vec![gap.clone(), MockedMetrics::new(1, 6, 4), MockedMetrics::new(1, 7, 3)]); - assert_eq!(compute_reward_multiplier(&daily_metrics_mid_gap).rewards_percent, 0.7866666666666666); + assert_eq!( + compute_reward_multiplier(&daily_metrics_mid_gap, daily_metrics_mid_gap.len() as u64).rewards_multiplier, + 0.7866666666666666 + ); assert_eq!( - compute_reward_multiplier(&daily_metrics_mid_gap).rewards_percent, - compute_reward_multiplier(&daily_metrics_left_gap).rewards_percent + compute_reward_multiplier(&daily_metrics_mid_gap, daily_metrics_mid_gap.len() as u64).rewards_multiplier, + compute_reward_multiplier(&daily_metrics_left_gap, daily_metrics_left_gap.len() as u64).rewards_multiplier ); assert_eq!( - compute_reward_multiplier(&daily_metrics_right_gap).rewards_percent, - compute_reward_multiplier(&daily_metrics_left_gap).rewards_percent + compute_reward_multiplier(&daily_metrics_right_gap, daily_metrics_right_gap.len() as u64).rewards_multiplier, + compute_reward_multiplier(&daily_metrics_left_gap, daily_metrics_left_gap.len() as u64).rewards_multiplier ); } @@ -415,11 +435,11 @@ mod tests { ]); let mut daily_metrics = daily_metrics.clone(); - let result = compute_reward_multiplier(&daily_metrics); + let result = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); daily_metrics.reverse(); - let result_rev = compute_reward_multiplier(&daily_metrics); + let result_rev = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); - assert_eq!(result.rewards_percent, 1.0); - assert_eq!(result_rev.rewards_percent, result.rewards_percent); + assert_eq!(result.rewards_multiplier, 1.0); + assert_eq!(result_rev.rewards_multiplier, result.rewards_multiplier); } } diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/stable_memory.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/stable_memory.rs index a3add5676..30b493941 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/stable_memory.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/stable_memory.rs @@ -67,7 +67,7 @@ pub fn latest_ts() -> Option { pub fn get_metrics_range( from_ts: TimestampNanos, to_ts: Option, - node_ids_filter: Option>, + node_ids_filter: Option<&Vec>, ) -> Vec<(NodeMetricsStoredKey, NodeMetricsStored)> { NODE_METRICS_MAP.with(|p| { let to_ts = to_ts.unwrap_or(u64::MAX); diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/trustworthy-node-metrics.did b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/trustworthy-node-metrics.did index 017c8454c..2966dc3b4 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/trustworthy-node-metrics.did +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/trustworthy-node-metrics.did @@ -36,7 +36,9 @@ type OperationExecutorLog = record { }; type RewardMultiplierResult = record { - rewards_percent: float64; + days_assigned: nat64; + days_unassigned: nat64; + rewards_multiplier: float64; rewards_reduction: float64; blocks_failed: nat64; blocks_proposed: nat64; @@ -66,6 +68,7 @@ type NodeRewardsArgs = record { type NodeProviderRewards = record { node_provider_id: principal; rewards_xdr: nat64; + rewards_xdr_no_reduction: nat64; rewards_xdr_old: opt nat64; ts_distribution: nat64; xdr_conversion_rate: opt nat64; From fcf85875236ea008326e472de64da3f83b713b8e Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 27 Sep 2024 16:13:11 +0000 Subject: [PATCH 02/16] Github Action: Bazel Repin --- Cargo.Bazel.lock | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Cargo.Bazel.lock b/Cargo.Bazel.lock index 80c34962f..1e1ea89d1 100644 --- a/Cargo.Bazel.lock +++ b/Cargo.Bazel.lock @@ -1,5 +1,5 @@ { - "checksum": "06da4df9dd66c389618b0921a08c03251c247c4325192eb08dcb94e4063b5f9b", + "checksum": "d9bc8b02db59266969caa52b402af82e441437a6119cc3bcb932eae6acb3fc52", "crates": { "actix-codec 0.5.2": { "name": "actix-codec", @@ -43135,6 +43135,10 @@ "id": "candid 0.10.10", "target": "candid" }, + { + "id": "chrono 0.4.38", + "target": "chrono" + }, { "id": "dfn_core 0.9.0", "target": "dfn_core" From 7397b90a21092a3b8fac7ba89ef21c84bd5fd28e Mon Sep 17 00:00:00 2001 From: Pietro Date: Fri, 27 Sep 2024 18:18:52 +0200 Subject: [PATCH 03/16] Fixed typo --- .../src/components/NodeProviderRewards.tsx | 24 +++++++++++++------ .../src/components/Widgets.tsx | 5 +++- 2 files changed, 21 insertions(+), 8 deletions(-) diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderRewards.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderRewards.tsx index 9c788d846..6f77310a7 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderRewards.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderRewards.tsx @@ -35,16 +35,26 @@ export const NodeProviderRewardsChart: React.FC = if (xdr_conversion_rate.length == 0 || rewards_xdr_old.length == 0) { return

No latestNodeRewards

; } - + const distribution_date = new Date(Number(latestProviderRewards.ts_distribution) * 1000); return ( <> - - - - - - + + + + + + + + + + + + + + + + ); }; diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/Widgets.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/Widgets.tsx index 3111c64c0..576178d9e 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/Widgets.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/Widgets.tsx @@ -8,13 +8,16 @@ export function WidgetNumber({ value, title, sxValue = {}, + sxPaper = {}, }: { value: string; title: string; sxValue?: SxProps; + sxPaper?: SxProps; }) { + const sxPaperJoin = { ...paperStyleWidget, ...sxPaper }; return ( - + {value} From af76095e62370c6834171be8bf93e15579a0db8a Mon Sep 17 00:00:00 2001 From: Pietro Date: Fri, 27 Sep 2024 19:14:01 +0200 Subject: [PATCH 04/16] Convert to XDR --- .../src/components/NodeProviderRewards.tsx | 6 +++--- .../src/components/NodeRewardsChart.tsx | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderRewards.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderRewards.tsx index 6f77310a7..03bb3e14a 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderRewards.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderRewards.tsx @@ -42,9 +42,9 @@ export const NodeProviderRewardsChart: React.FC = - - - + + + diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx index 9907097b0..805294870 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx @@ -60,7 +60,7 @@ export const NodeRewardsChart: React.FC = ({ node }) => { + baseRewardsXDR={(Number(latestNodeRewards.node_rate.xdr_permyriad_per_node_per_month) / 10000).toString()} /> From 8cbd9a4d6ce8fa4b121c3defc1ea3b454d94ed1f Mon Sep 17 00:00:00 2001 From: Pietro Date: Fri, 27 Sep 2024 20:20:19 +0200 Subject: [PATCH 05/16] Fix node rewards xdr --- .../src/trustworthy-node-metrics/src/rewards_manager.rs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs index 097b48323..fee2cb29d 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs @@ -236,9 +236,10 @@ pub fn coumpute_node_provider_rewards(nodes_rewards: &[NodeRewards]) -> (Decimal let node_xdr = match &metadata.node_type { t if t.starts_with("type3") => { let reward_coefficient_percent: Decimal = Decimal::from(node_rewards.node_rate.reward_coefficient_percent.unwrap_or(80)) / dec!(100); - coefficient *= reward_coefficient_percent; + let nodes_rewards_xdr = nodes_rewards_xdr_avg * coefficient; - nodes_rewards_xdr_avg * coefficient + coefficient *= reward_coefficient_percent; + nodes_rewards_xdr } _ => node_rewards.node_rate.xdr_permyriad_per_node_per_month.into(), }; From 3aa424aaac594f804c791486fbae418bdecf5215 Mon Sep 17 00:00:00 2001 From: Pietro Date: Mon, 30 Sep 2024 16:10:25 +0200 Subject: [PATCH 06/16] Add count --- .../src/types.rs | 26 ++++++++- .../src/trustworthy-node-metrics/src/lib.rs | 6 ++ .../src/metrics_manager.rs | 57 ++++++++++++++++++- .../src/rewards_manager.rs | 10 +--- .../src/stable_memory.rs | 17 +++++- 5 files changed, 102 insertions(+), 14 deletions(-) diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs index 59489716f..50727a31d 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs @@ -1,4 +1,4 @@ -use std::{borrow::Cow, fmt}; +use std::{borrow::Cow, collections::BTreeMap, fmt, u32}; use candid::{CandidType, Decode, Deserialize, Encode, Principal}; use dfn_core::api::PrincipalId; @@ -37,6 +37,30 @@ impl Storable for MonthlyNodeProviderRewardsStored { }; } +#[derive(Debug, Deserialize, Serialize, CandidType, Clone, PartialEq, Eq, PartialOrd, Ord)] +pub struct NodeProviderRewardableKey { + pub node_provider_id: Principal, + pub node_type: String, + pub region: String +} + +const MAX_VALUE_SIZE_REWARDABLE_NODES: u32 = 300; + +impl Storable for NodeProviderRewardableKey { + fn to_bytes(&self) -> std::borrow::Cow<[u8]> { + Cow::Owned(Encode!(self).unwrap()) + } + + fn from_bytes(bytes: std::borrow::Cow<[u8]>) -> Self { + Decode!(bytes.as_ref(), Self).unwrap() + } + + const BOUND: Bound = Bound::Bounded { + max_size: MAX_VALUE_SIZE_REWARDABLE_NODES, + is_fixed_size: false, + }; +} + #[derive(Debug, Deserialize, Serialize, CandidType, Clone)] pub struct NodeMetricsStored { pub subnet_assigned: Principal, diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/lib.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/lib.rs index 3dc39425c..4187dbc50 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/lib.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/lib.rs @@ -124,3 +124,9 @@ fn node_provider_rewards(args: NodeProviderRewardsArgs) -> NodeProviderRewards { rewards_manager::node_provider_rewards(node_provider_id, rewarding_period) } + +#[update] +fn update_rewardable_nodes() { + ic_cdk_timers::set_timer(std::time::Duration::from_secs(0), || ic_cdk::spawn(metrics_manager::update_rewardable_nodes())); +} + diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/metrics_manager.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/metrics_manager.rs index 287a888c0..768302cf6 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/metrics_manager.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/metrics_manager.rs @@ -1,4 +1,4 @@ -use std::collections::BTreeMap; +use std::collections::{BTreeMap, HashSet}; use candid::Principal; use dfn_core::api::PrincipalId; @@ -13,7 +13,7 @@ use ic_registry_keys::{make_data_center_record_key, make_node_operator_record_ke use crate::stable_memory; use itertools::Itertools; -use trustworthy_node_metrics_types::types::{NodeMetricsGrouped, NodeMetricsStored, NodeMetricsStoredKey}; +use trustworthy_node_metrics_types::types::{NodeMetricsGrouped, NodeMetricsStored, NodeMetricsStoredKey, NodeProviderRewardableKey}; use trustworthy_node_metrics_types::types::{SubnetNodeMetricsHistory, TimestampNanos}; /// Node metrics storable @@ -274,6 +274,59 @@ fn update_nodes_metrics(metrics_by_node: BTreeMap = stable_memory::get_all_operators(); + let mut np_rewardable: BTreeMap = BTreeMap::new(); + + for node_operator_id in operators_id { + + ic_cdk::println!("Fetching node operator record for {}", PrincipalId::from(node_operator_id)); + let node_operator_record = + match ic_nns_common::registry::get_value::(make_node_operator_record_key(PrincipalId::from(node_operator_id)).as_bytes(), None).await { + Ok((record, _)) => record, + Err(e) => { + ic_cdk::println!("Error fetching node operator record for {}: {:?}", PrincipalId::from(node_operator_id), e); + continue; + } + }; + + let dc_id = node_operator_record.dc_id; + + let node_provider_id: PrincipalId = match node_operator_record.node_provider_principal_id.try_into() { + Ok(id) => id, + Err(e) => { + ic_cdk::println!("Error converting node provider ID for Operator {}: {:?}", node_operator_id, e); + continue; + } + }; + + let data_center_record = + match ic_nns_common::registry::get_value::(make_data_center_record_key(&dc_id).as_bytes(), None).await { + Ok((record, _)) => record, + Err(e) => { + ic_cdk::println!("Error fetching data center record for {}: {:?}", dc_id, e); + continue; + } + }; + + let region = data_center_record.region; + + + for (node_type, count) in node_operator_record.rewardable_nodes { + let rewardable_cat = np_rewardable.entry(NodeProviderRewardableKey { node_provider_id: node_provider_id.0, region: region.clone(), node_type }).or_default(); + + *rewardable_cat += count; + } + } + + for (key, count) in np_rewardable { + ic_cdk::println!("Adding rewardables for {}", PrincipalId::from(key.node_provider_id)); + stable_memory::add_rewardable(key, count); + } +} + + /// Update metrics pub async fn update_metrics() -> anyhow::Result<()> { let subnets = fetch_subnets().await?; diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs index fee2cb29d..49159fe45 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs @@ -252,15 +252,7 @@ pub fn coumpute_node_provider_rewards(nodes_rewards: &[NodeRewards]) -> (Decimal pub fn node_provider_rewards(node_provider_id: Principal, rewarding_period: DateTimeRange) -> NodeProviderRewards { let node_ids = stable_memory::get_node_principals(&node_provider_id); - let nodes_rewards = compute_node_rewards(node_ids, rewarding_period) - .into_iter() - .sorted_by(|a, b| { - Ord::cmp( - &b.node_rate.xdr_permyriad_per_node_per_month, - &a.node_rate.xdr_permyriad_per_node_per_month, - ) - }) - .collect_vec(); + let nodes_rewards = compute_node_rewards(node_ids, rewarding_period); let (rewards_xdr_no_reduction, rewards_xdr) = coumpute_node_provider_rewards(&nodes_rewards); let latest_np_rewards = stable_memory::get_latest_node_providers_rewards(); diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/stable_memory.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/stable_memory.rs index 30b493941..0140e8308 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/stable_memory.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/stable_memory.rs @@ -8,8 +8,7 @@ use std::cell::RefCell; use std::collections::BTreeMap; use trustworthy_node_metrics_types::types::{ - MonthlyNodeProviderRewardsStored, NodeMetadata, NodeMetadataStored, NodeMetadataStoredV2, NodeMetricsStored, NodeMetricsStoredKey, - NodeRewardRatesStored, TimestampNanos, + MonthlyNodeProviderRewardsStored, NodeMetadata, NodeMetadataStored, NodeMetadataStoredV2, NodeMetricsStored, NodeMetricsStoredKey, NodeProviderRewardableKey, NodeProviderRewardableNodes, NodeRewardRatesStored, TimestampNanos }; type Memory = VirtualMemory; @@ -54,6 +53,12 @@ thread_local! { RefCell::new(StableBTreeMap::init( MEMORY_MANAGER.with(|m| m.borrow().get(MemoryId::new(6))) )); + + static NP_REWARDABLE_NODES: RefCell> = + RefCell::new(StableBTreeMap::init( + MEMORY_MANAGER.with(|m| m.borrow().get(MemoryId::new(7))) + )); + } pub fn insert_node_metrics(key: NodeMetricsStoredKey, value: NodeMetricsStored) { @@ -214,3 +219,11 @@ pub fn insert_node_provider_rewards(timestamp: u64, monthly_node_provider_reward pub fn get_latest_node_providers_rewards() -> MonthlyNodeProviderRewards { MONTHLY_NP_REWARDS.with_borrow(|p| p.last_key_value().map(|(_, v)| v.monthly_node_provider_rewards).unwrap()) } + +pub(crate) fn get_all_operators() -> std::collections::HashSet { + NODE_METADATA_V2.with_borrow(|metadata| metadata.iter().map(|meta| meta.1.node_operator_id).collect()) +} + +pub(crate) fn add_rewardable(key: NodeProviderRewardableKey, count: u32) { + NP_REWARDABLE_NODES.with_borrow_mut(|rewardable| rewardable.insert(key, count)); +} From 931381bd299000eefd43c0fc91bdd4a24ae4bdd2 Mon Sep 17 00:00:00 2001 From: Pietro Date: Tue, 1 Oct 2024 09:39:09 +0200 Subject: [PATCH 07/16] Node providers rewards --- .../src/components/NodePerformanceChart.tsx | 4 +- .../src/components/NodeRewardsChart.tsx | 4 +- .../src/components/RewardTable.tsx | 4 +- .../src/utils/utils.tsx | 6 +- .../src/types.rs | 8 +- .../src/trustworthy-node-metrics/src/lib.rs | 14 +- .../src/metrics_manager.rs | 57 +------- .../src/rewards_manager.rs | 134 ++++++++++-------- .../src/stable_memory.rs | 23 ++- .../trustworthy-node-metrics.did | 6 +- 10 files changed, 115 insertions(+), 145 deletions(-) diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodePerformanceChart.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodePerformanceChart.tsx index 27c8f6886..0c85e7049 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodePerformanceChart.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodePerformanceChart.tsx @@ -3,7 +3,7 @@ import { ChartData, formatDateToUTC, generateChartData, LoadingIndicator, NodeMe import { PeriodFilter } from './FilterBar'; import { Box, Grid } from '@mui/material'; import PerformanceChart from './PerformanceChart'; -import { NodeRewards } from '../../../declarations/trustworthy-node-metrics/trustworthy-node-metrics.did'; +import { NodeRewardsMultiplier } from '../../../declarations/trustworthy-node-metrics/trustworthy-node-metrics.did'; import { ExportTable } from './ExportTable'; import { GridColDef, GridRowsProp } from '@mui/x-data-grid'; import { Principal } from '@dfinity/principal'; @@ -16,7 +16,7 @@ export interface NodePerformanceChartProps { } export const NodePerformanceChart: React.FC = ({ node, periodFilter }) => { - const [performanceData, setPerformanceData] = useState(null); + const [performanceData, setPerformanceData] = useState(null); const [isLoading, setIsLoading] = useState(true); useEffect(() => { diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx index 805294870..8f3a44a33 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx @@ -2,7 +2,7 @@ import React, { useEffect, useState } from 'react'; import { ChartData, generateChartData, getLatestRewardRange, LoadingIndicator, NodeMetricsStats, NodePerformanceStats, setNodeRewardsData } from '../utils/utils'; import { Grid, Typography } from '@mui/material'; import PerformanceChart from './PerformanceChart'; -import { NodeRewards } from '../../../declarations/trustworthy-node-metrics/trustworthy-node-metrics.did'; +import { NodeRewardsMultiplier } from '../../../declarations/trustworthy-node-metrics/trustworthy-node-metrics.did'; import RewardsInfo, { LinearReductionChart } from './RewardsInfo'; import { Principal } from '@dfinity/principal'; import { ExportTable } from './ExportTable'; @@ -14,7 +14,7 @@ export interface NodeRewardsChartProps { export const NodeRewardsChart: React.FC = ({ node }) => { const latestRewardRange = getLatestRewardRange(); - const [latestNodeRewards, setLatestNodeRewards] = useState(null); + const [latestNodeRewards, setLatestNodeRewards] = useState(null); const [isLoading, setIsLoading] = useState(true); useEffect(() => { diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/RewardTable.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/RewardTable.tsx index ad58c6d8e..71c32f048 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/RewardTable.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/RewardTable.tsx @@ -7,10 +7,10 @@ import TableHead from '@mui/material/TableHead'; import TableRow from '@mui/material/TableRow'; import Paper from '@mui/material/Paper'; import { SxProps, Theme } from '@mui/material'; -import { NodeRewards } from '../../../declarations/trustworthy-node-metrics/trustworthy-node-metrics.did'; +import { NodeRewardsMultiplier } from '../../../declarations/trustworthy-node-metrics/trustworthy-node-metrics.did'; interface RewardTableProps { - nodeRewards: NodeRewards[], + nodeRewards: NodeRewardsMultiplier[], sx?: SxProps; } diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/utils/utils.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/utils/utils.tsx index 546bf55a9..67c75a3ca 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/utils/utils.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/utils/utils.tsx @@ -1,7 +1,7 @@ import React from 'react'; import { Principal } from "@dfinity/principal"; import { trustworthy_node_metrics } from "../../../declarations/trustworthy-node-metrics"; -import { DailyNodeMetrics, NodeRewardsArgs, NodeRewards, NodeProviderRewardsArgs, NodeProviderRewards } from "../../../declarations/trustworthy-node-metrics/trustworthy-node-metrics.did"; +import { DailyNodeMetrics, NodeRewardsArgs, NodeRewardsMultiplier, NodeProviderRewardsArgs, NodeProviderRewards } from "../../../declarations/trustworthy-node-metrics/trustworthy-node-metrics.did"; import { PeriodFilter } from "../components/FilterBar"; import { Box, CircularProgress } from "@mui/material"; import { WidgetNumber } from '../components/Widgets'; @@ -130,7 +130,7 @@ export const getLatestRewardRange = () => { export const setNodeRewardsData = async ( periodFilter: PeriodFilter, node_id: Principal, - setNodeRewards: React.Dispatch>, + setNodeRewards: React.Dispatch>, setIsLoading: React.Dispatch>) => { try { setIsLoading(true); @@ -186,7 +186,7 @@ export const LoadingIndicator: React.FC = () => ( ); -export const NodeMetricsStats: React.FC<{ stats: NodeRewards['rewards_computation'] | null }> = ({ stats }) => ( +export const NodeMetricsStats: React.FC<{ stats: NodeRewardsMultiplier['rewards_computation'] | null }> = ({ stats }) => ( diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs index 50727a31d..f8c8b5b21 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs @@ -40,8 +40,8 @@ impl Storable for MonthlyNodeProviderRewardsStored { #[derive(Debug, Deserialize, Serialize, CandidType, Clone, PartialEq, Eq, PartialOrd, Ord)] pub struct NodeProviderRewardableKey { pub node_provider_id: Principal, + pub region: String, pub node_type: String, - pub region: String } const MAX_VALUE_SIZE_REWARDABLE_NODES: u32 = 300; @@ -92,7 +92,7 @@ pub struct NodeRewardRatesStored { pub rewards_rates: NodeRewardRates, } -const MAX_VALUE_SIZE_BYTES_REWARD_RATES: u32 = 133; +const MAX_VALUE_SIZE_BYTES_REWARD_RATES: u32 = 200; impl Storable for NodeRewardRatesStored { fn to_bytes(&self) -> std::borrow::Cow<[u8]> { @@ -249,7 +249,7 @@ pub struct RewardMultiplierResult { } #[derive(Debug, Deserialize, CandidType)] -pub struct NodeRewards { +pub struct NodeRewardsMultiplier { pub node_id: Principal, pub daily_node_metrics: Vec, pub node_rate: NodeRewardRate, @@ -264,7 +264,7 @@ pub struct NodeProviderRewards { pub rewards_xdr_old: Option, pub ts_distribution: u64, pub xdr_conversion_rate: Option, - pub nodes_rewards: Vec, + pub nodes_rewards: Vec, } #[derive(Debug, Deserialize, CandidType)] diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/lib.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/lib.rs index 4187dbc50..21f66ce3f 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/lib.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/lib.rs @@ -4,8 +4,8 @@ use ic_cdk_macros::*; use itertools::Itertools; use std::collections::{btree_map::Entry, BTreeMap}; use trustworthy_node_metrics_types::types::{ - NodeMetadata, NodeMetrics, NodeMetricsStored, NodeMetricsStoredKey, NodeProviderRewards, NodeProviderRewardsArgs, NodeRewards, NodeRewardsArgs, - SubnetNodeMetricsArgs, SubnetNodeMetricsResponse, + NodeMetadata, NodeMetrics, NodeMetricsStored, NodeMetricsStoredKey, NodeProviderRewards, NodeProviderRewardsArgs, NodeRewardsArgs, + NodeRewardsMultiplier, SubnetNodeMetricsArgs, SubnetNodeMetricsResponse, }; mod chrono_utils; mod computation_logger; @@ -109,11 +109,11 @@ fn nodes_metadata() -> Vec { } #[query] -fn node_rewards(args: NodeRewardsArgs) -> NodeRewards { +fn node_rewards(args: NodeRewardsArgs) -> NodeRewardsMultiplier { let rewarding_period = DateTimeRange::new(args.from_ts, args.to_ts); let node_id = args.node_id; - let rewards = rewards_manager::compute_node_rewards(vec![node_id], rewarding_period); + let rewards = rewards_manager::node_rewards_multiplier(vec![node_id], rewarding_period); rewards.into_iter().next().unwrap() } @@ -124,9 +124,3 @@ fn node_provider_rewards(args: NodeProviderRewardsArgs) -> NodeProviderRewards { rewards_manager::node_provider_rewards(node_provider_id, rewarding_period) } - -#[update] -fn update_rewardable_nodes() { - ic_cdk_timers::set_timer(std::time::Duration::from_secs(0), || ic_cdk::spawn(metrics_manager::update_rewardable_nodes())); -} - diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/metrics_manager.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/metrics_manager.rs index 768302cf6..287a888c0 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/metrics_manager.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/metrics_manager.rs @@ -1,4 +1,4 @@ -use std::collections::{BTreeMap, HashSet}; +use std::collections::BTreeMap; use candid::Principal; use dfn_core::api::PrincipalId; @@ -13,7 +13,7 @@ use ic_registry_keys::{make_data_center_record_key, make_node_operator_record_ke use crate::stable_memory; use itertools::Itertools; -use trustworthy_node_metrics_types::types::{NodeMetricsGrouped, NodeMetricsStored, NodeMetricsStoredKey, NodeProviderRewardableKey}; +use trustworthy_node_metrics_types::types::{NodeMetricsGrouped, NodeMetricsStored, NodeMetricsStoredKey}; use trustworthy_node_metrics_types::types::{SubnetNodeMetricsHistory, TimestampNanos}; /// Node metrics storable @@ -274,59 +274,6 @@ fn update_nodes_metrics(metrics_by_node: BTreeMap = stable_memory::get_all_operators(); - let mut np_rewardable: BTreeMap = BTreeMap::new(); - - for node_operator_id in operators_id { - - ic_cdk::println!("Fetching node operator record for {}", PrincipalId::from(node_operator_id)); - let node_operator_record = - match ic_nns_common::registry::get_value::(make_node_operator_record_key(PrincipalId::from(node_operator_id)).as_bytes(), None).await { - Ok((record, _)) => record, - Err(e) => { - ic_cdk::println!("Error fetching node operator record for {}: {:?}", PrincipalId::from(node_operator_id), e); - continue; - } - }; - - let dc_id = node_operator_record.dc_id; - - let node_provider_id: PrincipalId = match node_operator_record.node_provider_principal_id.try_into() { - Ok(id) => id, - Err(e) => { - ic_cdk::println!("Error converting node provider ID for Operator {}: {:?}", node_operator_id, e); - continue; - } - }; - - let data_center_record = - match ic_nns_common::registry::get_value::(make_data_center_record_key(&dc_id).as_bytes(), None).await { - Ok((record, _)) => record, - Err(e) => { - ic_cdk::println!("Error fetching data center record for {}: {:?}", dc_id, e); - continue; - } - }; - - let region = data_center_record.region; - - - for (node_type, count) in node_operator_record.rewardable_nodes { - let rewardable_cat = np_rewardable.entry(NodeProviderRewardableKey { node_provider_id: node_provider_id.0, region: region.clone(), node_type }).or_default(); - - *rewardable_cat += count; - } - } - - for (key, count) in np_rewardable { - ic_cdk::println!("Adding rewardables for {}", PrincipalId::from(key.node_provider_id)); - stable_memory::add_rewardable(key, count); - } -} - - /// Update metrics pub async fn update_metrics() -> anyhow::Result<()> { let subnets = fetch_subnets().await?; diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs index 49159fe45..041d5bb40 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs @@ -8,12 +8,12 @@ use num_traits::{FromPrimitive, ToPrimitive}; use rust_decimal::Decimal; use rust_decimal_macros::dec; use std::collections::{self}; -use trustworthy_node_metrics_types::types::{DailyNodeMetrics, NodeProviderRewards, NodeRewards, RewardMultiplierResult}; +use trustworthy_node_metrics_types::types::{DailyNodeMetrics, NodeProviderRewards, NodeRewardsMultiplier, RewardMultiplierResult}; use crate::{ chrono_utils::DateTimeRange, computation_logger::{ComputationLogger, Operation, OperationExecutor}, - stable_memory, + stable_memory::{self, RegionNodeTypeCategory}, }; const MIN_FAILURE_RATE: Decimal = dec!(0.1); @@ -145,20 +145,15 @@ fn compute_reward_multiplier(daily_metrics: &[DailyNodeMetrics], total_days: u64 } } -fn get_node_rate(node_id: &Principal) -> NodeRewardRate { - let node_metadata = stable_memory::get_node_metadata(node_id).expect("Node should have one node provider"); - - match stable_memory::get_rate(&node_metadata.region, &node_metadata.node_type) { +fn get_node_rate(region: &String, node_type: &String ) -> NodeRewardRate { + match stable_memory::get_rate(region, node_type) { Some(rate) => rate, None => { ic_cdk::println!( "The Node Rewards Table does not have an entry for \ - node type '{}' within region '{}' or parent region, defaulting to 1 xdr per month per node, for \ - NodeProvider '{}' on Node Operator '{}'", - node_metadata.node_type, - node_metadata.region, - node_metadata.node_provider_id, - node_metadata.node_operator_id + node type '{}' within region '{}' or parent region, defaulting to 1 xdr per month per node", + node_type, + region ); NodeRewardRate { xdr_permyriad_per_node_per_month: 1, @@ -168,17 +163,7 @@ fn get_node_rate(node_id: &Principal) -> NodeRewardRate { } } -/// Update node rewards table -pub async fn update_node_rewards_table() -> anyhow::Result<()> { - let (rewards_table, _): (NodeRewardsTable, _) = ic_nns_common::registry::get_value(NODE_REWARDS_TABLE_KEY.as_bytes(), None).await?; - for (region, rewards_rates) in rewards_table.table { - stable_memory::insert_rewards_rates(region, rewards_rates) - } - - Ok(()) -} - -pub fn compute_node_rewards(node_ids: Vec, rewarding_period: DateTimeRange) -> Vec { +pub fn node_rewards_multiplier(node_ids: Vec, rewarding_period: DateTimeRange) -> Vec { let total_days = rewarding_period.days_between(); let nodes_metrics = stable_memory::get_metrics_range( rewarding_period.start_timestamp_nanos(), @@ -206,9 +191,10 @@ pub fn compute_node_rewards(node_ids: Vec, rewarding_period: DateTime .into_iter() .map(|(node_id, daily_node_metrics)| { let rewards_computation = compute_reward_multiplier(&daily_node_metrics, total_days); - let node_rate = get_node_rate(&node_id); + let node_metadata = stable_memory::get_node_metadata(&node_id).expect("Node should have one node provider"); + let node_rate = get_node_rate(&node_metadata.region, &node_metadata.node_type); - NodeRewards { + NodeRewardsMultiplier { node_id, daily_node_metrics, node_rate, @@ -218,46 +204,69 @@ pub fn compute_node_rewards(node_ids: Vec, rewarding_period: DateTime .collect_vec() } -pub fn coumpute_node_provider_rewards(nodes_rewards: &[NodeRewards]) -> (Decimal, Decimal) { - let mut rewards_xdr = dec!(0); - let mut rewards_xdr_no_reduction = dec!(0); - let mut coefficient = dec!(1.0); +fn coumpute_node_provider_rewards(nodes_multiplier: &[NodeRewardsMultiplier], rewardable_nodes: collections::BTreeMap) -> (Decimal, Decimal) { + let mut assigned_multipliers: collections::BTreeMap> = collections::BTreeMap::new(); + + for node in nodes_multiplier { + let metadata = stable_memory::get_node_metadata(&node.node_id).unwrap(); - let nodes_rewards_xdr_sum: Decimal = nodes_rewards - .iter() - .map(|node_rewards| Decimal::from(node_rewards.node_rate.xdr_permyriad_per_node_per_month)) - .sum(); - let nodes_rewards_total: Decimal = nodes_rewards.len().into(); - let nodes_rewards_xdr_avg = nodes_rewards_xdr_sum / nodes_rewards_total; + assigned_multipliers + .entry((metadata.region, metadata.node_type)) + .or_default() + .push(node.rewards_computation.rewards_multiplier); + } - for node_rewards in nodes_rewards.iter() { - let metadata = stable_memory::get_node_metadata(&node_rewards.node_id).unwrap(); + // Compute total and average xdr_permyriad_per_node_per_month across all nodes + let mut nodes_rewards_xdr_sum: Decimal = dec!(0); + let mut nodes_rewards_total: Decimal = dec!(0); - let node_xdr = match &metadata.node_type { - t if t.starts_with("type3") => { - let reward_coefficient_percent: Decimal = Decimal::from(node_rewards.node_rate.reward_coefficient_percent.unwrap_or(80)) / dec!(100); - let nodes_rewards_xdr = nodes_rewards_xdr_avg * coefficient; + for ((region, node_type), count) in &rewardable_nodes { + let rate = get_node_rate(region, node_type); - coefficient *= reward_coefficient_percent; - nodes_rewards_xdr - } - _ => node_rewards.node_rate.xdr_permyriad_per_node_per_month.into(), - }; - rewards_xdr_no_reduction += node_xdr; - rewards_xdr += node_xdr * Decimal::from_f64(node_rewards.rewards_computation.rewards_multiplier).unwrap(); + nodes_rewards_xdr_sum += Decimal::from(rate.xdr_permyriad_per_node_per_month) * Decimal::from(*count); + nodes_rewards_total += Decimal::from(*count); } + let nodes_rewards_xdr_avg: Decimal = nodes_rewards_xdr_sum / nodes_rewards_total; + + let mut rewards_xdr_total = dec!(0); + let mut rewards_xdr_no_reduction_total = dec!(0); + let mut coefficient = dec!(1.0); - (rewards_xdr_no_reduction, rewards_xdr) + for ((region, node_type), count) in rewardable_nodes { + let rate = get_node_rate(®ion, &node_type); + let multipliers = assigned_multipliers + .entry((region, node_type.clone())) + .or_default(); + + multipliers.resize(count as usize, 1.0); + + for &multiplier_factor in multipliers.iter() { + let rewards_xdr = if node_type.starts_with("type3") { + let reward_coefficient_percent = Decimal::from(rate.reward_coefficient_percent.unwrap_or(80)) / dec!(100); + let rewards_type3 = nodes_rewards_xdr_avg * coefficient; + + coefficient *= reward_coefficient_percent; + rewards_type3 + } else { + nodes_rewards_xdr_avg + }; + + rewards_xdr_no_reduction_total += rewards_xdr; + rewards_xdr_total += rewards_xdr * Decimal::from_f64(multiplier_factor).unwrap(); + } + } + + (rewards_xdr_no_reduction_total, rewards_xdr_total) } pub fn node_provider_rewards(node_provider_id: Principal, rewarding_period: DateTimeRange) -> NodeProviderRewards { let node_ids = stable_memory::get_node_principals(&node_provider_id); - let nodes_rewards = compute_node_rewards(node_ids, rewarding_period); - let (rewards_xdr_no_reduction, rewards_xdr) = coumpute_node_provider_rewards(&nodes_rewards); - + let rewardable_nodes: collections::BTreeMap = stable_memory::get_rewardable_nodes(&node_provider_id); let latest_np_rewards = stable_memory::get_latest_node_providers_rewards(); - let ts_distribution = latest_np_rewards.timestamp; - let xdr_conversion_rate = latest_np_rewards.xdr_conversion_rate.and_then(|rate| rate.xdr_permyriad_per_icp); + + let nodes_multiplier = node_rewards_multiplier(node_ids, rewarding_period); + let (rewards_xdr_no_reduction, rewards_xdr) = coumpute_node_provider_rewards(&nodes_multiplier, rewardable_nodes); + let rewards_xdr_old = latest_np_rewards .rewards .into_iter() @@ -278,12 +287,23 @@ pub fn node_provider_rewards(node_provider_id: Principal, rewarding_period: Date rewards_xdr: rewards_xdr.to_u64().unwrap(), rewards_xdr_no_reduction: rewards_xdr_no_reduction.to_u64().unwrap(), rewards_xdr_old, - ts_distribution, - xdr_conversion_rate, - nodes_rewards, + ts_distribution: latest_np_rewards.timestamp, + xdr_conversion_rate: latest_np_rewards.xdr_conversion_rate.and_then(|rate| rate.xdr_permyriad_per_icp), + nodes_rewards: nodes_multiplier, } } +/// Update node rewards table +pub async fn update_node_rewards_table() -> anyhow::Result<()> { + let (rewards_table, _): (NodeRewardsTable, _) = ic_nns_common::registry::get_value(NODE_REWARDS_TABLE_KEY.as_bytes(), None).await?; + for (region, rewards_rates) in rewards_table.table { + stable_memory::insert_rewards_rates(region, rewards_rates) + } + + Ok(()) +} + +/// Update recent node providers rewards pub async fn update_recent_provider_rewards() -> anyhow::Result<()> { let (maybe_monthly_rewards,): (Option,) = ic_cdk::api::call::call( Principal::from(GOVERNANCE_CANISTER_ID), diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/stable_memory.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/stable_memory.rs index 0140e8308..50f890c39 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/stable_memory.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/stable_memory.rs @@ -8,10 +8,12 @@ use std::cell::RefCell; use std::collections::BTreeMap; use trustworthy_node_metrics_types::types::{ - MonthlyNodeProviderRewardsStored, NodeMetadata, NodeMetadataStored, NodeMetadataStoredV2, NodeMetricsStored, NodeMetricsStoredKey, NodeProviderRewardableKey, NodeProviderRewardableNodes, NodeRewardRatesStored, TimestampNanos + MonthlyNodeProviderRewardsStored, NodeMetadata, NodeMetadataStored, NodeMetadataStoredV2, NodeMetricsStored, NodeMetricsStoredKey, + NodeProviderRewardableKey, NodeRewardRatesStored, TimestampNanos, }; type Memory = VirtualMemory; +pub type RegionNodeTypeCategory = (String, String); thread_local! { static MEMORY_MANAGER: RefCell> = @@ -220,10 +222,17 @@ pub fn get_latest_node_providers_rewards() -> MonthlyNodeProviderRewards { MONTHLY_NP_REWARDS.with_borrow(|p| p.last_key_value().map(|(_, v)| v.monthly_node_provider_rewards).unwrap()) } -pub(crate) fn get_all_operators() -> std::collections::HashSet { - NODE_METADATA_V2.with_borrow(|metadata| metadata.iter().map(|meta| meta.1.node_operator_id).collect()) -} - -pub(crate) fn add_rewardable(key: NodeProviderRewardableKey, count: u32) { - NP_REWARDABLE_NODES.with_borrow_mut(|rewardable| rewardable.insert(key, count)); +pub fn get_rewardable_nodes(node_provider_id: &Principal) -> BTreeMap { + NP_REWARDABLE_NODES.with_borrow(|rewardable| { + rewardable + .iter() + .filter_map(|(key, value)| { + if &key.node_provider_id == node_provider_id { + Some(((key.region, key.node_type), value)) + } else { + None + } + }) + .collect() + }) } diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/trustworthy-node-metrics.did b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/trustworthy-node-metrics.did index 2966dc3b4..2de48789b 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/trustworthy-node-metrics.did +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/trustworthy-node-metrics.did @@ -52,7 +52,7 @@ type NodeRewardRate = record { reward_coefficient_percent: opt int32; }; -type NodeRewards = record { +type NodeRewardsMultiplier = record { node_id: principal; daily_node_metrics: vec DailyNodeMetrics; node_rate: NodeRewardRate; @@ -72,7 +72,7 @@ type NodeProviderRewards = record { rewards_xdr_old: opt nat64; ts_distribution: nat64; xdr_conversion_rate: opt nat64; - nodes_rewards: vec NodeRewards; + nodes_rewards: vec NodeRewardsMultiplier; }; type NodeProviderRewardsArgs = record { @@ -97,7 +97,7 @@ type NodeMetadata = record { service : { "subnet_node_metrics" : (SubnetNodeMetricsArgs) -> (SubnetNodeMetricsResult) query; - "node_rewards" : (NodeRewardsArgs) -> (NodeRewards) query; + "node_rewards" : (NodeRewardsArgs) -> (NodeRewardsMultiplier) query; "node_provider_rewards" : (NodeProviderRewardsArgs) -> (NodeProviderRewards) query; "node_ids" : () -> (vec principal) query; "nodes_metadata": () -> (vec NodeMetadata) query; From 54e6309fad274bcf456112b562cce34a5f1975c9 Mon Sep 17 00:00:00 2001 From: Pietro Date: Wed, 2 Oct 2024 10:03:24 +0200 Subject: [PATCH 08/16] New np rewards algo --- .../src/components/NodePerformanceChart.tsx | 4 +- .../src/components/NodeProviderChart.tsx | 2 +- .../src/components/NodeProviderPage.tsx | 2 +- .../src/components/NodeProviderRewards.tsx | 27 ++- .../src/components/NodeRewardsChart.tsx | 8 +- .../src/components/RewardTable.tsx | 2 +- .../src/utils/utils.tsx | 2 +- .../src/types.rs | 13 +- .../src/rewards_manager.rs | 227 ++++++++++++------ .../trustworthy-node-metrics.did | 5 +- 10 files changed, 198 insertions(+), 94 deletions(-) diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodePerformanceChart.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodePerformanceChart.tsx index 0c85e7049..2aef49a66 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodePerformanceChart.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodePerformanceChart.tsx @@ -36,7 +36,7 @@ export const NodePerformanceChart: React.FC = ({ node } const performanceDailyData: ChartData[] = generateChartData(periodFilter, performanceData.daily_node_metrics); - const failureRateAvg = Math.round(performanceData.rewards_computation.failure_rate * 100); + const failureRateAvg = Math.round(performanceData.rewards_multiplier.failure_rate * 100); const rows: GridRowsProp = performanceData.daily_node_metrics.map((data, index) => { return { @@ -62,7 +62,7 @@ export const NodePerformanceChart: React.FC = ({ node return ( <> - + diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderChart.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderChart.tsx index 1a86eb277..bae36344a 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderChart.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderChart.tsx @@ -53,7 +53,7 @@ export const NodeProviderChart: React.FC = ({ provider, const providerNodeMetrics = providerRewards.nodes_rewards; const highFailureRateChart = providerNodeMetrics - .sort((a, b) => b.rewards_computation.failure_rate - a.rewards_computation.failure_rate) + .sort((a, b) => b.rewards_multiplier.failure_rate - a.rewards_multiplier.failure_rate) .slice(0, 3) .flatMap(nodeMetrics => { const chartData = generateChartData(periodFilter, nodeMetrics.daily_node_metrics); diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderPage.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderPage.tsx index efdd2373d..266a04c46 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderPage.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderPage.tsx @@ -63,7 +63,7 @@ export const NodeProviderPage: React.FC = ({ nodeMetadata - Provider Rewards + Last Rewarding Period diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderRewards.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderRewards.tsx index 03bb3e14a..7af4e183d 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderRewards.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeProviderRewards.tsx @@ -1,10 +1,12 @@ import React, { useEffect, useState } from 'react'; import { getLatestRewardRange, LoadingIndicator, setNodeProviderRewardsData } from '../utils/utils'; -import { Box, Grid } from '@mui/material'; +import { Box, Grid, Typography } from '@mui/material'; import { Principal } from '@dfinity/principal'; import { NodeProviderRewards } from '../../../declarations/trustworthy-node-metrics/trustworthy-node-metrics.did'; import { WidgetNumber } from './Widgets'; import { boxStyleWidget } from '../Styles'; +import { ExportTable } from './ExportTable'; +import { GridColDef, GridRowsProp } from '@mui/x-data-grid'; export interface NodeProviderRewardsChartProps { provider: string; @@ -36,6 +38,21 @@ export const NodeProviderRewardsChart: React.FC = return

No latestNodeRewards

; } const distribution_date = new Date(Number(latestProviderRewards.ts_distribution) * 1000); + const rows: GridRowsProp = latestProviderRewards.computation_log.map((data, index) => { + return { + id: index, + col0: index, + col1: data.reason, + col2: data.operation, + col3: data.result + }; + }); + const colDef: GridColDef[] = [ + { field: 'col0', headerName: 'Step', width: 100}, + { field: 'col1', headerName: 'Description', width: 1500}, + { field: 'col2', headerName: 'Operation', width: 500 }, + { field: 'col3', headerName: 'Result', width: 200 }, + ]; return ( <> @@ -49,10 +66,16 @@ export const NodeProviderRewardsChart: React.FC =
- + + + + Computation Log + + + ); diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx index 8f3a44a33..9d2bb7be5 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/components/NodeRewardsChart.tsx @@ -33,10 +33,10 @@ export const NodeRewardsChart: React.FC = ({ node }) => { } const rewardsDailyData: ChartData[] = generateChartData(latestRewardRange, latestNodeRewards.daily_node_metrics); - const failureRateAvg = Math.round((latestNodeRewards.rewards_computation.failure_rate) * 100) - const rewardsMultiplier = Math.round((latestNodeRewards.rewards_computation.rewards_multiplier) * 100); + const failureRateAvg = Math.round((latestNodeRewards.rewards_multiplier.failure_rate) * 100) + const rewardsMultiplier = Math.round((latestNodeRewards.rewards_multiplier.rewards_multiplier) * 100); const rewardsReduction = 100 - rewardsMultiplier; - const rows: GridRowsProp = latestNodeRewards.rewards_computation.computation_log.map((data, index) => { + const rows: GridRowsProp = latestNodeRewards.rewards_multiplier.computation_log.map((data, index) => { return { id: index, col0: index, @@ -55,7 +55,7 @@ export const NodeRewardsChart: React.FC = ({ node }) => { return ( <> - + = ({ nodeRewards }) => { {nodeMetrics.node_id.toText()} - {nodeMetrics.rewards_computation.failure_rate * 100}% + {nodeMetrics.rewards_multiplier.failure_rate * 100}% ))} diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/utils/utils.tsx b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/utils/utils.tsx index 67c75a3ca..0f1d2c2b3 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/utils/utils.tsx +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-frontend/src/utils/utils.tsx @@ -186,7 +186,7 @@ export const LoadingIndicator: React.FC = () => ( ); -export const NodeMetricsStats: React.FC<{ stats: NodeRewardsMultiplier['rewards_computation'] | null }> = ({ stats }) => ( +export const NodeMetricsStats: React.FC<{ stats: NodeRewardsMultiplier['rewards_multiplier'] | null }> = ({ stats }) => ( diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs index f8c8b5b21..e4608b0ca 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs @@ -1,4 +1,4 @@ -use std::{borrow::Cow, collections::BTreeMap, fmt, u32}; +use std::{borrow::Cow, fmt}; use candid::{CandidType, Decode, Deserialize, Encode, Principal}; use dfn_core::api::PrincipalId; @@ -236,7 +236,7 @@ impl DailyNodeMetrics { } #[derive(Debug, Deserialize, CandidType)] -pub struct RewardMultiplierResult { +pub struct RewardsMultiplier { pub days_assigned: u64, pub days_unassigned: u64, pub rewards_multiplier: f64, @@ -253,7 +253,13 @@ pub struct NodeRewardsMultiplier { pub node_id: Principal, pub daily_node_metrics: Vec, pub node_rate: NodeRewardRate, - pub rewards_computation: RewardMultiplierResult, + pub rewards_multiplier: RewardsMultiplier, +} + +pub struct NodeProviderRewardsComputation { + pub rewards_xdr: u64, + pub rewards_xdr_no_reduction: u64, + pub computation_log: Vec, } #[derive(Debug, Deserialize, CandidType)] @@ -265,6 +271,7 @@ pub struct NodeProviderRewards { pub ts_distribution: u64, pub xdr_conversion_rate: Option, pub nodes_rewards: Vec, + pub computation_log: Vec, } #[derive(Debug, Deserialize, CandidType)] diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs index 041d5bb40..a8c4be219 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs @@ -7,8 +7,10 @@ use itertools::Itertools; use num_traits::{FromPrimitive, ToPrimitive}; use rust_decimal::Decimal; use rust_decimal_macros::dec; -use std::collections::{self}; -use trustworthy_node_metrics_types::types::{DailyNodeMetrics, NodeProviderRewards, NodeRewardsMultiplier, RewardMultiplierResult}; +use std::collections::{self, HashMap}; +use trustworthy_node_metrics_types::types::{ + DailyNodeMetrics, NodeProviderRewards, NodeProviderRewardsComputation, NodeRewardsMultiplier, RewardsMultiplier, +}; use crate::{ chrono_utils::DateTimeRange, @@ -96,7 +98,7 @@ fn rewards_reduction_percent(failure_rate: &Decimal) -> (Vec, /// 2. The `overall_failure_rate` is calculated by dividing the `overall_failed` blocks by the `overall_total` blocks. /// 3. The `rewards_reduction` function is applied to `overall_failure_rate`. /// 3. Finally, the rewards percentage to be distrubuted to the node is computed. -fn compute_reward_multiplier(daily_metrics: &[DailyNodeMetrics], total_days: u64) -> RewardMultiplierResult { +fn compute_rewards_multiplier(daily_metrics: &[DailyNodeMetrics], total_days: u64) -> RewardsMultiplier { let mut computation_logger = ComputationLogger::new(); let total_days = computation_logger.execute("Days In Period", Operation::Set(Decimal::from(total_days))); @@ -132,7 +134,7 @@ fn compute_reward_multiplier(daily_metrics: &[DailyNodeMetrics], total_days: u64 Operation::Divide(assigned_days_factor + unassigned_days_factor, total_days), ); - RewardMultiplierResult { + RewardsMultiplier { days_assigned: days_assigned.to_u64().unwrap(), days_unassigned: days_unassigned.to_u64().unwrap(), rewards_multiplier: rewards_multiplier.to_f64().unwrap(), @@ -145,7 +147,7 @@ fn compute_reward_multiplier(daily_metrics: &[DailyNodeMetrics], total_days: u64 } } -fn get_node_rate(region: &String, node_type: &String ) -> NodeRewardRate { +fn get_node_rate(region: &String, node_type: &String) -> NodeRewardRate { match stable_memory::get_rate(region, node_type) { Some(rate) => rate, None => { @@ -163,6 +165,131 @@ fn get_node_rate(region: &String, node_type: &String ) -> NodeRewardRate { } } +fn coumpute_node_provider_rewards( + nodes_multiplier: &[NodeRewardsMultiplier], + rewardable_nodes: collections::BTreeMap, +) -> NodeProviderRewardsComputation { + let mut rewards_xdr_total = dec!(0); + let mut rewards_xdr_no_reduction_total = dec!(0); + + // 1 - Compute rewards and coefficients average for all nodes type3 and type3.1 in the same region + let type3_coefficients: HashMap> = HashMap::new(); + let type3_rewards: HashMap> = HashMap::new(); + + for ((region, node_type), count) in rewardable_nodes { + if node_type.starts_with("type3") && count > 0 { + let rate = get_node_rate(®ion, &node_type); + let current_coefficients = vec![ + Decimal::from(rate.reward_coefficient_percent.unwrap_or(80)) / dec!(100); + count as usize + ]; + let current_rewards = vec![ + Decimal::from(rate.xdr_permyriad_per_node_per_month); + count as usize + ]; + + let region_key = region + .splitn(3, ',') + .take(2) + .collect::>() + .join(":"); + + type3_coefficients + .entry(region_key) + .and_modify(|c| c.extend(current_coefficients)) + .or_insert(current_coefficients); + type3_rewards + .entry(region_key) + .and_modify(|c| c.extend(current_rewards)) + .or_insert(current_rewards); + } + } + let type3_coefficients_avg: HashMap = type3_coefficients + .values() + .map(|coefficients| coefficients.iter().sum() / coefficients.len()) + .collect(); + let type3_rewards_avg: HashMap = type3_rewards + .values() + .map(|rewards| rewards.iter().sum() / rewards.len()) + .collect(); + + let type3_rewards_reduced = type3_rewards + .into_iter() + .map(|(region, individual_rewards)|{ + let mut coefficient = dec!(1); + let mut rewards_reduced_by_coeff = dec!(0); + let region_coefficient_avg = type3_coefficients_avg.get(®ion).unwrap(); + let region_rewards_avg = type3_coefficients_avg.get(®ion).unwrap(); + + for _ in individual_rewards { + rewards_reduced_by_coeff += region_rewards_avg * coefficient; + coefficient *= region_coefficient_avg; + } + + let rewards_reduced_by_coeff_avg = rewards_reduced_by_coeff / Decimal::from(individual_rewards.len()); + + + }) + + let mut assigned_multipliers: collections::BTreeMap> = collections::BTreeMap::new(); + let mut computation_logger = ComputationLogger::new(); + + for node in nodes_multiplier { + let metadata = stable_memory::get_node_metadata(&node.node_id).expect("Node should have one node provider"); + let rewards_multiplier = computation_logger.execute( + &format!( + "Set rewards multiplier for Node {}, in region {} with type {}\n", + node.node_id, metadata.region, metadata.node_type + ), + Operation::Set(Decimal::from_f64(node.rewards_multiplier.rewards_multiplier).unwrap()), + ); + let region_key = metadata.region + .splitn(3, ',') + .take(2) + .collect::>() + .join(":"); + + assigned_multipliers + .entry((region_key, metadata.node_type)) + .or_default() + .push(rewards_multiplier); + } + + let multipliers = assigned_multipliers.entry((region.clone(), node_type.clone())).or_default(); + + multipliers.resize(count as usize, dec!(1.0)); + + for &multiplier_factor in multipliers.iter() { + let rewards_xdr = if node_type.starts_with("type3") { + let rewards_type3 = computation_logger.execute( + "Type3 node, applying multiple node coefficient", + Operation::Multiply(nodes_rewards_xdr_avg, country_coeff), + ); + + country_coeff *= Decimal::from(rate.reward_coefficient_percent.unwrap_or(80)) / dec!(100); + rewards_type3 + } else { + computation_logger.execute("Not a type3 node, no multiple node coefficient", Operation::Set(nodes_rewards_xdr_avg)) + }; + + let rewards_xdr_reduced = computation_logger.execute( + "Reducing rewards multiplying by multiplier factor", + Operation::Multiply(rewards_xdr, multiplier_factor), + ); + + rewards_xdr_no_reduction_total += rewards_xdr; + rewards_xdr_total = + computation_logger.execute("Update Total 10,000ths XDR", Operation::Sum(vec![rewards_xdr_total, rewards_xdr_reduced])); + } + // 1 - Compute average for all nodes type3 and type3.1 + + NodeProviderRewardsComputation { + rewards_xdr: rewards_xdr_total.to_u64().unwrap(), + rewards_xdr_no_reduction: rewards_xdr_no_reduction_total.to_u64().unwrap(), + computation_log: computation_logger.get_log(), + } +} + pub fn node_rewards_multiplier(node_ids: Vec, rewarding_period: DateTimeRange) -> Vec { let total_days = rewarding_period.days_between(); let nodes_metrics = stable_memory::get_metrics_range( @@ -190,7 +317,7 @@ pub fn node_rewards_multiplier(node_ids: Vec, rewarding_period: DateT daily_metrics .into_iter() .map(|(node_id, daily_node_metrics)| { - let rewards_computation = compute_reward_multiplier(&daily_node_metrics, total_days); + let rewards_multiplier = compute_rewards_multiplier(&daily_node_metrics, total_days); let node_metadata = stable_memory::get_node_metadata(&node_id).expect("Node should have one node provider"); let node_rate = get_node_rate(&node_metadata.region, &node_metadata.node_type); @@ -198,74 +325,19 @@ pub fn node_rewards_multiplier(node_ids: Vec, rewarding_period: DateT node_id, daily_node_metrics, node_rate, - rewards_computation, + rewards_multiplier, } }) .collect_vec() } -fn coumpute_node_provider_rewards(nodes_multiplier: &[NodeRewardsMultiplier], rewardable_nodes: collections::BTreeMap) -> (Decimal, Decimal) { - let mut assigned_multipliers: collections::BTreeMap> = collections::BTreeMap::new(); - - for node in nodes_multiplier { - let metadata = stable_memory::get_node_metadata(&node.node_id).unwrap(); - - assigned_multipliers - .entry((metadata.region, metadata.node_type)) - .or_default() - .push(node.rewards_computation.rewards_multiplier); - } - - // Compute total and average xdr_permyriad_per_node_per_month across all nodes - let mut nodes_rewards_xdr_sum: Decimal = dec!(0); - let mut nodes_rewards_total: Decimal = dec!(0); - - for ((region, node_type), count) in &rewardable_nodes { - let rate = get_node_rate(region, node_type); - - nodes_rewards_xdr_sum += Decimal::from(rate.xdr_permyriad_per_node_per_month) * Decimal::from(*count); - nodes_rewards_total += Decimal::from(*count); - } - let nodes_rewards_xdr_avg: Decimal = nodes_rewards_xdr_sum / nodes_rewards_total; - - let mut rewards_xdr_total = dec!(0); - let mut rewards_xdr_no_reduction_total = dec!(0); - let mut coefficient = dec!(1.0); - - for ((region, node_type), count) in rewardable_nodes { - let rate = get_node_rate(®ion, &node_type); - let multipliers = assigned_multipliers - .entry((region, node_type.clone())) - .or_default(); - - multipliers.resize(count as usize, 1.0); - - for &multiplier_factor in multipliers.iter() { - let rewards_xdr = if node_type.starts_with("type3") { - let reward_coefficient_percent = Decimal::from(rate.reward_coefficient_percent.unwrap_or(80)) / dec!(100); - let rewards_type3 = nodes_rewards_xdr_avg * coefficient; - - coefficient *= reward_coefficient_percent; - rewards_type3 - } else { - nodes_rewards_xdr_avg - }; - - rewards_xdr_no_reduction_total += rewards_xdr; - rewards_xdr_total += rewards_xdr * Decimal::from_f64(multiplier_factor).unwrap(); - } - } - - (rewards_xdr_no_reduction_total, rewards_xdr_total) -} - pub fn node_provider_rewards(node_provider_id: Principal, rewarding_period: DateTimeRange) -> NodeProviderRewards { let node_ids = stable_memory::get_node_principals(&node_provider_id); let rewardable_nodes: collections::BTreeMap = stable_memory::get_rewardable_nodes(&node_provider_id); let latest_np_rewards = stable_memory::get_latest_node_providers_rewards(); let nodes_multiplier = node_rewards_multiplier(node_ids, rewarding_period); - let (rewards_xdr_no_reduction, rewards_xdr) = coumpute_node_provider_rewards(&nodes_multiplier, rewardable_nodes); + let rewards_computation = coumpute_node_provider_rewards(&nodes_multiplier, rewardable_nodes); let rewards_xdr_old = latest_np_rewards .rewards @@ -284,8 +356,9 @@ pub fn node_provider_rewards(node_provider_id: Principal, rewarding_period: Date NodeProviderRewards { node_provider_id, - rewards_xdr: rewards_xdr.to_u64().unwrap(), - rewards_xdr_no_reduction: rewards_xdr_no_reduction.to_u64().unwrap(), + rewards_xdr: rewards_computation.rewards_xdr, + rewards_xdr_no_reduction: rewards_computation.rewards_xdr_no_reduction, + computation_log: rewards_computation.computation_log, rewards_xdr_old, ts_distribution: latest_np_rewards.timestamp, xdr_conversion_rate: latest_np_rewards.xdr_conversion_rate.and_then(|rate| rate.xdr_permyriad_per_icp), @@ -373,7 +446,7 @@ mod tests { fn test_rewards_percent() { // Overall failed = 130 Overall total = 500 Failure rate = 0.26 let daily_metrics: Vec = daily_mocked_metrics(vec![MockedMetrics::new(20, 6, 4), MockedMetrics::new(25, 10, 2)]); - let result = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); + let result = compute_rewards_multiplier(&daily_metrics, daily_metrics.len() as u64); assert_eq!(result.rewards_multiplier, 0.744); // Overall failed = 45 Overall total = 450 Failure rate = 0.1 @@ -382,14 +455,14 @@ mod tests { MockedMetrics::new(1, 400, 20), MockedMetrics::new(1, 5, 25), // no penalty ]); - let result = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); + let result = compute_rewards_multiplier(&daily_metrics, daily_metrics.len() as u64); assert_eq!(result.rewards_multiplier, 1.0); // Overall failed = 5 Overall total = 10 Failure rate = 0.5 let daily_metrics: Vec = daily_mocked_metrics(vec![ MockedMetrics::new(1, 5, 5), // no penalty ]); - let result = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); + let result = compute_rewards_multiplier(&daily_metrics, daily_metrics.len() as u64); assert_eq!(result.rewards_multiplier, 0.36); } @@ -398,7 +471,7 @@ mod tests { let daily_metrics: Vec = daily_mocked_metrics(vec![ MockedMetrics::new(10, 5, 95), // max failure rate ]); - let result = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); + let result = compute_rewards_multiplier(&daily_metrics, daily_metrics.len() as u64); assert_eq!(result.rewards_multiplier, 0.2); } @@ -407,7 +480,7 @@ mod tests { let daily_metrics: Vec = daily_mocked_metrics(vec![ MockedMetrics::new(10, 9, 1), // min failure rate ]); - let result = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); + let result = compute_rewards_multiplier(&daily_metrics, daily_metrics.len() as u64); assert_eq!(result.rewards_multiplier, 1.0); } @@ -425,17 +498,17 @@ mod tests { daily_mocked_metrics(vec![gap.clone(), MockedMetrics::new(1, 6, 4), MockedMetrics::new(1, 7, 3)]); assert_eq!( - compute_reward_multiplier(&daily_metrics_mid_gap, daily_metrics_mid_gap.len() as u64).rewards_multiplier, + compute_rewards_multiplier(&daily_metrics_mid_gap, daily_metrics_mid_gap.len() as u64).rewards_multiplier, 0.7866666666666666 ); assert_eq!( - compute_reward_multiplier(&daily_metrics_mid_gap, daily_metrics_mid_gap.len() as u64).rewards_multiplier, - compute_reward_multiplier(&daily_metrics_left_gap, daily_metrics_left_gap.len() as u64).rewards_multiplier + compute_rewards_multiplier(&daily_metrics_mid_gap, daily_metrics_mid_gap.len() as u64).rewards_multiplier, + compute_rewards_multiplier(&daily_metrics_left_gap, daily_metrics_left_gap.len() as u64).rewards_multiplier ); assert_eq!( - compute_reward_multiplier(&daily_metrics_right_gap, daily_metrics_right_gap.len() as u64).rewards_multiplier, - compute_reward_multiplier(&daily_metrics_left_gap, daily_metrics_left_gap.len() as u64).rewards_multiplier + compute_rewards_multiplier(&daily_metrics_right_gap, daily_metrics_right_gap.len() as u64).rewards_multiplier, + compute_rewards_multiplier(&daily_metrics_left_gap, daily_metrics_left_gap.len() as u64).rewards_multiplier ); } @@ -448,9 +521,9 @@ mod tests { ]); let mut daily_metrics = daily_metrics.clone(); - let result = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); + let result = compute_rewards_multiplier(&daily_metrics, daily_metrics.len() as u64); daily_metrics.reverse(); - let result_rev = compute_reward_multiplier(&daily_metrics, daily_metrics.len() as u64); + let result_rev = compute_rewards_multiplier(&daily_metrics, daily_metrics.len() as u64); assert_eq!(result.rewards_multiplier, 1.0); assert_eq!(result_rev.rewards_multiplier, result.rewards_multiplier); diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/trustworthy-node-metrics.did b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/trustworthy-node-metrics.did index 2de48789b..a2b622728 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/trustworthy-node-metrics.did +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/trustworthy-node-metrics.did @@ -35,7 +35,7 @@ type OperationExecutorLog = record { result: text; }; -type RewardMultiplierResult = record { +type RewardsMultiplier = record { days_assigned: nat64; days_unassigned: nat64; rewards_multiplier: float64; @@ -56,7 +56,7 @@ type NodeRewardsMultiplier = record { node_id: principal; daily_node_metrics: vec DailyNodeMetrics; node_rate: NodeRewardRate; - rewards_computation: RewardMultiplierResult; + rewards_multiplier: RewardsMultiplier; }; type NodeRewardsArgs = record { @@ -69,6 +69,7 @@ type NodeProviderRewards = record { node_provider_id: principal; rewards_xdr: nat64; rewards_xdr_no_reduction: nat64; + computation_log: vec OperationExecutorLog; rewards_xdr_old: opt nat64; ts_distribution: nat64; xdr_conversion_rate: opt nat64; From e821fd8a2ba19d19c0cbbdd2467948f55218ac63 Mon Sep 17 00:00:00 2001 From: Pietro Date: Wed, 2 Oct 2024 16:26:29 +0200 Subject: [PATCH 09/16] Increase stable mem size --- .../trustworthy-node-metrics/add_np.py | 71 +++++++-------- .../src/types.rs | 2 +- .../trustworthy-node-metrics.did | 48 ---------- .../src/rewards_manager.rs | 87 +++++-------------- 4 files changed, 54 insertions(+), 154 deletions(-) delete mode 100644 rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/trustworthy-node-metrics.did diff --git a/rs/dre-canisters/trustworthy-node-metrics/add_np.py b/rs/dre-canisters/trustworthy-node-metrics/add_np.py index a613858dc..6ab2b1e61 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/add_np.py +++ b/rs/dre-canisters/trustworthy-node-metrics/add_np.py @@ -1,60 +1,51 @@ -import csv +import json import subprocess - +import time # Define the file paths and constants csv_file_path = "node_info_api.csv" did_file_path = "rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/trustworthy-node-metrics.did" network = "ic" canister_name = "trustworthy-node-metrics" -# Function to generate the dfx command for node_metadata -def generate_dfx_command(node_mappings): - nodes = [ - f'record {{ node_id = principal "{row["node_id"]}"; node_provider_id = principal "{row["node_provider_id"]}"; node_provider_name = "{row["node_provider_name"]}"; }}' - for row in node_mappings - ] - # Prepare the argument for the canister call - node_metadata_args = f"vec {{ {'; '.join(nodes)} ; }}" - +# Function to generate the dfx command for a single node +def generate_dfx_command(node_data): command = [ - "dfx", "canister", "call", canister_name, "node_metadata", - f'({node_metadata_args})', + "dfx", "canister", "call", canister_name, "np_rewardable_backfill", + f'(record {{ node_provider_id = principal "{node_data["node_provider_id"]}"; region = "{node_data["region"]}"; node_type = "{node_data["node_type"]}"; count = {node_data["count"]}; }})', "--candid", did_file_path, "--network", network ] - return command -# Read the CSV file and filter out missing providers -def read_csv(csv_file_path): - node_mappings = [] - with open(csv_file_path, mode='r') as file: - csv_reader = csv.DictReader(file) - for row in csv_reader: - if row['node_provider_id'] != "missing": # Ignore missing providers - node_mappings.append({ - "node_id": row["node_id"], - "node_provider_id": row["node_provider_id"], - "node_provider_name": row["node_provider_name"] - }) +# Read the .json file and extract node information +def read_json(json_file_path): + with open(json_file_path, mode='r') as file: + # Each line is a separate JSON object, so we use a list to store them + node_mappings = [json.loads(line) for line in file] return node_mappings +# Execute the dfx command for each node +def execute_dfx_command(command): + try: + result = subprocess.run(command, capture_output=True, text=True) + print("Command executed successfully:", result.stdout) + if result.stderr: + print("Error:", result.stderr) + except Exception as e: + print("Failed to execute the dfx command:", str(e)) + # Main execution if __name__ == "__main__": - # Read the CSV and get node mappings - node_mappings = read_csv(csv_file_path) + # Read the JSON file and get node mappings + node_mappings = read_json(json_file_path) if node_mappings: - # Generate the dfx command - dfx_command = generate_dfx_command(node_mappings) - - # Execute the dfx command - try: - result = subprocess.run(dfx_command, capture_output=True, text=True) - print(result.stdout) - if result.stderr: - print("Error:", result.stderr) - except Exception as e: - print("Failed to execute the dfx command:", str(e)) + # Loop through each node and execute a separate command + for node in node_mappings: + # Generate the dfx command for the current node + dfx_command = generate_dfx_command(node) + + # Execute the dfx command for the current node + execute_dfx_command(dfx_command) else: - print("No valid node mappings found.") + print("No valid node mappings found.") \ No newline at end of file diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs index e4608b0ca..c08a5a327 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/src/types.rs @@ -140,7 +140,7 @@ pub struct NodeMetadataStoredV2 { pub node_type: String, } -const MAX_VALUE_SIZE_BYTES_NODE_METADATA: u32 = 204; +const MAX_VALUE_SIZE_BYTES_NODE_METADATA: u32 = 400; impl Storable for NodeMetadataStoredV2 { fn to_bytes(&self) -> std::borrow::Cow<[u8]> { diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/trustworthy-node-metrics.did b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/trustworthy-node-metrics.did deleted file mode 100644 index 22c06ae39..000000000 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics-types/trustworthy-node-metrics.did +++ /dev/null @@ -1,48 +0,0 @@ - -type NodeMetrics = record { - node_id: principal; - num_blocks_proposed_total: nat64; - num_blocks_failures_total: nat64; -}; - -type SubnetNodeMetricsResponse = record { - ts: nat64; - subnet_id: principal; - node_metrics: vec NodeMetrics; -}; - -type SubnetNodeMetricsResult = variant { - Ok : vec SubnetNodeMetricsResponse; - Err : text; -}; - -type SubnetNodeMetricsArgs = record { - subnet_id: opt principal; - ts: opt nat64; -}; - -type DailyNodeMetrics = record { - ts: nat64; - subnet_assigned: principal; - num_blocks_proposed: nat64; - num_blocks_failed: nat64; - failure_rate: float64; - rewards_reduction: float64; -}; - -type NodeRewardsResponse = record { - node_id: principal; - rewards_no_penalty: float64; - rewards_with_penalty: float64; - daily_node_metrics: vec DailyNodeMetrics; -}; - -type NodeRewardsArgs = record { - from_ts: nat64; - to_ts: nat64; -}; - -service : { - "subnet_node_metrics" : (SubnetNodeMetricsArgs) -> (SubnetNodeMetricsResult) query; - "node_rewards" : (NodeRewardsArgs) -> (vec NodeRewardsResponse) query; -} diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs index a8c4be219..79578eb36 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs @@ -4,7 +4,7 @@ use ic_nns_governance_api::pb::v1::MonthlyNodeProviderRewards; use ic_protobuf::registry::node_rewards::{v2::NodeRewardRate, v2::NodeRewardsTable}; use ic_registry_keys::NODE_REWARDS_TABLE_KEY; use itertools::Itertools; -use num_traits::{FromPrimitive, ToPrimitive}; +use num_traits::{FromPrimitive, ToPrimitive, Zero}; use rust_decimal::Decimal; use rust_decimal_macros::dec; use std::collections::{self, HashMap}; @@ -171,10 +171,11 @@ fn coumpute_node_provider_rewards( ) -> NodeProviderRewardsComputation { let mut rewards_xdr_total = dec!(0); let mut rewards_xdr_no_reduction_total = dec!(0); + let mut computation_logger = ComputationLogger::new(); // 1 - Compute rewards and coefficients average for all nodes type3 and type3.1 in the same region - let type3_coefficients: HashMap> = HashMap::new(); - let type3_rewards: HashMap> = HashMap::new(); + let mut type3_coefficients: HashMap> = HashMap::new(); + let mut type3_rewards: HashMap> = HashMap::new(); for ((region, node_type), count) in rewardable_nodes { if node_type.starts_with("type3") && count > 0 { @@ -195,22 +196,31 @@ fn coumpute_node_provider_rewards( .join(":"); type3_coefficients - .entry(region_key) - .and_modify(|c| c.extend(current_coefficients)) + .entry(region_key.clone()) + .and_modify(|c| c.extend(current_coefficients.clone())) .or_insert(current_coefficients); type3_rewards .entry(region_key) - .and_modify(|c| c.extend(current_rewards)) + .and_modify(|c| c.extend(current_rewards.clone())) .or_insert(current_rewards); } } let type3_coefficients_avg: HashMap = type3_coefficients - .values() - .map(|coefficients| coefficients.iter().sum() / coefficients.len()) + .iter() + .map(|(key, coefficients)| { + let sum: Decimal = coefficients.iter().cloned().fold(Decimal::zero(), |acc, val| acc + val); + let avg = sum / Decimal::from(coefficients.len()); + (key.clone(), avg) + }) .collect(); + let type3_rewards_avg: HashMap = type3_rewards - .values() - .map(|rewards| rewards.iter().sum() / rewards.len()) + .iter() + .map(|(key, rewards)| { + let sum: Decimal = rewards.iter().cloned().fold(Decimal::zero(), |acc, val| acc + val); + let avg = sum / Decimal::from(rewards.len()); + (key.clone(), avg) + }) .collect(); let type3_rewards_reduced = type3_rewards @@ -221,67 +231,14 @@ fn coumpute_node_provider_rewards( let region_coefficient_avg = type3_coefficients_avg.get(®ion).unwrap(); let region_rewards_avg = type3_coefficients_avg.get(®ion).unwrap(); - for _ in individual_rewards { + for _ in individual_rewards.clone() { rewards_reduced_by_coeff += region_rewards_avg * coefficient; coefficient *= region_coefficient_avg; } let rewards_reduced_by_coeff_avg = rewards_reduced_by_coeff / Decimal::from(individual_rewards.len()); - - }) - - let mut assigned_multipliers: collections::BTreeMap> = collections::BTreeMap::new(); - let mut computation_logger = ComputationLogger::new(); - - for node in nodes_multiplier { - let metadata = stable_memory::get_node_metadata(&node.node_id).expect("Node should have one node provider"); - let rewards_multiplier = computation_logger.execute( - &format!( - "Set rewards multiplier for Node {}, in region {} with type {}\n", - node.node_id, metadata.region, metadata.node_type - ), - Operation::Set(Decimal::from_f64(node.rewards_multiplier.rewards_multiplier).unwrap()), - ); - let region_key = metadata.region - .splitn(3, ',') - .take(2) - .collect::>() - .join(":"); - - assigned_multipliers - .entry((region_key, metadata.node_type)) - .or_default() - .push(rewards_multiplier); - } - - let multipliers = assigned_multipliers.entry((region.clone(), node_type.clone())).or_default(); - - multipliers.resize(count as usize, dec!(1.0)); - - for &multiplier_factor in multipliers.iter() { - let rewards_xdr = if node_type.starts_with("type3") { - let rewards_type3 = computation_logger.execute( - "Type3 node, applying multiple node coefficient", - Operation::Multiply(nodes_rewards_xdr_avg, country_coeff), - ); - - country_coeff *= Decimal::from(rate.reward_coefficient_percent.unwrap_or(80)) / dec!(100); - rewards_type3 - } else { - computation_logger.execute("Not a type3 node, no multiple node coefficient", Operation::Set(nodes_rewards_xdr_avg)) - }; - - let rewards_xdr_reduced = computation_logger.execute( - "Reducing rewards multiplying by multiplier factor", - Operation::Multiply(rewards_xdr, multiplier_factor), - ); - - rewards_xdr_no_reduction_total += rewards_xdr; - rewards_xdr_total = - computation_logger.execute("Update Total 10,000ths XDR", Operation::Sum(vec![rewards_xdr_total, rewards_xdr_reduced])); - } - // 1 - Compute average for all nodes type3 and type3.1 + }); NodeProviderRewardsComputation { rewards_xdr: rewards_xdr_total.to_u64().unwrap(), From 722e1f055483467ec88ba3c9e3cbaa24a7eec693 Mon Sep 17 00:00:00 2001 From: Pietro Date: Wed, 2 Oct 2024 16:35:29 +0200 Subject: [PATCH 10/16] Run rustfmt --- .../src/rewards_manager.rs | 43 +++++++------------ 1 file changed, 15 insertions(+), 28 deletions(-) diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs index 79578eb36..161ebc4df 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs @@ -180,20 +180,10 @@ fn coumpute_node_provider_rewards( for ((region, node_type), count) in rewardable_nodes { if node_type.starts_with("type3") && count > 0 { let rate = get_node_rate(®ion, &node_type); - let current_coefficients = vec![ - Decimal::from(rate.reward_coefficient_percent.unwrap_or(80)) / dec!(100); - count as usize - ]; - let current_rewards = vec![ - Decimal::from(rate.xdr_permyriad_per_node_per_month); - count as usize - ]; - - let region_key = region - .splitn(3, ',') - .take(2) - .collect::>() - .join(":"); + let current_coefficients = vec![Decimal::from(rate.reward_coefficient_percent.unwrap_or(80)) / dec!(100); count as usize]; + let current_rewards = vec![Decimal::from(rate.xdr_permyriad_per_node_per_month); count as usize]; + + let region_key = region.splitn(3, ',').take(2).collect::>().join(":"); type3_coefficients .entry(region_key.clone()) @@ -223,22 +213,19 @@ fn coumpute_node_provider_rewards( }) .collect(); - let type3_rewards_reduced = type3_rewards - .into_iter() - .map(|(region, individual_rewards)|{ - let mut coefficient = dec!(1); - let mut rewards_reduced_by_coeff = dec!(0); - let region_coefficient_avg = type3_coefficients_avg.get(®ion).unwrap(); - let region_rewards_avg = type3_coefficients_avg.get(®ion).unwrap(); - - for _ in individual_rewards.clone() { - rewards_reduced_by_coeff += region_rewards_avg * coefficient; - coefficient *= region_coefficient_avg; - } + let type3_rewards_reduced = type3_rewards.into_iter().map(|(region, individual_rewards)| { + let mut coefficient = dec!(1); + let mut rewards_reduced_by_coeff = dec!(0); + let region_coefficient_avg = type3_coefficients_avg.get(®ion).unwrap(); + let region_rewards_avg = type3_coefficients_avg.get(®ion).unwrap(); - let rewards_reduced_by_coeff_avg = rewards_reduced_by_coeff / Decimal::from(individual_rewards.len()); + for _ in individual_rewards.clone() { + rewards_reduced_by_coeff += region_rewards_avg * coefficient; + coefficient *= region_coefficient_avg; + } - }); + let rewards_reduced_by_coeff_avg = rewards_reduced_by_coeff / Decimal::from(individual_rewards.len()); + }); NodeProviderRewardsComputation { rewards_xdr: rewards_xdr_total.to_u64().unwrap(), From 4bf395088941f8898632e1d7a9c891fd1c4d631d Mon Sep 17 00:00:00 2001 From: Pietro Date: Wed, 2 Oct 2024 16:46:13 +0200 Subject: [PATCH 11/16] Remove cargo lock --- Cargo.lock | 9438 ---------------------------------------------------- 1 file changed, 9438 deletions(-) delete mode 100644 Cargo.lock diff --git a/Cargo.lock b/Cargo.lock deleted file mode 100644 index 457fec6d3..000000000 --- a/Cargo.lock +++ /dev/null @@ -1,9438 +0,0 @@ -# This file is automatically @generated by Cargo. -# It is not intended for manual editing. -version = 3 - -[[package]] -name = "actix-codec" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f7b0a21988c1bf877cf4759ef5ddaac04c1c9fe808c9142ecb78ba97d97a28a" -dependencies = [ - "bitflags 2.6.0", - "bytes", - "futures-core", - "futures-sink", - "memchr", - "pin-project-lite", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "actix-http" -version = "3.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ae682f693a9cd7b058f2b0b5d9a6d7728a8555779bedbbc35dd88528611d020" -dependencies = [ - "actix-codec", - "actix-rt", - "actix-service", - "actix-utils", - "ahash 0.8.11", - "base64 0.22.1", - "bitflags 2.6.0", - "bytes", - "bytestring", - "derive_more", - "encoding_rs", - "flate2", - "futures-core", - "http 0.2.12", - "httparse", - "httpdate", - "itoa", - "language-tags", - "local-channel", - "mime", - "percent-encoding", - "pin-project-lite", - "rand", - "sha1", - "smallvec", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "actix-macros" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e01ed3140b2f8d422c68afa1ed2e85d996ea619c988ac834d255db32138655cb" -dependencies = [ - "quote", - "syn 2.0.77", -] - -[[package]] -name = "actix-router" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13d324164c51f63867b57e73ba5936ea151b8a41a1d23d1031eeb9f70d0236f8" -dependencies = [ - "bytestring", - "cfg-if", - "http 0.2.12", - "regex-lite", - "serde", - "tracing", -] - -[[package]] -name = "actix-rt" -version = "2.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24eda4e2a6e042aa4e55ac438a2ae052d3b5da0ecf83d7411e1a368946925208" -dependencies = [ - "actix-macros", - "futures-core", - "tokio", -] - -[[package]] -name = "actix-server" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ca2549781d8dd6d75c40cf6b6051260a2cc2f3c62343d761a969a0640646894" -dependencies = [ - "actix-rt", - "actix-service", - "actix-utils", - "futures-core", - "futures-util", - "mio", - "socket2", - "tokio", - "tracing", -] - -[[package]] -name = "actix-service" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b894941f818cfdc7ccc4b9e60fa7e53b5042a2e8567270f9147d5591893373a" -dependencies = [ - "futures-core", - "paste", - "pin-project-lite", -] - -[[package]] -name = "actix-utils" -version = "3.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88a1dcdff1466e3c2488e1cb5c36a71822750ad43839937f85d2f4d9f8b705d8" -dependencies = [ - "local-waker", - "pin-project-lite", -] - -[[package]] -name = "actix-web" -version = "4.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9180d76e5cc7ccbc4d60a506f2c727730b154010262df5b910eb17dbe4b8cb38" -dependencies = [ - "actix-codec", - "actix-http", - "actix-macros", - "actix-router", - "actix-rt", - "actix-server", - "actix-service", - "actix-utils", - "actix-web-codegen", - "ahash 0.8.11", - "bytes", - "bytestring", - "cfg-if", - "derive_more", - "encoding_rs", - "futures-core", - "futures-util", - "impl-more", - "itoa", - "language-tags", - "log", - "mime", - "once_cell", - "pin-project-lite", - "regex-lite", - "serde", - "serde_json", - "serde_urlencoded", - "smallvec", - "socket2", - "time", - "url", -] - -[[package]] -name = "actix-web-codegen" -version = "4.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f591380e2e68490b5dfaf1dd1aa0ebe78d84ba7067078512b4ea6e4492d622b8" -dependencies = [ - "actix-router", - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "addr2line" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678" -dependencies = [ - "gimli 0.29.0", -] - -[[package]] -name = "adler" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" - -[[package]] -name = "adler2" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" - -[[package]] -name = "adler32" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" - -[[package]] -name = "ahash" -version = "0.7.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" -dependencies = [ - "getrandom", - "once_cell", - "version_check", -] - -[[package]] -name = "ahash" -version = "0.8.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" -dependencies = [ - "cfg-if", - "getrandom", - "once_cell", - "version_check", - "zerocopy", -] - -[[package]] -name = "aho-corasick" -version = "1.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" -dependencies = [ - "memchr", -] - -[[package]] -name = "alloc-no-stdlib" -version = "2.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" - -[[package]] -name = "alloc-stdlib" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" -dependencies = [ - "alloc-no-stdlib", -] - -[[package]] -name = "allocator-api2" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" - -[[package]] -name = "android-tzdata" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" - -[[package]] -name = "android_system_properties" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" -dependencies = [ - "libc", -] - -[[package]] -name = "anstream" -version = "0.6.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526" -dependencies = [ - "anstyle", - "anstyle-parse", - "anstyle-query", - "anstyle-wincon", - "colorchoice", - "is_terminal_polyfill", - "utf8parse", -] - -[[package]] -name = "anstyle" -version = "1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1" - -[[package]] -name = "anstyle-parse" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb" -dependencies = [ - "utf8parse", -] - -[[package]] -name = "anstyle-query" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a" -dependencies = [ - "windows-sys 0.52.0", -] - -[[package]] -name = "anstyle-wincon" -version = "3.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8" -dependencies = [ - "anstyle", - "windows-sys 0.52.0", -] - -[[package]] -name = "anyhow" -version = "1.0.89" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6" - -[[package]] -name = "arc-swap" -version = "1.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457" - -[[package]] -name = "arrayvec" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" - -[[package]] -name = "arrayvec" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" - -[[package]] -name = "asn1-rs" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5493c3bedbacf7fd7382c6346bbd66687d12bbaad3a89a2d2c303ee6cf20b048" -dependencies = [ - "asn1-rs-derive", - "asn1-rs-impl", - "displaydoc", - "nom", - "num-traits", - "rusticata-macros", - "thiserror", - "time", -] - -[[package]] -name = "asn1-rs-derive" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", - "synstructure", -] - -[[package]] -name = "asn1-rs-impl" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "assert-json-diff" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "47e4f2b81832e72834d7518d8487a0396a28cc408186a2e8854c0f98011faf12" -dependencies = [ - "serde", - "serde_json", -] - -[[package]] -name = "assert_cmd" -version = "2.0.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc1835b7f27878de8525dc71410b5a31cdcc5f230aed5ba5df968e09c201b23d" -dependencies = [ - "anstyle", - "bstr", - "doc-comment", - "libc", - "predicates", - "predicates-core", - "predicates-tree", - "wait-timeout", -] - -[[package]] -name = "async-lock" -version = "3.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18" -dependencies = [ - "event-listener", - "event-listener-strategy", - "pin-project-lite", -] - -[[package]] -name = "async-recursion" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "async-stream" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" -dependencies = [ - "async-stream-impl", - "futures-core", - "pin-project-lite", -] - -[[package]] -name = "async-stream-impl" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "async-trait" -version = "0.1.81" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6e0c28dcc82d7c8ead5cb13beb15405b57b8546e93215673ff8ca0349a028107" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "atomic-waker" -version = "1.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" - -[[package]] -name = "atty" -version = "0.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" -dependencies = [ - "hermit-abi 0.1.19", - "libc", - "winapi", -] - -[[package]] -name = "autocfg" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" - -[[package]] -name = "axum" -version = "0.6.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" -dependencies = [ - "async-trait", - "axum-core 0.3.4", - "bitflags 1.3.2", - "bytes", - "futures-util", - "http 0.2.12", - "http-body 0.4.6", - "hyper 0.14.30", - "itoa", - "matchit", - "memchr", - "mime", - "percent-encoding", - "pin-project-lite", - "rustversion", - "serde", - "sync_wrapper 0.1.2", - "tower", - "tower-layer", - "tower-service", -] - -[[package]] -name = "axum" -version = "0.7.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf" -dependencies = [ - "async-trait", - "axum-core 0.4.3", - "bytes", - "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "http-body-util", - "hyper 1.4.1", - "hyper-util", - "itoa", - "matchit", - "memchr", - "mime", - "percent-encoding", - "pin-project-lite", - "rustversion", - "serde", - "serde_json", - "serde_path_to_error", - "serde_urlencoded", - "sync_wrapper 1.0.1", - "tokio", - "tower", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "axum-core" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" -dependencies = [ - "async-trait", - "bytes", - "futures-util", - "http 0.2.12", - "http-body 0.4.6", - "mime", - "rustversion", - "tower-layer", - "tower-service", -] - -[[package]] -name = "axum-core" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a15c63fd72d41492dc4f497196f5da1fb04fb7529e631d73630d1b491e47a2e3" -dependencies = [ - "async-trait", - "bytes", - "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "http-body-util", - "mime", - "pin-project-lite", - "rustversion", - "sync_wrapper 0.1.2", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "axum-otel-metrics" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11b5bd67776dca9326650fc2e2ddd15ddaca16a3c8e80a9a874ba111afab82bd" -dependencies = [ - "axum 0.7.5", - "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "opentelemetry", - "opentelemetry-prometheus", - "opentelemetry-semantic-conventions", - "opentelemetry_sdk", - "pin-project-lite", - "prometheus", - "tower", -] - -[[package]] -name = "backoff" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1" -dependencies = [ - "futures-core", - "getrandom", - "instant", - "pin-project-lite", - "rand", - "tokio", -] - -[[package]] -name = "backon" -version = "0.4.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d67782c3f868daa71d3533538e98a8e13713231969def7536e8039606fc46bf0" -dependencies = [ - "fastrand 2.1.0", - "futures-core", - "pin-project", - "tokio", -] - -[[package]] -name = "backtrace" -version = "0.3.73" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cc23269a4f8976d0a4d2e7109211a419fe30e8d88d677cd60b6bc79c5732e0a" -dependencies = [ - "addr2line", - "cc", - "cfg-if", - "libc", - "miniz_oxide 0.7.4", - "object", - "rustc-demangle", -] - -[[package]] -name = "base16ct" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" - -[[package]] -name = "base32" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23ce669cd6c8588f79e15cf450314f9638f967fc5770ff1c7c1deb0925ea7cfa" - -[[package]] -name = "base64" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" - -[[package]] -name = "base64" -version = "0.21.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" - -[[package]] -name = "base64" -version = "0.22.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" - -[[package]] -name = "base64ct" -version = "1.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" - -[[package]] -name = "bincode" -version = "1.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" -dependencies = [ - "serde", -] - -[[package]] -name = "binread" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16598dfc8e6578e9b597d9910ba2e73618385dc9f4b1d43dd92c349d6be6418f" -dependencies = [ - "binread_derive", - "lazy_static", - "rustversion", -] - -[[package]] -name = "binread_derive" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d9672209df1714ee804b1f4d4f68c8eb2a90b1f7a07acf472f88ce198ef1fed" -dependencies = [ - "either", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "bit-vec" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" - -[[package]] -name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" - -[[package]] -name = "bitvec" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" -dependencies = [ - "funty", - "radium", - "tap", - "wyz", -] - -[[package]] -name = "block-buffer" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" -dependencies = [ - "generic-array", -] - -[[package]] -name = "block-buffer" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" -dependencies = [ - "generic-array", -] - -[[package]] -name = "borsh" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6362ed55def622cddc70a4746a68554d7b687713770de539e59a739b249f8ed" -dependencies = [ - "borsh-derive", - "cfg_aliases", -] - -[[package]] -name = "borsh-derive" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3ef8005764f53cd4dca619f5bf64cafd4664dada50ece25e4d81de54c80cc0b" -dependencies = [ - "once_cell", - "proc-macro-crate", - "proc-macro2", - "quote", - "syn 2.0.77", - "syn_derive", -] - -[[package]] -name = "brotli" -version = "6.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74f7971dbd9326d58187408ab83117d8ac1bb9c17b085fdacd1cf2f598719b6b" -dependencies = [ - "alloc-no-stdlib", - "alloc-stdlib", - "brotli-decompressor", -] - -[[package]] -name = "brotli-decompressor" -version = "4.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a45bd2e4095a8b518033b128020dd4a55aab1c0a381ba4404a472630f4bc362" -dependencies = [ - "alloc-no-stdlib", - "alloc-stdlib", -] - -[[package]] -name = "bstr" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40723b8fb387abc38f4f4a37c09073622e41dd12327033091ef8950659e6dc0c" -dependencies = [ - "memchr", - "regex-automata", - "serde", -] - -[[package]] -name = "build-info" -version = "0.0.27" -source = "git+https://github.com/dfinity-lab/build-info?rev=701a696844fba5c87df162fbbc1ccef96f27c9d7#701a696844fba5c87df162fbbc1ccef96f27c9d7" -dependencies = [ - "build-info-common", - "build-info-proc", - "lazy_static", - "proc-macro-hack", -] - -[[package]] -name = "build-info-build" -version = "0.0.27" -source = "git+https://github.com/dfinity-lab/build-info?rev=701a696844fba5c87df162fbbc1ccef96f27c9d7#701a696844fba5c87df162fbbc1ccef96f27c9d7" -dependencies = [ - "anyhow", - "base64 0.13.1", - "bincode", - "build-info-common", - "cargo_metadata", - "glob", - "lazy_static", - "pretty_assertions", - "rustc_version", - "serde_json", - "xz2", -] - -[[package]] -name = "build-info-common" -version = "0.0.27" -source = "git+https://github.com/dfinity-lab/build-info?rev=701a696844fba5c87df162fbbc1ccef96f27c9d7#701a696844fba5c87df162fbbc1ccef96f27c9d7" -dependencies = [ - "derive_more", - "semver", - "serde", -] - -[[package]] -name = "build-info-proc" -version = "0.0.27" -source = "git+https://github.com/dfinity-lab/build-info?rev=701a696844fba5c87df162fbbc1ccef96f27c9d7#701a696844fba5c87df162fbbc1ccef96f27c9d7" -dependencies = [ - "anyhow", - "base64 0.13.1", - "bincode", - "build-info-common", - "num-bigint 0.4.6", - "num-traits", - "proc-macro-error", - "proc-macro-hack", - "proc-macro2", - "quote", - "serde_json", - "syn 1.0.109", - "xz2", -] - -[[package]] -name = "bumpalo" -version = "3.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" - -[[package]] -name = "by_address" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64fa3c856b712db6612c019f14756e64e4bcea13337a6b33b696333a9eaa2d06" - -[[package]] -name = "byte-unit" -version = "4.0.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da78b32057b8fdfc352504708feeba7216dcd65a2c9ab02978cbd288d1279b6c" -dependencies = [ - "serde", - "utf8-width", -] - -[[package]] -name = "bytecheck" -version = "0.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2" -dependencies = [ - "bytecheck_derive", - "ptr_meta", - "simdutf8", -] - -[[package]] -name = "bytecheck_derive" -version = "0.6.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "bytecount" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce" - -[[package]] -name = "byteorder" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" - -[[package]] -name = "bytes" -version = "1.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50" - -[[package]] -name = "bytestring" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74d80203ea6b29df88012294f62733de21cfeab47f17b41af3a38bc30a03ee72" -dependencies = [ - "bytes", -] - -[[package]] -name = "cached" -version = "0.49.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e8e463fceca5674287f32d252fb1d94083758b8709c160efae66d263e5f4eba" -dependencies = [ - "hashbrown 0.14.5", - "instant", - "once_cell", - "thiserror", -] - -[[package]] -name = "cached" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8466736fe5dbcaf8b8ee24f9bbefe43c884dc3e9ff7178da70f55bffca1133c" -dependencies = [ - "ahash 0.8.11", - "hashbrown 0.14.5", - "instant", - "once_cell", - "thiserror", -] - -[[package]] -name = "camino" -version = "1.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0ec6b951b160caa93cc0c7b209e5a3bff7aae9062213451ac99493cd844c239" -dependencies = [ - "serde", -] - -[[package]] -name = "candid" -version = "0.10.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c30ee7f886f296b6422c0ff017e89dd4f831521dfdcc76f3f71aae1ce817222" -dependencies = [ - "anyhow", - "binread", - "byteorder", - "candid_derive", - "hex", - "ic_principal", - "leb128", - "num-bigint 0.4.6", - "num-traits", - "paste", - "pretty", - "serde", - "serde_bytes", - "stacker", - "thiserror", -] - -[[package]] -name = "candid_derive" -version = "0.6.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3de398570c386726e7a59d9887b68763c481477f9a043fb998a2e09d428df1a9" -dependencies = [ - "lazy_static", - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "canister-log-fetcher" -version = "0.5.5" -dependencies = [ - "anyhow", - "clap 4.5.16", - "humantime", - "log", - "pretty_env_logger", - "reqwest", - "serde", - "serde_json", - "tokio", - "url", -] - -[[package]] -name = "cargo-platform" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc" -dependencies = [ - "serde", -] - -[[package]] -name = "cargo_metadata" -version = "0.14.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" -dependencies = [ - "camino", - "cargo-platform", - "semver", - "serde", - "serde_json", -] - -[[package]] -name = "cc" -version = "1.1.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d74707dde2ba56f86ae90effb3b43ddd369504387e718014de010cec7959800" -dependencies = [ - "shlex", -] - -[[package]] -name = "cfg-if" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" - -[[package]] -name = "cfg_aliases" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" - -[[package]] -name = "chrono" -version = "0.4.38" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" -dependencies = [ - "android-tzdata", - "iana-time-zone", - "js-sys", - "num-traits", - "serde", - "wasm-bindgen", - "windows-targets 0.52.6", -] - -[[package]] -name = "ciborium" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" -dependencies = [ - "ciborium-io", - "ciborium-ll", - "serde", -] - -[[package]] -name = "ciborium-io" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" - -[[package]] -name = "ciborium-ll" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" -dependencies = [ - "ciborium-io", - "half 2.4.1", -] - -[[package]] -name = "clap" -version = "3.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123" -dependencies = [ - "atty", - "bitflags 1.3.2", - "clap_derive 3.2.25", - "clap_lex 0.2.4", - "indexmap 1.9.3", - "once_cell", - "strsim 0.10.0", - "termcolor", - "textwrap", -] - -[[package]] -name = "clap" -version = "4.5.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed6719fffa43d0d87e5fd8caeab59be1554fb028cd30edc88fc4369b17971019" -dependencies = [ - "clap_builder", - "clap_derive 4.5.13", -] - -[[package]] -name = "clap-num" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e063d263364859dc54fb064cedb7c122740cd4733644b14b176c097f51e8ab7" -dependencies = [ - "num-traits", -] - -[[package]] -name = "clap_builder" -version = "4.5.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "216aec2b177652e3846684cbfe25c9964d18ec45234f0f5da5157b207ed1aab6" -dependencies = [ - "anstream", - "anstyle", - "clap_lex 0.7.2", - "strsim 0.11.1", - "terminal_size", -] - -[[package]] -name = "clap_complete" -version = "4.5.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "205d5ef6d485fa47606b98b0ddc4ead26eb850aaa86abfb562a94fb3280ecba0" -dependencies = [ - "clap 4.5.16", -] - -[[package]] -name = "clap_derive" -version = "3.2.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae6371b8bdc8b7d3959e9cf7b22d4435ef3e79e138688421ec654acf8c81b008" -dependencies = [ - "heck 0.4.1", - "proc-macro-error", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "clap_derive" -version = "4.5.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "501d359d5f3dcaf6ecdeee48833ae73ec6e42723a1e52419c79abf9507eec0a0" -dependencies = [ - "heck 0.5.0", - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "clap_lex" -version = "0.2.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5" -dependencies = [ - "os_str_bytes", -] - -[[package]] -name = "clap_lex" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97" - -[[package]] -name = "clio" -version = "0.3.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7fc6734af48458f72f5a3fa7b840903606427d98a710256e808f76a965047d9" -dependencies = [ - "cfg-if", - "clap 4.5.16", - "is-terminal", - "libc", - "tempfile", - "walkdir", - "windows-sys 0.42.0", -] - -[[package]] -name = "colorchoice" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0" - -[[package]] -name = "colored" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8" -dependencies = [ - "lazy_static", - "windows-sys 0.48.0", -] - -[[package]] -name = "comfy-table" -version = "7.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b34115915337defe99b2aff5c2ce6771e5fbc4079f4b506301f5cf394c8452f7" -dependencies = [ - "crossterm", - "strum 0.26.3", - "strum_macros 0.26.4", - "unicode-width", -] - -[[package]] -name = "comparable" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb513ee8037bf08c5270ecefa48da249f4c58e57a71ccfce0a5b0877d2a20eb2" -dependencies = [ - "comparable_derive", - "comparable_helper", - "pretty_assertions", - "serde", -] - -[[package]] -name = "comparable_derive" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a54b9c40054eb8999c5d1d36fdc90e4e5f7ff0d1d9621706f360b3cbc8beb828" -dependencies = [ - "convert_case 0.4.0", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "comparable_helper" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb5437e327e861081c91270becff184859f706e3e50f5301a9d4dc8eb50752c3" -dependencies = [ - "convert_case 0.6.0", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "concurrent-queue" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "config-writer-common" -version = "0.5.5" -dependencies = [ - "crossbeam", - "crossbeam-channel", - "erased-serde 0.4.5", - "ic-sys", - "ic-types", - "regex", - "serde", - "serde_json", - "service-discovery", - "slog", -] - -[[package]] -name = "console" -version = "0.15.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb" -dependencies = [ - "encode_unicode", - "lazy_static", - "libc", - "unicode-width", - "windows-sys 0.52.0", -] - -[[package]] -name = "const-oid" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" - -[[package]] -name = "convert_case" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" - -[[package]] -name = "convert_case" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" -dependencies = [ - "unicode-segmentation", -] - -[[package]] -name = "core-foundation" -version = "0.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "core-foundation-sys" -version = "0.8.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" - -[[package]] -name = "core2" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b49ba7ef1ad6107f8824dbe97de947cbaac53c44e7f9756a1fba0d37c1eec505" -dependencies = [ - "memchr", -] - -[[package]] -name = "cpufeatures" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" -dependencies = [ - "libc", -] - -[[package]] -name = "crc32fast" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "crossbeam" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8" -dependencies = [ - "crossbeam-channel", - "crossbeam-deque", - "crossbeam-epoch", - "crossbeam-queue", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-channel" -version = "0.5.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-deque" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" -dependencies = [ - "crossbeam-epoch", - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-epoch" -version = "0.9.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-queue" -version = "0.3.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35" -dependencies = [ - "crossbeam-utils", -] - -[[package]] -name = "crossbeam-utils" -version = "0.8.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" - -[[package]] -name = "crossterm" -version = "0.27.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f476fe445d41c9e991fd07515a6f463074b782242ccf4a5b7b1d1012e70824df" -dependencies = [ - "bitflags 2.6.0", - "crossterm_winapi", - "libc", - "parking_lot", - "winapi", -] - -[[package]] -name = "crossterm_winapi" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b" -dependencies = [ - "winapi", -] - -[[package]] -name = "crunchy" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" - -[[package]] -name = "crypto-bigint" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" -dependencies = [ - "generic-array", - "rand_core", - "subtle", - "zeroize", -] - -[[package]] -name = "crypto-common" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" -dependencies = [ - "generic-array", - "typenum", -] - -[[package]] -name = "cryptoki" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60d645cc2c5faf466571c0c752d39d8fbc2746773b2f043ac8f9cd73bec55db9" -dependencies = [ - "bitflags 1.3.2", - "cryptoki-sys", - "libloading 0.7.4", - "log", - "paste", - "secrecy", -] - -[[package]] -name = "cryptoki-sys" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "750380200f47d4ff677be725b6e0d78b590e1d0343573dcd4b62147f25dc6efa" -dependencies = [ - "libloading 0.7.4", -] - -[[package]] -name = "csv" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe" -dependencies = [ - "csv-core", - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "csv-core" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70" -dependencies = [ - "memchr", -] - -[[package]] -name = "curve25519-dalek" -version = "4.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" -dependencies = [ - "cfg-if", - "cpufeatures", - "curve25519-dalek-derive", - "digest 0.10.7", - "fiat-crypto", - "group", - "rand_core", - "rustc_version", - "subtle", - "zeroize", -] - -[[package]] -name = "curve25519-dalek-derive" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "curve25519-dalek-ng" -version = "4.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c359b7249347e46fb28804470d071c921156ad62b3eef5d34e2ba867533dec8" -dependencies = [ - "byteorder", - "digest 0.9.0", - "rand_core", - "subtle-ng", - "zeroize", -] - -[[package]] -name = "custom_error" -version = "1.9.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f8a51dd197fa6ba5b4dc98a990a43cc13693c23eb0089ebb0fcc1f04152bca6" - -[[package]] -name = "cvt" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2ae9bf77fbf2d39ef573205d554d87e86c12f1994e9ea335b0651b9b278bcf1" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "cycles-minting-canister" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "base64 0.13.1", - "build-info", - "build-info-build", - "candid", - "dfn_candid", - "dfn_core", - "dfn_http_metrics", - "dfn_protobuf", - "ic-base-types", - "ic-certified-map", - "ic-crypto-getrandom-for-wasm", - "ic-crypto-tree-hash", - "ic-ledger-core", - "ic-management-canister-types", - "ic-metrics-encoder", - "ic-nervous-system-common", - "ic-nervous-system-common-build-metadata", - "ic-nervous-system-governance", - "ic-nns-common", - "ic-nns-constants", - "ic-protobuf", - "ic-types", - "ic-xrc-types", - "icp-ledger", - "icrc-ledger-types", - "lazy_static", - "on_wire", - "prost", - "rand", - "serde", - "serde_cbor", - "sha2 0.10.8", - "yansi 0.5.1", -] - -[[package]] -name = "darling" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" -dependencies = [ - "darling_core 0.13.4", - "darling_macro 0.13.4", -] - -[[package]] -name = "darling" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" -dependencies = [ - "darling_core 0.20.10", - "darling_macro 0.20.10", -] - -[[package]] -name = "darling_core" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim 0.10.0", - "syn 1.0.109", -] - -[[package]] -name = "darling_core" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" -dependencies = [ - "fnv", - "ident_case", - "proc-macro2", - "quote", - "strsim 0.11.1", - "syn 2.0.77", -] - -[[package]] -name = "darling_macro" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" -dependencies = [ - "darling_core 0.13.4", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "darling_macro" -version = "0.20.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" -dependencies = [ - "darling_core 0.20.10", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "dary_heap" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7762d17f1241643615821a8455a0b2c3e803784b058693d990b11f2dce25a0ca" - -[[package]] -name = "data-encoding" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" - -[[package]] -name = "dbus" -version = "0.9.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1bb21987b9fb1613058ba3843121dd18b163b254d8a6e797e144cbac14d96d1b" -dependencies = [ - "libc", - "libdbus-sys", - "winapi", -] - -[[package]] -name = "dbus-secret-service" -version = "4.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1caa0c241c01ad8d99a78d553567d38f873dd3ac16eca33a5370d650ab25584e" -dependencies = [ - "dbus", - "futures-util", - "num", - "once_cell", - "rand", -] - -[[package]] -name = "deadpool" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb84100978c1c7b37f09ed3ce3e5f843af02c2a2c431bae5b19230dad2c1b490" -dependencies = [ - "async-trait", - "deadpool-runtime", - "num_cpus", - "tokio", -] - -[[package]] -name = "deadpool-runtime" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "092966b41edc516079bdf31ec78a2e0588d1d0c08f78b91d8307215928642b2b" - -[[package]] -name = "decentralization" -version = "0.5.5" -dependencies = [ - "actix-web", - "ahash 0.8.11", - "anyhow", - "futures", - "ic-base-types", - "ic-management-types", - "indexmap 2.5.0", - "itertools 0.13.0", - "log", - "rand", - "rand_seeder", - "regex", - "serde", - "serde_json", - "strum_macros 0.26.4", - "tabular", - "tokio", -] - -[[package]] -name = "der" -version = "0.7.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" -dependencies = [ - "const-oid", - "pem-rfc7468", - "zeroize", -] - -[[package]] -name = "der-parser" -version = "9.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cd0a5c643689626bec213c4d8bd4d96acc8ffdb4ad4bb6bc16abf27d5f4b553" -dependencies = [ - "asn1-rs", - "displaydoc", - "nom", - "num-bigint 0.4.6", - "num-traits", - "rusticata-macros", -] - -[[package]] -name = "deranged" -version = "0.3.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" -dependencies = [ - "powerfmt", - "serde", -] - -[[package]] -name = "derive_more" -version = "0.99.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" -dependencies = [ - "convert_case 0.4.0", - "proc-macro2", - "quote", - "rustc_version", - "syn 2.0.77", -] - -[[package]] -name = "dfn_candid" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "dfn_core", - "ic-base-types", - "on_wire", - "serde", -] - -[[package]] -name = "dfn_core" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-base-types", - "on_wire", -] - -[[package]] -name = "dfn_http" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "dfn_candid", - "dfn_core", - "serde", - "serde_bytes", -] - -[[package]] -name = "dfn_http_metrics" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "dfn_candid", - "dfn_core", - "dfn_http", - "ic-canisters-http-types", - "ic-metrics-encoder", - "serde_bytes", -] - -[[package]] -name = "dfn_protobuf" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "on_wire", - "prost", -] - -[[package]] -name = "dialoguer" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "658bce805d770f407bc62102fca7c2c64ceef2fbcb2b8bd19d2765ce093980de" -dependencies = [ - "console", - "shell-words", - "tempfile", - "thiserror", - "zeroize", -] - -[[package]] -name = "diff" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" - -[[package]] -name = "difflib" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8" - -[[package]] -name = "digest" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" -dependencies = [ - "generic-array", -] - -[[package]] -name = "digest" -version = "0.10.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" -dependencies = [ - "block-buffer 0.10.4", - "const-oid", - "crypto-common", - "subtle", -] - -[[package]] -name = "dirs" -version = "5.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" -dependencies = [ - "dirs-sys", -] - -[[package]] -name = "dirs-next" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" -dependencies = [ - "cfg-if", - "dirs-sys-next", -] - -[[package]] -name = "dirs-sys" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" -dependencies = [ - "libc", - "option-ext", - "redox_users", - "windows-sys 0.48.0", -] - -[[package]] -name = "dirs-sys-next" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" -dependencies = [ - "libc", - "redox_users", - "winapi", -] - -[[package]] -name = "displaydoc" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "doc-comment" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" - -[[package]] -name = "dotenv" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" - -[[package]] -name = "downcast" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1" - -[[package]] -name = "dre" -version = "0.5.5" -dependencies = [ - "actix-rt", - "anyhow", - "async-recursion", - "backon", - "candid", - "chrono", - "clap 4.5.16", - "clap-num", - "clap_complete", - "clio", - "colored", - "comfy-table", - "cryptoki", - "cycles-minting-canister", - "decentralization", - "dialoguer", - "dirs", - "dotenv", - "edit", - "flate2", - "fs-err", - "futures", - "futures-util", - "human_bytes", - "humantime", - "ic-base-types", - "ic-canister-client", - "ic-canister-client-sender", - "ic-canisters", - "ic-management-backend", - "ic-management-types", - "ic-nervous-system-clients", - "ic-nervous-system-root", - "ic-nns-common", - "ic-nns-constants", - "ic-nns-governance", - "ic-nns-governance-api", - "ic-protobuf", - "ic-registry-keys", - "ic-registry-local-registry", - "ic-registry-subnet-type", - "ic-sns-wasm", - "ic-sys", - "ic-types", - "indexmap 2.5.0", - "itertools 0.13.0", - "keyring", - "log", - "mockall", - "pretty_env_logger", - "prost", - "regex", - "registry-canister", - "reqwest", - "secrecy", - "self_update", - "serde", - "serde_json", - "serde_yaml", - "sha2 0.10.8", - "shlex", - "spinners", - "strum 0.26.3", - "tabled", - "tabular", - "tempfile", - "tokio", - "url", -] - -[[package]] -name = "dyn-clone" -version = "1.0.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" - -[[package]] -name = "ecdsa" -version = "0.16.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" -dependencies = [ - "der", - "digest 0.10.7", - "elliptic-curve", - "rfc6979", - "signature", - "spki", -] - -[[package]] -name = "ed25519" -version = "2.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" -dependencies = [ - "pkcs8", - "signature", -] - -[[package]] -name = "ed25519-consensus" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c8465edc8ee7436ffea81d21a019b16676ee3db267aa8d5a8d729581ecf998b" -dependencies = [ - "curve25519-dalek-ng", - "hex", - "rand_core", - "serde", - "sha2 0.9.9", - "thiserror", - "zeroize", -] - -[[package]] -name = "ed25519-dalek" -version = "2.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" -dependencies = [ - "curve25519-dalek", - "ed25519", - "merlin", - "rand_core", - "serde", - "sha2 0.10.8", - "signature", - "subtle", - "zeroize", -] - -[[package]] -name = "edit" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f364860e764787163c8c8f58231003839be31276e821e2ad2092ddf496b1aa09" -dependencies = [ - "tempfile", - "which", -] - -[[package]] -name = "either" -version = "1.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" - -[[package]] -name = "elliptic-curve" -version = "0.13.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" -dependencies = [ - "base16ct", - "crypto-bigint", - "digest 0.10.7", - "ff", - "generic-array", - "group", - "pem-rfc7468", - "pkcs8", - "rand_core", - "sec1", - "subtle", - "zeroize", -] - -[[package]] -name = "encode_unicode" -version = "0.3.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" - -[[package]] -name = "encoding_rs" -version = "0.8.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "enum-as-inner" -version = "0.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ffccbb6966c05b32ef8fbac435df276c4ae4d3dc55a8cd0eb9745e6c12f546a" -dependencies = [ - "heck 0.4.1", - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "env_filter" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f2c92ceda6ceec50f43169f9ee8424fe2db276791afde7b2cd8bc084cb376ab" -dependencies = [ - "log", - "regex", -] - -[[package]] -name = "env_logger" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580" -dependencies = [ - "humantime", - "is-terminal", - "log", - "regex", - "termcolor", -] - -[[package]] -name = "env_logger" -version = "0.11.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13fa619b91fb2381732789fc5de83b45675e882f66623b7d8cb4f643017018d" -dependencies = [ - "anstream", - "anstyle", - "env_filter", - "humantime", - "log", -] - -[[package]] -name = "equivalent" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" - -[[package]] -name = "erased-serde" -version = "0.3.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c138974f9d5e7fe373eb04df7cae98833802ae4b11c24ac7039a21d5af4b26c" -dependencies = [ - "serde", -] - -[[package]] -name = "erased-serde" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24e2389d65ab4fab27dc2a5de7b191e1f6617d1f1c8855c0dc569c94a4cbb18d" -dependencies = [ - "serde", - "typeid", -] - -[[package]] -name = "errno" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "event-listener" -version = "5.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6032be9bd27023a771701cc49f9f053c751055f71efb2e0ae5c15809093675ba" -dependencies = [ - "concurrent-queue", - "parking", - "pin-project-lite", -] - -[[package]] -name = "event-listener-strategy" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1" -dependencies = [ - "event-listener", - "pin-project-lite", -] - -[[package]] -name = "fallible-iterator" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" - -[[package]] -name = "fastrand" -version = "1.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" -dependencies = [ - "instant", -] - -[[package]] -name = "fastrand" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a" - -[[package]] -name = "fe-derive" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "hex", - "num-bigint-dig", - "num-traits", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ff" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" -dependencies = [ - "rand_core", - "subtle", -] - -[[package]] -name = "fiat-crypto" -version = "0.2.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" - -[[package]] -name = "filetime" -version = "0.2.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall 0.4.1", - "windows-sys 0.52.0", -] - -[[package]] -name = "fixedbitset" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" - -[[package]] -name = "flate2" -version = "1.0.33" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "324a1be68054ef05ad64b861cc9eaf1d623d2d8cb25b4bf2cb9cdd902b4bf253" -dependencies = [ - "crc32fast", - "miniz_oxide 0.8.0", -] - -[[package]] -name = "fnv" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" - -[[package]] -name = "form_urlencoded" -version = "1.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" -dependencies = [ - "percent-encoding", -] - -[[package]] -name = "fragile" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" - -[[package]] -name = "fs-err" -version = "2.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88a41f105fe1d5b6b34b2055e3dc59bb79b46b48b2040b9e6c7b4b5de097aa41" -dependencies = [ - "autocfg", -] - -[[package]] -name = "fs2" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" -dependencies = [ - "libc", - "winapi", -] - -[[package]] -name = "funty" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" - -[[package]] -name = "futures" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" -dependencies = [ - "futures-channel", - "futures-core", - "futures-executor", - "futures-io", - "futures-sink", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-channel" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" -dependencies = [ - "futures-core", - "futures-sink", -] - -[[package]] -name = "futures-core" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" - -[[package]] -name = "futures-executor" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" -dependencies = [ - "futures-core", - "futures-task", - "futures-util", -] - -[[package]] -name = "futures-io" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" - -[[package]] -name = "futures-macro" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "futures-sink" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" - -[[package]] -name = "futures-task" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" - -[[package]] -name = "futures-util" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" -dependencies = [ - "futures-channel", - "futures-core", - "futures-io", - "futures-macro", - "futures-sink", - "futures-task", - "memchr", - "pin-project-lite", - "pin-utils", - "slab", -] - -[[package]] -name = "generic-array" -version = "0.14.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" -dependencies = [ - "typenum", - "version_check", - "zeroize", -] - -[[package]] -name = "getrandom" -version = "0.2.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" -dependencies = [ - "cfg-if", - "js-sys", - "libc", - "wasi", - "wasm-bindgen", -] - -[[package]] -name = "gimli" -version = "0.26.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d" -dependencies = [ - "fallible-iterator", - "indexmap 1.9.3", - "stable_deref_trait", -] - -[[package]] -name = "gimli" -version = "0.29.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd" - -[[package]] -name = "glob" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" - -[[package]] -name = "group" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" -dependencies = [ - "ff", - "rand_core", - "subtle", -] - -[[package]] -name = "h2" -version = "0.3.26" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" -dependencies = [ - "bytes", - "fnv", - "futures-core", - "futures-sink", - "futures-util", - "http 0.2.12", - "indexmap 2.5.0", - "slab", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "h2" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa82e28a107a8cc405f0839610bdc9b15f1e25ec7d696aa5cf173edbcb1486ab" -dependencies = [ - "atomic-waker", - "bytes", - "fnv", - "futures-core", - "futures-sink", - "http 1.1.0", - "indexmap 2.5.0", - "slab", - "tokio", - "tokio-util", - "tracing", -] - -[[package]] -name = "half" -version = "1.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b43ede17f21864e81be2fa654110bf1e793774238d86ef8555c37e6519c0403" - -[[package]] -name = "half" -version = "2.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888" -dependencies = [ - "cfg-if", - "crunchy", -] - -[[package]] -name = "hashbrown" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" -dependencies = [ - "ahash 0.7.8", -] - -[[package]] -name = "hashbrown" -version = "0.14.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" -dependencies = [ - "ahash 0.8.11", - "allocator-api2", - "serde", -] - -[[package]] -name = "hdrhistogram" -version = "7.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d" -dependencies = [ - "byteorder", - "num-traits", -] - -[[package]] -name = "heck" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" -dependencies = [ - "unicode-segmentation", -] - -[[package]] -name = "heck" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" - -[[package]] -name = "heck" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" - -[[package]] -name = "hermit-abi" -version = "0.1.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" -dependencies = [ - "libc", -] - -[[package]] -name = "hermit-abi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" - -[[package]] -name = "hermit-abi" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc" - -[[package]] -name = "hex" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" -dependencies = [ - "serde", -] - -[[package]] -name = "hex-literal" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" - -[[package]] -name = "hkdf" -version = "0.12.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" -dependencies = [ - "hmac", -] - -[[package]] -name = "hmac" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" -dependencies = [ - "digest 0.10.7", -] - -[[package]] -name = "home" -version = "0.5.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" -dependencies = [ - "windows-sys 0.52.0", -] - -[[package]] -name = "http" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" -dependencies = [ - "bytes", - "fnv", - "itoa", -] - -[[package]] -name = "http" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" -dependencies = [ - "bytes", - "fnv", - "itoa", -] - -[[package]] -name = "http-body" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" -dependencies = [ - "bytes", - "http 0.2.12", - "pin-project-lite", -] - -[[package]] -name = "http-body" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" -dependencies = [ - "bytes", - "http 1.1.0", -] - -[[package]] -name = "http-body-util" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" -dependencies = [ - "bytes", - "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "pin-project-lite", -] - -[[package]] -name = "httparse" -version = "1.9.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fcc0b4a115bf80b728eb8ea024ad5bd707b615bfed49e0665b6e0f86fd082d9" - -[[package]] -name = "httpdate" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" - -[[package]] -name = "human_bytes" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91f255a4535024abf7640cb288260811fc14794f62b063652ed349f9a6c2348e" - -[[package]] -name = "humantime" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" - -[[package]] -name = "hyper" -version = "0.14.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a152ddd61dfaec7273fe8419ab357f33aee0d914c5f4efbf0d96fa749eea5ec9" -dependencies = [ - "bytes", - "futures-channel", - "futures-core", - "futures-util", - "h2 0.3.26", - "http 0.2.12", - "http-body 0.4.6", - "httparse", - "httpdate", - "itoa", - "pin-project-lite", - "socket2", - "tokio", - "tower-service", - "tracing", - "want", -] - -[[package]] -name = "hyper" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50dfd22e0e76d0f662d429a5f80fcaf3855009297eab6a0a9f8543834744ba05" -dependencies = [ - "bytes", - "futures-channel", - "futures-util", - "h2 0.4.5", - "http 1.1.0", - "http-body 1.0.1", - "httparse", - "httpdate", - "itoa", - "pin-project-lite", - "smallvec", - "tokio", - "want", -] - -[[package]] -name = "hyper-rustls" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c" -dependencies = [ - "futures-util", - "http 1.1.0", - "hyper 1.4.1", - "hyper-util", - "log", - "rustls 0.22.4", - "rustls-native-certs", - "rustls-pki-types", - "tokio", - "tokio-rustls 0.25.0", - "tower-service", -] - -[[package]] -name = "hyper-rustls" -version = "0.27.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5ee4be2c948921a1a5320b629c4193916ed787a7f7f293fd3f7f5a6c9de74155" -dependencies = [ - "futures-util", - "http 1.1.0", - "hyper 1.4.1", - "hyper-util", - "rustls 0.23.12", - "rustls-native-certs", - "rustls-pki-types", - "tokio", - "tokio-rustls 0.26.0", - "tower-service", - "webpki-roots", -] - -[[package]] -name = "hyper-timeout" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" -dependencies = [ - "hyper 0.14.30", - "pin-project-lite", - "tokio", - "tokio-io-timeout", -] - -[[package]] -name = "hyper-timeout" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3203a961e5c83b6f5498933e78b6b263e208c197b63e9c6c53cc82ffd3f63793" -dependencies = [ - "hyper 1.4.1", - "hyper-util", - "pin-project-lite", - "tokio", - "tower-service", -] - -[[package]] -name = "hyper-util" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cde7055719c54e36e95e8719f95883f22072a48ede39db7fc17a4e1d5281e9b9" -dependencies = [ - "bytes", - "futures-channel", - "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "hyper 1.4.1", - "pin-project-lite", - "socket2", - "tokio", - "tower", - "tower-service", - "tracing", -] - -[[package]] -name = "iana-time-zone" -version = "0.1.60" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" -dependencies = [ - "android_system_properties", - "core-foundation-sys", - "iana-time-zone-haiku", - "js-sys", - "wasm-bindgen", - "windows-core", -] - -[[package]] -name = "iana-time-zone-haiku" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" -dependencies = [ - "cc", -] - -[[package]] -name = "ic-adapter-metrics-client" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-adapter-metrics-service", - "ic-async-utils", - "prometheus", - "protobuf", - "slog", - "tokio", - "tonic", - "tower", -] - -[[package]] -name = "ic-adapter-metrics-service" -version = "0.1.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "prost", - "prost-build", - "tonic", - "tonic-build", -] - -[[package]] -name = "ic-agent" -version = "0.37.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fd3fdf5e5c4f4a9fe5ca612f0febd22dcb161d2f2b75b0142326732be5e4978" -dependencies = [ - "async-lock", - "backoff", - "cached 0.52.0", - "candid", - "ed25519-consensus", - "futures-util", - "hex", - "http 1.1.0", - "http-body 1.0.1", - "ic-certification 2.6.0", - "ic-transport-types", - "ic-verify-bls-signature", - "k256", - "leb128", - "p256", - "pem 3.0.4", - "pkcs8", - "rand", - "rangemap", - "reqwest", - "ring", - "rustls-webpki", - "sec1", - "serde", - "serde_bytes", - "serde_cbor", - "serde_repr", - "sha2 0.10.8", - "simple_asn1", - "thiserror", - "time", - "tokio", - "url", -] - -[[package]] -name = "ic-async-utils" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "anyhow", - "async-stream", - "axum 0.7.5", - "byte-unit", - "bytes", - "futures", - "futures-util", - "hyper 0.14.30", - "slog", - "sync_wrapper 1.0.1", - "thiserror", - "tokio", - "tonic", -] - -[[package]] -name = "ic-base-types" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "byte-unit", - "bytes", - "candid", - "comparable", - "hex", - "ic-crypto-sha2", - "ic-protobuf", - "phantom_newtype", - "prost", - "serde", - "strum 0.26.3", - "strum_macros 0.26.4", -] - -[[package]] -name = "ic-btc-interface" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b0152e14e697b0e988dbfdcb3f7e352d1c76a65b7d2d75c5d76bad22c3aca10d" -dependencies = [ - "candid", - "serde", - "serde_bytes", -] - -[[package]] -name = "ic-btc-replica-types" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "ic-btc-interface", - "ic-error-types", - "ic-protobuf", - "serde", - "serde_bytes", -] - -[[package]] -name = "ic-canister-client" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "backoff", - "futures-util", - "http-body-util", - "hyper 1.4.1", - "hyper-rustls 0.27.2", - "hyper-util", - "ic-canister-client-sender", - "ic-canonical-state", - "ic-certification 0.9.0", - "ic-crypto-secp256k1", - "ic-crypto-tree-hash", - "ic-management-canister-types", - "ic-protobuf", - "ic-types", - "itertools 0.12.1", - "prost", - "rustls 0.23.12", - "serde", - "serde_cbor", - "tokio", - "tower", - "tree-deserializer", - "url", -] - -[[package]] -name = "ic-canister-client-sender" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-base-types", - "ic-crypto-ed25519", - "ic-crypto-secp256k1", - "ic-types", - "rand", - "rand_chacha", -] - -[[package]] -name = "ic-canister-log" -version = "0.2.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "serde", -] - -[[package]] -name = "ic-canister-profiler" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-metrics-encoder", - "ic0 0.18.11", -] - -[[package]] -name = "ic-canisters" -version = "0.5.5" -dependencies = [ - "anyhow", - "backoff", - "candid", - "hex", - "ic-agent", - "ic-base-types", - "ic-interfaces-registry", - "ic-management-canister-types", - "ic-nns-common", - "ic-nns-constants", - "ic-nns-governance", - "ic-protobuf", - "ic-registry-keys", - "ic-registry-nns-data-provider", - "ic-registry-transport", - "ic-sns-wasm", - "ic-transport-types", - "ic-types", - "ic-utils 0.37.0", - "log", - "pkcs11", - "prost", - "reqwest", - "serde", - "sha2 0.10.8", - "simple_asn1", - "thiserror", - "trustworthy-node-metrics-types", - "url", -] - -[[package]] -name = "ic-canisters-http-types" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "dfn_candid", - "serde", - "serde_bytes", -] - -[[package]] -name = "ic-canonical-state" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-base-types", - "ic-canonical-state-tree-hash", - "ic-certification-version", - "ic-crypto-tree-hash", - "ic-error-types", - "ic-protobuf", - "ic-registry-routing-table", - "ic-registry-subnet-type", - "ic-replicated-state", - "ic-types", - "leb128", - "phantom_newtype", - "serde", - "serde_bytes", - "serde_cbor", - "strum 0.26.3", - "strum_macros 0.26.4", -] - -[[package]] -name = "ic-canonical-state-tree-hash" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-crypto-tree-hash", - "itertools 0.12.1", - "leb128", - "scoped_threadpool", - "thiserror", -] - -[[package]] -name = "ic-cdk" -version = "0.13.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b1da6a25b045f9da3c9459c0cb2b0700ac368ee16382975a17185a23b9c18ab" -dependencies = [ - "candid", - "ic-cdk-macros 0.13.2", - "ic0 0.21.1", - "serde", - "serde_bytes", -] - -[[package]] -name = "ic-cdk" -version = "0.16.0" -source = "git+https://github.com/dfinity/cdk-rs.git?rev=97c4e19c76b7f072ce8507cb7e7a527582111272#97c4e19c76b7f072ce8507cb7e7a527582111272" -dependencies = [ - "candid", - "ic-cdk-macros 0.16.0", - "ic0 0.23.0", - "serde", - "serde_bytes", -] - -[[package]] -name = "ic-cdk-macros" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fde5ca6ef1e69825c68916ff1bf7256b8f7ed69ac5ea3f1756f6e57f1503e27" -dependencies = [ - "candid", - "proc-macro2", - "quote", - "serde", - "serde_tokenstream 0.1.7", - "syn 1.0.109", -] - -[[package]] -name = "ic-cdk-macros" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a45800053d80a6df839a71aaea5797e723188c0b992618208ca3b941350c7355" -dependencies = [ - "candid", - "proc-macro2", - "quote", - "serde", - "serde_tokenstream 0.1.7", - "syn 1.0.109", -] - -[[package]] -name = "ic-cdk-macros" -version = "0.16.0" -source = "git+https://github.com/dfinity/cdk-rs.git?rev=97c4e19c76b7f072ce8507cb7e7a527582111272#97c4e19c76b7f072ce8507cb7e7a527582111272" -dependencies = [ - "candid", - "proc-macro2", - "quote", - "serde", - "serde_tokenstream 0.2.1", - "syn 2.0.77", -] - -[[package]] -name = "ic-cdk-timers" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "054727a3a1c486528b96349817d54290ff70df6addf417def456ea708a16f7fb" -dependencies = [ - "futures", - "ic-cdk 0.13.5", - "ic0 0.21.1", - "serde", - "serde_bytes", - "slotmap", -] - -[[package]] -name = "ic-cdk-timers" -version = "0.10.0" -source = "git+https://github.com/dfinity/cdk-rs.git?rev=97c4e19c76b7f072ce8507cb7e7a527582111272#97c4e19c76b7f072ce8507cb7e7a527582111272" -dependencies = [ - "futures", - "ic-cdk 0.16.0", - "ic0 0.23.0", - "serde", - "serde_bytes", - "slotmap", -] - -[[package]] -name = "ic-certification" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "hex", - "ic-crypto-tree-hash", - "ic-crypto-utils-threshold-sig", - "ic-crypto-utils-threshold-sig-der", - "ic-types", - "serde", - "serde_cbor", - "tree-deserializer", -] - -[[package]] -name = "ic-certification" -version = "2.6.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e64ee3d8b6e81b51f245716d3e0badb63c283c00f3c9fb5d5219afc30b5bf821" -dependencies = [ - "hex", - "serde", - "serde_bytes", - "sha2 0.10.8", -] - -[[package]] -name = "ic-certification-version" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "strum 0.26.3", - "strum_macros 0.26.4", -] - -[[package]] -name = "ic-certified-map" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6adc65afeffc619a7cd19553c66c79820908c12f42191af90cfb39e2e93c4431" -dependencies = [ - "serde", - "serde_bytes", - "sha2 0.10.8", -] - -[[package]] -name = "ic-config" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-base-types", - "ic-protobuf", - "ic-registry-subnet-type", - "ic-sys", - "ic-types", - "json5", - "serde", - "tempfile", -] - -[[package]] -name = "ic-crypto-ed25519" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "curve25519-dalek", - "ed25519-dalek", - "hkdf", - "pem 1.1.1", - "rand", - "thiserror", - "zeroize", -] - -[[package]] -name = "ic-crypto-getrandom-for-wasm" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "getrandom", -] - -[[package]] -name = "ic-crypto-interfaces-sig-verification" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-types", -] - -[[package]] -name = "ic-crypto-internal-basic-sig-der-utils" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "hex", - "ic-types", - "simple_asn1", -] - -[[package]] -name = "ic-crypto-internal-basic-sig-ed25519" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "base64 0.13.1", - "curve25519-dalek", - "hex", - "ic-crypto-ed25519", - "ic-crypto-internal-basic-sig-der-utils", - "ic-crypto-internal-seed", - "ic-crypto-internal-types", - "ic-crypto-secrets-containers", - "ic-protobuf", - "ic-types", - "rand", - "rand_chacha", - "serde", - "simple_asn1", - "zeroize", -] - -[[package]] -name = "ic-crypto-internal-bls12-381-type" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "hex", - "ic_bls12_381", - "itertools 0.12.1", - "lazy_static", - "pairing", - "paste", - "rand", - "rand_chacha", - "sha2 0.10.8", - "subtle", - "zeroize", -] - -[[package]] -name = "ic-crypto-internal-hmac" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-crypto-internal-sha2", -] - -[[package]] -name = "ic-crypto-internal-multi-sig-bls12381" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "base64 0.13.1", - "hex", - "ic-crypto-internal-bls12-381-type", - "ic-crypto-internal-types", - "ic-crypto-secrets-containers", - "ic-crypto-sha2", - "ic-protobuf", - "ic-types", - "rand", - "rand_chacha", - "serde", - "zeroize", -] - -[[package]] -name = "ic-crypto-internal-seed" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "hex", - "ic-crypto-sha2", - "rand", - "rand_chacha", - "serde", - "zeroize", -] - -[[package]] -name = "ic-crypto-internal-sha2" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "sha2 0.10.8", -] - -[[package]] -name = "ic-crypto-internal-threshold-sig-bls12381" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "base64 0.13.1", - "cached 0.49.3", - "hex", - "ic-crypto-internal-bls12-381-type", - "ic-crypto-internal-seed", - "ic-crypto-internal-types", - "ic-crypto-secrets-containers", - "ic-crypto-sha2", - "ic-types", - "lazy_static", - "parking_lot", - "rand", - "rand_chacha", - "serde", - "serde_bytes", - "serde_cbor", - "strum_macros 0.26.4", - "subtle", - "zeroize", -] - -[[package]] -name = "ic-crypto-internal-threshold-sig-ecdsa" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "curve25519-dalek", - "fe-derive", - "group", - "hex", - "hex-literal", - "ic-crypto-internal-hmac", - "ic-crypto-internal-seed", - "ic-crypto-internal-types", - "ic-crypto-secrets-containers", - "ic-crypto-sha2", - "ic-types", - "k256", - "lazy_static", - "p256", - "paste", - "rand", - "serde", - "serde_bytes", - "serde_cbor", - "strum 0.26.3", - "strum_macros 0.26.4", - "subtle", - "zeroize", -] - -[[package]] -name = "ic-crypto-internal-types" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "arrayvec 0.7.4", - "hex", - "ic-protobuf", - "phantom_newtype", - "serde", - "serde_cbor", - "strum 0.26.3", - "strum_macros 0.26.4", - "thiserror", - "zeroize", -] - -[[package]] -name = "ic-crypto-node-key-validation" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "hex", - "ic-base-types", - "ic-crypto-internal-basic-sig-ed25519", - "ic-crypto-internal-multi-sig-bls12381", - "ic-crypto-internal-threshold-sig-bls12381", - "ic-crypto-internal-threshold-sig-ecdsa", - "ic-crypto-internal-types", - "ic-crypto-tls-cert-validation", - "ic-protobuf", - "ic-types", - "serde", -] - -[[package]] -name = "ic-crypto-secp256k1" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "hmac", - "k256", - "lazy_static", - "num-bigint 0.4.6", - "pem 1.1.1", - "rand", - "rand_chacha", - "simple_asn1", - "zeroize", -] - -[[package]] -name = "ic-crypto-secrets-containers" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "serde", - "zeroize", -] - -[[package]] -name = "ic-crypto-sha2" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-crypto-internal-sha2", -] - -[[package]] -name = "ic-crypto-tls-cert-validation" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "hex", - "ic-crypto-internal-basic-sig-ed25519", - "ic-protobuf", - "ic-types", - "serde", - "x509-parser", -] - -[[package]] -name = "ic-crypto-tree-hash" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-crypto-internal-types", - "ic-crypto-sha2", - "ic-protobuf", - "serde", - "serde_bytes", - "thiserror", -] - -[[package]] -name = "ic-crypto-utils-basic-sig" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-base-types", - "ic-crypto-ed25519", - "ic-protobuf", -] - -[[package]] -name = "ic-crypto-utils-ni-dkg" -version = "0.8.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-crypto-internal-types", - "ic-protobuf", - "ic-types", -] - -[[package]] -name = "ic-crypto-utils-threshold-sig" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "base64 0.13.1", - "ic-crypto-internal-threshold-sig-bls12381", - "ic-crypto-internal-types", - "ic-types", -] - -[[package]] -name = "ic-crypto-utils-threshold-sig-der" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "base64 0.13.1", - "ic-crypto-internal-types", - "ic-types", - "simple_asn1", -] - -[[package]] -name = "ic-error-types" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-protobuf", - "ic-utils 0.9.0", - "serde", - "strum 0.26.3", - "strum_macros 0.26.4", -] - -[[package]] -name = "ic-http-endpoints-metrics" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "axum 0.7.5", - "ic-async-utils", - "ic-config", - "ic-metrics", - "prometheus", - "slog", - "thiserror", - "tokio", - "tokio-io-timeout", - "tower", -] - -[[package]] -name = "ic-icrc1" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "ciborium", - "hex", - "ic-base-types", - "ic-crypto-sha2", - "ic-icrc1-tokens-u64", - "ic-ledger-canister-core", - "ic-ledger-core", - "ic-ledger-hash-of", - "icrc-ledger-types", - "num-bigint 0.4.6", - "num-traits", - "serde", - "serde_bytes", - "tempfile", - "thiserror", -] - -[[package]] -name = "ic-icrc1-index-ng" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "ciborium", - "ic-base-types", - "ic-canister-log", - "ic-canister-profiler", - "ic-canisters-http-types", - "ic-cdk 0.13.5", - "ic-cdk-macros 0.9.0", - "ic-cdk-timers 0.7.0", - "ic-crypto-sha2", - "ic-icrc1", - "ic-icrc1-tokens-u64", - "ic-ledger-canister-core", - "ic-ledger-core", - "ic-metrics-encoder", - "ic-stable-structures", - "icrc-ledger-types", - "num-traits", - "scopeguard", - "serde", - "serde_json", -] - -[[package]] -name = "ic-icrc1-ledger" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "candid", - "ciborium", - "hex", - "ic-base-types", - "ic-canister-log", - "ic-canisters-http-types", - "ic-cdk 0.13.5", - "ic-cdk-macros 0.9.0", - "ic-crypto-tree-hash", - "ic-icrc1", - "ic-icrc1-tokens-u64", - "ic-ledger-canister-core", - "ic-ledger-core", - "ic-ledger-hash-of", - "ic-metrics-encoder", - "ic-stable-structures", - "icrc-ledger-client", - "icrc-ledger-types", - "num-traits", - "serde", - "serde_bytes", -] - -[[package]] -name = "ic-icrc1-tokens-u64" -version = "0.1.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "ic-ledger-core", - "ic-stable-structures", - "num-traits", - "serde", -] - -[[package]] -name = "ic-interfaces" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-base-types", - "ic-crypto-interfaces-sig-verification", - "ic-error-types", - "ic-interfaces-state-manager", - "ic-management-canister-types", - "ic-protobuf", - "ic-registry-provisional-whitelist", - "ic-registry-subnet-type", - "ic-sys", - "ic-types", - "ic-wasm-types", - "phantom_newtype", - "prost", - "serde", - "strum 0.26.3", - "strum_macros 0.26.4", - "thiserror", - "tower", -] - -[[package]] -name = "ic-interfaces-registry" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-types", - "prost", - "serde", -] - -[[package]] -name = "ic-interfaces-state-manager" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-crypto-tree-hash", - "ic-types", - "phantom_newtype", - "thiserror", -] - -[[package]] -name = "ic-ledger-canister-core" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "candid", - "ic-base-types", - "ic-canister-log", - "ic-ledger-core", - "ic-ledger-hash-of", - "ic-limits", - "ic-management-canister-types", - "ic-utils 0.9.0", - "num-traits", - "serde", -] - -[[package]] -name = "ic-ledger-core" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "ic-ledger-hash-of", - "num-traits", - "serde", - "serde_bytes", -] - -[[package]] -name = "ic-ledger-hash-of" -version = "0.1.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "hex", - "serde", -] - -[[package]] -name = "ic-limits" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" - -[[package]] -name = "ic-logger" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "chrono", - "ic-config", - "ic-protobuf", - "ic-utils 0.9.0", - "serde", - "slog", - "slog-async", - "slog-json", - "slog-scope", - "slog-term", -] - -[[package]] -name = "ic-management-backend" -version = "0.5.5" -dependencies = [ - "actix-rt", - "actix-web", - "anyhow", - "backon", - "candid", - "chrono", - "clap 4.5.16", - "custom_error", - "decentralization", - "dirs", - "dotenv", - "env_logger 0.11.5", - "fs2", - "futures", - "futures-util", - "ic-agent", - "ic-base-types", - "ic-canisters", - "ic-interfaces-registry", - "ic-management-types", - "ic-nns-constants", - "ic-nns-governance", - "ic-protobuf", - "ic-registry-client", - "ic-registry-client-fake", - "ic-registry-client-helpers", - "ic-registry-common-proto", - "ic-registry-keys", - "ic-registry-local-registry", - "ic-registry-local-store", - "ic-registry-nns-data-provider", - "ic-registry-subnet-type", - "ic-types", - "indexmap 2.5.0", - "itertools 0.13.0", - "lazy_static", - "log", - "mockall", - "octocrab", - "prometheus-http-query", - "regex", - "registry-canister", - "reqwest", - "serde", - "serde_json", - "serde_yaml", - "strum 0.26.3", - "strum_macros 0.26.4", - "tokio", - "url", -] - -[[package]] -name = "ic-management-canister-types" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "ic-base-types", - "ic-btc-interface", - "ic-btc-replica-types", - "ic-error-types", - "ic-protobuf", - "ic-utils 0.9.0", - "num-traits", - "serde", - "serde_bytes", - "serde_cbor", - "strum 0.26.3", - "strum_macros 0.26.4", -] - -[[package]] -name = "ic-management-types" -version = "0.5.5" -dependencies = [ - "actix-web", - "anyhow", - "candid", - "chrono", - "futures", - "ic-base-types", - "ic-nns-governance", - "ic-protobuf", - "ic-registry-subnet-type", - "ic-types", - "indexmap 2.5.0", - "registry-canister", - "reqwest", - "serde", - "serde_json", - "strum 0.26.3", - "strum_macros 0.26.4", - "tokio", - "url", - "wiremock", -] - -[[package]] -name = "ic-metrics" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "futures", - "ic-adapter-metrics-client", - "libc", - "procfs 0.9.1", - "prometheus", - "tokio", - "tokio-metrics", -] - -[[package]] -name = "ic-metrics-encoder" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b5c7628eac357aecda461130f8074468be5aa4d258a002032d82d817f79f1f8" - -[[package]] -name = "ic-nervous-system-canisters" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "candid", - "dfn_candid", - "dfn_core", - "ic-base-types", - "ic-ledger-core", - "ic-nervous-system-common", - "ic-nervous-system-runtime", - "ic-nns-constants", - "icp-ledger", - "icrc-ledger-types", -] - -[[package]] -name = "ic-nervous-system-clients" -version = "0.0.1" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "candid", - "dfn_candid", - "dfn_core", - "ic-base-types", - "ic-error-types", - "ic-ledger-core", - "ic-management-canister-types", - "ic-nervous-system-common", - "ic-nervous-system-proxied-canister-calls-tracker", - "ic-nervous-system-runtime", - "ic-utils 0.9.0", - "icrc-ledger-client", - "icrc-ledger-types", - "num-traits", - "serde", -] - -[[package]] -name = "ic-nervous-system-collections-union-multi-map" -version = "0.0.1" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" - -[[package]] -name = "ic-nervous-system-common" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "base64 0.13.1", - "build-info", - "build-info-build", - "by_address", - "bytes", - "dfn_core", - "ic-base-types", - "ic-canister-log", - "ic-canisters-http-types", - "ic-crypto-sha2", - "ic-ledger-core", - "ic-metrics-encoder", - "ic-nervous-system-runtime", - "ic-nns-constants", - "ic-stable-structures", - "icp-ledger", - "icrc-ledger-types", - "json5", - "lazy_static", - "maplit", - "mockall", - "num-traits", - "priority-queue", - "prost", - "rust_decimal", - "serde", - "serde_json", -] - -[[package]] -name = "ic-nervous-system-common-build-metadata" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" - -[[package]] -name = "ic-nervous-system-common-test-keys" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-base-types", - "ic-canister-client-sender", - "ic-types", - "lazy_static", - "rand", - "rand_chacha", -] - -[[package]] -name = "ic-nervous-system-governance" -version = "0.0.1" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-base-types", - "ic-stable-structures", - "ic_principal", - "maplit", - "num-traits", -] - -[[package]] -name = "ic-nervous-system-lock" -version = "0.0.1" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" - -[[package]] -name = "ic-nervous-system-proto" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "comparable", - "ic-base-types", - "prost", - "rust_decimal", - "serde", -] - -[[package]] -name = "ic-nervous-system-proxied-canister-calls-tracker" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-base-types", -] - -[[package]] -name = "ic-nervous-system-root" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "dfn_core", - "ic-cdk 0.13.5", - "ic-crypto-sha2", - "ic-management-canister-types", - "ic-nervous-system-clients", - "ic-nervous-system-runtime", - "serde", - "serde_bytes", -] - -[[package]] -name = "ic-nervous-system-runtime" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "candid", - "dfn_candid", - "dfn_core", - "ic-base-types", - "ic-cdk 0.13.5", -] - -[[package]] -name = "ic-nervous-system-string" -version = "0.0.1" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" - -[[package]] -name = "ic-nervous-system-temporary" -version = "0.0.1" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" - -[[package]] -name = "ic-neurons-fund" -version = "0.0.1" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-nervous-system-common", - "lazy_static", - "rust_decimal", - "rust_decimal_macros", - "serde", - "serde_json", -] - -[[package]] -name = "ic-nns-common" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "comparable", - "dfn_core", - "ic-base-types", - "ic-crypto-sha2", - "ic-nervous-system-common", - "ic-nns-constants", - "ic-protobuf", - "ic-registry-keys", - "ic-registry-transport", - "ic-stable-structures", - "ic-types", - "lazy_static", - "num-traits", - "on_wire", - "prost", - "serde", - "serde_bytes", - "sha2 0.10.8", -] - -[[package]] -name = "ic-nns-constants" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-base-types", - "maplit", -] - -[[package]] -name = "ic-nns-governance" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "build-info", - "build-info-build", - "bytes", - "candid", - "comparable", - "csv", - "cycles-minting-canister", - "dfn_candid", - "dfn_core", - "dfn_http_metrics", - "dfn_protobuf", - "dyn-clone", - "ic-base-types", - "ic-crypto-getrandom-for-wasm", - "ic-crypto-sha2", - "ic-ledger-core", - "ic-management-canister-types", - "ic-metrics-encoder", - "ic-nervous-system-canisters", - "ic-nervous-system-clients", - "ic-nervous-system-common", - "ic-nervous-system-common-build-metadata", - "ic-nervous-system-common-test-keys", - "ic-nervous-system-governance", - "ic-nervous-system-proto", - "ic-nervous-system-root", - "ic-nervous-system-runtime", - "ic-nervous-system-temporary", - "ic-neurons-fund", - "ic-nns-common", - "ic-nns-constants", - "ic-nns-governance-api", - "ic-nns-governance-init", - "ic-nns-gtc-accounts", - "ic-nns-handler-root-interface", - "ic-protobuf", - "ic-sns-init", - "ic-sns-root", - "ic-sns-swap", - "ic-sns-wasm", - "ic-stable-structures", - "ic-types", - "ic-utils 0.9.0", - "icp-ledger", - "itertools 0.12.1", - "lazy_static", - "maplit", - "mockall", - "num-traits", - "on_wire", - "pretty_assertions", - "prometheus-parse", - "prost", - "rand", - "rand_chacha", - "registry-canister", - "rust_decimal", - "rust_decimal_macros", - "serde", - "serde_bytes", - "serde_json", - "strum 0.26.3", - "strum_macros 0.26.4", -] - -[[package]] -name = "ic-nns-governance-api" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "bytes", - "candid", - "comparable", - "ic-base-types", - "ic-crypto-sha2", - "ic-nervous-system-clients", - "ic-nervous-system-proto", - "ic-nns-common", - "ic-protobuf", - "ic-sns-root", - "ic-sns-swap", - "ic-types", - "ic-utils 0.9.0", - "icp-ledger", - "itertools 0.12.1", - "prost", - "serde", - "serde_bytes", - "strum 0.26.3", - "strum_macros 0.26.4", -] - -[[package]] -name = "ic-nns-governance-init" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "csv", - "ic-base-types", - "ic-nervous-system-common", - "ic-nervous-system-common-build-metadata", - "ic-nervous-system-common-test-keys", - "ic-nns-common", - "ic-nns-governance-api", - "icp-ledger", - "rand", - "rand_chacha", -] - -[[package]] -name = "ic-nns-gtc-accounts" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" - -[[package]] -name = "ic-nns-handler-root-interface" -version = "0.1.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "candid", - "dfn_candid", - "dfn_core", - "ic-base-types", - "ic-nervous-system-clients", - "ic-nns-constants", - "serde", -] - -[[package]] -name = "ic-protobuf" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "bincode", - "candid", - "erased-serde 0.3.31", - "prost", - "serde", - "serde_json", - "slog", -] - -[[package]] -name = "ic-registry-canister-api" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "ic-base-types", - "serde", - "thiserror", -] - -[[package]] -name = "ic-registry-client" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "crossbeam-channel", - "ic-interfaces-registry", - "ic-metrics", - "ic-types", - "ic-utils-thread", - "prometheus", -] - -[[package]] -name = "ic-registry-client-fake" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-interfaces-registry", - "ic-types", -] - -[[package]] -name = "ic-registry-client-helpers" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-base-types", - "ic-interfaces-registry", - "ic-management-canister-types", - "ic-protobuf", - "ic-registry-common-proto", - "ic-registry-keys", - "ic-registry-provisional-whitelist", - "ic-registry-routing-table", - "ic-registry-subnet-features", - "ic-types", - "serde_cbor", - "thiserror", -] - -[[package]] -name = "ic-registry-common-proto" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "prost", -] - -[[package]] -name = "ic-registry-keys" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "ic-base-types", - "ic-management-canister-types", - "ic-types", - "serde", -] - -[[package]] -name = "ic-registry-local-registry" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-interfaces-registry", - "ic-protobuf", - "ic-registry-client-fake", - "ic-registry-client-helpers", - "ic-registry-local-store", - "ic-registry-nns-data-provider", - "ic-registry-transport", - "ic-types", - "thiserror", - "tokio", - "url", -] - -[[package]] -name = "ic-registry-local-store" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-interfaces-registry", - "ic-registry-common-proto", - "ic-sys", - "ic-types", - "prost", -] - -[[package]] -name = "ic-registry-local-store-artifacts" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" - -[[package]] -name = "ic-registry-nns-data-provider" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "chrono", - "ic-canister-client", - "ic-certification 0.9.0", - "ic-crypto-tree-hash", - "ic-interfaces-registry", - "ic-nns-constants", - "ic-registry-transport", - "ic-types", - "prost", - "rand", - "serde", - "tree-deserializer", - "url", -] - -[[package]] -name = "ic-registry-node-provider-rewards" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-base-types", - "ic-protobuf", -] - -[[package]] -name = "ic-registry-provisional-whitelist" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-base-types", - "ic-protobuf", -] - -[[package]] -name = "ic-registry-routing-table" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "ic-base-types", - "ic-protobuf", - "serde", -] - -[[package]] -name = "ic-registry-subnet-features" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "ic-management-canister-types", - "ic-protobuf", - "serde", -] - -[[package]] -name = "ic-registry-subnet-type" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "ic-protobuf", - "serde", - "strum 0.26.3", - "strum_macros 0.26.4", -] - -[[package]] -name = "ic-registry-transport" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "ic-base-types", - "ic-protobuf", - "prost", - "serde", -] - -[[package]] -name = "ic-replicated-state" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "bit-vec", - "cvt", - "ic-base-types", - "ic-btc-interface", - "ic-btc-replica-types", - "ic-certification-version", - "ic-config", - "ic-crypto-sha2", - "ic-error-types", - "ic-interfaces", - "ic-limits", - "ic-logger", - "ic-management-canister-types", - "ic-metrics", - "ic-protobuf", - "ic-registry-routing-table", - "ic-registry-subnet-features", - "ic-registry-subnet-type", - "ic-sys", - "ic-types", - "ic-utils 0.9.0", - "ic-validate-eq", - "ic-validate-eq-derive", - "ic-wasm-types", - "itertools 0.12.1", - "lazy_static", - "libc", - "maplit", - "nix", - "phantom_newtype", - "prometheus", - "prost", - "rand", - "rand_chacha", - "rayon", - "serde", - "slog", - "static_assertions", - "strum 0.26.3", - "strum_macros 0.26.4", - "tempfile", - "uuid", -] - -[[package]] -name = "ic-sns-governance" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "base64 0.13.1", - "build-info", - "build-info-build", - "candid", - "clap 3.2.25", - "comparable", - "dfn_candid", - "dfn_core", - "hex", - "ic-base-types", - "ic-canister-log", - "ic-canister-profiler", - "ic-canisters-http-types", - "ic-crypto-sha2", - "ic-icrc1-ledger", - "ic-ledger-core", - "ic-management-canister-types", - "ic-metrics-encoder", - "ic-nervous-system-canisters", - "ic-nervous-system-clients", - "ic-nervous-system-collections-union-multi-map", - "ic-nervous-system-common", - "ic-nervous-system-common-build-metadata", - "ic-nervous-system-governance", - "ic-nervous-system-lock", - "ic-nervous-system-proto", - "ic-nervous-system-root", - "ic-nervous-system-runtime", - "ic-nns-constants", - "ic-protobuf", - "ic-sns-governance-proposal-criticality", - "ic-sns-governance-proposals-amount-total-limit", - "ic-sns-governance-token-valuation", - "ic-utils 0.9.0", - "icp-ledger", - "icrc-ledger-client", - "icrc-ledger-types", - "lazy_static", - "maplit", - "num-traits", - "prost", - "prost-build", - "rand", - "rand_chacha", - "rust_decimal", - "rust_decimal_macros", - "serde", - "serde_bytes", - "strum 0.26.3", - "strum_macros 0.26.4", -] - -[[package]] -name = "ic-sns-governance-proposal-criticality" -version = "0.0.1" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-nervous-system-proto", -] - -[[package]] -name = "ic-sns-governance-proposals-amount-total-limit" -version = "0.0.1" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-sns-governance-token-valuation", - "num-traits", - "rust_decimal", - "rust_decimal_macros", -] - -[[package]] -name = "ic-sns-governance-token-valuation" -version = "0.0.1" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "candid", - "cycles-minting-canister", - "futures", - "ic-base-types", - "ic-cdk 0.13.5", - "ic-nervous-system-common", - "ic-nervous-system-runtime", - "ic-nervous-system-string", - "ic-nns-constants", - "ic-sns-swap-proto-library", - "icrc-ledger-types", - "mockall", - "rust_decimal", -] - -[[package]] -name = "ic-sns-init" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "base64 0.13.1", - "candid", - "ic-base-types", - "ic-icrc1-index-ng", - "ic-icrc1-ledger", - "ic-ledger-canister-core", - "ic-ledger-core", - "ic-nervous-system-common", - "ic-nervous-system-proto", - "ic-nns-constants", - "ic-sns-governance", - "ic-sns-root", - "ic-sns-swap", - "icrc-ledger-types", - "isocountry", - "lazy_static", - "maplit", - "prost", - "serde", - "serde_yaml", -] - -[[package]] -name = "ic-sns-root" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "build-info", - "build-info-build", - "candid", - "comparable", - "futures", - "ic-base-types", - "ic-canister-log", - "ic-canisters-http-types", - "ic-cdk 0.13.5", - "ic-cdk-macros 0.9.0", - "ic-management-canister-types", - "ic-metrics-encoder", - "ic-nervous-system-clients", - "ic-nervous-system-common", - "ic-nervous-system-common-build-metadata", - "ic-nervous-system-root", - "ic-nervous-system-runtime", - "ic-sns-swap", - "icrc-ledger-types", - "prost", - "serde", -] - -[[package]] -name = "ic-sns-swap" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "build-info", - "build-info-build", - "candid", - "comparable", - "dfn_candid", - "dfn_core", - "hex", - "ic-base-types", - "ic-canister-log", - "ic-canisters-http-types", - "ic-ledger-core", - "ic-metrics-encoder", - "ic-nervous-system-canisters", - "ic-nervous-system-clients", - "ic-nervous-system-common", - "ic-nervous-system-proto", - "ic-nervous-system-runtime", - "ic-neurons-fund", - "ic-sns-governance", - "ic-stable-structures", - "ic-utils 0.9.0", - "icp-ledger", - "icrc-ledger-types", - "itertools 0.12.1", - "lazy_static", - "maplit", - "prost", - "rust_decimal", - "rust_decimal_macros", - "serde", - "serde_bytes", -] - -[[package]] -name = "ic-sns-swap-proto-library" -version = "0.0.1" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "comparable", - "ic-base-types", - "ic-nervous-system-proto", - "ic-utils 0.9.0", - "prost", - "serde", - "serde_bytes", -] - -[[package]] -name = "ic-sns-wasm" -version = "1.0.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "candid", - "dfn_candid", - "dfn_core", - "dfn_http_metrics", - "futures", - "hex", - "ic-base-types", - "ic-cdk 0.13.5", - "ic-crypto-sha2", - "ic-management-canister-types", - "ic-metrics-encoder", - "ic-nervous-system-clients", - "ic-nervous-system-common", - "ic-nervous-system-proto", - "ic-nervous-system-runtime", - "ic-nns-constants", - "ic-nns-handler-root-interface", - "ic-sns-governance", - "ic-sns-init", - "ic-sns-root", - "ic-types", - "ic-utils 0.9.0", - "ic-wasm", - "icrc-ledger-types", - "maplit", - "prost", - "serde", - "serde_bytes", - "serde_json", -] - -[[package]] -name = "ic-stable-structures" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03f3044466a69802de74e710dc0300b706a05696a0531c942ca856751a13b0db" -dependencies = [ - "ic_principal", -] - -[[package]] -name = "ic-sys" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "cvt", - "hex", - "ic-crypto-sha2", - "lazy_static", - "libc", - "nix", - "phantom_newtype", - "prost", - "rand", - "thiserror", - "tokio", - "wsl", -] - -[[package]] -name = "ic-transport-types" -version = "0.37.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "875dc4704780383112e8e8b5063a1b98de114321d0c7d3e7f635dcf360a57fba" -dependencies = [ - "candid", - "hex", - "ic-certification 2.6.0", - "leb128", - "serde", - "serde_bytes", - "serde_repr", - "sha2 0.10.8", - "thiserror", -] - -[[package]] -name = "ic-types" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "base64 0.13.1", - "bincode", - "candid", - "chrono", - "hex", - "ic-base-types", - "ic-btc-replica-types", - "ic-crypto-internal-types", - "ic-crypto-sha2", - "ic-crypto-tree-hash", - "ic-error-types", - "ic-limits", - "ic-management-canister-types", - "ic-protobuf", - "ic-utils 0.9.0", - "ic-validate-eq", - "ic-validate-eq-derive", - "maplit", - "once_cell", - "phantom_newtype", - "prost", - "serde", - "serde_bytes", - "serde_cbor", - "serde_json", - "serde_with", - "strum 0.26.3", - "strum_macros 0.26.4", - "thiserror", - "thousands", -] - -[[package]] -name = "ic-utils" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "hex", - "scoped_threadpool", - "serde", - "serde_bytes", -] - -[[package]] -name = "ic-utils" -version = "0.37.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2fa832296800758c9c921dd1704985ded6b3e6fbc3aee409727eb1f00d69a595" -dependencies = [ - "async-trait", - "candid", - "futures-util", - "ic-agent", - "once_cell", - "semver", - "serde", - "serde_bytes", - "sha2 0.10.8", - "strum 0.26.3", - "strum_macros 0.26.4", - "thiserror", - "time", - "tokio", -] - -[[package]] -name = "ic-utils-thread" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" - -[[package]] -name = "ic-validate-eq" -version = "0.0.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-validate-eq-derive", -] - -[[package]] -name = "ic-validate-eq-derive" -version = "0.0.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "darling 0.20.10", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "ic-verify-bls-signature" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d420b25c0091059f6c3c23a21427a81915e6e0aca3b79e0d403ed767f286a3b9" -dependencies = [ - "hex", - "ic_bls12_381", - "lazy_static", - "pairing", - "rand", - "sha2 0.10.8", -] - -[[package]] -name = "ic-wasm" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "941376953c00628d8edae0adcad4b6e882c01cbfd5416d2ac2bc5fb709927737" -dependencies = [ - "anyhow", - "candid", - "clap 4.5.16", - "libflate", - "rustc-demangle", - "serde", - "serde_json", - "thiserror", - "walrus", -] - -[[package]] -name = "ic-wasm-types" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-crypto-sha2", - "ic-sys", - "ic-types", - "ic-utils 0.9.0", - "ic-validate-eq", - "ic-validate-eq-derive", - "serde", -] - -[[package]] -name = "ic-xrc-types" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1a2b2eaa332201f4abbd1192a307f7a5b6ea55d077a7f489ac62bf8e358b5a2" -dependencies = [ - "candid", - "serde", -] - -[[package]] -name = "ic0" -version = "0.18.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "576c539151d4769fb4d1a0c25c4108dd18facd04c5695b02cf2d226ab4e43aa5" - -[[package]] -name = "ic0" -version = "0.21.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a54b5297861c651551676e8c43df805dad175cc33bc97dbd992edbbb85dcbcdf" - -[[package]] -name = "ic0" -version = "0.23.0" -source = "git+https://github.com/dfinity/cdk-rs.git?rev=97c4e19c76b7f072ce8507cb7e7a527582111272#97c4e19c76b7f072ce8507cb7e7a527582111272" - -[[package]] -name = "ic_bls12_381" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22c65787944f32af084dffd0c68c1e544237b76e215654ddea8cd9f527dd8b69" -dependencies = [ - "digest 0.10.7", - "ff", - "group", - "pairing", - "rand_core", - "subtle", - "zeroize", -] - -[[package]] -name = "ic_principal" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1762deb6f7c8d8c2bdee4b6c5a47b60195b74e9b5280faa5ba29692f8e17429c" -dependencies = [ - "crc32fast", - "data-encoding", - "serde", - "sha2 0.10.8", - "thiserror", -] - -[[package]] -name = "icp-ledger" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "comparable", - "crc32fast", - "dfn_candid", - "dfn_core", - "dfn_protobuf", - "hex", - "ic-base-types", - "ic-cdk 0.13.5", - "ic-crypto-sha2", - "ic-ledger-canister-core", - "ic-ledger-core", - "ic-ledger-hash-of", - "icrc-ledger-types", - "lazy_static", - "num-traits", - "on_wire", - "prost", - "serde", - "serde_bytes", - "serde_cbor", - "strum 0.26.3", - "strum_macros 0.26.4", -] - -[[package]] -name = "icrc-ledger-client" -version = "0.1.2" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "async-trait", - "candid", - "icrc-ledger-types", - "serde", -] - -[[package]] -name = "icrc-ledger-types" -version = "0.1.6" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "base32", - "candid", - "crc32fast", - "hex", - "itertools 0.12.1", - "num-bigint 0.4.6", - "num-traits", - "serde", - "serde_bytes", - "sha2 0.10.8", - "strum 0.26.3", - "time", -] - -[[package]] -name = "icu_collections" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" -dependencies = [ - "displaydoc", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_locid" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" -dependencies = [ - "displaydoc", - "litemap", - "tinystr", - "writeable", - "zerovec", -] - -[[package]] -name = "icu_locid_transform" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_locid_transform_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_locid_transform_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" - -[[package]] -name = "icu_normalizer" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_normalizer_data", - "icu_properties", - "icu_provider", - "smallvec", - "utf16_iter", - "utf8_iter", - "write16", - "zerovec", -] - -[[package]] -name = "icu_normalizer_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" - -[[package]] -name = "icu_properties" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" -dependencies = [ - "displaydoc", - "icu_collections", - "icu_locid_transform", - "icu_properties_data", - "icu_provider", - "tinystr", - "zerovec", -] - -[[package]] -name = "icu_properties_data" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" - -[[package]] -name = "icu_provider" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" -dependencies = [ - "displaydoc", - "icu_locid", - "icu_provider_macros", - "stable_deref_trait", - "tinystr", - "writeable", - "yoke", - "zerofrom", - "zerovec", -] - -[[package]] -name = "icu_provider_macros" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "id-arena" -version = "2.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005" - -[[package]] -name = "ident_case" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" - -[[package]] -name = "idna" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" -dependencies = [ - "unicode-bidi", - "unicode-normalization", -] - -[[package]] -name = "idna" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd69211b9b519e98303c015e21a007e293db403b6c85b9b124e133d25e242cdd" -dependencies = [ - "icu_normalizer", - "icu_properties", - "smallvec", - "utf8_iter", -] - -[[package]] -name = "impl-more" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "206ca75c9c03ba3d4ace2460e57b189f39f43de612c2f85836e65c929701bb2d" - -[[package]] -name = "indexmap" -version = "1.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" -dependencies = [ - "autocfg", - "hashbrown 0.12.3", -] - -[[package]] -name = "indexmap" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5" -dependencies = [ - "equivalent", - "hashbrown 0.14.5", - "serde", -] - -[[package]] -name = "indicatif" -version = "0.17.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "763a5a8f45087d6bcea4222e7b72c291a054edf80e4ef6efd2a4979878c7bea3" -dependencies = [ - "console", - "instant", - "number_prefix", - "portable-atomic", - "unicode-width", -] - -[[package]] -name = "instant" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" -dependencies = [ - "cfg-if", -] - -[[package]] -name = "ipnet" -version = "2.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" - -[[package]] -name = "iri-string" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f5f6c2df22c009ac44f6f1499308e7a3ac7ba42cd2378475cc691510e1eef1b" -dependencies = [ - "memchr", - "serde", -] - -[[package]] -name = "is-terminal" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b" -dependencies = [ - "hermit-abi 0.4.0", - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "is_terminal_polyfill" -version = "1.70.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" - -[[package]] -name = "isocountry" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ea1dc4bf0fb4904ba83ffdb98af3d9c325274e92e6e295e4151e86c96363e04" -dependencies = [ - "serde", - "thiserror", -] - -[[package]] -name = "itertools" -version = "0.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" -dependencies = [ - "either", -] - -[[package]] -name = "itertools" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" -dependencies = [ - "either", -] - -[[package]] -name = "itoa" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" - -[[package]] -name = "js-sys" -version = "0.3.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" -dependencies = [ - "wasm-bindgen", -] - -[[package]] -name = "json5" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96b0db21af676c1ce64250b5f40f3ce2cf27e4e47cb91ed91eb6fe9350b430c1" -dependencies = [ - "pest", - "pest_derive", - "serde", -] - -[[package]] -name = "jsonwebtoken" -version = "9.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ae10193d25051e74945f1ea2d0b42e03cc3b890f7e4cc5faa44997d808193f" -dependencies = [ - "base64 0.21.7", - "js-sys", - "pem 3.0.4", - "ring", - "serde", - "serde_json", - "simple_asn1", -] - -[[package]] -name = "k256" -version = "0.13.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b" -dependencies = [ - "cfg-if", - "ecdsa", - "elliptic-curve", - "once_cell", - "sha2 0.10.8", - "signature", -] - -[[package]] -name = "keccak" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" -dependencies = [ - "cpufeatures", -] - -[[package]] -name = "keyring" -version = "3.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "030a9b84bb2a2f3673d4c8b8236091ed5d8f6b66a56d8085471d8abd5f3c6a80" -dependencies = [ - "dbus-secret-service", - "security-framework", -] - -[[package]] -name = "language-tags" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4345964bb142484797b161f473a503a434de77149dd8c7427788c6e13379388" - -[[package]] -name = "lazy_static" -version = "1.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" -dependencies = [ - "spin", -] - -[[package]] -name = "leb128" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" - -[[package]] -name = "libc" -version = "0.2.158" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439" - -[[package]] -name = "libdbus-sys" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06085512b750d640299b79be4bad3d2fa90a9c00b1fd9e1b46364f66f0485c72" -dependencies = [ - "pkg-config", -] - -[[package]] -name = "libflate" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45d9dfdc14ea4ef0900c1cddbc8dcd553fbaacd8a4a282cf4018ae9dd04fb21e" -dependencies = [ - "adler32", - "core2", - "crc32fast", - "dary_heap", - "libflate_lz77", -] - -[[package]] -name = "libflate_lz77" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6e0d73b369f386f1c44abd9c570d5318f55ccde816ff4b562fa452e5182863d" -dependencies = [ - "core2", - "hashbrown 0.14.5", - "rle-decode-fast", -] - -[[package]] -name = "libloading" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2b111a074963af1d37a139918ac6d49ad1d0d5e47f72fd55388619691a7d753" -dependencies = [ - "cc", - "winapi", -] - -[[package]] -name = "libloading" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" -dependencies = [ - "cfg-if", - "winapi", -] - -[[package]] -name = "libm" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" - -[[package]] -name = "libredox" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" -dependencies = [ - "bitflags 2.6.0", - "libc", -] - -[[package]] -name = "linux-raw-sys" -version = "0.4.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" - -[[package]] -name = "litemap" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" - -[[package]] -name = "local-channel" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6cbc85e69b8df4b8bb8b89ec634e7189099cea8927a276b7384ce5488e53ec8" -dependencies = [ - "futures-core", - "futures-sink", - "local-waker", -] - -[[package]] -name = "local-waker" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d873d7c67ce09b42110d801813efbc9364414e356be9935700d368351657487" - -[[package]] -name = "lock_api" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" -dependencies = [ - "autocfg", - "scopeguard", -] - -[[package]] -name = "log" -version = "0.4.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" - -[[package]] -name = "log-fetcher" -version = "0.5.5" -dependencies = [ - "anyhow", - "clap 4.5.16", - "log", - "pretty_env_logger", - "reqwest", - "serde", - "serde_json", - "tokio", - "url", -] - -[[package]] -name = "log-noise-filter-backend" -version = "0.5.5" -dependencies = [ - "axum 0.7.5", - "clap 4.5.16", - "regex", - "serde", - "serde_json", - "slog", - "slog-async", - "slog-term", - "tokio", -] - -[[package]] -name = "log-noise-filter-downloader" -version = "0.5.5" -dependencies = [ - "anyhow", - "clap 4.5.16", - "log-noise-filter-backend", - "reqwest", - "serde", - "serde_json", - "slog", - "slog-async", - "slog-term", - "tokio", - "url", -] - -[[package]] -name = "lzma-sys" -version = "0.1.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27" -dependencies = [ - "cc", - "libc", - "pkg-config", -] - -[[package]] -name = "maplit" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d" - -[[package]] -name = "matchit" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" - -[[package]] -name = "memchr" -version = "2.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" - -[[package]] -name = "memoffset" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" -dependencies = [ - "autocfg", -] - -[[package]] -name = "merlin" -version = "3.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d" -dependencies = [ - "byteorder", - "keccak", - "rand_core", - "zeroize", -] - -[[package]] -name = "mime" -version = "0.3.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" - -[[package]] -name = "minimal-lexical" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" - -[[package]] -name = "miniz_oxide" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" -dependencies = [ - "adler", -] - -[[package]] -name = "miniz_oxide" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" -dependencies = [ - "adler2", -] - -[[package]] -name = "mio" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4569e456d394deccd22ce1c1913e6ea0e54519f577285001215d33557431afe4" -dependencies = [ - "hermit-abi 0.3.9", - "libc", - "log", - "wasi", - "windows-sys 0.52.0", -] - -[[package]] -name = "mockall" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4c28b3fb6d753d28c20e826cd46ee611fda1cf3cde03a443a974043247c065a" -dependencies = [ - "cfg-if", - "downcast", - "fragile", - "mockall_derive", - "predicates", - "predicates-tree", -] - -[[package]] -name = "mockall_derive" -version = "0.13.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "341014e7f530314e9a1fdbc7400b244efea7122662c96bfa248c31da5bfb2020" -dependencies = [ - "cfg-if", - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "multimap" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" - -[[package]] -name = "multiservice-discovery" -version = "0.5.5" -dependencies = [ - "anyhow", - "assert_cmd", - "axum 0.7.5", - "axum-otel-metrics", - "base64 0.22.1", - "clap 4.5.16", - "crossbeam", - "crossbeam-channel", - "flate2", - "futures", - "futures-util", - "humantime", - "ic-async-utils", - "ic-crypto-utils-threshold-sig-der", - "ic-management-types", - "ic-registry-client", - "ic-types", - "multiservice-discovery-shared", - "opentelemetry", - "reqwest", - "retry", - "serde", - "serde_json", - "service-discovery", - "slog", - "slog-async", - "slog-term", - "tempfile", - "tokio", - "url", -] - -[[package]] -name = "multiservice-discovery-downloader" -version = "0.5.5" -dependencies = [ - "clap 4.5.16", - "crossbeam", - "crossbeam-channel", - "futures-util", - "humantime", - "ic-async-utils", - "multiservice-discovery-shared", - "regex", - "reqwest", - "service-discovery", - "slog", - "slog-async", - "slog-term", - "tokio", - "url", -] - -[[package]] -name = "multiservice-discovery-shared" -version = "0.5.5" -dependencies = [ - "erased-serde 0.4.5", - "ic-sns-wasm", - "ic-types", - "regex", - "serde", - "serde_json", - "service-discovery", -] - -[[package]] -name = "nix" -version = "0.24.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" -dependencies = [ - "bitflags 1.3.2", - "cfg-if", - "libc", - "memoffset", -] - -[[package]] -name = "node-status-updater" -version = "0.5.5" -dependencies = [ - "anyhow", - "clap 4.5.16", - "crossbeam", - "crossbeam-channel", - "futures-util", - "humantime", - "ic-agent", - "ic-async-utils", - "ic-metrics", - "obs-canister-clients", - "prometheus-http-query", - "service-discovery", - "slog", - "slog-async", - "slog-term", - "tokio", - "url", -] - -[[package]] -name = "nom" -version = "7.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" -dependencies = [ - "memchr", - "minimal-lexical", -] - -[[package]] -name = "num" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" -dependencies = [ - "num-bigint 0.4.6", - "num-complex", - "num-integer", - "num-iter", - "num-rational", - "num-traits", -] - -[[package]] -name = "num-bigint" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "090c7f9998ee0ff65aa5b723e4009f7b217707f1fb5ea551329cc4d6231fb304" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-bigint" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" -dependencies = [ - "num-integer", - "num-traits", - "serde", -] - -[[package]] -name = "num-bigint-dig" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151" -dependencies = [ - "byteorder", - "lazy_static", - "libm", - "num-integer", - "num-iter", - "num-traits", - "rand", - "serde", - "smallvec", -] - -[[package]] -name = "num-complex" -version = "0.4.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-conv" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" - -[[package]] -name = "num-integer" -version = "0.1.46" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" -dependencies = [ - "num-traits", -] - -[[package]] -name = "num-iter" -version = "0.1.45" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" -dependencies = [ - "autocfg", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-rational" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" -dependencies = [ - "num-bigint 0.4.6", - "num-integer", - "num-traits", -] - -[[package]] -name = "num-traits" -version = "0.2.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" -dependencies = [ - "autocfg", - "libm", -] - -[[package]] -name = "num_cpus" -version = "1.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" -dependencies = [ - "hermit-abi 0.3.9", - "libc", -] - -[[package]] -name = "number_prefix" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" - -[[package]] -name = "object" -version = "0.36.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27b64972346851a39438c60b341ebc01bba47464ae329e55cf343eb93964efd9" -dependencies = [ - "memchr", -] - -[[package]] -name = "obs-canister-clients" -version = "0.5.5" -dependencies = [ - "candid", - "ic-agent", - "rand", - "reqwest", - "serde", - "url", -] - -[[package]] -name = "octocrab" -version = "0.39.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9305e4c99543ecd0f42bd659c9e9d6ca7115fe5e37d5c85a7277b1db0d4c4101" -dependencies = [ - "arc-swap", - "async-trait", - "base64 0.22.1", - "bytes", - "cfg-if", - "chrono", - "either", - "futures", - "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "http-body-util", - "hyper 1.4.1", - "hyper-rustls 0.26.0", - "hyper-timeout 0.5.1", - "hyper-util", - "jsonwebtoken", - "once_cell", - "percent-encoding", - "pin-project", - "secrecy", - "serde", - "serde_json", - "serde_path_to_error", - "serde_urlencoded", - "snafu", - "tokio", - "tower", - "tower-http", - "tracing", - "url", -] - -[[package]] -name = "oid-registry" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c958dd45046245b9c3c2547369bb634eb461670b2e7e0de552905801a648d1d" -dependencies = [ - "asn1-rs", -] - -[[package]] -name = "on_wire" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" - -[[package]] -name = "once_cell" -version = "1.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" - -[[package]] -name = "opaque-debug" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" - -[[package]] -name = "openssl-probe" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" - -[[package]] -name = "opentelemetry" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "900d57987be3f2aeb70d385fff9b27fb74c5723cc9a52d904d4f9c807a0667bf" -dependencies = [ - "futures-core", - "futures-sink", - "js-sys", - "once_cell", - "pin-project-lite", - "thiserror", - "urlencoding", -] - -[[package]] -name = "opentelemetry-prometheus" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30bbcf6341cab7e2193e5843f0ac36c446a5b3fccb28747afaeda17996dcd02e" -dependencies = [ - "once_cell", - "opentelemetry", - "opentelemetry_sdk", - "prometheus", - "protobuf", -] - -[[package]] -name = "opentelemetry-semantic-conventions" -version = "0.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9ab5bd6c42fb9349dcf28af2ba9a0667f697f9bdcca045d39f2cec5543e2910" - -[[package]] -name = "opentelemetry_sdk" -version = "0.22.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e90c7113be649e31e9a0f8b5ee24ed7a16923b322c3c5ab6367469c049d6b7e" -dependencies = [ - "async-trait", - "crossbeam-channel", - "futures-channel", - "futures-executor", - "futures-util", - "glob", - "once_cell", - "opentelemetry", - "ordered-float", - "percent-encoding", - "rand", - "thiserror", - "tokio", - "tokio-stream", -] - -[[package]] -name = "option-ext" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" - -[[package]] -name = "ordered-float" -version = "4.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a91171844676f8c7990ce64959210cd2eaef32c2612c50f9fae9f8aaa6065a6" -dependencies = [ - "num-traits", -] - -[[package]] -name = "os_str_bytes" -version = "6.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2355d85b9a3786f481747ced0e0ff2ba35213a1f9bd406ed906554d7af805a1" - -[[package]] -name = "p256" -version = "0.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" -dependencies = [ - "ecdsa", - "elliptic-curve", - "primeorder", - "sha2 0.10.8", -] - -[[package]] -name = "pairing" -version = "0.23.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81fec4625e73cf41ef4bb6846cafa6d44736525f442ba45e407c4a000a13996f" -dependencies = [ - "group", -] - -[[package]] -name = "papergrid" -version = "0.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7419ad52a7de9b60d33e11085a0fe3df1fbd5926aa3f93d3dd53afbc9e86725" -dependencies = [ - "bytecount", - "fnv", - "unicode-width", -] - -[[package]] -name = "parking" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae" - -[[package]] -name = "parking_lot" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" -dependencies = [ - "lock_api", - "parking_lot_core", -] - -[[package]] -name = "parking_lot_core" -version = "0.9.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall 0.5.3", - "smallvec", - "windows-targets 0.52.6", -] - -[[package]] -name = "paste" -version = "1.0.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" - -[[package]] -name = "pem" -version = "1.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8" -dependencies = [ - "base64 0.13.1", -] - -[[package]] -name = "pem" -version = "3.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" -dependencies = [ - "base64 0.22.1", - "serde", -] - -[[package]] -name = "pem-rfc7468" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" -dependencies = [ - "base64ct", -] - -[[package]] -name = "percent-encoding" -version = "2.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" - -[[package]] -name = "pest" -version = "2.7.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cd53dff83f26735fdc1ca837098ccf133605d794cdae66acfc2bfac3ec809d95" -dependencies = [ - "memchr", - "thiserror", - "ucd-trie", -] - -[[package]] -name = "pest_derive" -version = "2.7.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a548d2beca6773b1c244554d36fcf8548a8a58e74156968211567250e48e49a" -dependencies = [ - "pest", - "pest_generator", -] - -[[package]] -name = "pest_generator" -version = "2.7.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c93a82e8d145725dcbaf44e5ea887c8a869efdcc28706df2d08c69e17077183" -dependencies = [ - "pest", - "pest_meta", - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "pest_meta" -version = "2.7.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a941429fea7e08bedec25e4f6785b6ffaacc6b755da98df5ef3e7dcf4a124c4f" -dependencies = [ - "once_cell", - "pest", - "sha2 0.10.8", -] - -[[package]] -name = "petgraph" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" -dependencies = [ - "fixedbitset", - "indexmap 2.5.0", -] - -[[package]] -name = "phantom_newtype" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "candid", - "num-traits", - "serde", - "slog", -] - -[[package]] -name = "pin-project" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" -dependencies = [ - "pin-project-internal", -] - -[[package]] -name = "pin-project-internal" -version = "1.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "pin-project-lite" -version = "0.2.14" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" - -[[package]] -name = "pin-utils" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" - -[[package]] -name = "pkcs11" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3aca6d67e4c8613bfe455599d0233d00735f85df2001f6bfd9bb7ac0496b10af" -dependencies = [ - "libloading 0.5.2", - "num-bigint 0.2.6", -] - -[[package]] -name = "pkcs8" -version = "0.10.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" -dependencies = [ - "der", - "spki", -] - -[[package]] -name = "pkg-config" -version = "0.3.30" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" - -[[package]] -name = "portable-atomic" -version = "1.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da544ee218f0d287a911e9c99a39a8c9bc8fcad3cb8db5959940044ecfc67265" - -[[package]] -name = "powerfmt" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" - -[[package]] -name = "ppv-lite86" -version = "0.2.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" -dependencies = [ - "zerocopy", -] - -[[package]] -name = "predicates" -version = "3.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e9086cc7640c29a356d1a29fd134380bee9d8f79a17410aa76e7ad295f42c97" -dependencies = [ - "anstyle", - "difflib", - "predicates-core", -] - -[[package]] -name = "predicates-core" -version = "1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae8177bee8e75d6846599c6b9ff679ed51e882816914eec639944d7c9aa11931" - -[[package]] -name = "predicates-tree" -version = "1.0.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41b740d195ed3166cd147c8047ec98db0e22ec019eb8eeb76d343b795304fb13" -dependencies = [ - "predicates-core", - "termtree", -] - -[[package]] -name = "pretty" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b55c4d17d994b637e2f4daf6e5dc5d660d209d5642377d675d7a1c3ab69fa579" -dependencies = [ - "arrayvec 0.5.2", - "typed-arena", - "unicode-width", -] - -[[package]] -name = "pretty_assertions" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ae130e2f271fbc2ac3a40fb1d07180839cdbbe443c7a27e1e3c13c5cac0116d" -dependencies = [ - "diff", - "yansi 1.0.1", -] - -[[package]] -name = "pretty_env_logger" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "865724d4dbe39d9f3dd3b52b88d859d66bcb2d6a0acfd5ea68a65fb66d4bdc1c" -dependencies = [ - "env_logger 0.10.2", - "log", -] - -[[package]] -name = "prettyplease" -version = "0.2.20" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5f12335488a2f3b0a83b14edad48dca9879ce89b2edd10e80237e4e852dd645e" -dependencies = [ - "proc-macro2", - "syn 2.0.77", -] - -[[package]] -name = "primeorder" -version = "0.13.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" -dependencies = [ - "elliptic-curve", -] - -[[package]] -name = "priority-queue" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0bda9164fe05bc9225752d54aae413343c36f684380005398a6a8fde95fe785" -dependencies = [ - "autocfg", - "indexmap 1.9.3", -] - -[[package]] -name = "proc-macro-crate" -version = "3.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" -dependencies = [ - "toml_edit", -] - -[[package]] -name = "proc-macro-error" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" -dependencies = [ - "proc-macro-error-attr", - "proc-macro2", - "quote", - "syn 1.0.109", - "version_check", -] - -[[package]] -name = "proc-macro-error-attr" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" -dependencies = [ - "proc-macro2", - "quote", - "version_check", -] - -[[package]] -name = "proc-macro-hack" -version = "0.5.20+deprecated" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" - -[[package]] -name = "proc-macro2" -version = "1.0.86" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" -dependencies = [ - "unicode-ident", -] - -[[package]] -name = "procfs" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ab8809e0c18450a2db0f236d2a44ec0b4c1412d0eb936233579f0990faa5d5cd" -dependencies = [ - "bitflags 1.3.2", - "byteorder", - "flate2", - "hex", - "lazy_static", - "libc", -] - -[[package]] -name = "procfs" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "731e0d9356b0c25f16f33b5be79b1c57b562f141ebfcdb0ad8ac2c13a24293b4" -dependencies = [ - "bitflags 2.6.0", - "hex", - "lazy_static", - "procfs-core", - "rustix", -] - -[[package]] -name = "procfs-core" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d3554923a69f4ce04c4a754260c338f505ce22642d3830e049a399fc2059a29" -dependencies = [ - "bitflags 2.6.0", - "hex", -] - -[[package]] -name = "prometheus" -version = "0.13.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d33c28a30771f7f96db69893f78b857f7450d7e0237e9c8fc6427a81bae7ed1" -dependencies = [ - "cfg-if", - "fnv", - "lazy_static", - "libc", - "memchr", - "parking_lot", - "procfs 0.16.0", - "protobuf", - "thiserror", -] - -[[package]] -name = "prometheus-config-updater" -version = "0.5.5" -dependencies = [ - "anyhow", - "base64 0.22.1", - "clap 4.5.16", - "config-writer-common", - "crossbeam", - "futures-util", - "humantime", - "ic-async-utils", - "ic-config", - "ic-crypto-utils-threshold-sig-der", - "ic-http-endpoints-metrics", - "ic-metrics", - "ic-types", - "regex", - "serde", - "serde_json", - "service-discovery", - "slog", - "slog-async", - "slog-term", - "tokio", - "url", -] - -[[package]] -name = "prometheus-http-query" -version = "0.8.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fcebfa99f03ae51220778316b37d24981e36322c82c24848f48c5bd0f64cbdb" -dependencies = [ - "enum-as-inner", - "mime", - "reqwest", - "serde", - "time", - "url", -] - -[[package]] -name = "prometheus-parse" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "811031bea65e5a401fb2e1f37d802cca6601e204ac463809a3189352d13b78a5" -dependencies = [ - "chrono", - "itertools 0.12.1", - "once_cell", - "regex", -] - -[[package]] -name = "prost" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29" -dependencies = [ - "bytes", - "prost-derive", -] - -[[package]] -name = "prost-build" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" -dependencies = [ - "bytes", - "heck 0.5.0", - "itertools 0.12.1", - "log", - "multimap", - "once_cell", - "petgraph", - "prettyplease", - "prost", - "prost-types", - "regex", - "syn 2.0.77", - "tempfile", -] - -[[package]] -name = "prost-derive" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" -dependencies = [ - "anyhow", - "itertools 0.12.1", - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "prost-types" -version = "0.12.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0" -dependencies = [ - "prost", -] - -[[package]] -name = "protobuf" -version = "2.28.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94" - -[[package]] -name = "psm" -version = "0.1.21" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874" -dependencies = [ - "cc", -] - -[[package]] -name = "ptr_meta" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" -dependencies = [ - "ptr_meta_derive", -] - -[[package]] -name = "ptr_meta_derive" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "quick-xml" -version = "0.23.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "11bafc859c6815fbaffbbbf4229ecb767ac913fecb27f9ad4343662e9ef099ea" -dependencies = [ - "memchr", -] - -[[package]] -name = "quinn" -version = "0.11.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b22d8e7369034b9a7132bc2008cac12f2013c8132b45e0554e6e20e2617f2156" -dependencies = [ - "bytes", - "pin-project-lite", - "quinn-proto", - "quinn-udp", - "rustc-hash", - "rustls 0.23.12", - "socket2", - "thiserror", - "tokio", - "tracing", -] - -[[package]] -name = "quinn-proto" -version = "0.11.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba92fb39ec7ad06ca2582c0ca834dfeadcaf06ddfc8e635c80aa7e1c05315fdd" -dependencies = [ - "bytes", - "rand", - "ring", - "rustc-hash", - "rustls 0.23.12", - "slab", - "thiserror", - "tinyvec", - "tracing", -] - -[[package]] -name = "quinn-udp" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8bffec3605b73c6f1754535084a85229fa8a30f86014e6c81aeec4abb68b0285" -dependencies = [ - "libc", - "once_cell", - "socket2", - "tracing", - "windows-sys 0.52.0", -] - -[[package]] -name = "quote" -version = "1.0.37" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" -dependencies = [ - "proc-macro2", -] - -[[package]] -name = "radium" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" - -[[package]] -name = "rand" -version = "0.8.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" -dependencies = [ - "libc", - "rand_chacha", - "rand_core", -] - -[[package]] -name = "rand_chacha" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" -dependencies = [ - "ppv-lite86", - "rand_core", -] - -[[package]] -name = "rand_core" -version = "0.6.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" -dependencies = [ - "getrandom", -] - -[[package]] -name = "rand_seeder" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a9febe641d2842ffc76ee962668a17578767c4e01735e4802b21ed9a24b2e4e" -dependencies = [ - "rand_core", -] - -[[package]] -name = "rangemap" -version = "1.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f60fcc7d6849342eff22c4350c8b9a989ee8ceabc4b481253e8946b9fe83d684" - -[[package]] -name = "rayon" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" -dependencies = [ - "either", - "rayon-core", -] - -[[package]] -name = "rayon-core" -version = "1.12.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" -dependencies = [ - "crossbeam-deque", - "crossbeam-utils", -] - -[[package]] -name = "redox_syscall" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" -dependencies = [ - "bitflags 1.3.2", -] - -[[package]] -name = "redox_syscall" -version = "0.5.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4" -dependencies = [ - "bitflags 2.6.0", -] - -[[package]] -name = "redox_users" -version = "0.4.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891" -dependencies = [ - "getrandom", - "libredox", - "thiserror", -] - -[[package]] -name = "regex" -version = "1.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619" -dependencies = [ - "aho-corasick", - "memchr", - "regex-automata", - "regex-syntax", -] - -[[package]] -name = "regex-automata" -version = "0.4.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" -dependencies = [ - "aho-corasick", - "memchr", - "regex-syntax", -] - -[[package]] -name = "regex-lite" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53a49587ad06b26609c52e423de037e7f57f20d53535d66e08c695f347df952a" - -[[package]] -name = "regex-syntax" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" - -[[package]] -name = "registry-canister" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "build-info", - "build-info-build", - "candid", - "dfn_candid", - "dfn_core", - "dfn_http_metrics", - "futures", - "ic-base-types", - "ic-cdk 0.13.5", - "ic-certified-map", - "ic-crypto-node-key-validation", - "ic-crypto-sha2", - "ic-crypto-utils-basic-sig", - "ic-crypto-utils-ni-dkg", - "ic-management-canister-types", - "ic-metrics-encoder", - "ic-nervous-system-canisters", - "ic-nervous-system-common", - "ic-nervous-system-common-build-metadata", - "ic-nns-common", - "ic-nns-constants", - "ic-protobuf", - "ic-registry-canister-api", - "ic-registry-keys", - "ic-registry-node-provider-rewards", - "ic-registry-routing-table", - "ic-registry-subnet-features", - "ic-registry-subnet-type", - "ic-registry-transport", - "ic-types", - "idna 1.0.2", - "ipnet", - "lazy_static", - "leb128", - "on_wire", - "prost", - "serde", - "url", -] - -[[package]] -name = "rend" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c" -dependencies = [ - "bytecheck", -] - -[[package]] -name = "reqwest" -version = "0.12.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8f4955649ef5c38cc7f9e8aa41761d48fb9677197daea9984dc54f56aad5e63" -dependencies = [ - "base64 0.22.1", - "bytes", - "futures-channel", - "futures-core", - "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "http-body-util", - "hyper 1.4.1", - "hyper-rustls 0.27.2", - "hyper-util", - "ipnet", - "js-sys", - "log", - "mime", - "once_cell", - "percent-encoding", - "pin-project-lite", - "quinn", - "rustls 0.23.12", - "rustls-pemfile", - "rustls-pki-types", - "serde", - "serde_json", - "serde_urlencoded", - "sync_wrapper 1.0.1", - "tokio", - "tokio-rustls 0.26.0", - "tokio-util", - "tower-service", - "url", - "wasm-bindgen", - "wasm-bindgen-futures", - "wasm-streams", - "web-sys", - "webpki-roots", - "windows-registry", -] - -[[package]] -name = "retry" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9166d72162de3575f950507683fac47e30f6f2c3836b71b7fbc61aa517c9c5f4" -dependencies = [ - "rand", -] - -[[package]] -name = "rfc6979" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" -dependencies = [ - "hmac", - "subtle", -] - -[[package]] -name = "ring" -version = "0.17.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" -dependencies = [ - "cc", - "cfg-if", - "getrandom", - "libc", - "spin", - "untrusted", - "windows-sys 0.52.0", -] - -[[package]] -name = "rkyv" -version = "0.7.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cba464629b3394fc4dbc6f940ff8f5b4ff5c7aef40f29166fd4ad12acbc99c0" -dependencies = [ - "bitvec", - "bytecheck", - "bytes", - "hashbrown 0.12.3", - "ptr_meta", - "rend", - "rkyv_derive", - "seahash", - "tinyvec", - "uuid", -] - -[[package]] -name = "rkyv_derive" -version = "0.7.44" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7dddfff8de25e6f62b9d64e6e432bf1c6736c57d20323e15ee10435fbda7c65" -dependencies = [ - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "rle-decode-fast" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3582f63211428f83597b51b2ddb88e2a91a9d52d12831f9d08f5e624e8977422" - -[[package]] -name = "rust_decimal" -version = "1.36.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b082d80e3e3cc52b2ed634388d436fe1f4de6af5786cc2de9ba9737527bdf555" -dependencies = [ - "arrayvec 0.7.4", - "borsh", - "bytes", - "num-traits", - "rand", - "rkyv", - "serde", - "serde_json", -] - -[[package]] -name = "rust_decimal_macros" -version = "1.36.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da991f231869f34268415a49724c6578e740ad697ba0999199d6f22b3949332c" -dependencies = [ - "quote", - "rust_decimal", -] - -[[package]] -name = "rustc-demangle" -version = "0.1.24" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" - -[[package]] -name = "rustc-hash" -version = "2.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152" - -[[package]] -name = "rustc_version" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" -dependencies = [ - "semver", -] - -[[package]] -name = "rusticata-macros" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632" -dependencies = [ - "nom", -] - -[[package]] -name = "rustix" -version = "0.38.34" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" -dependencies = [ - "bitflags 2.6.0", - "errno", - "libc", - "linux-raw-sys", - "windows-sys 0.52.0", -] - -[[package]] -name = "rustls" -version = "0.22.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432" -dependencies = [ - "log", - "ring", - "rustls-pki-types", - "rustls-webpki", - "subtle", - "zeroize", -] - -[[package]] -name = "rustls" -version = "0.23.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c58f8c84392efc0a126acce10fa59ff7b3d2ac06ab451a33f2741989b806b044" -dependencies = [ - "brotli", - "brotli-decompressor", - "once_cell", - "ring", - "rustls-pki-types", - "rustls-webpki", - "subtle", - "zeroize", -] - -[[package]] -name = "rustls-native-certs" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a88d6d420651b496bdd98684116959239430022a115c1240e6c3993be0b15fba" -dependencies = [ - "openssl-probe", - "rustls-pemfile", - "rustls-pki-types", - "schannel", - "security-framework", -] - -[[package]] -name = "rustls-pemfile" -version = "2.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "196fe16b00e106300d3e45ecfcb764fa292a535d7326a29a5875c579c7417425" -dependencies = [ - "base64 0.22.1", - "rustls-pki-types", -] - -[[package]] -name = "rustls-pki-types" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc0a2ce646f8655401bb81e7927b812614bd5d91dbc968696be50603510fcaf0" - -[[package]] -name = "rustls-webpki" -version = "0.102.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e6b52d4fda176fd835fdc55a835d4a89b8499cad995885a21149d5ad62f852e" -dependencies = [ - "ring", - "rustls-pki-types", - "untrusted", -] - -[[package]] -name = "rustversion" -version = "1.0.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" - -[[package]] -name = "ryu" -version = "1.0.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" - -[[package]] -name = "same-file" -version = "1.0.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" -dependencies = [ - "winapi-util", -] - -[[package]] -name = "schannel" -version = "0.1.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" -dependencies = [ - "windows-sys 0.52.0", -] - -[[package]] -name = "scoped_threadpool" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" - -[[package]] -name = "scopeguard" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" - -[[package]] -name = "seahash" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" - -[[package]] -name = "sec1" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" -dependencies = [ - "base16ct", - "der", - "generic-array", - "pkcs8", - "subtle", - "zeroize", -] - -[[package]] -name = "secrecy" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bd1c54ea06cfd2f6b63219704de0b9b4f72dcc2b8fdef820be6cd799780e91e" -dependencies = [ - "zeroize", -] - -[[package]] -name = "security-framework" -version = "2.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" -dependencies = [ - "bitflags 2.6.0", - "core-foundation", - "core-foundation-sys", - "libc", - "security-framework-sys", -] - -[[package]] -name = "security-framework-sys" -version = "2.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75da29fe9b9b08fe9d6b22b5b4bcbc75d8db3aa31e639aa56bb62e9d46bfceaf" -dependencies = [ - "core-foundation-sys", - "libc", -] - -[[package]] -name = "self-replace" -version = "1.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7828a58998685d8bf5a3c5e7a3379a5867289c20828c3ee436280b44b598515" -dependencies = [ - "fastrand 1.9.0", - "tempfile", - "windows-sys 0.48.0", -] - -[[package]] -name = "self_update" -version = "0.41.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469a3970061380c19852269f393e74c0fe607a4e23d85267382cf25486aa8de5" -dependencies = [ - "hyper 1.4.1", - "indicatif", - "log", - "quick-xml", - "regex", - "reqwest", - "self-replace", - "semver", - "serde_json", - "tar", - "tempfile", - "urlencoding", - "zipsign-api", -] - -[[package]] -name = "semver" -version = "1.0.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" -dependencies = [ - "serde", -] - -[[package]] -name = "serde" -version = "1.0.210" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" -dependencies = [ - "serde_derive", -] - -[[package]] -name = "serde_bytes" -version = "0.11.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "387cc504cb06bb40a96c8e04e951fe01854cf6bc921053c954e4a606d9675c6a" -dependencies = [ - "serde", -] - -[[package]] -name = "serde_cbor" -version = "0.11.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2bef2ebfde456fb76bbcf9f59315333decc4fda0b2b44b420243c11e0f5ec1f5" -dependencies = [ - "half 1.8.3", - "serde", -] - -[[package]] -name = "serde_derive" -version = "1.0.210" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "serde_json" -version = "1.0.128" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" -dependencies = [ - "indexmap 2.5.0", - "itoa", - "memchr", - "ryu", - "serde", -] - -[[package]] -name = "serde_path_to_error" -version = "0.1.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" -dependencies = [ - "itoa", - "serde", -] - -[[package]] -name = "serde_repr" -version = "0.1.19" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "serde_tokenstream" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "797ba1d80299b264f3aac68ab5d12e5825a561749db4df7cd7c8083900c5d4e9" -dependencies = [ - "proc-macro2", - "serde", - "syn 1.0.109", -] - -[[package]] -name = "serde_tokenstream" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8790a7c3fe883e443eaa2af6f705952bc5d6e8671a220b9335c8cae92c037e74" -dependencies = [ - "proc-macro2", - "quote", - "serde", - "syn 2.0.77", -] - -[[package]] -name = "serde_urlencoded" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" -dependencies = [ - "form_urlencoded", - "itoa", - "ryu", - "serde", -] - -[[package]] -name = "serde_with" -version = "1.14.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "678b5a069e50bf00ecd22d0cd8ddf7c236f68581b03db652061ed5eb13a312ff" -dependencies = [ - "serde", - "serde_with_macros", -] - -[[package]] -name = "serde_with_macros" -version = "1.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082" -dependencies = [ - "darling 0.13.4", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "serde_yaml" -version = "0.9.34+deprecated" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" -dependencies = [ - "indexmap 2.5.0", - "itoa", - "ryu", - "serde", - "unsafe-libyaml", -] - -[[package]] -name = "service-discovery" -version = "0.5.5" -dependencies = [ - "anyhow", - "crossbeam", - "crossbeam-channel", - "futures", - "ic-interfaces-registry", - "ic-metrics", - "ic-protobuf", - "ic-registry-client", - "ic-registry-client-fake", - "ic-registry-client-helpers", - "ic-registry-common-proto", - "ic-registry-keys", - "ic-registry-local-registry", - "ic-registry-local-store", - "ic-registry-local-store-artifacts", - "ic-registry-nns-data-provider", - "ic-sys", - "itertools 0.13.0", - "prometheus", - "regex", - "serde", - "serde_json", - "slog", - "tempfile", - "thiserror", - "tokio", - "url", -] - -[[package]] -name = "sha1" -version = "0.10.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest 0.10.7", -] - -[[package]] -name = "sha2" -version = "0.9.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" -dependencies = [ - "block-buffer 0.9.0", - "cfg-if", - "cpufeatures", - "digest 0.9.0", - "opaque-debug", -] - -[[package]] -name = "sha2" -version = "0.10.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" -dependencies = [ - "cfg-if", - "cpufeatures", - "digest 0.10.7", -] - -[[package]] -name = "shell-words" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde" - -[[package]] -name = "shlex" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" - -[[package]] -name = "signal-hook-registry" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" -dependencies = [ - "libc", -] - -[[package]] -name = "signature" -version = "2.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" -dependencies = [ - "digest 0.10.7", - "rand_core", -] - -[[package]] -name = "simdutf8" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a" - -[[package]] -name = "simple_asn1" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adc4e5204eb1910f40f9cfa375f6f05b68c3abac4b6fd879c8ff5e7ae8a0a085" -dependencies = [ - "num-bigint 0.4.6", - "num-traits", - "thiserror", - "time", -] - -[[package]] -name = "slab" -version = "0.4.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" -dependencies = [ - "autocfg", -] - -[[package]] -name = "slack-notifications" -version = "0.5.5" -dependencies = [ - "anyhow", - "candid", - "clap 4.5.16", - "dotenv", - "env_logger 0.11.5", - "futures", - "ic-agent", - "ic-management-types", - "ic-nns-common", - "ic-nns-constants", - "ic-nns-governance", - "itertools 0.13.0", - "lazy_static", - "log", - "regex", - "registry-canister", - "reqwest", - "retry", - "serde", - "serde_json", - "serde_yaml", - "tokio", -] - -[[package]] -name = "slog" -version = "2.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8347046d4ebd943127157b94d63abb990fcf729dc4e9978927fdf4ac3c998d06" -dependencies = [ - "erased-serde 0.3.31", -] - -[[package]] -name = "slog-async" -version = "2.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72c8038f898a2c79507940990f05386455b3a317d8f18d4caea7cbc3d5096b84" -dependencies = [ - "crossbeam-channel", - "slog", - "take_mut", - "thread_local", -] - -[[package]] -name = "slog-json" -version = "2.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e1e53f61af1e3c8b852eef0a9dee29008f55d6dd63794f3f12cef786cf0f219" -dependencies = [ - "erased-serde 0.3.31", - "serde", - "serde_json", - "slog", - "time", -] - -[[package]] -name = "slog-scope" -version = "4.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f95a4b4c3274cd2869549da82b57ccc930859bdbf5bcea0424bc5f140b3c786" -dependencies = [ - "arc-swap", - "lazy_static", - "slog", -] - -[[package]] -name = "slog-term" -version = "2.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6e022d0b998abfe5c3782c1f03551a596269450ccd677ea51c56f8b214610e8" -dependencies = [ - "is-terminal", - "slog", - "term", - "thread_local", - "time", -] - -[[package]] -name = "slotmap" -version = "1.0.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a" -dependencies = [ - "version_check", -] - -[[package]] -name = "smallvec" -version = "1.13.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" - -[[package]] -name = "snafu" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b835cb902660db3415a672d862905e791e54d306c6e8189168c7f3d9ae1c79d" -dependencies = [ - "snafu-derive", -] - -[[package]] -name = "snafu-derive" -version = "0.8.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38d1e02fca405f6280643174a50c942219f0bbf4dbf7d480f1dd864d6f211ae5" -dependencies = [ - "heck 0.5.0", - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "sns-downloader" -version = "0.5.5" -dependencies = [ - "clap 4.5.16", - "crossbeam", - "crossbeam-channel", - "futures-util", - "humantime", - "ic-async-utils", - "ic-canisters", - "multiservice-discovery-shared", - "reqwest", - "serde_json", - "slog", - "slog-async", - "slog-term", - "tokio", - "url", -] - -[[package]] -name = "socket2" -version = "0.5.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" -dependencies = [ - "libc", - "windows-sys 0.52.0", -] - -[[package]] -name = "spin" -version = "0.9.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" - -[[package]] -name = "spinners" -version = "4.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a0ef947f358b9c238923f764c72a4a9d42f2d637c46e059dbd319d6e7cfb4f82" -dependencies = [ - "lazy_static", - "maplit", - "strum 0.24.1", -] - -[[package]] -name = "spki" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" -dependencies = [ - "base64ct", - "der", -] - -[[package]] -name = "stable_deref_trait" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" - -[[package]] -name = "stacker" -version = "0.1.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c886bd4480155fd3ef527d45e9ac8dd7118a898a46530b7b94c3e21866259fce" -dependencies = [ - "cc", - "cfg-if", - "libc", - "psm", - "winapi", -] - -[[package]] -name = "static_assertions" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" - -[[package]] -name = "strsim" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" - -[[package]] -name = "strsim" -version = "0.11.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" - -[[package]] -name = "strum" -version = "0.24.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" -dependencies = [ - "strum_macros 0.24.3", -] - -[[package]] -name = "strum" -version = "0.26.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" -dependencies = [ - "strum_macros 0.26.4", -] - -[[package]] -name = "strum_macros" -version = "0.24.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" -dependencies = [ - "heck 0.4.1", - "proc-macro2", - "quote", - "rustversion", - "syn 1.0.109", -] - -[[package]] -name = "strum_macros" -version = "0.26.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" -dependencies = [ - "heck 0.5.0", - "proc-macro2", - "quote", - "rustversion", - "syn 2.0.77", -] - -[[package]] -name = "subtle" -version = "2.6.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" - -[[package]] -name = "subtle-ng" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "734676eb262c623cec13c3155096e08d1f8f29adce39ba17948b18dad1e54142" - -[[package]] -name = "syn" -version = "1.0.109" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "syn" -version = "2.0.77" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f35bcdf61fd8e7be6caf75f429fdca8beb3ed76584befb503b1569faee373ed" -dependencies = [ - "proc-macro2", - "quote", - "unicode-ident", -] - -[[package]] -name = "syn_derive" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1329189c02ff984e9736652b1631330da25eaa6bc639089ed4915d25446cbe7b" -dependencies = [ - "proc-macro-error", - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "sync_wrapper" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" - -[[package]] -name = "sync_wrapper" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" -dependencies = [ - "futures-core", -] - -[[package]] -name = "synstructure" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "tabled" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77c9303ee60b9bedf722012ea29ae3711ba13a67c9b9ae28993838b63057cb1b" -dependencies = [ - "papergrid", - "tabled_derive", -] - -[[package]] -name = "tabled_derive" -version = "0.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bf0fb8bfdc709786c154e24a66777493fb63ae97e3036d914c8666774c477069" -dependencies = [ - "heck 0.4.1", - "proc-macro-error", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "tabular" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9a2882c514780a1973df90de9d68adcd8871bacc9a6331c3f28e6d2ff91a3d1" -dependencies = [ - "unicode-width", -] - -[[package]] -name = "take_mut" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f764005d11ee5f36500a149ace24e00e3da98b0158b3e2d53a7495660d3f4d60" - -[[package]] -name = "tap" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" - -[[package]] -name = "tar" -version = "0.4.41" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb797dad5fb5b76fcf519e702f4a589483b5ef06567f160c392832c1f5e44909" -dependencies = [ - "filetime", - "libc", - "xattr", -] - -[[package]] -name = "tempfile" -version = "3.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04cbcdd0c794ebb0d4cf35e88edd2f7d2c4c3e9a5a6dab322839b321c6a87a64" -dependencies = [ - "cfg-if", - "fastrand 2.1.0", - "once_cell", - "rustix", - "windows-sys 0.59.0", -] - -[[package]] -name = "term" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f" -dependencies = [ - "dirs-next", - "rustversion", - "winapi", -] - -[[package]] -name = "termcolor" -version = "1.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" -dependencies = [ - "winapi-util", -] - -[[package]] -name = "terminal_size" -version = "0.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7" -dependencies = [ - "rustix", - "windows-sys 0.48.0", -] - -[[package]] -name = "termtree" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76" - -[[package]] -name = "textwrap" -version = "0.16.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9" - -[[package]] -name = "thiserror" -version = "1.0.63" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" -dependencies = [ - "thiserror-impl", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.63" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "thousands" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bf63baf9f5039dadc247375c29eb13706706cfde997d0330d05aa63a77d8820" - -[[package]] -name = "thread_local" -version = "1.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" -dependencies = [ - "cfg-if", - "once_cell", -] - -[[package]] -name = "time" -version = "0.3.36" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" -dependencies = [ - "deranged", - "itoa", - "num-conv", - "powerfmt", - "serde", - "time-core", - "time-macros", -] - -[[package]] -name = "time-core" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" - -[[package]] -name = "time-macros" -version = "0.2.18" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" -dependencies = [ - "num-conv", - "time-core", -] - -[[package]] -name = "tinystr" -version = "0.7.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" -dependencies = [ - "displaydoc", - "zerovec", -] - -[[package]] -name = "tinyvec" -version = "1.8.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" -dependencies = [ - "tinyvec_macros", -] - -[[package]] -name = "tinyvec_macros" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" - -[[package]] -name = "tokio" -version = "1.40.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998" -dependencies = [ - "backtrace", - "bytes", - "libc", - "mio", - "parking_lot", - "pin-project-lite", - "signal-hook-registry", - "socket2", - "tokio-macros", - "windows-sys 0.52.0", -] - -[[package]] -name = "tokio-io-timeout" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf" -dependencies = [ - "pin-project-lite", - "tokio", -] - -[[package]] -name = "tokio-macros" -version = "2.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "tokio-metrics" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eace09241d62c98b7eeb1107d4c5c64ca3bd7da92e8c218c153ab3a78f9be112" -dependencies = [ - "futures-util", - "pin-project-lite", - "tokio", - "tokio-stream", -] - -[[package]] -name = "tokio-rustls" -version = "0.25.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f" -dependencies = [ - "rustls 0.22.4", - "rustls-pki-types", - "tokio", -] - -[[package]] -name = "tokio-rustls" -version = "0.26.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" -dependencies = [ - "rustls 0.23.12", - "rustls-pki-types", - "tokio", -] - -[[package]] -name = "tokio-stream" -version = "0.1.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af" -dependencies = [ - "futures-core", - "pin-project-lite", - "tokio", -] - -[[package]] -name = "tokio-util" -version = "0.7.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a" -dependencies = [ - "bytes", - "futures-core", - "futures-sink", - "pin-project-lite", - "tokio", -] - -[[package]] -name = "toml_datetime" -version = "0.6.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" - -[[package]] -name = "toml_edit" -version = "0.21.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" -dependencies = [ - "indexmap 2.5.0", - "toml_datetime", - "winnow", -] - -[[package]] -name = "tonic" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76c4eb7a4e9ef9d4763600161f12f5070b92a578e1b634db88a6887844c91a13" -dependencies = [ - "async-stream", - "async-trait", - "axum 0.6.20", - "base64 0.21.7", - "bytes", - "h2 0.3.26", - "http 0.2.12", - "http-body 0.4.6", - "hyper 0.14.30", - "hyper-timeout 0.4.1", - "percent-encoding", - "pin-project", - "prost", - "tokio", - "tokio-stream", - "tower", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "tonic-build" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "be4ef6dd70a610078cb4e338a0f79d06bc759ff1b22d2120c2ff02ae264ba9c2" -dependencies = [ - "prettyplease", - "proc-macro2", - "prost-build", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "tower" -version = "0.4.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" -dependencies = [ - "futures-core", - "futures-util", - "hdrhistogram", - "indexmap 1.9.3", - "pin-project", - "pin-project-lite", - "rand", - "slab", - "tokio", - "tokio-util", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "tower-http" -version = "0.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5" -dependencies = [ - "bitflags 2.6.0", - "bytes", - "futures-util", - "http 1.1.0", - "http-body 1.0.1", - "http-body-util", - "iri-string", - "pin-project-lite", - "tower", - "tower-layer", - "tower-service", - "tracing", -] - -[[package]] -name = "tower-layer" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" - -[[package]] -name = "tower-service" -version = "0.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" - -[[package]] -name = "tracing" -version = "0.1.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" -dependencies = [ - "log", - "pin-project-lite", - "tracing-attributes", - "tracing-core", -] - -[[package]] -name = "tracing-attributes" -version = "0.1.27" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "tracing-core" -version = "0.1.32" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" -dependencies = [ - "once_cell", -] - -[[package]] -name = "tree-deserializer" -version = "0.9.0" -source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" -dependencies = [ - "ic-crypto-tree-hash", - "leb128", - "serde", -] - -[[package]] -name = "trustworthy-node-metrics" -version = "0.5.5" -dependencies = [ - "anyhow", - "candid", - "chrono", - "dfn_core", - "futures", - "ic-base-types", - "ic-cdk 0.16.0", - "ic-cdk-macros 0.16.0", - "ic-cdk-timers 0.10.0", - "ic-management-canister-types", - "ic-nns-common", - "ic-nns-constants", - "ic-nns-governance-api", - "ic-protobuf", - "ic-registry-keys", - "ic-stable-structures", - "itertools 0.13.0", - "num-traits", - "rust_decimal", - "rust_decimal_macros", - "trustworthy-node-metrics-types", -] - -[[package]] -name = "trustworthy-node-metrics-types" -version = "0.5.5" -dependencies = [ - "candid", - "dfn_core", - "ic-management-canister-types", - "ic-nns-governance-api", - "ic-protobuf", - "ic-stable-structures", - "serde", - "serde_json", -] - -[[package]] -name = "try-lock" -version = "0.2.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" - -[[package]] -name = "typed-arena" -version = "2.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a" - -[[package]] -name = "typeid" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "059d83cc991e7a42fc37bd50941885db0888e34209f8cfd9aab07ddec03bc9cf" - -[[package]] -name = "typenum" -version = "1.17.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" - -[[package]] -name = "ucd-trie" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" - -[[package]] -name = "unicode-bidi" -version = "0.3.15" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" - -[[package]] -name = "unicode-ident" -version = "1.0.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" - -[[package]] -name = "unicode-normalization" -version = "0.1.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" -dependencies = [ - "tinyvec", -] - -[[package]] -name = "unicode-segmentation" -version = "1.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" - -[[package]] -name = "unicode-width" -version = "0.1.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" - -[[package]] -name = "unsafe-libyaml" -version = "0.2.11" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" - -[[package]] -name = "untrusted" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" - -[[package]] -name = "url" -version = "2.5.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" -dependencies = [ - "form_urlencoded", - "idna 0.5.0", - "percent-encoding", - "serde", -] - -[[package]] -name = "urlencoding" -version = "2.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" - -[[package]] -name = "utf16_iter" -version = "1.0.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" - -[[package]] -name = "utf8-width" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86bd8d4e895da8537e5315b8254664e6b769c4ff3db18321b297a1e7004392e3" - -[[package]] -name = "utf8_iter" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" - -[[package]] -name = "utf8parse" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" - -[[package]] -name = "uuid" -version = "1.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314" -dependencies = [ - "getrandom", - "serde", -] - -[[package]] -name = "version_check" -version = "0.9.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" - -[[package]] -name = "wait-timeout" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" -dependencies = [ - "libc", -] - -[[package]] -name = "walkdir" -version = "2.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" -dependencies = [ - "same-file", - "winapi-util", -] - -[[package]] -name = "walrus" -version = "0.21.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "467611cafbc8a84834b77d2b4bb191fd2f5769752def8340407e924390c6883b" -dependencies = [ - "anyhow", - "gimli 0.26.2", - "id-arena", - "leb128", - "log", - "walrus-macro", - "wasm-encoder", - "wasmparser", -] - -[[package]] -name = "walrus-macro" -version = "0.19.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a6e5bd22c71e77d60140b0bd5be56155a37e5bd14e24f5f87298040d0cc40d7" -dependencies = [ - "heck 0.3.3", - "proc-macro2", - "quote", - "syn 1.0.109", -] - -[[package]] -name = "want" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" -dependencies = [ - "try-lock", -] - -[[package]] -name = "wasi" -version = "0.11.0+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" - -[[package]] -name = "wasm-bindgen" -version = "0.2.92" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" -dependencies = [ - "cfg-if", - "wasm-bindgen-macro", -] - -[[package]] -name = "wasm-bindgen-backend" -version = "0.2.92" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" -dependencies = [ - "bumpalo", - "log", - "once_cell", - "proc-macro2", - "quote", - "syn 2.0.77", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-futures" -version = "0.4.42" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" -dependencies = [ - "cfg-if", - "js-sys", - "wasm-bindgen", - "web-sys", -] - -[[package]] -name = "wasm-bindgen-macro" -version = "0.2.92" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" -dependencies = [ - "quote", - "wasm-bindgen-macro-support", -] - -[[package]] -name = "wasm-bindgen-macro-support" -version = "0.2.92" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", - "wasm-bindgen-backend", - "wasm-bindgen-shared", -] - -[[package]] -name = "wasm-bindgen-shared" -version = "0.2.92" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" - -[[package]] -name = "wasm-encoder" -version = "0.212.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "501940df4418b8929eb6d52f1aade1fdd15a5b86c92453cb696e3c906bd3fc33" -dependencies = [ - "leb128", -] - -[[package]] -name = "wasm-streams" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b65dc4c90b63b118468cf747d8bf3566c1913ef60be765b5730ead9e0a3ba129" -dependencies = [ - "futures-util", - "js-sys", - "wasm-bindgen", - "wasm-bindgen-futures", - "web-sys", -] - -[[package]] -name = "wasmparser" -version = "0.212.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d28bc49ba1e5c5b61ffa7a2eace10820443c4b7d1c0b144109261d14570fdf8" -dependencies = [ - "ahash 0.8.11", - "bitflags 2.6.0", - "hashbrown 0.14.5", - "indexmap 2.5.0", - "semver", - "serde", -] - -[[package]] -name = "web-sys" -version = "0.3.69" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" -dependencies = [ - "js-sys", - "wasm-bindgen", -] - -[[package]] -name = "webpki-roots" -version = "0.26.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd7c23921eeb1713a4e851530e9b9756e4fb0e89978582942612524cf09f01cd" -dependencies = [ - "rustls-pki-types", -] - -[[package]] -name = "which" -version = "4.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" -dependencies = [ - "either", - "home", - "once_cell", - "rustix", -] - -[[package]] -name = "winapi" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" -dependencies = [ - "winapi-i686-pc-windows-gnu", - "winapi-x86_64-pc-windows-gnu", -] - -[[package]] -name = "winapi-i686-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" - -[[package]] -name = "winapi-util" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" -dependencies = [ - "windows-sys 0.59.0", -] - -[[package]] -name = "winapi-x86_64-pc-windows-gnu" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" - -[[package]] -name = "windows-core" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-registry" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" -dependencies = [ - "windows-result", - "windows-strings", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-result" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-strings" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" -dependencies = [ - "windows-result", - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-sys" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", -] - -[[package]] -name = "windows-sys" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" -dependencies = [ - "windows-targets 0.48.5", -] - -[[package]] -name = "windows-sys" -version = "0.52.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-sys" -version = "0.59.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" -dependencies = [ - "windows-targets 0.52.6", -] - -[[package]] -name = "windows-targets" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" -dependencies = [ - "windows_aarch64_gnullvm 0.48.5", - "windows_aarch64_msvc 0.48.5", - "windows_i686_gnu 0.48.5", - "windows_i686_msvc 0.48.5", - "windows_x86_64_gnu 0.48.5", - "windows_x86_64_gnullvm 0.48.5", - "windows_x86_64_msvc 0.48.5", -] - -[[package]] -name = "windows-targets" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" -dependencies = [ - "windows_aarch64_gnullvm 0.52.6", - "windows_aarch64_msvc 0.52.6", - "windows_i686_gnu 0.52.6", - "windows_i686_gnullvm", - "windows_i686_msvc 0.52.6", - "windows_x86_64_gnu 0.52.6", - "windows_x86_64_gnullvm 0.52.6", - "windows_x86_64_msvc 0.52.6", -] - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" - -[[package]] -name = "windows_i686_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" - -[[package]] -name = "windows_i686_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" - -[[package]] -name = "windows_i686_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" - -[[package]] -name = "windows_i686_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" - -[[package]] -name = "windows_i686_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" - -[[package]] -name = "windows_i686_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" - -[[package]] -name = "windows_i686_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.48.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.52.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" - -[[package]] -name = "winnow" -version = "0.5.40" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" -dependencies = [ - "memchr", -] - -[[package]] -name = "wiremock" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fff469918e7ca034884c7fd8f93fe27bacb7fcb599fd879df6c7b429a29b646" -dependencies = [ - "assert-json-diff", - "async-trait", - "base64 0.22.1", - "deadpool", - "futures", - "http 1.1.0", - "http-body-util", - "hyper 1.4.1", - "hyper-util", - "log", - "once_cell", - "regex", - "serde", - "serde_json", - "tokio", - "url", -] - -[[package]] -name = "write16" -version = "1.0.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" - -[[package]] -name = "writeable" -version = "0.5.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" - -[[package]] -name = "wsl" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8dab7ac864710bdea6594becbea5b5050333cf34fefb0dc319567eb347950d4" - -[[package]] -name = "wyz" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" -dependencies = [ - "tap", -] - -[[package]] -name = "x509-parser" -version = "0.16.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcbc162f30700d6f3f82a24bf7cc62ffe7caea42c0b2cba8bf7f3ae50cf51f69" -dependencies = [ - "asn1-rs", - "data-encoding", - "der-parser", - "lazy_static", - "nom", - "oid-registry", - "rusticata-macros", - "thiserror", - "time", -] - -[[package]] -name = "xattr" -version = "1.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f" -dependencies = [ - "libc", - "linux-raw-sys", - "rustix", -] - -[[package]] -name = "xz2" -version = "0.1.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2" -dependencies = [ - "lzma-sys", -] - -[[package]] -name = "yansi" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" - -[[package]] -name = "yansi" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" - -[[package]] -name = "yoke" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" -dependencies = [ - "serde", - "stable_deref_trait", - "yoke-derive", - "zerofrom", -] - -[[package]] -name = "yoke-derive" -version = "0.7.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", - "synstructure", -] - -[[package]] -name = "zerocopy" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" -dependencies = [ - "byteorder", - "zerocopy-derive", -] - -[[package]] -name = "zerocopy-derive" -version = "0.7.35" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "zerofrom" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" -dependencies = [ - "zerofrom-derive", -] - -[[package]] -name = "zerofrom-derive" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", - "synstructure", -] - -[[package]] -name = "zeroize" -version = "1.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" -dependencies = [ - "zeroize_derive", -] - -[[package]] -name = "zeroize_derive" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "zerovec" -version = "0.10.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" -dependencies = [ - "yoke", - "zerofrom", - "zerovec-derive", -] - -[[package]] -name = "zerovec-derive" -version = "0.10.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.77", -] - -[[package]] -name = "zipsign-api" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6413a546ada9dbcd0b9a3e0b0880581279e35047bce9797e523b3408e1df607c" -dependencies = [ - "base64 0.22.1", - "ed25519-dalek", - "thiserror", -] From 1244c2318132d919d13628337d5dcedc96ffec35 Mon Sep 17 00:00:00 2001 From: Pietro Date: Wed, 2 Oct 2024 16:54:54 +0200 Subject: [PATCH 12/16] add cargo lock --- Cargo.lock | 9443 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 9443 insertions(+) create mode 100644 Cargo.lock diff --git a/Cargo.lock b/Cargo.lock new file mode 100644 index 000000000..6e1621989 --- /dev/null +++ b/Cargo.lock @@ -0,0 +1,9443 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "actix-codec" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f7b0a21988c1bf877cf4759ef5ddaac04c1c9fe808c9142ecb78ba97d97a28a" +dependencies = [ + "bitflags 2.6.0", + "bytes", + "futures-core", + "futures-sink", + "memchr", + "pin-project-lite", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "actix-http" +version = "3.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d48f96fc3003717aeb9856ca3d02a8c7de502667ad76eeacd830b48d2e91fac4" +dependencies = [ + "actix-codec", + "actix-rt", + "actix-service", + "actix-utils", + "ahash 0.8.11", + "base64 0.22.1", + "bitflags 2.6.0", + "bytes", + "bytestring", + "derive_more", + "encoding_rs", + "flate2", + "futures-core", + "http 0.2.12", + "httparse", + "httpdate", + "itoa", + "language-tags", + "local-channel", + "mime", + "percent-encoding", + "pin-project-lite", + "rand", + "sha1", + "smallvec", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "actix-macros" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e01ed3140b2f8d422c68afa1ed2e85d996ea619c988ac834d255db32138655cb" +dependencies = [ + "quote", + "syn 2.0.79", +] + +[[package]] +name = "actix-router" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13d324164c51f63867b57e73ba5936ea151b8a41a1d23d1031eeb9f70d0236f8" +dependencies = [ + "bytestring", + "cfg-if", + "http 0.2.12", + "regex-lite", + "serde", + "tracing", +] + +[[package]] +name = "actix-rt" +version = "2.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24eda4e2a6e042aa4e55ac438a2ae052d3b5da0ecf83d7411e1a368946925208" +dependencies = [ + "actix-macros", + "futures-core", + "tokio", +] + +[[package]] +name = "actix-server" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ca2549781d8dd6d75c40cf6b6051260a2cc2f3c62343d761a969a0640646894" +dependencies = [ + "actix-rt", + "actix-service", + "actix-utils", + "futures-core", + "futures-util", + "mio", + "socket2", + "tokio", + "tracing", +] + +[[package]] +name = "actix-service" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b894941f818cfdc7ccc4b9e60fa7e53b5042a2e8567270f9147d5591893373a" +dependencies = [ + "futures-core", + "paste", + "pin-project-lite", +] + +[[package]] +name = "actix-utils" +version = "3.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88a1dcdff1466e3c2488e1cb5c36a71822750ad43839937f85d2f4d9f8b705d8" +dependencies = [ + "local-waker", + "pin-project-lite", +] + +[[package]] +name = "actix-web" +version = "4.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9180d76e5cc7ccbc4d60a506f2c727730b154010262df5b910eb17dbe4b8cb38" +dependencies = [ + "actix-codec", + "actix-http", + "actix-macros", + "actix-router", + "actix-rt", + "actix-server", + "actix-service", + "actix-utils", + "actix-web-codegen", + "ahash 0.8.11", + "bytes", + "bytestring", + "cfg-if", + "derive_more", + "encoding_rs", + "futures-core", + "futures-util", + "impl-more", + "itoa", + "language-tags", + "log", + "mime", + "once_cell", + "pin-project-lite", + "regex-lite", + "serde", + "serde_json", + "serde_urlencoded", + "smallvec", + "socket2", + "time", + "url", +] + +[[package]] +name = "actix-web-codegen" +version = "4.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f591380e2e68490b5dfaf1dd1aa0ebe78d84ba7067078512b4ea6e4492d622b8" +dependencies = [ + "actix-router", + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "addr2line" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f5fb1d8e4442bd405fdfd1dacb42792696b0cf9cb15882e5d097b742a676d375" +dependencies = [ + "gimli 0.31.0", +] + +[[package]] +name = "adler2" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627" + +[[package]] +name = "adler32" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aae1277d39aeec15cb388266ecc24b11c80469deae6067e17a1a7aa9e5c1f234" + +[[package]] +name = "ahash" +version = "0.7.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "891477e0c6a8957309ee5c45a6368af3ae14bb510732d2684ffa19af310920f9" +dependencies = [ + "getrandom", + "once_cell", + "version_check", +] + +[[package]] +name = "ahash" +version = "0.8.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011" +dependencies = [ + "cfg-if", + "getrandom", + "once_cell", + "version_check", + "zerocopy", +] + +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + +[[package]] +name = "alloc-no-stdlib" +version = "2.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc7bb162ec39d46ab1ca8c77bf72e890535becd1751bb45f64c597edb4c8c6b3" + +[[package]] +name = "alloc-stdlib" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94fb8275041c72129eb51b7d0322c29b8387a0386127718b096429201a5d6ece" +dependencies = [ + "alloc-no-stdlib", +] + +[[package]] +name = "allocator-api2" +version = "0.2.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f" + +[[package]] +name = "android-tzdata" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e999941b234f3131b00bc13c22d06e8c5ff726d1b6318ac7eb276997bbb4fef0" + +[[package]] +name = "android_system_properties" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311" +dependencies = [ + "libc", +] + +[[package]] +name = "anstream" +version = "0.6.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64e15c1ab1f89faffbf04a634d5e1962e9074f2741eef6d97f3c4e322426d526" +dependencies = [ + "anstyle", + "anstyle-parse", + "anstyle-query", + "anstyle-wincon", + "colorchoice", + "is_terminal_polyfill", + "utf8parse", +] + +[[package]] +name = "anstyle" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1" + +[[package]] +name = "anstyle-parse" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb47de1e80c2b463c735db5b217a0ddc39d612e7ac9e2e96a5aed1f57616c1cb" +dependencies = [ + "utf8parse", +] + +[[package]] +name = "anstyle-query" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d36fc52c7f6c869915e99412912f22093507da8d9e942ceaf66fe4b7c14422a" +dependencies = [ + "windows-sys 0.52.0", +] + +[[package]] +name = "anstyle-wincon" +version = "3.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5bf74e1b6e971609db8ca7a9ce79fd5768ab6ae46441c572e46cf596f59e57f8" +dependencies = [ + "anstyle", + "windows-sys 0.52.0", +] + +[[package]] +name = "anyhow" +version = "1.0.89" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86fdf8605db99b54d3cd748a44c6d04df638eb5dafb219b135d0149bd0db01f6" + +[[package]] +name = "arc-swap" +version = "1.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69f7f8c3906b62b754cd5326047894316021dcfe5a194c8ea52bdd94934a3457" + +[[package]] +name = "arrayvec" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" + +[[package]] +name = "arrayvec" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" + +[[package]] +name = "asn1-rs" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5493c3bedbacf7fd7382c6346bbd66687d12bbaad3a89a2d2c303ee6cf20b048" +dependencies = [ + "asn1-rs-derive", + "asn1-rs-impl", + "displaydoc", + "nom", + "num-traits", + "rusticata-macros", + "thiserror", + "time", +] + +[[package]] +name = "asn1-rs-derive" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", + "synstructure", +] + +[[package]] +name = "asn1-rs-impl" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "assert-json-diff" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "47e4f2b81832e72834d7518d8487a0396a28cc408186a2e8854c0f98011faf12" +dependencies = [ + "serde", + "serde_json", +] + +[[package]] +name = "assert_cmd" +version = "2.0.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc1835b7f27878de8525dc71410b5a31cdcc5f230aed5ba5df968e09c201b23d" +dependencies = [ + "anstyle", + "bstr", + "doc-comment", + "libc", + "predicates", + "predicates-core", + "predicates-tree", + "wait-timeout", +] + +[[package]] +name = "async-lock" +version = "3.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18" +dependencies = [ + "event-listener", + "event-listener-strategy", + "pin-project-lite", +] + +[[package]] +name = "async-recursion" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "async-stream" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b5a71a6f37880a80d1d7f19efd781e4b5de42c88f0722cc13bcb6cc2cfe8476" +dependencies = [ + "async-stream-impl", + "futures-core", + "pin-project-lite", +] + +[[package]] +name = "async-stream-impl" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "async-trait" +version = "0.1.83" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "atomic-waker" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" + +[[package]] +name = "atty" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" +dependencies = [ + "hermit-abi 0.1.19", + "libc", + "winapi", +] + +[[package]] +name = "autocfg" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" + +[[package]] +name = "axum" +version = "0.6.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b829e4e32b91e643de6eafe82b1d90675f5874230191a4ffbc1b336dec4d6bf" +dependencies = [ + "async-trait", + "axum-core 0.3.4", + "bitflags 1.3.2", + "bytes", + "futures-util", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.30", + "itoa", + "matchit", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", + "serde", + "sync_wrapper 0.1.2", + "tower 0.4.13", + "tower-layer", + "tower-service", +] + +[[package]] +name = "axum" +version = "0.7.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "504e3947307ac8326a5437504c517c4b56716c9d98fac0028c2acc7ca47d70ae" +dependencies = [ + "async-trait", + "axum-core 0.4.5", + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "hyper 1.4.1", + "hyper-util", + "itoa", + "matchit", + "memchr", + "mime", + "percent-encoding", + "pin-project-lite", + "rustversion", + "serde", + "serde_json", + "serde_path_to_error", + "serde_urlencoded", + "sync_wrapper 1.0.1", + "tokio", + "tower 0.5.1", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "axum-core" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "759fa577a247914fd3f7f76d62972792636412fbfd634cd452f6a385a74d2d2c" +dependencies = [ + "async-trait", + "bytes", + "futures-util", + "http 0.2.12", + "http-body 0.4.6", + "mime", + "rustversion", + "tower-layer", + "tower-service", +] + +[[package]] +name = "axum-core" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199" +dependencies = [ + "async-trait", + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "mime", + "pin-project-lite", + "rustversion", + "sync_wrapper 1.0.1", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "axum-otel-metrics" +version = "0.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11b5bd67776dca9326650fc2e2ddd15ddaca16a3c8e80a9a874ba111afab82bd" +dependencies = [ + "axum 0.7.7", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "opentelemetry", + "opentelemetry-prometheus", + "opentelemetry-semantic-conventions", + "opentelemetry_sdk", + "pin-project-lite", + "prometheus", + "tower 0.4.13", +] + +[[package]] +name = "backoff" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b62ddb9cb1ec0a098ad4bbf9344d0713fa193ae1a80af55febcff2627b6a00c1" +dependencies = [ + "futures-core", + "getrandom", + "instant", + "pin-project-lite", + "rand", + "tokio", +] + +[[package]] +name = "backon" +version = "0.4.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d67782c3f868daa71d3533538e98a8e13713231969def7536e8039606fc46bf0" +dependencies = [ + "fastrand", + "futures-core", + "pin-project", + "tokio", +] + +[[package]] +name = "backtrace" +version = "0.3.74" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" +dependencies = [ + "addr2line", + "cfg-if", + "libc", + "miniz_oxide", + "object", + "rustc-demangle", + "windows-targets 0.52.6", +] + +[[package]] +name = "base16ct" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c7f02d4ea65f2c1853089ffd8d2787bdbc63de2f0d29dedbcf8ccdfa0ccd4cf" + +[[package]] +name = "base32" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23ce669cd6c8588f79e15cf450314f9638f967fc5770ff1c7c1deb0925ea7cfa" + +[[package]] +name = "base64" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" + +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + +[[package]] +name = "base64" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" + +[[package]] +name = "base64ct" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c3c1a368f70d6cf7302d78f8f7093da241fb8e8807c05cc9e51a125895a6d5b" + +[[package]] +name = "bincode" +version = "1.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1f45e9417d87227c7a56d22e471c6206462cba514c7590c09aff4cf6d1ddcad" +dependencies = [ + "serde", +] + +[[package]] +name = "binread" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16598dfc8e6578e9b597d9910ba2e73618385dc9f4b1d43dd92c349d6be6418f" +dependencies = [ + "binread_derive", + "lazy_static", + "rustversion", +] + +[[package]] +name = "binread_derive" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d9672209df1714ee804b1f4d4f68c8eb2a90b1f7a07acf472f88ce198ef1fed" +dependencies = [ + "either", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "bit-vec" +version = "0.6.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb" + +[[package]] +name = "bitflags" +version = "1.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" + +[[package]] +name = "bitflags" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" + +[[package]] +name = "bitvec" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bc2832c24239b0141d5674bb9174f9d68a8b5b3f2753311927c172ca46f7e9c" +dependencies = [ + "funty", + "radium", + "tap", + "wyz", +] + +[[package]] +name = "block-buffer" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4152116fd6e9dadb291ae18fc1ec3575ed6d84c29642d97890f4b4a3417297e4" +dependencies = [ + "generic-array", +] + +[[package]] +name = "block-buffer" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71" +dependencies = [ + "generic-array", +] + +[[package]] +name = "borsh" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a6362ed55def622cddc70a4746a68554d7b687713770de539e59a739b249f8ed" +dependencies = [ + "borsh-derive", + "cfg_aliases", +] + +[[package]] +name = "borsh-derive" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3ef8005764f53cd4dca619f5bf64cafd4664dada50ece25e4d81de54c80cc0b" +dependencies = [ + "once_cell", + "proc-macro-crate", + "proc-macro2", + "quote", + "syn 2.0.79", + "syn_derive", +] + +[[package]] +name = "brotli" +version = "6.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74f7971dbd9326d58187408ab83117d8ac1bb9c17b085fdacd1cf2f598719b6b" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", + "brotli-decompressor", +] + +[[package]] +name = "brotli-decompressor" +version = "4.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a45bd2e4095a8b518033b128020dd4a55aab1c0a381ba4404a472630f4bc362" +dependencies = [ + "alloc-no-stdlib", + "alloc-stdlib", +] + +[[package]] +name = "bstr" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "40723b8fb387abc38f4f4a37c09073622e41dd12327033091ef8950659e6dc0c" +dependencies = [ + "memchr", + "regex-automata", + "serde", +] + +[[package]] +name = "build-info" +version = "0.0.27" +source = "git+https://github.com/dfinity-lab/build-info?rev=701a696844fba5c87df162fbbc1ccef96f27c9d7#701a696844fba5c87df162fbbc1ccef96f27c9d7" +dependencies = [ + "build-info-common", + "build-info-proc", + "lazy_static", + "proc-macro-hack", +] + +[[package]] +name = "build-info-build" +version = "0.0.27" +source = "git+https://github.com/dfinity-lab/build-info?rev=701a696844fba5c87df162fbbc1ccef96f27c9d7#701a696844fba5c87df162fbbc1ccef96f27c9d7" +dependencies = [ + "anyhow", + "base64 0.13.1", + "bincode", + "build-info-common", + "cargo_metadata", + "glob", + "lazy_static", + "pretty_assertions", + "rustc_version", + "serde_json", + "xz2", +] + +[[package]] +name = "build-info-common" +version = "0.0.27" +source = "git+https://github.com/dfinity-lab/build-info?rev=701a696844fba5c87df162fbbc1ccef96f27c9d7#701a696844fba5c87df162fbbc1ccef96f27c9d7" +dependencies = [ + "derive_more", + "semver", + "serde", +] + +[[package]] +name = "build-info-proc" +version = "0.0.27" +source = "git+https://github.com/dfinity-lab/build-info?rev=701a696844fba5c87df162fbbc1ccef96f27c9d7#701a696844fba5c87df162fbbc1ccef96f27c9d7" +dependencies = [ + "anyhow", + "base64 0.13.1", + "bincode", + "build-info-common", + "num-bigint 0.4.6", + "num-traits", + "proc-macro-error", + "proc-macro-hack", + "proc-macro2", + "quote", + "serde_json", + "syn 1.0.109", + "xz2", +] + +[[package]] +name = "bumpalo" +version = "3.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c" + +[[package]] +name = "by_address" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64fa3c856b712db6612c019f14756e64e4bcea13337a6b33b696333a9eaa2d06" + +[[package]] +name = "byte-unit" +version = "4.0.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da78b32057b8fdfc352504708feeba7216dcd65a2c9ab02978cbd288d1279b6c" +dependencies = [ + "serde", + "utf8-width", +] + +[[package]] +name = "bytecheck" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23cdc57ce23ac53c931e88a43d06d070a6fd142f2617be5855eb75efc9beb1c2" +dependencies = [ + "bytecheck_derive", + "ptr_meta", + "simdutf8", +] + +[[package]] +name = "bytecheck_derive" +version = "0.6.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3db406d29fbcd95542e92559bed4d8ad92636d1ca8b3b72ede10b4bcc010e659" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "bytecount" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5ce89b21cab1437276d2650d57e971f9d548a2d9037cc231abdc0562b97498ce" + +[[package]] +name = "byteorder" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" + +[[package]] +name = "bytes" +version = "1.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "428d9aa8fbc0670b7b8d6030a7fadd0f86151cae55e4dbbece15f3780a3dfaf3" + +[[package]] +name = "bytestring" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "74d80203ea6b29df88012294f62733de21cfeab47f17b41af3a38bc30a03ee72" +dependencies = [ + "bytes", +] + +[[package]] +name = "cached" +version = "0.49.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e8e463fceca5674287f32d252fb1d94083758b8709c160efae66d263e5f4eba" +dependencies = [ + "hashbrown 0.14.5", + "instant", + "once_cell", + "thiserror", +] + +[[package]] +name = "cached" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8466736fe5dbcaf8b8ee24f9bbefe43c884dc3e9ff7178da70f55bffca1133c" +dependencies = [ + "ahash 0.8.11", + "hashbrown 0.14.5", + "instant", + "once_cell", + "thiserror", +] + +[[package]] +name = "camino" +version = "1.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b96ec4966b5813e2c0507c1f86115c8c5abaadc3980879c3424042a02fd1ad3" +dependencies = [ + "serde", +] + +[[package]] +name = "candid" +version = "0.10.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c30ee7f886f296b6422c0ff017e89dd4f831521dfdcc76f3f71aae1ce817222" +dependencies = [ + "anyhow", + "binread", + "byteorder", + "candid_derive", + "hex", + "ic_principal", + "leb128", + "num-bigint 0.4.6", + "num-traits", + "paste", + "pretty", + "serde", + "serde_bytes", + "stacker", + "thiserror", +] + +[[package]] +name = "candid_derive" +version = "0.6.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3de398570c386726e7a59d9887b68763c481477f9a043fb998a2e09d428df1a9" +dependencies = [ + "lazy_static", + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "canister-log-fetcher" +version = "0.5.5" +dependencies = [ + "anyhow", + "clap 4.5.19", + "humantime", + "log", + "pretty_env_logger", + "reqwest", + "serde", + "serde_json", + "tokio", + "url", +] + +[[package]] +name = "cargo-platform" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24b1f0365a6c6bb4020cd05806fd0d33c44d38046b8bd7f0e40814b9763cabfc" +dependencies = [ + "serde", +] + +[[package]] +name = "cargo_metadata" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4acbb09d9ee8e23699b9634375c72795d095bf268439da88562cf9b501f181fa" +dependencies = [ + "camino", + "cargo-platform", + "semver", + "serde", + "serde_json", +] + +[[package]] +name = "cc" +version = "1.1.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "812acba72f0a070b003d3697490d2b55b837230ae7c6c6497f05cc2ddbb8d938" +dependencies = [ + "shlex", +] + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "cfg_aliases" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724" + +[[package]] +name = "chrono" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +dependencies = [ + "android-tzdata", + "iana-time-zone", + "js-sys", + "num-traits", + "serde", + "wasm-bindgen", + "windows-targets 0.52.6", +] + +[[package]] +name = "ciborium" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42e69ffd6f0917f5c029256a24d0161db17cea3997d185db0d35926308770f0e" +dependencies = [ + "ciborium-io", + "ciborium-ll", + "serde", +] + +[[package]] +name = "ciborium-io" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05afea1e0a06c9be33d539b876f1ce3692f4afea2cb41f740e7743225ed1c757" + +[[package]] +name = "ciborium-ll" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57663b653d948a338bfb3eeba9bb2fd5fcfaecb9e199e87e1eda4d9e8b240fd9" +dependencies = [ + "ciborium-io", + "half 2.4.1", +] + +[[package]] +name = "clap" +version = "3.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123" +dependencies = [ + "atty", + "bitflags 1.3.2", + "clap_derive 3.2.25", + "clap_lex 0.2.4", + "indexmap 1.9.3", + "once_cell", + "strsim 0.10.0", + "termcolor", + "textwrap", +] + +[[package]] +name = "clap" +version = "4.5.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7be5744db7978a28d9df86a214130d106a89ce49644cbc4e3f0c22c3fba30615" +dependencies = [ + "clap_builder", + "clap_derive 4.5.18", +] + +[[package]] +name = "clap-num" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e063d263364859dc54fb064cedb7c122740cd4733644b14b176c097f51e8ab7" +dependencies = [ + "num-traits", +] + +[[package]] +name = "clap_builder" +version = "4.5.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5fbc17d3ef8278f55b282b2a2e75ae6f6c7d4bb70ed3d0382375104bfafdb4b" +dependencies = [ + "anstream", + "anstyle", + "clap_lex 0.7.2", + "strsim 0.11.1", + "terminal_size", +] + +[[package]] +name = "clap_complete" +version = "4.5.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb31f1f3041ef3636e425b09e588911b72fc5513b2428b5b7df130f497e6a728" +dependencies = [ + "clap 4.5.19", +] + +[[package]] +name = "clap_derive" +version = "3.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae6371b8bdc8b7d3959e9cf7b22d4435ef3e79e138688421ec654acf8c81b008" +dependencies = [ + "heck 0.4.1", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "clap_derive" +version = "4.5.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab" +dependencies = [ + "heck 0.5.0", + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "clap_lex" +version = "0.2.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2850f2f5a82cbf437dd5af4d49848fbdfc27c157c3d010345776f952765261c5" +dependencies = [ + "os_str_bytes", +] + +[[package]] +name = "clap_lex" +version = "0.7.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1462739cb27611015575c0c11df5df7601141071f07518d56fcc1be504cbec97" + +[[package]] +name = "clio" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b7fc6734af48458f72f5a3fa7b840903606427d98a710256e808f76a965047d9" +dependencies = [ + "cfg-if", + "clap 4.5.19", + "is-terminal", + "libc", + "tempfile", + "walkdir", + "windows-sys 0.42.0", +] + +[[package]] +name = "colorchoice" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3fd119d74b830634cea2a0f58bbd0d54540518a14397557951e79340abc28c0" + +[[package]] +name = "colored" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8" +dependencies = [ + "lazy_static", + "windows-sys 0.48.0", +] + +[[package]] +name = "comfy-table" +version = "7.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b34115915337defe99b2aff5c2ce6771e5fbc4079f4b506301f5cf394c8452f7" +dependencies = [ + "crossterm", + "strum 0.26.3", + "strum_macros 0.26.4", + "unicode-width", +] + +[[package]] +name = "comparable" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eb513ee8037bf08c5270ecefa48da249f4c58e57a71ccfce0a5b0877d2a20eb2" +dependencies = [ + "comparable_derive", + "comparable_helper", + "pretty_assertions", + "serde", +] + +[[package]] +name = "comparable_derive" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a54b9c40054eb8999c5d1d36fdc90e4e5f7ff0d1d9621706f360b3cbc8beb828" +dependencies = [ + "convert_case 0.4.0", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "comparable_helper" +version = "0.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb5437e327e861081c91270becff184859f706e3e50f5301a9d4dc8eb50752c3" +dependencies = [ + "convert_case 0.6.0", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "concurrent-queue" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "config-writer-common" +version = "0.5.5" +dependencies = [ + "crossbeam", + "crossbeam-channel", + "erased-serde 0.4.5", + "ic-sys", + "ic-types", + "regex", + "serde", + "serde_json", + "service-discovery", + "slog", +] + +[[package]] +name = "console" +version = "0.15.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e1f83fc076bd6dd27517eacdf25fef6c4dfe5f1d7448bafaaf3a26f13b5e4eb" +dependencies = [ + "encode_unicode", + "lazy_static", + "libc", + "unicode-width", + "windows-sys 0.52.0", +] + +[[package]] +name = "const-oid" +version = "0.9.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" + +[[package]] +name = "convert_case" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6245d59a3e82a7fc217c5828a6692dbc6dfb63a0c8c90495621f7b9d79704a0e" + +[[package]] +name = "convert_case" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec182b0ca2f35d8fc196cf3404988fd8b8c739a4d270ff118a398feb0cbec1ca" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "core-foundation" +version = "0.9.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "core-foundation-sys" +version = "0.8.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" + +[[package]] +name = "core2" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b49ba7ef1ad6107f8824dbe97de947cbaac53c44e7f9756a1fba0d37c1eec505" +dependencies = [ + "memchr", +] + +[[package]] +name = "cpufeatures" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0" +dependencies = [ + "libc", +] + +[[package]] +name = "crc32fast" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "crossbeam" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8" +dependencies = [ + "crossbeam-channel", + "crossbeam-deque", + "crossbeam-epoch", + "crossbeam-queue", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-channel" +version = "0.5.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-deque" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +dependencies = [ + "crossbeam-epoch", + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-epoch" +version = "0.9.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-queue" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35" +dependencies = [ + "crossbeam-utils", +] + +[[package]] +name = "crossbeam-utils" +version = "0.8.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80" + +[[package]] +name = "crossterm" +version = "0.27.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f476fe445d41c9e991fd07515a6f463074b782242ccf4a5b7b1d1012e70824df" +dependencies = [ + "bitflags 2.6.0", + "crossterm_winapi", + "libc", + "parking_lot", + "winapi", +] + +[[package]] +name = "crossterm_winapi" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "acdd7c62a3665c7f6830a51635d9ac9b23ed385797f70a83bb8bafe9c572ab2b" +dependencies = [ + "winapi", +] + +[[package]] +name = "crunchy" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" + +[[package]] +name = "crypto-bigint" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" +dependencies = [ + "generic-array", + "rand_core", + "subtle", + "zeroize", +] + +[[package]] +name = "crypto-common" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bfb12502f3fc46cca1bb51ac28df9d618d813cdc3d2f25b9fe775a34af26bb3" +dependencies = [ + "generic-array", + "typenum", +] + +[[package]] +name = "cryptoki" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60d645cc2c5faf466571c0c752d39d8fbc2746773b2f043ac8f9cd73bec55db9" +dependencies = [ + "bitflags 1.3.2", + "cryptoki-sys", + "libloading 0.7.4", + "log", + "paste", + "secrecy", +] + +[[package]] +name = "cryptoki-sys" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "750380200f47d4ff677be725b6e0d78b590e1d0343573dcd4b62147f25dc6efa" +dependencies = [ + "libloading 0.7.4", +] + +[[package]] +name = "csv" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe" +dependencies = [ + "csv-core", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "csv-core" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5efa2b3d7902f4b634a20cae3c9c4e6209dc4779feb6863329607560143efa70" +dependencies = [ + "memchr", +] + +[[package]] +name = "curve25519-dalek" +version = "4.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97fb8b7c4503de7d6ae7b42ab72a5a59857b4c937ec27a3d4539dba95b5ab2be" +dependencies = [ + "cfg-if", + "cpufeatures", + "curve25519-dalek-derive", + "digest 0.10.7", + "fiat-crypto", + "group", + "rand_core", + "rustc_version", + "subtle", + "zeroize", +] + +[[package]] +name = "curve25519-dalek-derive" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "curve25519-dalek-ng" +version = "4.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c359b7249347e46fb28804470d071c921156ad62b3eef5d34e2ba867533dec8" +dependencies = [ + "byteorder", + "digest 0.9.0", + "rand_core", + "subtle-ng", + "zeroize", +] + +[[package]] +name = "custom_error" +version = "1.9.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f8a51dd197fa6ba5b4dc98a990a43cc13693c23eb0089ebb0fcc1f04152bca6" + +[[package]] +name = "cvt" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2ae9bf77fbf2d39ef573205d554d87e86c12f1994e9ea335b0651b9b278bcf1" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "cycles-minting-canister" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "base64 0.13.1", + "build-info", + "build-info-build", + "candid", + "dfn_candid", + "dfn_core", + "dfn_http_metrics", + "dfn_protobuf", + "ic-base-types", + "ic-certified-map", + "ic-crypto-getrandom-for-wasm", + "ic-crypto-tree-hash", + "ic-ledger-core", + "ic-management-canister-types", + "ic-metrics-encoder", + "ic-nervous-system-common", + "ic-nervous-system-common-build-metadata", + "ic-nervous-system-governance", + "ic-nns-common", + "ic-nns-constants", + "ic-protobuf", + "ic-types", + "ic-xrc-types", + "icp-ledger", + "icrc-ledger-types", + "lazy_static", + "on_wire", + "prost", + "rand", + "serde", + "serde_cbor", + "sha2 0.10.8", + "yansi 0.5.1", +] + +[[package]] +name = "darling" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a01d95850c592940db9b8194bc39f4bc0e89dee5c4265e4b1807c34a9aba453c" +dependencies = [ + "darling_core 0.13.4", + "darling_macro 0.13.4", +] + +[[package]] +name = "darling" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6f63b86c8a8826a49b8c21f08a2d07338eec8d900540f8630dc76284be802989" +dependencies = [ + "darling_core 0.20.10", + "darling_macro 0.20.10", +] + +[[package]] +name = "darling_core" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "859d65a907b6852c9361e3185c862aae7fafd2887876799fa55f5f99dc40d610" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim 0.10.0", + "syn 1.0.109", +] + +[[package]] +name = "darling_core" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95133861a8032aaea082871032f5815eb9e98cef03fa916ab4500513994df9e5" +dependencies = [ + "fnv", + "ident_case", + "proc-macro2", + "quote", + "strsim 0.11.1", + "syn 2.0.79", +] + +[[package]] +name = "darling_macro" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c972679f83bdf9c42bd905396b6c3588a843a17f0f16dfcfa3e2c5d57441835" +dependencies = [ + "darling_core 0.13.4", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "darling_macro" +version = "0.20.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" +dependencies = [ + "darling_core 0.20.10", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "dary_heap" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7762d17f1241643615821a8455a0b2c3e803784b058693d990b11f2dce25a0ca" + +[[package]] +name = "data-encoding" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2" + +[[package]] +name = "dbus" +version = "0.9.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bb21987b9fb1613058ba3843121dd18b163b254d8a6e797e144cbac14d96d1b" +dependencies = [ + "libc", + "libdbus-sys", + "winapi", +] + +[[package]] +name = "dbus-secret-service" +version = "4.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1caa0c241c01ad8d99a78d553567d38f873dd3ac16eca33a5370d650ab25584e" +dependencies = [ + "dbus", + "futures-util", + "num", + "once_cell", + "rand", +] + +[[package]] +name = "deadpool" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb84100978c1c7b37f09ed3ce3e5f843af02c2a2c431bae5b19230dad2c1b490" +dependencies = [ + "async-trait", + "deadpool-runtime", + "num_cpus", + "tokio", +] + +[[package]] +name = "deadpool-runtime" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "092966b41edc516079bdf31ec78a2e0588d1d0c08f78b91d8307215928642b2b" + +[[package]] +name = "decentralization" +version = "0.5.5" +dependencies = [ + "actix-web", + "ahash 0.8.11", + "anyhow", + "futures", + "ic-base-types", + "ic-management-types", + "indexmap 2.6.0", + "itertools 0.13.0", + "log", + "rand", + "rand_seeder", + "regex", + "serde", + "serde_json", + "strum_macros 0.26.4", + "tabular", + "tokio", +] + +[[package]] +name = "der" +version = "0.7.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f55bf8e7b65898637379c1b74eb1551107c8294ed26d855ceb9fd1a09cfc9bc0" +dependencies = [ + "const-oid", + "pem-rfc7468", + "zeroize", +] + +[[package]] +name = "der-parser" +version = "9.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5cd0a5c643689626bec213c4d8bd4d96acc8ffdb4ad4bb6bc16abf27d5f4b553" +dependencies = [ + "asn1-rs", + "displaydoc", + "nom", + "num-bigint 0.4.6", + "num-traits", + "rusticata-macros", +] + +[[package]] +name = "deranged" +version = "0.3.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b42b6fa04a440b495c8b04d0e71b707c585f83cb9cb28cf8cd0d976c315e31b4" +dependencies = [ + "powerfmt", + "serde", +] + +[[package]] +name = "derive_more" +version = "0.99.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5f33878137e4dafd7fa914ad4e259e18a4e8e532b9617a2d0150262bf53abfce" +dependencies = [ + "convert_case 0.4.0", + "proc-macro2", + "quote", + "rustc_version", + "syn 2.0.79", +] + +[[package]] +name = "dfn_candid" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "dfn_core", + "ic-base-types", + "on_wire", + "serde", +] + +[[package]] +name = "dfn_core" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-base-types", + "on_wire", +] + +[[package]] +name = "dfn_http" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "dfn_candid", + "dfn_core", + "serde", + "serde_bytes", +] + +[[package]] +name = "dfn_http_metrics" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "dfn_candid", + "dfn_core", + "dfn_http", + "ic-canisters-http-types", + "ic-metrics-encoder", + "serde_bytes", +] + +[[package]] +name = "dfn_protobuf" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "on_wire", + "prost", +] + +[[package]] +name = "dialoguer" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "658bce805d770f407bc62102fca7c2c64ceef2fbcb2b8bd19d2765ce093980de" +dependencies = [ + "console", + "shell-words", + "tempfile", + "thiserror", + "zeroize", +] + +[[package]] +name = "diff" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "56254986775e3233ffa9c4d7d3faaf6d36a2c09d30b20687e9f88bc8bafc16c8" + +[[package]] +name = "difflib" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8" + +[[package]] +name = "digest" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3dd60d1080a57a05ab032377049e0591415d2b31afd7028356dbf3cc6dcb066" +dependencies = [ + "generic-array", +] + +[[package]] +name = "digest" +version = "0.10.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9ed9a281f7bc9b7576e61468ba615a66a5c8cfdff42420a70aa82701a3b1e292" +dependencies = [ + "block-buffer 0.10.4", + "const-oid", + "crypto-common", + "subtle", +] + +[[package]] +name = "dirs" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" +dependencies = [ + "dirs-sys", +] + +[[package]] +name = "dirs-next" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1" +dependencies = [ + "cfg-if", + "dirs-sys-next", +] + +[[package]] +name = "dirs-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" +dependencies = [ + "libc", + "option-ext", + "redox_users", + "windows-sys 0.48.0", +] + +[[package]] +name = "dirs-sys-next" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d" +dependencies = [ + "libc", + "redox_users", + "winapi", +] + +[[package]] +name = "displaydoc" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "doc-comment" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10" + +[[package]] +name = "dotenv" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77c90badedccf4105eca100756a0b1289e191f6fcbdadd3cee1d2f614f97da8f" + +[[package]] +name = "downcast" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1435fa1053d8b2fbbe9be7e97eca7f33d37b28409959813daefc1446a14247f1" + +[[package]] +name = "dre" +version = "0.5.5" +dependencies = [ + "actix-rt", + "anyhow", + "async-recursion", + "backon", + "candid", + "chrono", + "clap 4.5.19", + "clap-num", + "clap_complete", + "clio", + "colored", + "comfy-table", + "cryptoki", + "cycles-minting-canister", + "decentralization", + "dialoguer", + "dirs", + "dotenv", + "edit", + "flate2", + "fs-err", + "futures", + "futures-util", + "human_bytes", + "humantime", + "ic-base-types", + "ic-canister-client", + "ic-canister-client-sender", + "ic-canisters", + "ic-management-backend", + "ic-management-types", + "ic-nervous-system-clients", + "ic-nervous-system-root", + "ic-nns-common", + "ic-nns-constants", + "ic-nns-governance", + "ic-nns-governance-api", + "ic-protobuf", + "ic-registry-keys", + "ic-registry-local-registry", + "ic-registry-subnet-type", + "ic-sns-wasm", + "ic-sys", + "ic-types", + "indexmap 2.6.0", + "itertools 0.13.0", + "keyring", + "log", + "mockall", + "pretty_env_logger", + "prost", + "regex", + "registry-canister", + "reqwest", + "secrecy", + "self_update", + "serde", + "serde_json", + "serde_yaml", + "sha2 0.10.8", + "shlex", + "spinners", + "strum 0.26.3", + "tabled", + "tabular", + "tempfile", + "tokio", + "url", +] + +[[package]] +name = "dyn-clone" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0d6ef0072f8a535281e4876be788938b528e9a1d43900b82c2569af7da799125" + +[[package]] +name = "ecdsa" +version = "0.16.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee27f32b5c5292967d2d4a9d7f1e0b0aed2c15daded5a60300e4abb9d8020bca" +dependencies = [ + "der", + "digest 0.10.7", + "elliptic-curve", + "rfc6979", + "signature", + "spki", +] + +[[package]] +name = "ed25519" +version = "2.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" +dependencies = [ + "pkcs8", + "signature", +] + +[[package]] +name = "ed25519-consensus" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c8465edc8ee7436ffea81d21a019b16676ee3db267aa8d5a8d729581ecf998b" +dependencies = [ + "curve25519-dalek-ng", + "hex", + "rand_core", + "serde", + "sha2 0.9.9", + "thiserror", + "zeroize", +] + +[[package]] +name = "ed25519-dalek" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a3daa8e81a3963a60642bcc1f90a670680bd4a77535faa384e9d1c79d620871" +dependencies = [ + "curve25519-dalek", + "ed25519", + "merlin", + "rand_core", + "serde", + "sha2 0.10.8", + "signature", + "subtle", + "zeroize", +] + +[[package]] +name = "edit" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f364860e764787163c8c8f58231003839be31276e821e2ad2092ddf496b1aa09" +dependencies = [ + "tempfile", + "which", +] + +[[package]] +name = "either" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" + +[[package]] +name = "elliptic-curve" +version = "0.13.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5e6043086bf7973472e0c7dff2142ea0b680d30e18d9cc40f267efbf222bd47" +dependencies = [ + "base16ct", + "crypto-bigint", + "digest 0.10.7", + "ff", + "generic-array", + "group", + "pem-rfc7468", + "pkcs8", + "rand_core", + "sec1", + "subtle", + "zeroize", +] + +[[package]] +name = "encode_unicode" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a357d28ed41a50f9c765dbfe56cbc04a64e53e5fc58ba79fbc34c10ef3df831f" + +[[package]] +name = "encoding_rs" +version = "0.8.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "enum-as-inner" +version = "0.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1e6a265c649f3f5979b601d26f1d05ada116434c87741c9493cb56218f76cbc" +dependencies = [ + "heck 0.5.0", + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "env_filter" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f2c92ceda6ceec50f43169f9ee8424fe2db276791afde7b2cd8bc084cb376ab" +dependencies = [ + "log", + "regex", +] + +[[package]] +name = "env_logger" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580" +dependencies = [ + "humantime", + "is-terminal", + "log", + "regex", + "termcolor", +] + +[[package]] +name = "env_logger" +version = "0.11.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e13fa619b91fb2381732789fc5de83b45675e882f66623b7d8cb4f643017018d" +dependencies = [ + "anstream", + "anstyle", + "env_filter", + "humantime", + "log", +] + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "erased-serde" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c138974f9d5e7fe373eb04df7cae98833802ae4b11c24ac7039a21d5af4b26c" +dependencies = [ + "serde", +] + +[[package]] +name = "erased-serde" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24e2389d65ab4fab27dc2a5de7b191e1f6617d1f1c8855c0dc569c94a4cbb18d" +dependencies = [ + "serde", + "typeid", +] + +[[package]] +name = "errno" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "event-listener" +version = "5.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6032be9bd27023a771701cc49f9f053c751055f71efb2e0ae5c15809093675ba" +dependencies = [ + "concurrent-queue", + "parking", + "pin-project-lite", +] + +[[package]] +name = "event-listener-strategy" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1" +dependencies = [ + "event-listener", + "pin-project-lite", +] + +[[package]] +name = "fallible-iterator" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" + +[[package]] +name = "fastrand" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" + +[[package]] +name = "fe-derive" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "hex", + "num-bigint-dig", + "num-traits", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ff" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ded41244b729663b1e574f1b4fb731469f69f79c17667b5d776b16cda0479449" +dependencies = [ + "rand_core", + "subtle", +] + +[[package]] +name = "fiat-crypto" +version = "0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" + +[[package]] +name = "filetime" +version = "0.2.25" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" +dependencies = [ + "cfg-if", + "libc", + "libredox", + "windows-sys 0.59.0", +] + +[[package]] +name = "fixedbitset" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" + +[[package]] +name = "flate2" +version = "1.0.34" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0" +dependencies = [ + "crc32fast", + "miniz_oxide", +] + +[[package]] +name = "fnv" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1" + +[[package]] +name = "form_urlencoded" +version = "1.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456" +dependencies = [ + "percent-encoding", +] + +[[package]] +name = "fragile" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c2141d6d6c8512188a7891b4b01590a45f6dac67afb4f255c4124dbb86d4eaa" + +[[package]] +name = "fs-err" +version = "2.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88a41f105fe1d5b6b34b2055e3dc59bb79b46b48b2040b9e6c7b4b5de097aa41" +dependencies = [ + "autocfg", +] + +[[package]] +name = "fs2" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9564fc758e15025b46aa6643b1b77d047d1a56a1aea6e01002ac0c7026876213" +dependencies = [ + "libc", + "winapi", +] + +[[package]] +name = "funty" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6d5a32815ae3f33302d95fdcb2ce17862f8c65363dcfd29360480ba1001fc9c" + +[[package]] +name = "futures" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0" +dependencies = [ + "futures-channel", + "futures-core", + "futures-executor", + "futures-io", + "futures-sink", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-channel" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eac8f7d7865dcb88bd4373ab671c8cf4508703796caa2b1985a9ca867b3fcb78" +dependencies = [ + "futures-core", + "futures-sink", +] + +[[package]] +name = "futures-core" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dfc6580bb841c5a68e9ef15c77ccc837b40a7504914d52e47b8b0e9bbda25a1d" + +[[package]] +name = "futures-executor" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d" +dependencies = [ + "futures-core", + "futures-task", + "futures-util", +] + +[[package]] +name = "futures-io" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a44623e20b9681a318efdd71c299b6b222ed6f231972bfe2f224ebad6311f0c1" + +[[package]] +name = "futures-macro" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "futures-sink" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fb8e00e87438d937621c1c6269e53f536c14d3fbd6a042bb24879e57d474fb5" + +[[package]] +name = "futures-task" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38d84fa142264698cdce1a9f9172cf383a0c82de1bddcf3092901442c4097004" + +[[package]] +name = "futures-util" +version = "0.3.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d6401deb83407ab3da39eba7e33987a73c3df0c82b4bb5813ee871c19c41d48" +dependencies = [ + "futures-channel", + "futures-core", + "futures-io", + "futures-macro", + "futures-sink", + "futures-task", + "memchr", + "pin-project-lite", + "pin-utils", + "slab", +] + +[[package]] +name = "generic-array" +version = "0.14.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a" +dependencies = [ + "typenum", + "version_check", + "zeroize", +] + +[[package]] +name = "getrandom" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7" +dependencies = [ + "cfg-if", + "js-sys", + "libc", + "wasi", + "wasm-bindgen", +] + +[[package]] +name = "gimli" +version = "0.26.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d" +dependencies = [ + "fallible-iterator", + "indexmap 1.9.3", + "stable_deref_trait", +] + +[[package]] +name = "gimli" +version = "0.31.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32085ea23f3234fc7846555e85283ba4de91e21016dc0455a16286d87a292d64" + +[[package]] +name = "glob" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" + +[[package]] +name = "group" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f9ef7462f7c099f518d754361858f86d8a07af53ba9af0fe635bbccb151a63" +dependencies = [ + "ff", + "rand_core", + "subtle", +] + +[[package]] +name = "h2" +version = "0.3.26" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81fe527a889e1532da5c525686d96d4c2e74cdd345badf8dfef9f6b39dd5f5e8" +dependencies = [ + "bytes", + "fnv", + "futures-core", + "futures-sink", + "futures-util", + "http 0.2.12", + "indexmap 2.6.0", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "h2" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "524e8ac6999421f49a846c2d4411f337e53497d8ec55d67753beffa43c5d9205" +dependencies = [ + "atomic-waker", + "bytes", + "fnv", + "futures-core", + "futures-sink", + "http 1.1.0", + "indexmap 2.6.0", + "slab", + "tokio", + "tokio-util", + "tracing", +] + +[[package]] +name = "half" +version = "1.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b43ede17f21864e81be2fa654110bf1e793774238d86ef8555c37e6519c0403" + +[[package]] +name = "half" +version = "2.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6dd08c532ae367adf81c312a4580bc67f1d0fe8bc9c460520283f4c0ff277888" +dependencies = [ + "cfg-if", + "crunchy", +] + +[[package]] +name = "hashbrown" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" +dependencies = [ + "ahash 0.7.8", +] + +[[package]] +name = "hashbrown" +version = "0.14.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" +dependencies = [ + "ahash 0.8.11", + "allocator-api2", + "serde", +] + +[[package]] +name = "hashbrown" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" + +[[package]] +name = "hdrhistogram" +version = "7.5.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "765c9198f173dd59ce26ff9f95ef0aafd0a0fe01fb9d72841bc5066a4c06511d" +dependencies = [ + "byteorder", + "num-traits", +] + +[[package]] +name = "heck" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6d621efb26863f0e9924c6ac577e8275e5e6b77455db64ffa6c65c904e9e132c" +dependencies = [ + "unicode-segmentation", +] + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "heck" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2304e00983f87ffb38b55b444b5e3b60a884b5d30c0fca7d82fe33449bbe55ea" + +[[package]] +name = "hermit-abi" +version = "0.1.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33" +dependencies = [ + "libc", +] + +[[package]] +name = "hermit-abi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" + +[[package]] +name = "hermit-abi" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc" + +[[package]] +name = "hex" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7f24254aa9a54b5c858eaee2f5bccdb46aaf0e486a595ed5fd8f86ba55232a70" +dependencies = [ + "serde", +] + +[[package]] +name = "hex-literal" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6fe2267d4ed49bc07b63801559be28c718ea06c4738b7a03c94df7386d2cde46" + +[[package]] +name = "hkdf" +version = "0.12.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b5f8eb2ad728638ea2c7d47a21db23b7b58a72ed6a38256b8a1849f15fbbdf7" +dependencies = [ + "hmac", +] + +[[package]] +name = "hmac" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c49c37c09c17a53d937dfbb742eb3a961d65a994e6bcdcf37e7399d0cc8ab5e" +dependencies = [ + "digest 0.10.7", +] + +[[package]] +name = "home" +version = "0.5.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" +dependencies = [ + "windows-sys 0.52.0", +] + +[[package]] +name = "http" +version = "0.2.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "601cbb57e577e2f5ef5be8e7b83f0f63994f25aa94d673e54a92d5c516d101f1" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21b9ddb458710bc376481b842f5da65cdf31522de232c1ca8146abce2a358258" +dependencies = [ + "bytes", + "fnv", + "itoa", +] + +[[package]] +name = "http-body" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" +dependencies = [ + "bytes", + "http 0.2.12", + "pin-project-lite", +] + +[[package]] +name = "http-body" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1efedce1fb8e6913f23e0c92de8e62cd5b772a67e7b3946df930a62566c93184" +dependencies = [ + "bytes", + "http 1.1.0", +] + +[[package]] +name = "http-body-util" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793429d76616a256bcb62c2a2ec2bed781c8307e797e2598c50010f2bee2544f" +dependencies = [ + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "pin-project-lite", +] + +[[package]] +name = "httparse" +version = "1.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946" + +[[package]] +name = "httpdate" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df3b46402a9d5adb4c86a0cf463f42e19994e3ee891101b1841f30a545cb49a9" + +[[package]] +name = "human_bytes" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91f255a4535024abf7640cb288260811fc14794f62b063652ed349f9a6c2348e" + +[[package]] +name = "humantime" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" + +[[package]] +name = "hyper" +version = "0.14.30" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a152ddd61dfaec7273fe8419ab357f33aee0d914c5f4efbf0d96fa749eea5ec9" +dependencies = [ + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "h2 0.3.26", + "http 0.2.12", + "http-body 0.4.6", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "socket2", + "tokio", + "tower-service", + "tracing", + "want", +] + +[[package]] +name = "hyper" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "50dfd22e0e76d0f662d429a5f80fcaf3855009297eab6a0a9f8543834744ba05" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "h2 0.4.6", + "http 1.1.0", + "http-body 1.0.1", + "httparse", + "httpdate", + "itoa", + "pin-project-lite", + "smallvec", + "tokio", + "want", +] + +[[package]] +name = "hyper-rustls" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0bea761b46ae2b24eb4aef630d8d1c398157b6fc29e6350ecf090a0b70c952c" +dependencies = [ + "futures-util", + "http 1.1.0", + "hyper 1.4.1", + "hyper-util", + "log", + "rustls 0.22.4", + "rustls-native-certs 0.7.3", + "rustls-pki-types", + "tokio", + "tokio-rustls 0.25.0", + "tower-service", +] + +[[package]] +name = "hyper-rustls" +version = "0.27.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" +dependencies = [ + "futures-util", + "http 1.1.0", + "hyper 1.4.1", + "hyper-util", + "rustls 0.23.13", + "rustls-native-certs 0.8.0", + "rustls-pki-types", + "tokio", + "tokio-rustls 0.26.0", + "tower-service", + "webpki-roots", +] + +[[package]] +name = "hyper-timeout" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" +dependencies = [ + "hyper 0.14.30", + "pin-project-lite", + "tokio", + "tokio-io-timeout", +] + +[[package]] +name = "hyper-timeout" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3203a961e5c83b6f5498933e78b6b263e208c197b63e9c6c53cc82ffd3f63793" +dependencies = [ + "hyper 1.4.1", + "hyper-util", + "pin-project-lite", + "tokio", + "tower-service", +] + +[[package]] +name = "hyper-util" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41296eb09f183ac68eec06e03cdbea2e759633d4067b2f6552fc2e009bcad08b" +dependencies = [ + "bytes", + "futures-channel", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "hyper 1.4.1", + "pin-project-lite", + "socket2", + "tokio", + "tower-service", + "tracing", +] + +[[package]] +name = "iana-time-zone" +version = "0.1.61" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" +dependencies = [ + "android_system_properties", + "core-foundation-sys", + "iana-time-zone-haiku", + "js-sys", + "wasm-bindgen", + "windows-core", +] + +[[package]] +name = "iana-time-zone-haiku" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f" +dependencies = [ + "cc", +] + +[[package]] +name = "ic-adapter-metrics-client" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-adapter-metrics-service", + "ic-async-utils", + "prometheus", + "protobuf", + "slog", + "tokio", + "tonic", + "tower 0.4.13", +] + +[[package]] +name = "ic-adapter-metrics-service" +version = "0.1.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "prost", + "prost-build", + "tonic", + "tonic-build", +] + +[[package]] +name = "ic-agent" +version = "0.37.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fd3fdf5e5c4f4a9fe5ca612f0febd22dcb161d2f2b75b0142326732be5e4978" +dependencies = [ + "async-lock", + "backoff", + "cached 0.52.0", + "candid", + "ed25519-consensus", + "futures-util", + "hex", + "http 1.1.0", + "http-body 1.0.1", + "ic-certification 2.6.0", + "ic-transport-types", + "ic-verify-bls-signature", + "k256", + "leb128", + "p256", + "pem 3.0.4", + "pkcs8", + "rand", + "rangemap", + "reqwest", + "ring", + "rustls-webpki", + "sec1", + "serde", + "serde_bytes", + "serde_cbor", + "serde_repr", + "sha2 0.10.8", + "simple_asn1", + "thiserror", + "time", + "tokio", + "url", +] + +[[package]] +name = "ic-async-utils" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "anyhow", + "async-stream", + "axum 0.7.7", + "byte-unit", + "bytes", + "futures", + "futures-util", + "hyper 0.14.30", + "slog", + "sync_wrapper 1.0.1", + "thiserror", + "tokio", + "tonic", +] + +[[package]] +name = "ic-base-types" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "byte-unit", + "bytes", + "candid", + "comparable", + "hex", + "ic-crypto-sha2", + "ic-protobuf", + "phantom_newtype", + "prost", + "serde", + "strum 0.26.3", + "strum_macros 0.26.4", +] + +[[package]] +name = "ic-btc-interface" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b0152e14e697b0e988dbfdcb3f7e352d1c76a65b7d2d75c5d76bad22c3aca10d" +dependencies = [ + "candid", + "serde", + "serde_bytes", +] + +[[package]] +name = "ic-btc-replica-types" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "ic-btc-interface", + "ic-error-types", + "ic-protobuf", + "serde", + "serde_bytes", +] + +[[package]] +name = "ic-canister-client" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "backoff", + "futures-util", + "http-body-util", + "hyper 1.4.1", + "hyper-rustls 0.27.3", + "hyper-util", + "ic-canister-client-sender", + "ic-canonical-state", + "ic-certification 0.9.0", + "ic-crypto-secp256k1", + "ic-crypto-tree-hash", + "ic-management-canister-types", + "ic-protobuf", + "ic-types", + "itertools 0.12.1", + "prost", + "rustls 0.23.13", + "serde", + "serde_cbor", + "tokio", + "tower 0.4.13", + "tree-deserializer", + "url", +] + +[[package]] +name = "ic-canister-client-sender" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-base-types", + "ic-crypto-ed25519", + "ic-crypto-secp256k1", + "ic-types", + "rand", + "rand_chacha", +] + +[[package]] +name = "ic-canister-log" +version = "0.2.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "serde", +] + +[[package]] +name = "ic-canister-profiler" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-metrics-encoder", + "ic0 0.18.11", +] + +[[package]] +name = "ic-canisters" +version = "0.5.5" +dependencies = [ + "anyhow", + "backoff", + "candid", + "hex", + "ic-agent", + "ic-base-types", + "ic-interfaces-registry", + "ic-management-canister-types", + "ic-nns-common", + "ic-nns-constants", + "ic-nns-governance", + "ic-protobuf", + "ic-registry-keys", + "ic-registry-nns-data-provider", + "ic-registry-transport", + "ic-sns-wasm", + "ic-transport-types", + "ic-types", + "ic-utils 0.37.0", + "log", + "pkcs11", + "prost", + "reqwest", + "serde", + "sha2 0.10.8", + "simple_asn1", + "thiserror", + "trustworthy-node-metrics-types", + "url", +] + +[[package]] +name = "ic-canisters-http-types" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "dfn_candid", + "serde", + "serde_bytes", +] + +[[package]] +name = "ic-canonical-state" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-base-types", + "ic-canonical-state-tree-hash", + "ic-certification-version", + "ic-crypto-tree-hash", + "ic-error-types", + "ic-protobuf", + "ic-registry-routing-table", + "ic-registry-subnet-type", + "ic-replicated-state", + "ic-types", + "leb128", + "phantom_newtype", + "serde", + "serde_bytes", + "serde_cbor", + "strum 0.26.3", + "strum_macros 0.26.4", +] + +[[package]] +name = "ic-canonical-state-tree-hash" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-crypto-tree-hash", + "itertools 0.12.1", + "leb128", + "scoped_threadpool", + "thiserror", +] + +[[package]] +name = "ic-cdk" +version = "0.13.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3b1da6a25b045f9da3c9459c0cb2b0700ac368ee16382975a17185a23b9c18ab" +dependencies = [ + "candid", + "ic-cdk-macros 0.13.2", + "ic0 0.21.1", + "serde", + "serde_bytes", +] + +[[package]] +name = "ic-cdk" +version = "0.16.0" +source = "git+https://github.com/dfinity/cdk-rs.git?rev=97c4e19c76b7f072ce8507cb7e7a527582111272#97c4e19c76b7f072ce8507cb7e7a527582111272" +dependencies = [ + "candid", + "ic-cdk-macros 0.16.0", + "ic0 0.23.0", + "serde", + "serde_bytes", +] + +[[package]] +name = "ic-cdk-macros" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2fde5ca6ef1e69825c68916ff1bf7256b8f7ed69ac5ea3f1756f6e57f1503e27" +dependencies = [ + "candid", + "proc-macro2", + "quote", + "serde", + "serde_tokenstream 0.1.7", + "syn 1.0.109", +] + +[[package]] +name = "ic-cdk-macros" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a45800053d80a6df839a71aaea5797e723188c0b992618208ca3b941350c7355" +dependencies = [ + "candid", + "proc-macro2", + "quote", + "serde", + "serde_tokenstream 0.1.7", + "syn 1.0.109", +] + +[[package]] +name = "ic-cdk-macros" +version = "0.16.0" +source = "git+https://github.com/dfinity/cdk-rs.git?rev=97c4e19c76b7f072ce8507cb7e7a527582111272#97c4e19c76b7f072ce8507cb7e7a527582111272" +dependencies = [ + "candid", + "proc-macro2", + "quote", + "serde", + "serde_tokenstream 0.2.2", + "syn 2.0.79", +] + +[[package]] +name = "ic-cdk-timers" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "054727a3a1c486528b96349817d54290ff70df6addf417def456ea708a16f7fb" +dependencies = [ + "futures", + "ic-cdk 0.13.5", + "ic0 0.21.1", + "serde", + "serde_bytes", + "slotmap", +] + +[[package]] +name = "ic-cdk-timers" +version = "0.10.0" +source = "git+https://github.com/dfinity/cdk-rs.git?rev=97c4e19c76b7f072ce8507cb7e7a527582111272#97c4e19c76b7f072ce8507cb7e7a527582111272" +dependencies = [ + "futures", + "ic-cdk 0.16.0", + "ic0 0.23.0", + "serde", + "serde_bytes", + "slotmap", +] + +[[package]] +name = "ic-certification" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "hex", + "ic-crypto-tree-hash", + "ic-crypto-utils-threshold-sig", + "ic-crypto-utils-threshold-sig-der", + "ic-types", + "serde", + "serde_cbor", + "tree-deserializer", +] + +[[package]] +name = "ic-certification" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e64ee3d8b6e81b51f245716d3e0badb63c283c00f3c9fb5d5219afc30b5bf821" +dependencies = [ + "hex", + "serde", + "serde_bytes", + "sha2 0.10.8", +] + +[[package]] +name = "ic-certification-version" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "strum 0.26.3", + "strum_macros 0.26.4", +] + +[[package]] +name = "ic-certified-map" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6adc65afeffc619a7cd19553c66c79820908c12f42191af90cfb39e2e93c4431" +dependencies = [ + "serde", + "serde_bytes", + "sha2 0.10.8", +] + +[[package]] +name = "ic-config" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-base-types", + "ic-protobuf", + "ic-registry-subnet-type", + "ic-sys", + "ic-types", + "json5", + "serde", + "tempfile", +] + +[[package]] +name = "ic-crypto-ed25519" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "curve25519-dalek", + "ed25519-dalek", + "hkdf", + "pem 1.1.1", + "rand", + "thiserror", + "zeroize", +] + +[[package]] +name = "ic-crypto-getrandom-for-wasm" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "getrandom", +] + +[[package]] +name = "ic-crypto-interfaces-sig-verification" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-types", +] + +[[package]] +name = "ic-crypto-internal-basic-sig-der-utils" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "hex", + "ic-types", + "simple_asn1", +] + +[[package]] +name = "ic-crypto-internal-basic-sig-ed25519" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "base64 0.13.1", + "curve25519-dalek", + "hex", + "ic-crypto-ed25519", + "ic-crypto-internal-basic-sig-der-utils", + "ic-crypto-internal-seed", + "ic-crypto-internal-types", + "ic-crypto-secrets-containers", + "ic-protobuf", + "ic-types", + "rand", + "rand_chacha", + "serde", + "simple_asn1", + "zeroize", +] + +[[package]] +name = "ic-crypto-internal-bls12-381-type" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "hex", + "ic_bls12_381", + "itertools 0.12.1", + "lazy_static", + "pairing", + "paste", + "rand", + "rand_chacha", + "sha2 0.10.8", + "subtle", + "zeroize", +] + +[[package]] +name = "ic-crypto-internal-hmac" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-crypto-internal-sha2", +] + +[[package]] +name = "ic-crypto-internal-multi-sig-bls12381" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "base64 0.13.1", + "hex", + "ic-crypto-internal-bls12-381-type", + "ic-crypto-internal-types", + "ic-crypto-secrets-containers", + "ic-crypto-sha2", + "ic-protobuf", + "ic-types", + "rand", + "rand_chacha", + "serde", + "zeroize", +] + +[[package]] +name = "ic-crypto-internal-seed" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "hex", + "ic-crypto-sha2", + "rand", + "rand_chacha", + "serde", + "zeroize", +] + +[[package]] +name = "ic-crypto-internal-sha2" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "sha2 0.10.8", +] + +[[package]] +name = "ic-crypto-internal-threshold-sig-bls12381" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "base64 0.13.1", + "cached 0.49.3", + "hex", + "ic-crypto-internal-bls12-381-type", + "ic-crypto-internal-seed", + "ic-crypto-internal-types", + "ic-crypto-secrets-containers", + "ic-crypto-sha2", + "ic-types", + "lazy_static", + "parking_lot", + "rand", + "rand_chacha", + "serde", + "serde_bytes", + "serde_cbor", + "strum_macros 0.26.4", + "subtle", + "zeroize", +] + +[[package]] +name = "ic-crypto-internal-threshold-sig-ecdsa" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "curve25519-dalek", + "fe-derive", + "group", + "hex", + "hex-literal", + "ic-crypto-internal-hmac", + "ic-crypto-internal-seed", + "ic-crypto-internal-types", + "ic-crypto-secrets-containers", + "ic-crypto-sha2", + "ic-types", + "k256", + "lazy_static", + "p256", + "paste", + "rand", + "serde", + "serde_bytes", + "serde_cbor", + "strum 0.26.3", + "strum_macros 0.26.4", + "subtle", + "zeroize", +] + +[[package]] +name = "ic-crypto-internal-types" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "arrayvec 0.7.6", + "hex", + "ic-protobuf", + "phantom_newtype", + "serde", + "serde_cbor", + "strum 0.26.3", + "strum_macros 0.26.4", + "thiserror", + "zeroize", +] + +[[package]] +name = "ic-crypto-node-key-validation" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "hex", + "ic-base-types", + "ic-crypto-internal-basic-sig-ed25519", + "ic-crypto-internal-multi-sig-bls12381", + "ic-crypto-internal-threshold-sig-bls12381", + "ic-crypto-internal-threshold-sig-ecdsa", + "ic-crypto-internal-types", + "ic-crypto-tls-cert-validation", + "ic-protobuf", + "ic-types", + "serde", +] + +[[package]] +name = "ic-crypto-secp256k1" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "hmac", + "k256", + "lazy_static", + "num-bigint 0.4.6", + "pem 1.1.1", + "rand", + "rand_chacha", + "simple_asn1", + "zeroize", +] + +[[package]] +name = "ic-crypto-secrets-containers" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "serde", + "zeroize", +] + +[[package]] +name = "ic-crypto-sha2" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-crypto-internal-sha2", +] + +[[package]] +name = "ic-crypto-tls-cert-validation" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "hex", + "ic-crypto-internal-basic-sig-ed25519", + "ic-protobuf", + "ic-types", + "serde", + "x509-parser", +] + +[[package]] +name = "ic-crypto-tree-hash" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-crypto-internal-types", + "ic-crypto-sha2", + "ic-protobuf", + "serde", + "serde_bytes", + "thiserror", +] + +[[package]] +name = "ic-crypto-utils-basic-sig" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-base-types", + "ic-crypto-ed25519", + "ic-protobuf", +] + +[[package]] +name = "ic-crypto-utils-ni-dkg" +version = "0.8.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-crypto-internal-types", + "ic-protobuf", + "ic-types", +] + +[[package]] +name = "ic-crypto-utils-threshold-sig" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "base64 0.13.1", + "ic-crypto-internal-threshold-sig-bls12381", + "ic-crypto-internal-types", + "ic-types", +] + +[[package]] +name = "ic-crypto-utils-threshold-sig-der" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "base64 0.13.1", + "ic-crypto-internal-types", + "ic-types", + "simple_asn1", +] + +[[package]] +name = "ic-error-types" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-protobuf", + "ic-utils 0.9.0", + "serde", + "strum 0.26.3", + "strum_macros 0.26.4", +] + +[[package]] +name = "ic-http-endpoints-metrics" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "axum 0.7.7", + "ic-async-utils", + "ic-config", + "ic-metrics", + "prometheus", + "slog", + "thiserror", + "tokio", + "tokio-io-timeout", + "tower 0.4.13", +] + +[[package]] +name = "ic-icrc1" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "ciborium", + "hex", + "ic-base-types", + "ic-crypto-sha2", + "ic-icrc1-tokens-u64", + "ic-ledger-canister-core", + "ic-ledger-core", + "ic-ledger-hash-of", + "icrc-ledger-types", + "num-bigint 0.4.6", + "num-traits", + "serde", + "serde_bytes", + "tempfile", + "thiserror", +] + +[[package]] +name = "ic-icrc1-index-ng" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "ciborium", + "ic-base-types", + "ic-canister-log", + "ic-canister-profiler", + "ic-canisters-http-types", + "ic-cdk 0.13.5", + "ic-cdk-macros 0.9.0", + "ic-cdk-timers 0.7.0", + "ic-crypto-sha2", + "ic-icrc1", + "ic-icrc1-tokens-u64", + "ic-ledger-canister-core", + "ic-ledger-core", + "ic-metrics-encoder", + "ic-stable-structures", + "icrc-ledger-types", + "num-traits", + "scopeguard", + "serde", + "serde_json", +] + +[[package]] +name = "ic-icrc1-ledger" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "candid", + "ciborium", + "hex", + "ic-base-types", + "ic-canister-log", + "ic-canisters-http-types", + "ic-cdk 0.13.5", + "ic-cdk-macros 0.9.0", + "ic-crypto-tree-hash", + "ic-icrc1", + "ic-icrc1-tokens-u64", + "ic-ledger-canister-core", + "ic-ledger-core", + "ic-ledger-hash-of", + "ic-metrics-encoder", + "ic-stable-structures", + "icrc-ledger-client", + "icrc-ledger-types", + "num-traits", + "serde", + "serde_bytes", +] + +[[package]] +name = "ic-icrc1-tokens-u64" +version = "0.1.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "ic-ledger-core", + "ic-stable-structures", + "num-traits", + "serde", +] + +[[package]] +name = "ic-interfaces" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-base-types", + "ic-crypto-interfaces-sig-verification", + "ic-error-types", + "ic-interfaces-state-manager", + "ic-management-canister-types", + "ic-protobuf", + "ic-registry-provisional-whitelist", + "ic-registry-subnet-type", + "ic-sys", + "ic-types", + "ic-wasm-types", + "phantom_newtype", + "prost", + "serde", + "strum 0.26.3", + "strum_macros 0.26.4", + "thiserror", + "tower 0.4.13", +] + +[[package]] +name = "ic-interfaces-registry" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-types", + "prost", + "serde", +] + +[[package]] +name = "ic-interfaces-state-manager" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-crypto-tree-hash", + "ic-types", + "phantom_newtype", + "thiserror", +] + +[[package]] +name = "ic-ledger-canister-core" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "candid", + "ic-base-types", + "ic-canister-log", + "ic-ledger-core", + "ic-ledger-hash-of", + "ic-limits", + "ic-management-canister-types", + "ic-utils 0.9.0", + "num-traits", + "serde", +] + +[[package]] +name = "ic-ledger-core" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "ic-ledger-hash-of", + "num-traits", + "serde", + "serde_bytes", +] + +[[package]] +name = "ic-ledger-hash-of" +version = "0.1.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "hex", + "serde", +] + +[[package]] +name = "ic-limits" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" + +[[package]] +name = "ic-logger" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "chrono", + "ic-config", + "ic-protobuf", + "ic-utils 0.9.0", + "serde", + "slog", + "slog-async", + "slog-json", + "slog-scope", + "slog-term", +] + +[[package]] +name = "ic-management-backend" +version = "0.5.5" +dependencies = [ + "actix-rt", + "actix-web", + "anyhow", + "backon", + "candid", + "chrono", + "clap 4.5.19", + "custom_error", + "decentralization", + "dirs", + "dotenv", + "env_logger 0.11.5", + "fs2", + "futures", + "futures-util", + "ic-agent", + "ic-base-types", + "ic-canisters", + "ic-interfaces-registry", + "ic-management-types", + "ic-nns-constants", + "ic-nns-governance", + "ic-protobuf", + "ic-registry-client", + "ic-registry-client-fake", + "ic-registry-client-helpers", + "ic-registry-common-proto", + "ic-registry-keys", + "ic-registry-local-registry", + "ic-registry-local-store", + "ic-registry-nns-data-provider", + "ic-registry-subnet-type", + "ic-types", + "indexmap 2.6.0", + "itertools 0.13.0", + "lazy_static", + "log", + "mockall", + "octocrab", + "prometheus-http-query", + "regex", + "registry-canister", + "reqwest", + "serde", + "serde_json", + "serde_yaml", + "strum 0.26.3", + "strum_macros 0.26.4", + "tokio", + "url", +] + +[[package]] +name = "ic-management-canister-types" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "ic-base-types", + "ic-btc-interface", + "ic-btc-replica-types", + "ic-error-types", + "ic-protobuf", + "ic-utils 0.9.0", + "num-traits", + "serde", + "serde_bytes", + "serde_cbor", + "strum 0.26.3", + "strum_macros 0.26.4", +] + +[[package]] +name = "ic-management-types" +version = "0.5.5" +dependencies = [ + "actix-web", + "anyhow", + "candid", + "chrono", + "futures", + "ic-base-types", + "ic-nns-governance", + "ic-protobuf", + "ic-registry-subnet-type", + "ic-types", + "indexmap 2.6.0", + "registry-canister", + "reqwest", + "serde", + "serde_json", + "strum 0.26.3", + "strum_macros 0.26.4", + "tokio", + "url", + "wiremock", +] + +[[package]] +name = "ic-metrics" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "futures", + "ic-adapter-metrics-client", + "libc", + "procfs 0.9.1", + "prometheus", + "tokio", + "tokio-metrics", +] + +[[package]] +name = "ic-metrics-encoder" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b5c7628eac357aecda461130f8074468be5aa4d258a002032d82d817f79f1f8" + +[[package]] +name = "ic-nervous-system-canisters" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "candid", + "dfn_candid", + "dfn_core", + "ic-base-types", + "ic-ledger-core", + "ic-nervous-system-common", + "ic-nervous-system-runtime", + "ic-nns-constants", + "icp-ledger", + "icrc-ledger-types", +] + +[[package]] +name = "ic-nervous-system-clients" +version = "0.0.1" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "candid", + "dfn_candid", + "dfn_core", + "ic-base-types", + "ic-error-types", + "ic-ledger-core", + "ic-management-canister-types", + "ic-nervous-system-common", + "ic-nervous-system-proxied-canister-calls-tracker", + "ic-nervous-system-runtime", + "ic-utils 0.9.0", + "icrc-ledger-client", + "icrc-ledger-types", + "num-traits", + "serde", +] + +[[package]] +name = "ic-nervous-system-collections-union-multi-map" +version = "0.0.1" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" + +[[package]] +name = "ic-nervous-system-common" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "base64 0.13.1", + "build-info", + "build-info-build", + "by_address", + "bytes", + "dfn_core", + "ic-base-types", + "ic-canister-log", + "ic-canisters-http-types", + "ic-crypto-sha2", + "ic-ledger-core", + "ic-metrics-encoder", + "ic-nervous-system-runtime", + "ic-nns-constants", + "ic-stable-structures", + "icp-ledger", + "icrc-ledger-types", + "json5", + "lazy_static", + "maplit", + "mockall", + "num-traits", + "priority-queue", + "prost", + "rust_decimal", + "serde", + "serde_json", +] + +[[package]] +name = "ic-nervous-system-common-build-metadata" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" + +[[package]] +name = "ic-nervous-system-common-test-keys" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-base-types", + "ic-canister-client-sender", + "ic-types", + "lazy_static", + "rand", + "rand_chacha", +] + +[[package]] +name = "ic-nervous-system-governance" +version = "0.0.1" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-base-types", + "ic-stable-structures", + "ic_principal", + "maplit", + "num-traits", +] + +[[package]] +name = "ic-nervous-system-lock" +version = "0.0.1" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" + +[[package]] +name = "ic-nervous-system-proto" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "comparable", + "ic-base-types", + "prost", + "rust_decimal", + "serde", +] + +[[package]] +name = "ic-nervous-system-proxied-canister-calls-tracker" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-base-types", +] + +[[package]] +name = "ic-nervous-system-root" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "dfn_core", + "ic-cdk 0.13.5", + "ic-crypto-sha2", + "ic-management-canister-types", + "ic-nervous-system-clients", + "ic-nervous-system-runtime", + "serde", + "serde_bytes", +] + +[[package]] +name = "ic-nervous-system-runtime" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "candid", + "dfn_candid", + "dfn_core", + "ic-base-types", + "ic-cdk 0.13.5", +] + +[[package]] +name = "ic-nervous-system-string" +version = "0.0.1" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" + +[[package]] +name = "ic-nervous-system-temporary" +version = "0.0.1" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" + +[[package]] +name = "ic-neurons-fund" +version = "0.0.1" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-nervous-system-common", + "lazy_static", + "rust_decimal", + "rust_decimal_macros", + "serde", + "serde_json", +] + +[[package]] +name = "ic-nns-common" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "comparable", + "dfn_core", + "ic-base-types", + "ic-crypto-sha2", + "ic-nervous-system-common", + "ic-nns-constants", + "ic-protobuf", + "ic-registry-keys", + "ic-registry-transport", + "ic-stable-structures", + "ic-types", + "lazy_static", + "num-traits", + "on_wire", + "prost", + "serde", + "serde_bytes", + "sha2 0.10.8", +] + +[[package]] +name = "ic-nns-constants" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-base-types", + "maplit", +] + +[[package]] +name = "ic-nns-governance" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "build-info", + "build-info-build", + "bytes", + "candid", + "comparable", + "csv", + "cycles-minting-canister", + "dfn_candid", + "dfn_core", + "dfn_http_metrics", + "dfn_protobuf", + "dyn-clone", + "ic-base-types", + "ic-crypto-getrandom-for-wasm", + "ic-crypto-sha2", + "ic-ledger-core", + "ic-management-canister-types", + "ic-metrics-encoder", + "ic-nervous-system-canisters", + "ic-nervous-system-clients", + "ic-nervous-system-common", + "ic-nervous-system-common-build-metadata", + "ic-nervous-system-common-test-keys", + "ic-nervous-system-governance", + "ic-nervous-system-proto", + "ic-nervous-system-root", + "ic-nervous-system-runtime", + "ic-nervous-system-temporary", + "ic-neurons-fund", + "ic-nns-common", + "ic-nns-constants", + "ic-nns-governance-api", + "ic-nns-governance-init", + "ic-nns-gtc-accounts", + "ic-nns-handler-root-interface", + "ic-protobuf", + "ic-sns-init", + "ic-sns-root", + "ic-sns-swap", + "ic-sns-wasm", + "ic-stable-structures", + "ic-types", + "ic-utils 0.9.0", + "icp-ledger", + "itertools 0.12.1", + "lazy_static", + "maplit", + "mockall", + "num-traits", + "on_wire", + "pretty_assertions", + "prometheus-parse", + "prost", + "rand", + "rand_chacha", + "registry-canister", + "rust_decimal", + "rust_decimal_macros", + "serde", + "serde_bytes", + "serde_json", + "strum 0.26.3", + "strum_macros 0.26.4", +] + +[[package]] +name = "ic-nns-governance-api" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "bytes", + "candid", + "comparable", + "ic-base-types", + "ic-crypto-sha2", + "ic-nervous-system-clients", + "ic-nervous-system-proto", + "ic-nns-common", + "ic-protobuf", + "ic-sns-root", + "ic-sns-swap", + "ic-types", + "ic-utils 0.9.0", + "icp-ledger", + "itertools 0.12.1", + "prost", + "serde", + "serde_bytes", + "strum 0.26.3", + "strum_macros 0.26.4", +] + +[[package]] +name = "ic-nns-governance-init" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "csv", + "ic-base-types", + "ic-nervous-system-common", + "ic-nervous-system-common-build-metadata", + "ic-nervous-system-common-test-keys", + "ic-nns-common", + "ic-nns-governance-api", + "icp-ledger", + "rand", + "rand_chacha", +] + +[[package]] +name = "ic-nns-gtc-accounts" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" + +[[package]] +name = "ic-nns-handler-root-interface" +version = "0.1.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "candid", + "dfn_candid", + "dfn_core", + "ic-base-types", + "ic-nervous-system-clients", + "ic-nns-constants", + "serde", +] + +[[package]] +name = "ic-protobuf" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "bincode", + "candid", + "erased-serde 0.3.31", + "prost", + "serde", + "serde_json", + "slog", +] + +[[package]] +name = "ic-registry-canister-api" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "ic-base-types", + "serde", + "thiserror", +] + +[[package]] +name = "ic-registry-client" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "crossbeam-channel", + "ic-interfaces-registry", + "ic-metrics", + "ic-types", + "ic-utils-thread", + "prometheus", +] + +[[package]] +name = "ic-registry-client-fake" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-interfaces-registry", + "ic-types", +] + +[[package]] +name = "ic-registry-client-helpers" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-base-types", + "ic-interfaces-registry", + "ic-management-canister-types", + "ic-protobuf", + "ic-registry-common-proto", + "ic-registry-keys", + "ic-registry-provisional-whitelist", + "ic-registry-routing-table", + "ic-registry-subnet-features", + "ic-types", + "serde_cbor", + "thiserror", +] + +[[package]] +name = "ic-registry-common-proto" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "prost", +] + +[[package]] +name = "ic-registry-keys" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "ic-base-types", + "ic-management-canister-types", + "ic-types", + "serde", +] + +[[package]] +name = "ic-registry-local-registry" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-interfaces-registry", + "ic-protobuf", + "ic-registry-client-fake", + "ic-registry-client-helpers", + "ic-registry-local-store", + "ic-registry-nns-data-provider", + "ic-registry-transport", + "ic-types", + "thiserror", + "tokio", + "url", +] + +[[package]] +name = "ic-registry-local-store" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-interfaces-registry", + "ic-registry-common-proto", + "ic-sys", + "ic-types", + "prost", +] + +[[package]] +name = "ic-registry-local-store-artifacts" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" + +[[package]] +name = "ic-registry-nns-data-provider" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "chrono", + "ic-canister-client", + "ic-certification 0.9.0", + "ic-crypto-tree-hash", + "ic-interfaces-registry", + "ic-nns-constants", + "ic-registry-transport", + "ic-types", + "prost", + "rand", + "serde", + "tree-deserializer", + "url", +] + +[[package]] +name = "ic-registry-node-provider-rewards" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-base-types", + "ic-protobuf", +] + +[[package]] +name = "ic-registry-provisional-whitelist" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-base-types", + "ic-protobuf", +] + +[[package]] +name = "ic-registry-routing-table" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "ic-base-types", + "ic-protobuf", + "serde", +] + +[[package]] +name = "ic-registry-subnet-features" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "ic-management-canister-types", + "ic-protobuf", + "serde", +] + +[[package]] +name = "ic-registry-subnet-type" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "ic-protobuf", + "serde", + "strum 0.26.3", + "strum_macros 0.26.4", +] + +[[package]] +name = "ic-registry-transport" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "ic-base-types", + "ic-protobuf", + "prost", + "serde", +] + +[[package]] +name = "ic-replicated-state" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "bit-vec", + "cvt", + "ic-base-types", + "ic-btc-interface", + "ic-btc-replica-types", + "ic-certification-version", + "ic-config", + "ic-crypto-sha2", + "ic-error-types", + "ic-interfaces", + "ic-limits", + "ic-logger", + "ic-management-canister-types", + "ic-metrics", + "ic-protobuf", + "ic-registry-routing-table", + "ic-registry-subnet-features", + "ic-registry-subnet-type", + "ic-sys", + "ic-types", + "ic-utils 0.9.0", + "ic-validate-eq", + "ic-validate-eq-derive", + "ic-wasm-types", + "itertools 0.12.1", + "lazy_static", + "libc", + "maplit", + "nix", + "phantom_newtype", + "prometheus", + "prost", + "rand", + "rand_chacha", + "rayon", + "serde", + "slog", + "static_assertions", + "strum 0.26.3", + "strum_macros 0.26.4", + "tempfile", + "uuid", +] + +[[package]] +name = "ic-sns-governance" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "base64 0.13.1", + "build-info", + "build-info-build", + "candid", + "clap 3.2.25", + "comparable", + "dfn_candid", + "dfn_core", + "hex", + "ic-base-types", + "ic-canister-log", + "ic-canister-profiler", + "ic-canisters-http-types", + "ic-crypto-sha2", + "ic-icrc1-ledger", + "ic-ledger-core", + "ic-management-canister-types", + "ic-metrics-encoder", + "ic-nervous-system-canisters", + "ic-nervous-system-clients", + "ic-nervous-system-collections-union-multi-map", + "ic-nervous-system-common", + "ic-nervous-system-common-build-metadata", + "ic-nervous-system-governance", + "ic-nervous-system-lock", + "ic-nervous-system-proto", + "ic-nervous-system-root", + "ic-nervous-system-runtime", + "ic-nns-constants", + "ic-protobuf", + "ic-sns-governance-proposal-criticality", + "ic-sns-governance-proposals-amount-total-limit", + "ic-sns-governance-token-valuation", + "ic-utils 0.9.0", + "icp-ledger", + "icrc-ledger-client", + "icrc-ledger-types", + "lazy_static", + "maplit", + "num-traits", + "prost", + "prost-build", + "rand", + "rand_chacha", + "rust_decimal", + "rust_decimal_macros", + "serde", + "serde_bytes", + "strum 0.26.3", + "strum_macros 0.26.4", +] + +[[package]] +name = "ic-sns-governance-proposal-criticality" +version = "0.0.1" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-nervous-system-proto", +] + +[[package]] +name = "ic-sns-governance-proposals-amount-total-limit" +version = "0.0.1" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-sns-governance-token-valuation", + "num-traits", + "rust_decimal", + "rust_decimal_macros", +] + +[[package]] +name = "ic-sns-governance-token-valuation" +version = "0.0.1" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "candid", + "cycles-minting-canister", + "futures", + "ic-base-types", + "ic-cdk 0.13.5", + "ic-nervous-system-common", + "ic-nervous-system-runtime", + "ic-nervous-system-string", + "ic-nns-constants", + "ic-sns-swap-proto-library", + "icrc-ledger-types", + "mockall", + "rust_decimal", +] + +[[package]] +name = "ic-sns-init" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "base64 0.13.1", + "candid", + "ic-base-types", + "ic-icrc1-index-ng", + "ic-icrc1-ledger", + "ic-ledger-canister-core", + "ic-ledger-core", + "ic-nervous-system-common", + "ic-nervous-system-proto", + "ic-nns-constants", + "ic-sns-governance", + "ic-sns-root", + "ic-sns-swap", + "icrc-ledger-types", + "isocountry", + "lazy_static", + "maplit", + "prost", + "serde", + "serde_yaml", +] + +[[package]] +name = "ic-sns-root" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "build-info", + "build-info-build", + "candid", + "comparable", + "futures", + "ic-base-types", + "ic-canister-log", + "ic-canisters-http-types", + "ic-cdk 0.13.5", + "ic-cdk-macros 0.9.0", + "ic-management-canister-types", + "ic-metrics-encoder", + "ic-nervous-system-clients", + "ic-nervous-system-common", + "ic-nervous-system-common-build-metadata", + "ic-nervous-system-root", + "ic-nervous-system-runtime", + "ic-sns-swap", + "icrc-ledger-types", + "prost", + "serde", +] + +[[package]] +name = "ic-sns-swap" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "build-info", + "build-info-build", + "candid", + "comparable", + "dfn_candid", + "dfn_core", + "hex", + "ic-base-types", + "ic-canister-log", + "ic-canisters-http-types", + "ic-ledger-core", + "ic-metrics-encoder", + "ic-nervous-system-canisters", + "ic-nervous-system-clients", + "ic-nervous-system-common", + "ic-nervous-system-proto", + "ic-nervous-system-runtime", + "ic-neurons-fund", + "ic-sns-governance", + "ic-stable-structures", + "ic-utils 0.9.0", + "icp-ledger", + "icrc-ledger-types", + "itertools 0.12.1", + "lazy_static", + "maplit", + "prost", + "rust_decimal", + "rust_decimal_macros", + "serde", + "serde_bytes", +] + +[[package]] +name = "ic-sns-swap-proto-library" +version = "0.0.1" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "comparable", + "ic-base-types", + "ic-nervous-system-proto", + "ic-utils 0.9.0", + "prost", + "serde", + "serde_bytes", +] + +[[package]] +name = "ic-sns-wasm" +version = "1.0.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "candid", + "dfn_candid", + "dfn_core", + "dfn_http_metrics", + "futures", + "hex", + "ic-base-types", + "ic-cdk 0.13.5", + "ic-crypto-sha2", + "ic-management-canister-types", + "ic-metrics-encoder", + "ic-nervous-system-clients", + "ic-nervous-system-common", + "ic-nervous-system-proto", + "ic-nervous-system-runtime", + "ic-nns-constants", + "ic-nns-handler-root-interface", + "ic-sns-governance", + "ic-sns-init", + "ic-sns-root", + "ic-types", + "ic-utils 0.9.0", + "ic-wasm", + "icrc-ledger-types", + "maplit", + "prost", + "serde", + "serde_bytes", + "serde_json", +] + +[[package]] +name = "ic-stable-structures" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03f3044466a69802de74e710dc0300b706a05696a0531c942ca856751a13b0db" +dependencies = [ + "ic_principal", +] + +[[package]] +name = "ic-sys" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "cvt", + "hex", + "ic-crypto-sha2", + "lazy_static", + "libc", + "nix", + "phantom_newtype", + "prost", + "rand", + "thiserror", + "tokio", + "wsl", +] + +[[package]] +name = "ic-transport-types" +version = "0.37.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "875dc4704780383112e8e8b5063a1b98de114321d0c7d3e7f635dcf360a57fba" +dependencies = [ + "candid", + "hex", + "ic-certification 2.6.0", + "leb128", + "serde", + "serde_bytes", + "serde_repr", + "sha2 0.10.8", + "thiserror", +] + +[[package]] +name = "ic-types" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "base64 0.13.1", + "bincode", + "candid", + "chrono", + "hex", + "ic-base-types", + "ic-btc-replica-types", + "ic-crypto-internal-types", + "ic-crypto-sha2", + "ic-crypto-tree-hash", + "ic-error-types", + "ic-limits", + "ic-management-canister-types", + "ic-protobuf", + "ic-utils 0.9.0", + "ic-validate-eq", + "ic-validate-eq-derive", + "maplit", + "once_cell", + "phantom_newtype", + "prost", + "serde", + "serde_bytes", + "serde_cbor", + "serde_json", + "serde_with", + "strum 0.26.3", + "strum_macros 0.26.4", + "thiserror", + "thousands", +] + +[[package]] +name = "ic-utils" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "hex", + "scoped_threadpool", + "serde", + "serde_bytes", +] + +[[package]] +name = "ic-utils" +version = "0.37.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2fa832296800758c9c921dd1704985ded6b3e6fbc3aee409727eb1f00d69a595" +dependencies = [ + "async-trait", + "candid", + "futures-util", + "ic-agent", + "once_cell", + "semver", + "serde", + "serde_bytes", + "sha2 0.10.8", + "strum 0.26.3", + "strum_macros 0.26.4", + "thiserror", + "time", + "tokio", +] + +[[package]] +name = "ic-utils-thread" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" + +[[package]] +name = "ic-validate-eq" +version = "0.0.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-validate-eq-derive", +] + +[[package]] +name = "ic-validate-eq-derive" +version = "0.0.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "darling 0.20.10", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "ic-verify-bls-signature" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d420b25c0091059f6c3c23a21427a81915e6e0aca3b79e0d403ed767f286a3b9" +dependencies = [ + "hex", + "ic_bls12_381", + "lazy_static", + "pairing", + "rand", + "sha2 0.10.8", +] + +[[package]] +name = "ic-wasm" +version = "0.8.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19fabaeecfe37f24b433c62489242fc54503d98d4cc8d0f9ef7544dfdfc0ddcb" +dependencies = [ + "anyhow", + "candid", + "clap 4.5.19", + "libflate", + "rustc-demangle", + "serde", + "serde_json", + "thiserror", + "walrus", +] + +[[package]] +name = "ic-wasm-types" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-crypto-sha2", + "ic-sys", + "ic-types", + "ic-utils 0.9.0", + "ic-validate-eq", + "ic-validate-eq-derive", + "serde", +] + +[[package]] +name = "ic-xrc-types" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1a2b2eaa332201f4abbd1192a307f7a5b6ea55d077a7f489ac62bf8e358b5a2" +dependencies = [ + "candid", + "serde", +] + +[[package]] +name = "ic0" +version = "0.18.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "576c539151d4769fb4d1a0c25c4108dd18facd04c5695b02cf2d226ab4e43aa5" + +[[package]] +name = "ic0" +version = "0.21.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a54b5297861c651551676e8c43df805dad175cc33bc97dbd992edbbb85dcbcdf" + +[[package]] +name = "ic0" +version = "0.23.0" +source = "git+https://github.com/dfinity/cdk-rs.git?rev=97c4e19c76b7f072ce8507cb7e7a527582111272#97c4e19c76b7f072ce8507cb7e7a527582111272" + +[[package]] +name = "ic_bls12_381" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22c65787944f32af084dffd0c68c1e544237b76e215654ddea8cd9f527dd8b69" +dependencies = [ + "digest 0.10.7", + "ff", + "group", + "pairing", + "rand_core", + "subtle", + "zeroize", +] + +[[package]] +name = "ic_principal" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1762deb6f7c8d8c2bdee4b6c5a47b60195b74e9b5280faa5ba29692f8e17429c" +dependencies = [ + "crc32fast", + "data-encoding", + "serde", + "sha2 0.10.8", + "thiserror", +] + +[[package]] +name = "icp-ledger" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "comparable", + "crc32fast", + "dfn_candid", + "dfn_core", + "dfn_protobuf", + "hex", + "ic-base-types", + "ic-cdk 0.13.5", + "ic-crypto-sha2", + "ic-ledger-canister-core", + "ic-ledger-core", + "ic-ledger-hash-of", + "icrc-ledger-types", + "lazy_static", + "num-traits", + "on_wire", + "prost", + "serde", + "serde_bytes", + "serde_cbor", + "strum 0.26.3", + "strum_macros 0.26.4", +] + +[[package]] +name = "icrc-ledger-client" +version = "0.1.2" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "async-trait", + "candid", + "icrc-ledger-types", + "serde", +] + +[[package]] +name = "icrc-ledger-types" +version = "0.1.6" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "base32", + "candid", + "crc32fast", + "hex", + "itertools 0.12.1", + "num-bigint 0.4.6", + "num-traits", + "serde", + "serde_bytes", + "sha2 0.10.8", + "strum 0.26.3", + "time", +] + +[[package]] +name = "icu_collections" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526" +dependencies = [ + "displaydoc", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_locid" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637" +dependencies = [ + "displaydoc", + "litemap", + "tinystr", + "writeable", + "zerovec", +] + +[[package]] +name = "icu_locid_transform" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_locid_transform_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_locid_transform_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e" + +[[package]] +name = "icu_normalizer" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_normalizer_data", + "icu_properties", + "icu_provider", + "smallvec", + "utf16_iter", + "utf8_iter", + "write16", + "zerovec", +] + +[[package]] +name = "icu_normalizer_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516" + +[[package]] +name = "icu_properties" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5" +dependencies = [ + "displaydoc", + "icu_collections", + "icu_locid_transform", + "icu_properties_data", + "icu_provider", + "tinystr", + "zerovec", +] + +[[package]] +name = "icu_properties_data" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569" + +[[package]] +name = "icu_provider" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9" +dependencies = [ + "displaydoc", + "icu_locid", + "icu_provider_macros", + "stable_deref_trait", + "tinystr", + "writeable", + "yoke", + "zerofrom", + "zerovec", +] + +[[package]] +name = "icu_provider_macros" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "id-arena" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "25a2bc672d1148e28034f176e01fffebb08b35768468cc954630da77a1449005" + +[[package]] +name = "ident_case" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" + +[[package]] +name = "idna" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6" +dependencies = [ + "unicode-bidi", + "unicode-normalization", +] + +[[package]] +name = "idna" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd69211b9b519e98303c015e21a007e293db403b6c85b9b124e133d25e242cdd" +dependencies = [ + "icu_normalizer", + "icu_properties", + "smallvec", + "utf8_iter", +] + +[[package]] +name = "impl-more" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "206ca75c9c03ba3d4ace2460e57b189f39f43de612c2f85836e65c929701bb2d" + +[[package]] +name = "indexmap" +version = "1.9.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99" +dependencies = [ + "autocfg", + "hashbrown 0.12.3", +] + +[[package]] +name = "indexmap" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +dependencies = [ + "equivalent", + "hashbrown 0.15.0", + "serde", +] + +[[package]] +name = "indicatif" +version = "0.17.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "763a5a8f45087d6bcea4222e7b72c291a054edf80e4ef6efd2a4979878c7bea3" +dependencies = [ + "console", + "instant", + "number_prefix", + "portable-atomic", + "unicode-width", +] + +[[package]] +name = "instant" +version = "0.1.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222" +dependencies = [ + "cfg-if", +] + +[[package]] +name = "ipnet" +version = "2.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "187674a687eed5fe42285b40c6291f9a01517d415fad1c3cbc6a9f778af7fcd4" + +[[package]] +name = "iri-string" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44bd7eced44cfe2cebc674adb2a7124a754a4b5269288d22e9f39f8fada3562d" +dependencies = [ + "memchr", + "serde", +] + +[[package]] +name = "is-terminal" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "261f68e344040fbd0edea105bef17c66edf46f984ddb1115b775ce31be948f4b" +dependencies = [ + "hermit-abi 0.4.0", + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "is_terminal_polyfill" +version = "1.70.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" + +[[package]] +name = "isocountry" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1ea1dc4bf0fb4904ba83ffdb98af3d9c325274e92e6e295e4151e86c96363e04" +dependencies = [ + "serde", + "thiserror", +] + +[[package]] +name = "itertools" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186" +dependencies = [ + "either", +] + +[[package]] +name = "itoa" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" + +[[package]] +name = "js-sys" +version = "0.3.70" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a" +dependencies = [ + "wasm-bindgen", +] + +[[package]] +name = "json5" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "96b0db21af676c1ce64250b5f40f3ce2cf27e4e47cb91ed91eb6fe9350b430c1" +dependencies = [ + "pest", + "pest_derive", + "serde", +] + +[[package]] +name = "jsonwebtoken" +version = "9.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b9ae10193d25051e74945f1ea2d0b42e03cc3b890f7e4cc5faa44997d808193f" +dependencies = [ + "base64 0.21.7", + "js-sys", + "pem 3.0.4", + "ring", + "serde", + "serde_json", + "simple_asn1", +] + +[[package]] +name = "k256" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" +dependencies = [ + "cfg-if", + "ecdsa", + "elliptic-curve", + "once_cell", + "sha2 0.10.8", + "signature", +] + +[[package]] +name = "keccak" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" +dependencies = [ + "cpufeatures", +] + +[[package]] +name = "keyring" +version = "3.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fa83d1ca02db069b5fbe94b23b584d588e989218310c9c15015bb5571ef1a94" +dependencies = [ + "dbus-secret-service", + "security-framework", +] + +[[package]] +name = "language-tags" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4345964bb142484797b161f473a503a434de77149dd8c7427788c6e13379388" + +[[package]] +name = "lazy_static" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" +dependencies = [ + "spin", +] + +[[package]] +name = "leb128" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" + +[[package]] +name = "libc" +version = "0.2.159" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5" + +[[package]] +name = "libdbus-sys" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06085512b750d640299b79be4bad3d2fa90a9c00b1fd9e1b46364f66f0485c72" +dependencies = [ + "pkg-config", +] + +[[package]] +name = "libflate" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "45d9dfdc14ea4ef0900c1cddbc8dcd553fbaacd8a4a282cf4018ae9dd04fb21e" +dependencies = [ + "adler32", + "core2", + "crc32fast", + "dary_heap", + "libflate_lz77", +] + +[[package]] +name = "libflate_lz77" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6e0d73b369f386f1c44abd9c570d5318f55ccde816ff4b562fa452e5182863d" +dependencies = [ + "core2", + "hashbrown 0.14.5", + "rle-decode-fast", +] + +[[package]] +name = "libloading" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2b111a074963af1d37a139918ac6d49ad1d0d5e47f72fd55388619691a7d753" +dependencies = [ + "cc", + "winapi", +] + +[[package]] +name = "libloading" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" +dependencies = [ + "cfg-if", + "winapi", +] + +[[package]] +name = "libm" +version = "0.2.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" + +[[package]] +name = "libredox" +version = "0.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" +dependencies = [ + "bitflags 2.6.0", + "libc", + "redox_syscall", +] + +[[package]] +name = "linux-raw-sys" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" + +[[package]] +name = "litemap" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "643cb0b8d4fcc284004d5fd0d67ccf61dfffadb7f75e1e71bc420f4688a3a704" + +[[package]] +name = "local-channel" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6cbc85e69b8df4b8bb8b89ec634e7189099cea8927a276b7384ce5488e53ec8" +dependencies = [ + "futures-core", + "futures-sink", + "local-waker", +] + +[[package]] +name = "local-waker" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d873d7c67ce09b42110d801813efbc9364414e356be9935700d368351657487" + +[[package]] +name = "lock_api" +version = "0.4.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17" +dependencies = [ + "autocfg", + "scopeguard", +] + +[[package]] +name = "log" +version = "0.4.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" + +[[package]] +name = "log-fetcher" +version = "0.5.5" +dependencies = [ + "anyhow", + "clap 4.5.19", + "log", + "pretty_env_logger", + "reqwest", + "serde", + "serde_json", + "tokio", + "url", +] + +[[package]] +name = "log-noise-filter-backend" +version = "0.5.5" +dependencies = [ + "axum 0.7.7", + "clap 4.5.19", + "regex", + "serde", + "serde_json", + "slog", + "slog-async", + "slog-term", + "tokio", +] + +[[package]] +name = "log-noise-filter-downloader" +version = "0.5.5" +dependencies = [ + "anyhow", + "clap 4.5.19", + "log-noise-filter-backend", + "reqwest", + "serde", + "serde_json", + "slog", + "slog-async", + "slog-term", + "tokio", + "url", +] + +[[package]] +name = "lzma-sys" +version = "0.1.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5fda04ab3764e6cde78b9974eec4f779acaba7c4e84b36eca3cf77c581b85d27" +dependencies = [ + "cc", + "libc", + "pkg-config", +] + +[[package]] +name = "maplit" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d" + +[[package]] +name = "matchit" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e7465ac9959cc2b1404e8e2367b43684a6d13790fe23056cc8c6c5a6b7bcb94" + +[[package]] +name = "memchr" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" + +[[package]] +name = "memoffset" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5aa361d4faea93603064a027415f07bd8e1d5c88c9fbf68bf56a285428fd79ce" +dependencies = [ + "autocfg", +] + +[[package]] +name = "merlin" +version = "3.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "58c38e2799fc0978b65dfff8023ec7843e2330bb462f19198840b34b6582397d" +dependencies = [ + "byteorder", + "keccak", + "rand_core", + "zeroize", +] + +[[package]] +name = "mime" +version = "0.3.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a" + +[[package]] +name = "minimal-lexical" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" + +[[package]] +name = "miniz_oxide" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1" +dependencies = [ + "adler2", +] + +[[package]] +name = "mio" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" +dependencies = [ + "hermit-abi 0.3.9", + "libc", + "log", + "wasi", + "windows-sys 0.52.0", +] + +[[package]] +name = "mockall" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d4c28b3fb6d753d28c20e826cd46ee611fda1cf3cde03a443a974043247c065a" +dependencies = [ + "cfg-if", + "downcast", + "fragile", + "mockall_derive", + "predicates", + "predicates-tree", +] + +[[package]] +name = "mockall_derive" +version = "0.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "341014e7f530314e9a1fdbc7400b244efea7122662c96bfa248c31da5bfb2020" +dependencies = [ + "cfg-if", + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "multimap" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" + +[[package]] +name = "multiservice-discovery" +version = "0.5.5" +dependencies = [ + "anyhow", + "assert_cmd", + "axum 0.7.7", + "axum-otel-metrics", + "base64 0.22.1", + "clap 4.5.19", + "crossbeam", + "crossbeam-channel", + "flate2", + "futures", + "futures-util", + "humantime", + "ic-async-utils", + "ic-crypto-utils-threshold-sig-der", + "ic-management-types", + "ic-registry-client", + "ic-types", + "multiservice-discovery-shared", + "opentelemetry", + "reqwest", + "retry", + "serde", + "serde_json", + "service-discovery", + "slog", + "slog-async", + "slog-term", + "tempfile", + "tokio", + "url", +] + +[[package]] +name = "multiservice-discovery-downloader" +version = "0.5.5" +dependencies = [ + "clap 4.5.19", + "crossbeam", + "crossbeam-channel", + "futures-util", + "humantime", + "ic-async-utils", + "multiservice-discovery-shared", + "regex", + "reqwest", + "service-discovery", + "slog", + "slog-async", + "slog-term", + "tokio", + "url", +] + +[[package]] +name = "multiservice-discovery-shared" +version = "0.5.5" +dependencies = [ + "erased-serde 0.4.5", + "ic-sns-wasm", + "ic-types", + "regex", + "serde", + "serde_json", + "service-discovery", +] + +[[package]] +name = "nix" +version = "0.24.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa52e972a9a719cecb6864fb88568781eb706bac2cd1d4f04a648542dbf78069" +dependencies = [ + "bitflags 1.3.2", + "cfg-if", + "libc", + "memoffset", +] + +[[package]] +name = "node-status-updater" +version = "0.5.5" +dependencies = [ + "anyhow", + "clap 4.5.19", + "crossbeam", + "crossbeam-channel", + "futures-util", + "humantime", + "ic-agent", + "ic-async-utils", + "ic-metrics", + "obs-canister-clients", + "prometheus-http-query", + "service-discovery", + "slog", + "slog-async", + "slog-term", + "tokio", + "url", +] + +[[package]] +name = "nom" +version = "7.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a" +dependencies = [ + "memchr", + "minimal-lexical", +] + +[[package]] +name = "num" +version = "0.4.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "35bd024e8b2ff75562e5f34e7f4905839deb4b22955ef5e73d2fea1b9813cb23" +dependencies = [ + "num-bigint 0.4.6", + "num-complex", + "num-integer", + "num-iter", + "num-rational", + "num-traits", +] + +[[package]] +name = "num-bigint" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "090c7f9998ee0ff65aa5b723e4009f7b217707f1fb5ea551329cc4d6231fb304" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-bigint" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" +dependencies = [ + "num-integer", + "num-traits", + "serde", +] + +[[package]] +name = "num-bigint-dig" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc84195820f291c7697304f3cbdadd1cb7199c0efc917ff5eafd71225c136151" +dependencies = [ + "byteorder", + "lazy_static", + "libm", + "num-integer", + "num-iter", + "num-traits", + "rand", + "serde", + "smallvec", +] + +[[package]] +name = "num-complex" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73f88a1307638156682bada9d7604135552957b7818057dcef22705b4d509495" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-conv" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "51d515d32fb182ee37cda2ccdcb92950d6a3c2893aa280e540671c2cd0f3b1d9" + +[[package]] +name = "num-integer" +version = "0.1.46" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7969661fd2958a5cb096e56c8e1ad0444ac2bbcd0061bd28660485a44879858f" +dependencies = [ + "num-traits", +] + +[[package]] +name = "num-iter" +version = "0.1.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1429034a0490724d0075ebb2bc9e875d6503c3cf69e235a8941aa757d83ef5bf" +dependencies = [ + "autocfg", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-rational" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f83d14da390562dca69fc84082e73e548e1ad308d24accdedd2720017cb37824" +dependencies = [ + "num-bigint 0.4.6", + "num-integer", + "num-traits", +] + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", + "libm", +] + +[[package]] +name = "num_cpus" +version = "1.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" +dependencies = [ + "hermit-abi 0.3.9", + "libc", +] + +[[package]] +name = "number_prefix" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" + +[[package]] +name = "object" +version = "0.36.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "084f1a5821ac4c651660a94a7153d27ac9d8a53736203f58b31945ded098070a" +dependencies = [ + "memchr", +] + +[[package]] +name = "obs-canister-clients" +version = "0.5.5" +dependencies = [ + "candid", + "ic-agent", + "rand", + "reqwest", + "serde", + "url", +] + +[[package]] +name = "octocrab" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9305e4c99543ecd0f42bd659c9e9d6ca7115fe5e37d5c85a7277b1db0d4c4101" +dependencies = [ + "arc-swap", + "async-trait", + "base64 0.22.1", + "bytes", + "cfg-if", + "chrono", + "either", + "futures", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "hyper 1.4.1", + "hyper-rustls 0.26.0", + "hyper-timeout 0.5.1", + "hyper-util", + "jsonwebtoken", + "once_cell", + "percent-encoding", + "pin-project", + "secrecy", + "serde", + "serde_json", + "serde_path_to_error", + "serde_urlencoded", + "snafu", + "tokio", + "tower 0.4.13", + "tower-http", + "tracing", + "url", +] + +[[package]] +name = "oid-registry" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8d8034d9489cdaf79228eb9f6a3b8d7bb32ba00d6645ebd48eef4077ceb5bd9" +dependencies = [ + "asn1-rs", +] + +[[package]] +name = "on_wire" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" + +[[package]] +name = "once_cell" +version = "1.20.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "82881c4be219ab5faaf2ad5e5e5ecdff8c66bd7402ca3160975c93b24961afd1" +dependencies = [ + "portable-atomic", +] + +[[package]] +name = "opaque-debug" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c08d65885ee38876c4f86fa503fb49d7b507c2b62552df7c70b2fce627e06381" + +[[package]] +name = "openssl-probe" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" + +[[package]] +name = "opentelemetry" +version = "0.22.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "900d57987be3f2aeb70d385fff9b27fb74c5723cc9a52d904d4f9c807a0667bf" +dependencies = [ + "futures-core", + "futures-sink", + "js-sys", + "once_cell", + "pin-project-lite", + "thiserror", + "urlencoding", +] + +[[package]] +name = "opentelemetry-prometheus" +version = "0.15.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30bbcf6341cab7e2193e5843f0ac36c446a5b3fccb28747afaeda17996dcd02e" +dependencies = [ + "once_cell", + "opentelemetry", + "opentelemetry_sdk", + "prometheus", + "protobuf", +] + +[[package]] +name = "opentelemetry-semantic-conventions" +version = "0.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f9ab5bd6c42fb9349dcf28af2ba9a0667f697f9bdcca045d39f2cec5543e2910" + +[[package]] +name = "opentelemetry_sdk" +version = "0.22.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9e90c7113be649e31e9a0f8b5ee24ed7a16923b322c3c5ab6367469c049d6b7e" +dependencies = [ + "async-trait", + "crossbeam-channel", + "futures-channel", + "futures-executor", + "futures-util", + "glob", + "once_cell", + "opentelemetry", + "ordered-float", + "percent-encoding", + "rand", + "thiserror", + "tokio", + "tokio-stream", +] + +[[package]] +name = "option-ext" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" + +[[package]] +name = "ordered-float" +version = "4.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d501f1a72f71d3c063a6bbc8f7271fa73aa09fe5d6283b6571e2ed176a2537" +dependencies = [ + "num-traits", +] + +[[package]] +name = "os_str_bytes" +version = "6.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2355d85b9a3786f481747ced0e0ff2ba35213a1f9bd406ed906554d7af805a1" + +[[package]] +name = "p256" +version = "0.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c9863ad85fa8f4460f9c48cb909d38a0d689dba1f6f6988a5e3e0d31071bcd4b" +dependencies = [ + "ecdsa", + "elliptic-curve", + "primeorder", + "sha2 0.10.8", +] + +[[package]] +name = "pairing" +version = "0.23.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81fec4625e73cf41ef4bb6846cafa6d44736525f442ba45e407c4a000a13996f" +dependencies = [ + "group", +] + +[[package]] +name = "papergrid" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7419ad52a7de9b60d33e11085a0fe3df1fbd5926aa3f93d3dd53afbc9e86725" +dependencies = [ + "bytecount", + "fnv", + "unicode-width", +] + +[[package]] +name = "parking" +version = "2.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" + +[[package]] +name = "parking_lot" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" +dependencies = [ + "lock_api", + "parking_lot_core", +] + +[[package]] +name = "parking_lot_core" +version = "0.9.10" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" +dependencies = [ + "cfg-if", + "libc", + "redox_syscall", + "smallvec", + "windows-targets 0.52.6", +] + +[[package]] +name = "paste" +version = "1.0.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a" + +[[package]] +name = "pem" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8835c273a76a90455d7344889b0964598e3316e2a79ede8e36f16bdcf2228b8" +dependencies = [ + "base64 0.13.1", +] + +[[package]] +name = "pem" +version = "3.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e459365e590736a54c3fa561947c84837534b8e9af6fc5bf781307e82658fae" +dependencies = [ + "base64 0.22.1", + "serde", +] + +[[package]] +name = "pem-rfc7468" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412" +dependencies = [ + "base64ct", +] + +[[package]] +name = "percent-encoding" +version = "2.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" + +[[package]] +name = "pest" +version = "2.7.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fdbef9d1d47087a895abd220ed25eb4ad973a5e26f6a4367b038c25e28dfc2d9" +dependencies = [ + "memchr", + "thiserror", + "ucd-trie", +] + +[[package]] +name = "pest_derive" +version = "2.7.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d3a6e3394ec80feb3b6393c725571754c6188490265c61aaf260810d6b95aa0" +dependencies = [ + "pest", + "pest_generator", +] + +[[package]] +name = "pest_generator" +version = "2.7.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94429506bde1ca69d1b5601962c73f4172ab4726571a59ea95931218cb0e930e" +dependencies = [ + "pest", + "pest_meta", + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "pest_meta" +version = "2.7.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac8a071862e93690b6e34e9a5fb8e33ff3734473ac0245b27232222c4906a33f" +dependencies = [ + "once_cell", + "pest", + "sha2 0.10.8", +] + +[[package]] +name = "petgraph" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" +dependencies = [ + "fixedbitset", + "indexmap 2.6.0", +] + +[[package]] +name = "phantom_newtype" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "candid", + "num-traits", + "serde", + "slog", +] + +[[package]] +name = "pin-project" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3" +dependencies = [ + "pin-project-internal", +] + +[[package]] +name = "pin-project-internal" +version = "1.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "pin-project-lite" +version = "0.2.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02" + +[[package]] +name = "pin-utils" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" + +[[package]] +name = "pkcs11" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3aca6d67e4c8613bfe455599d0233d00735f85df2001f6bfd9bb7ac0496b10af" +dependencies = [ + "libloading 0.5.2", + "num-bigint 0.2.6", +] + +[[package]] +name = "pkcs8" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f950b2377845cebe5cf8b5165cb3cc1a5e0fa5cfa3e1f7f55707d8fd82e0a7b7" +dependencies = [ + "der", + "spki", +] + +[[package]] +name = "pkg-config" +version = "0.3.31" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" + +[[package]] +name = "portable-atomic" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2" + +[[package]] +name = "powerfmt" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "439ee305def115ba05938db6eb1644ff94165c5ab5e9420d1c1bcedbba909391" + +[[package]] +name = "ppv-lite86" +version = "0.2.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04" +dependencies = [ + "zerocopy", +] + +[[package]] +name = "predicates" +version = "3.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7e9086cc7640c29a356d1a29fd134380bee9d8f79a17410aa76e7ad295f42c97" +dependencies = [ + "anstyle", + "difflib", + "predicates-core", +] + +[[package]] +name = "predicates-core" +version = "1.0.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae8177bee8e75d6846599c6b9ff679ed51e882816914eec639944d7c9aa11931" + +[[package]] +name = "predicates-tree" +version = "1.0.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "41b740d195ed3166cd147c8047ec98db0e22ec019eb8eeb76d343b795304fb13" +dependencies = [ + "predicates-core", + "termtree", +] + +[[package]] +name = "pretty" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b55c4d17d994b637e2f4daf6e5dc5d660d209d5642377d675d7a1c3ab69fa579" +dependencies = [ + "arrayvec 0.5.2", + "typed-arena", + "unicode-width", +] + +[[package]] +name = "pretty_assertions" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3ae130e2f271fbc2ac3a40fb1d07180839cdbbe443c7a27e1e3c13c5cac0116d" +dependencies = [ + "diff", + "yansi 1.0.1", +] + +[[package]] +name = "pretty_env_logger" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "865724d4dbe39d9f3dd3b52b88d859d66bcb2d6a0acfd5ea68a65fb66d4bdc1c" +dependencies = [ + "env_logger 0.10.2", + "log", +] + +[[package]] +name = "prettyplease" +version = "0.2.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "479cf940fbbb3426c32c5d5176f62ad57549a0bb84773423ba8be9d089f5faba" +dependencies = [ + "proc-macro2", + "syn 2.0.79", +] + +[[package]] +name = "primeorder" +version = "0.13.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "353e1ca18966c16d9deb1c69278edbc5f194139612772bd9537af60ac231e1e6" +dependencies = [ + "elliptic-curve", +] + +[[package]] +name = "priority-queue" +version = "1.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0bda9164fe05bc9225752d54aae413343c36f684380005398a6a8fde95fe785" +dependencies = [ + "autocfg", + "indexmap 1.9.3", +] + +[[package]] +name = "proc-macro-crate" +version = "3.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" +dependencies = [ + "toml_edit", +] + +[[package]] +name = "proc-macro-error" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +dependencies = [ + "proc-macro-error-attr", + "proc-macro2", + "quote", + "syn 1.0.109", + "version_check", +] + +[[package]] +name = "proc-macro-error-attr" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +dependencies = [ + "proc-macro2", + "quote", + "version_check", +] + +[[package]] +name = "proc-macro-hack" +version = "0.5.20+deprecated" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" + +[[package]] +name = "proc-macro2" +version = "1.0.86" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "procfs" +version = "0.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ab8809e0c18450a2db0f236d2a44ec0b4c1412d0eb936233579f0990faa5d5cd" +dependencies = [ + "bitflags 1.3.2", + "byteorder", + "flate2", + "hex", + "lazy_static", + "libc", +] + +[[package]] +name = "procfs" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "731e0d9356b0c25f16f33b5be79b1c57b562f141ebfcdb0ad8ac2c13a24293b4" +dependencies = [ + "bitflags 2.6.0", + "hex", + "lazy_static", + "procfs-core", + "rustix", +] + +[[package]] +name = "procfs-core" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2d3554923a69f4ce04c4a754260c338f505ce22642d3830e049a399fc2059a29" +dependencies = [ + "bitflags 2.6.0", + "hex", +] + +[[package]] +name = "prometheus" +version = "0.13.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3d33c28a30771f7f96db69893f78b857f7450d7e0237e9c8fc6427a81bae7ed1" +dependencies = [ + "cfg-if", + "fnv", + "lazy_static", + "libc", + "memchr", + "parking_lot", + "procfs 0.16.0", + "protobuf", + "thiserror", +] + +[[package]] +name = "prometheus-config-updater" +version = "0.5.5" +dependencies = [ + "anyhow", + "base64 0.22.1", + "clap 4.5.19", + "config-writer-common", + "crossbeam", + "futures-util", + "humantime", + "ic-async-utils", + "ic-config", + "ic-crypto-utils-threshold-sig-der", + "ic-http-endpoints-metrics", + "ic-metrics", + "ic-types", + "regex", + "serde", + "serde_json", + "service-discovery", + "slog", + "slog-async", + "slog-term", + "tokio", + "url", +] + +[[package]] +name = "prometheus-http-query" +version = "0.8.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fcebfa99f03ae51220778316b37d24981e36322c82c24848f48c5bd0f64cbdb" +dependencies = [ + "enum-as-inner", + "mime", + "reqwest", + "serde", + "time", + "url", +] + +[[package]] +name = "prometheus-parse" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "811031bea65e5a401fb2e1f37d802cca6601e204ac463809a3189352d13b78a5" +dependencies = [ + "chrono", + "itertools 0.12.1", + "once_cell", + "regex", +] + +[[package]] +name = "prost" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29" +dependencies = [ + "bytes", + "prost-derive", +] + +[[package]] +name = "prost-build" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" +dependencies = [ + "bytes", + "heck 0.5.0", + "itertools 0.12.1", + "log", + "multimap", + "once_cell", + "petgraph", + "prettyplease", + "prost", + "prost-types", + "regex", + "syn 2.0.79", + "tempfile", +] + +[[package]] +name = "prost-derive" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" +dependencies = [ + "anyhow", + "itertools 0.12.1", + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "prost-types" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0" +dependencies = [ + "prost", +] + +[[package]] +name = "protobuf" +version = "2.28.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94" + +[[package]] +name = "psm" +version = "0.1.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa37f80ca58604976033fae9515a8a2989fc13797d953f7c04fb8fa36a11f205" +dependencies = [ + "cc", +] + +[[package]] +name = "ptr_meta" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0738ccf7ea06b608c10564b31debd4f5bc5e197fc8bfe088f68ae5ce81e7a4f1" +dependencies = [ + "ptr_meta_derive", +] + +[[package]] +name = "ptr_meta_derive" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "16b845dbfca988fa33db069c0e230574d15a3088f147a87b64c7589eb662c9ac" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "quick-xml" +version = "0.23.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "11bafc859c6815fbaffbbbf4229ecb767ac913fecb27f9ad4343662e9ef099ea" +dependencies = [ + "memchr", +] + +[[package]] +name = "quinn" +version = "0.11.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c7c5fdde3cdae7203427dc4f0a68fe0ed09833edc525a03456b153b79828684" +dependencies = [ + "bytes", + "pin-project-lite", + "quinn-proto", + "quinn-udp", + "rustc-hash", + "rustls 0.23.13", + "socket2", + "thiserror", + "tokio", + "tracing", +] + +[[package]] +name = "quinn-proto" +version = "0.11.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fadfaed2cd7f389d0161bb73eeb07b7b78f8691047a6f3e73caaeae55310a4a6" +dependencies = [ + "bytes", + "rand", + "ring", + "rustc-hash", + "rustls 0.23.13", + "slab", + "thiserror", + "tinyvec", + "tracing", +] + +[[package]] +name = "quinn-udp" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4fe68c2e9e1a1234e218683dbdf9f9dfcb094113c5ac2b938dfcb9bab4c4140b" +dependencies = [ + "libc", + "once_cell", + "socket2", + "tracing", + "windows-sys 0.59.0", +] + +[[package]] +name = "quote" +version = "1.0.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "radium" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc33ff2d4973d518d823d61aa239014831e521c75da58e3df4840d3f47749d09" + +[[package]] +name = "rand" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404" +dependencies = [ + "libc", + "rand_chacha", + "rand_core", +] + +[[package]] +name = "rand_chacha" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88" +dependencies = [ + "ppv-lite86", + "rand_core", +] + +[[package]] +name = "rand_core" +version = "0.6.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c" +dependencies = [ + "getrandom", +] + +[[package]] +name = "rand_seeder" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4a9febe641d2842ffc76ee962668a17578767c4e01735e4802b21ed9a24b2e4e" +dependencies = [ + "rand_core", +] + +[[package]] +name = "rangemap" +version = "1.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f60fcc7d6849342eff22c4350c8b9a989ee8ceabc4b481253e8946b9fe83d684" + +[[package]] +name = "rayon" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa" +dependencies = [ + "either", + "rayon-core", +] + +[[package]] +name = "rayon-core" +version = "1.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +dependencies = [ + "crossbeam-deque", + "crossbeam-utils", +] + +[[package]] +name = "redox_syscall" +version = "0.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f" +dependencies = [ + "bitflags 2.6.0", +] + +[[package]] +name = "redox_users" +version = "0.4.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" +dependencies = [ + "getrandom", + "libredox", + "thiserror", +] + +[[package]] +name = "regex" +version = "1.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38200e5ee88914975b69f657f0801b6f6dccafd44fd9326302a4aaeecfacb1d8" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-lite" +version = "0.1.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53a49587ad06b26609c52e423de037e7f57f20d53535d66e08c695f347df952a" + +[[package]] +name = "regex-syntax" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" + +[[package]] +name = "registry-canister" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "build-info", + "build-info-build", + "candid", + "dfn_candid", + "dfn_core", + "dfn_http_metrics", + "futures", + "ic-base-types", + "ic-cdk 0.13.5", + "ic-certified-map", + "ic-crypto-node-key-validation", + "ic-crypto-sha2", + "ic-crypto-utils-basic-sig", + "ic-crypto-utils-ni-dkg", + "ic-management-canister-types", + "ic-metrics-encoder", + "ic-nervous-system-canisters", + "ic-nervous-system-common", + "ic-nervous-system-common-build-metadata", + "ic-nns-common", + "ic-nns-constants", + "ic-protobuf", + "ic-registry-canister-api", + "ic-registry-keys", + "ic-registry-node-provider-rewards", + "ic-registry-routing-table", + "ic-registry-subnet-features", + "ic-registry-subnet-type", + "ic-registry-transport", + "ic-types", + "idna 1.0.2", + "ipnet", + "lazy_static", + "leb128", + "on_wire", + "prost", + "serde", + "url", +] + +[[package]] +name = "rend" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "71fe3824f5629716b1589be05dacd749f6aa084c87e00e016714a8cdfccc997c" +dependencies = [ + "bytecheck", +] + +[[package]] +name = "reqwest" +version = "0.12.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f713147fbe92361e52392c73b8c9e48c04c6625bce969ef54dc901e58e042a7b" +dependencies = [ + "base64 0.22.1", + "bytes", + "futures-channel", + "futures-core", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "hyper 1.4.1", + "hyper-rustls 0.27.3", + "hyper-util", + "ipnet", + "js-sys", + "log", + "mime", + "once_cell", + "percent-encoding", + "pin-project-lite", + "quinn", + "rustls 0.23.13", + "rustls-pemfile", + "rustls-pki-types", + "serde", + "serde_json", + "serde_urlencoded", + "sync_wrapper 1.0.1", + "tokio", + "tokio-rustls 0.26.0", + "tokio-util", + "tower-service", + "url", + "wasm-bindgen", + "wasm-bindgen-futures", + "wasm-streams", + "web-sys", + "webpki-roots", + "windows-registry", +] + +[[package]] +name = "retry" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9166d72162de3575f950507683fac47e30f6f2c3836b71b7fbc61aa517c9c5f4" +dependencies = [ + "rand", +] + +[[package]] +name = "rfc6979" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dd2a808d456c4a54e300a23e9f5a67e122c3024119acbfd73e3bf664491cb2" +dependencies = [ + "hmac", + "subtle", +] + +[[package]] +name = "ring" +version = "0.17.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c17fa4cb658e3583423e915b9f3acc01cceaee1860e33d59ebae66adc3a2dc0d" +dependencies = [ + "cc", + "cfg-if", + "getrandom", + "libc", + "spin", + "untrusted", + "windows-sys 0.52.0", +] + +[[package]] +name = "rkyv" +version = "0.7.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9008cd6385b9e161d8229e1f6549dd23c3d022f132a2ea37ac3a10ac4935779b" +dependencies = [ + "bitvec", + "bytecheck", + "bytes", + "hashbrown 0.12.3", + "ptr_meta", + "rend", + "rkyv_derive", + "seahash", + "tinyvec", + "uuid", +] + +[[package]] +name = "rkyv_derive" +version = "0.7.45" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "503d1d27590a2b0a3a4ca4c94755aa2875657196ecbf401a42eff41d7de532c0" +dependencies = [ + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "rle-decode-fast" +version = "1.0.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3582f63211428f83597b51b2ddb88e2a91a9d52d12831f9d08f5e624e8977422" + +[[package]] +name = "rust_decimal" +version = "1.36.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b082d80e3e3cc52b2ed634388d436fe1f4de6af5786cc2de9ba9737527bdf555" +dependencies = [ + "arrayvec 0.7.6", + "borsh", + "bytes", + "num-traits", + "rand", + "rkyv", + "serde", + "serde_json", +] + +[[package]] +name = "rust_decimal_macros" +version = "1.36.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "da991f231869f34268415a49724c6578e740ad697ba0999199d6f22b3949332c" +dependencies = [ + "quote", + "rust_decimal", +] + +[[package]] +name = "rustc-demangle" +version = "0.1.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "719b953e2095829ee67db738b3bfa9fa368c94900df327b3f07fe6e794d2fe1f" + +[[package]] +name = "rustc-hash" +version = "2.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152" + +[[package]] +name = "rustc_version" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" +dependencies = [ + "semver", +] + +[[package]] +name = "rusticata-macros" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "faf0c4a6ece9950b9abdb62b1cfcf2a68b3b67a10ba445b3bb85be2a293d0632" +dependencies = [ + "nom", +] + +[[package]] +name = "rustix" +version = "0.38.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" +dependencies = [ + "bitflags 2.6.0", + "errno", + "libc", + "linux-raw-sys", + "windows-sys 0.52.0", +] + +[[package]] +name = "rustls" +version = "0.22.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf4ef73721ac7bcd79b2b315da7779d8fc09718c6b3d2d1b2d94850eb8c18432" +dependencies = [ + "log", + "ring", + "rustls-pki-types", + "rustls-webpki", + "subtle", + "zeroize", +] + +[[package]] +name = "rustls" +version = "0.23.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2dabaac7466917e566adb06783a81ca48944c6898a1b08b9374106dd671f4c8" +dependencies = [ + "brotli", + "brotli-decompressor", + "once_cell", + "ring", + "rustls-pki-types", + "rustls-webpki", + "subtle", + "zeroize", +] + +[[package]] +name = "rustls-native-certs" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5bfb394eeed242e909609f56089eecfe5fda225042e8b171791b9c95f5931e5" +dependencies = [ + "openssl-probe", + "rustls-pemfile", + "rustls-pki-types", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-native-certs" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcaf18a4f2be7326cd874a5fa579fae794320a0f388d365dca7e480e55f83f8a" +dependencies = [ + "openssl-probe", + "rustls-pemfile", + "rustls-pki-types", + "schannel", + "security-framework", +] + +[[package]] +name = "rustls-pemfile" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" +dependencies = [ + "rustls-pki-types", +] + +[[package]] +name = "rustls-pki-types" +version = "1.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e696e35370c65c9c541198af4543ccd580cf17fc25d8e05c5a242b202488c55" + +[[package]] +name = "rustls-webpki" +version = "0.102.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9" +dependencies = [ + "ring", + "rustls-pki-types", + "untrusted", +] + +[[package]] +name = "rustversion" +version = "1.0.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "955d28af4278de8121b7ebeb796b6a45735dc01436d898801014aced2773a3d6" + +[[package]] +name = "ryu" +version = "1.0.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" + +[[package]] +name = "same-file" +version = "1.0.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "schannel" +version = "0.1.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e9aaafd5a2b6e3d657ff009d82fbd630b6bd54dd4eb06f21693925cdf80f9b8b" +dependencies = [ + "windows-sys 0.59.0", +] + +[[package]] +name = "scoped_threadpool" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d51f5df5af43ab3f1360b429fa5e0152ac5ce8c0bd6485cae490332e96846a8" + +[[package]] +name = "scopeguard" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" + +[[package]] +name = "seahash" +version = "4.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1c107b6f4780854c8b126e228ea8869f4d7b71260f962fefb57b996b8959ba6b" + +[[package]] +name = "sec1" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3e97a565f76233a6003f9f5c54be1d9c5bdfa3eccfb189469f11ec4901c47dc" +dependencies = [ + "base16ct", + "der", + "generic-array", + "pkcs8", + "subtle", + "zeroize", +] + +[[package]] +name = "secrecy" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9bd1c54ea06cfd2f6b63219704de0b9b4f72dcc2b8fdef820be6cd799780e91e" +dependencies = [ + "zeroize", +] + +[[package]] +name = "security-framework" +version = "2.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "897b2245f0b511c87893af39b033e5ca9cce68824c4d7e7630b5a1d339658d02" +dependencies = [ + "bitflags 2.6.0", + "core-foundation", + "core-foundation-sys", + "libc", + "security-framework-sys", +] + +[[package]] +name = "security-framework-sys" +version = "2.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea4a292869320c0272d7bc55a5a6aafaff59b4f63404a003887b679a2e05b4b6" +dependencies = [ + "core-foundation-sys", + "libc", +] + +[[package]] +name = "self-replace" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03ec815b5eab420ab893f63393878d89c90fdd94c0bcc44c07abb8ad95552fb7" +dependencies = [ + "fastrand", + "tempfile", + "windows-sys 0.52.0", +] + +[[package]] +name = "self_update" +version = "0.41.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "469a3970061380c19852269f393e74c0fe607a4e23d85267382cf25486aa8de5" +dependencies = [ + "hyper 1.4.1", + "indicatif", + "log", + "quick-xml", + "regex", + "reqwest", + "self-replace", + "semver", + "serde_json", + "tar", + "tempfile", + "urlencoding", + "zipsign-api", +] + +[[package]] +name = "semver" +version = "1.0.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61697e0a1c7e512e84a621326239844a24d8207b4669b41bc18b32ea5cbf988b" +dependencies = [ + "serde", +] + +[[package]] +name = "serde" +version = "1.0.210" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_bytes" +version = "0.11.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "387cc504cb06bb40a96c8e04e951fe01854cf6bc921053c954e4a606d9675c6a" +dependencies = [ + "serde", +] + +[[package]] +name = "serde_cbor" +version = "0.11.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2bef2ebfde456fb76bbcf9f59315333decc4fda0b2b44b420243c11e0f5ec1f5" +dependencies = [ + "half 1.8.3", + "serde", +] + +[[package]] +name = "serde_derive" +version = "1.0.210" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "serde_json" +version = "1.0.128" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" +dependencies = [ + "indexmap 2.6.0", + "itoa", + "memchr", + "ryu", + "serde", +] + +[[package]] +name = "serde_path_to_error" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "af99884400da37c88f5e9146b7f1fd0fbcae8f6eec4e9da38b67d05486f814a6" +dependencies = [ + "itoa", + "serde", +] + +[[package]] +name = "serde_repr" +version = "0.1.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "serde_tokenstream" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "797ba1d80299b264f3aac68ab5d12e5825a561749db4df7cd7c8083900c5d4e9" +dependencies = [ + "proc-macro2", + "serde", + "syn 1.0.109", +] + +[[package]] +name = "serde_tokenstream" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "64060d864397305347a78851c51588fd283767e7e7589829e8121d65512340f1" +dependencies = [ + "proc-macro2", + "quote", + "serde", + "syn 2.0.79", +] + +[[package]] +name = "serde_urlencoded" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d3491c14715ca2294c4d6a88f15e84739788c1d030eed8c110436aafdaa2f3fd" +dependencies = [ + "form_urlencoded", + "itoa", + "ryu", + "serde", +] + +[[package]] +name = "serde_with" +version = "1.14.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "678b5a069e50bf00ecd22d0cd8ddf7c236f68581b03db652061ed5eb13a312ff" +dependencies = [ + "serde", + "serde_with_macros", +] + +[[package]] +name = "serde_with_macros" +version = "1.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e182d6ec6f05393cc0e5ed1bf81ad6db3a8feedf8ee515ecdd369809bcce8082" +dependencies = [ + "darling 0.13.4", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "serde_yaml" +version = "0.9.34+deprecated" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" +dependencies = [ + "indexmap 2.6.0", + "itoa", + "ryu", + "serde", + "unsafe-libyaml", +] + +[[package]] +name = "service-discovery" +version = "0.5.5" +dependencies = [ + "anyhow", + "crossbeam", + "crossbeam-channel", + "futures", + "ic-interfaces-registry", + "ic-metrics", + "ic-protobuf", + "ic-registry-client", + "ic-registry-client-fake", + "ic-registry-client-helpers", + "ic-registry-common-proto", + "ic-registry-keys", + "ic-registry-local-registry", + "ic-registry-local-store", + "ic-registry-local-store-artifacts", + "ic-registry-nns-data-provider", + "ic-sys", + "itertools 0.13.0", + "prometheus", + "regex", + "serde", + "serde_json", + "slog", + "tempfile", + "thiserror", + "tokio", + "url", +] + +[[package]] +name = "sha1" +version = "0.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3bf829a2d51ab4a5ddf1352d8470c140cadc8301b2ae1789db023f01cedd6ba" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "sha2" +version = "0.9.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4d58a1e1bf39749807d89cf2d98ac2dfa0ff1cb3faa38fbb64dd88ac8013d800" +dependencies = [ + "block-buffer 0.9.0", + "cfg-if", + "cpufeatures", + "digest 0.9.0", + "opaque-debug", +] + +[[package]] +name = "sha2" +version = "0.10.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "793db75ad2bcafc3ffa7c68b215fee268f537982cd901d132f89c6343f3a3dc8" +dependencies = [ + "cfg-if", + "cpufeatures", + "digest 0.10.7", +] + +[[package]] +name = "shell-words" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24188a676b6ae68c3b2cb3a01be17fbf7240ce009799bb56d5b1409051e78fde" + +[[package]] +name = "shlex" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" + +[[package]] +name = "signal-hook-registry" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a9e9e0b4211b72e7b8b6e85c807d36c212bdb33ea8587f7569562a84df5465b1" +dependencies = [ + "libc", +] + +[[package]] +name = "signature" +version = "2.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +dependencies = [ + "digest 0.10.7", + "rand_core", +] + +[[package]] +name = "simdutf8" +version = "0.1.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" + +[[package]] +name = "simple_asn1" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "adc4e5204eb1910f40f9cfa375f6f05b68c3abac4b6fd879c8ff5e7ae8a0a085" +dependencies = [ + "num-bigint 0.4.6", + "num-traits", + "thiserror", + "time", +] + +[[package]] +name = "slab" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" +dependencies = [ + "autocfg", +] + +[[package]] +name = "slack-notifications" +version = "0.5.5" +dependencies = [ + "anyhow", + "candid", + "clap 4.5.19", + "dotenv", + "env_logger 0.11.5", + "futures", + "ic-agent", + "ic-management-types", + "ic-nns-common", + "ic-nns-constants", + "ic-nns-governance", + "itertools 0.13.0", + "lazy_static", + "log", + "regex", + "registry-canister", + "reqwest", + "retry", + "serde", + "serde_json", + "serde_yaml", + "tokio", +] + +[[package]] +name = "slog" +version = "2.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8347046d4ebd943127157b94d63abb990fcf729dc4e9978927fdf4ac3c998d06" +dependencies = [ + "erased-serde 0.3.31", +] + +[[package]] +name = "slog-async" +version = "2.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72c8038f898a2c79507940990f05386455b3a317d8f18d4caea7cbc3d5096b84" +dependencies = [ + "crossbeam-channel", + "slog", + "take_mut", + "thread_local", +] + +[[package]] +name = "slog-json" +version = "2.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3e1e53f61af1e3c8b852eef0a9dee29008f55d6dd63794f3f12cef786cf0f219" +dependencies = [ + "erased-serde 0.3.31", + "serde", + "serde_json", + "slog", + "time", +] + +[[package]] +name = "slog-scope" +version = "4.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2f95a4b4c3274cd2869549da82b57ccc930859bdbf5bcea0424bc5f140b3c786" +dependencies = [ + "arc-swap", + "lazy_static", + "slog", +] + +[[package]] +name = "slog-term" +version = "2.9.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6e022d0b998abfe5c3782c1f03551a596269450ccd677ea51c56f8b214610e8" +dependencies = [ + "is-terminal", + "slog", + "term", + "thread_local", + "time", +] + +[[package]] +name = "slotmap" +version = "1.0.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a" +dependencies = [ + "version_check", +] + +[[package]] +name = "smallvec" +version = "1.13.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" + +[[package]] +name = "snafu" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "223891c85e2a29c3fe8fb900c1fae5e69c2e42415e3177752e8718475efa5019" +dependencies = [ + "snafu-derive", +] + +[[package]] +name = "snafu-derive" +version = "0.8.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "03c3c6b7927ffe7ecaa769ee0e3994da3b8cafc8f444578982c83ecb161af917" +dependencies = [ + "heck 0.5.0", + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "sns-downloader" +version = "0.5.5" +dependencies = [ + "clap 4.5.19", + "crossbeam", + "crossbeam-channel", + "futures-util", + "humantime", + "ic-async-utils", + "ic-canisters", + "multiservice-discovery-shared", + "reqwest", + "serde_json", + "slog", + "slog-async", + "slog-term", + "tokio", + "url", +] + +[[package]] +name = "socket2" +version = "0.5.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "spin" +version = "0.9.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6980e8d7511241f8acf4aebddbb1ff938df5eebe98691418c4468d0b72a96a67" + +[[package]] +name = "spinners" +version = "4.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0ef947f358b9c238923f764c72a4a9d42f2d637c46e059dbd319d6e7cfb4f82" +dependencies = [ + "lazy_static", + "maplit", + "strum 0.24.1", +] + +[[package]] +name = "spki" +version = "0.7.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" +dependencies = [ + "base64ct", + "der", +] + +[[package]] +name = "stable_deref_trait" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" + +[[package]] +name = "stacker" +version = "0.1.17" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "799c883d55abdb5e98af1a7b3f23b9b6de8ecada0ecac058672d7635eb48ca7b" +dependencies = [ + "cc", + "cfg-if", + "libc", + "psm", + "windows-sys 0.59.0", +] + +[[package]] +name = "static_assertions" +version = "1.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" + +[[package]] +name = "strsim" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" + +[[package]] +name = "strsim" +version = "0.11.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" + +[[package]] +name = "strum" +version = "0.24.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "063e6045c0e62079840579a7e47a355ae92f60eb74daaf156fb1e84ba164e63f" +dependencies = [ + "strum_macros 0.24.3", +] + +[[package]] +name = "strum" +version = "0.26.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" +dependencies = [ + "strum_macros 0.26.4", +] + +[[package]] +name = "strum_macros" +version = "0.24.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e385be0d24f186b4ce2f9982191e7101bb737312ad61c1f2f984f34bcf85d59" +dependencies = [ + "heck 0.4.1", + "proc-macro2", + "quote", + "rustversion", + "syn 1.0.109", +] + +[[package]] +name = "strum_macros" +version = "0.26.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" +dependencies = [ + "heck 0.5.0", + "proc-macro2", + "quote", + "rustversion", + "syn 2.0.79", +] + +[[package]] +name = "subtle" +version = "2.6.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292" + +[[package]] +name = "subtle-ng" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "734676eb262c623cec13c3155096e08d1f8f29adce39ba17948b18dad1e54142" + +[[package]] +name = "syn" +version = "1.0.109" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn" +version = "2.0.79" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "syn_derive" +version = "0.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1329189c02ff984e9736652b1631330da25eaa6bc639089ed4915d25446cbe7b" +dependencies = [ + "proc-macro-error", + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "sync_wrapper" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160" + +[[package]] +name = "sync_wrapper" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7065abeca94b6a8a577f9bd45aa0867a2238b74e8eb67cf10d492bc39351394" +dependencies = [ + "futures-core", +] + +[[package]] +name = "synstructure" +version = "0.13.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "tabled" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "77c9303ee60b9bedf722012ea29ae3711ba13a67c9b9ae28993838b63057cb1b" +dependencies = [ + "papergrid", + "tabled_derive", +] + +[[package]] +name = "tabled_derive" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bf0fb8bfdc709786c154e24a66777493fb63ae97e3036d914c8666774c477069" +dependencies = [ + "heck 0.4.1", + "proc-macro-error", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "tabular" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d9a2882c514780a1973df90de9d68adcd8871bacc9a6331c3f28e6d2ff91a3d1" +dependencies = [ + "unicode-width", +] + +[[package]] +name = "take_mut" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f764005d11ee5f36500a149ace24e00e3da98b0158b3e2d53a7495660d3f4d60" + +[[package]] +name = "tap" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" + +[[package]] +name = "tar" +version = "0.4.42" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ff6c40d3aedb5e06b57c6f669ad17ab063dd1e63d977c6a88e7f4dfa4f04020" +dependencies = [ + "filetime", + "libc", + "xattr", +] + +[[package]] +name = "tempfile" +version = "3.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" +dependencies = [ + "cfg-if", + "fastrand", + "once_cell", + "rustix", + "windows-sys 0.59.0", +] + +[[package]] +name = "term" +version = "0.7.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c59df8ac95d96ff9bede18eb7300b0fda5e5d8d90960e76f8e14ae765eedbf1f" +dependencies = [ + "dirs-next", + "rustversion", + "winapi", +] + +[[package]] +name = "termcolor" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" +dependencies = [ + "winapi-util", +] + +[[package]] +name = "terminal_size" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f599bd7ca042cfdf8f4512b277c02ba102247820f9d9d4a9f521f496751a6ef" +dependencies = [ + "rustix", + "windows-sys 0.59.0", +] + +[[package]] +name = "termtree" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76" + +[[package]] +name = "textwrap" +version = "0.16.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9" + +[[package]] +name = "thiserror" +version = "1.0.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" +dependencies = [ + "thiserror-impl", +] + +[[package]] +name = "thiserror-impl" +version = "1.0.64" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "thousands" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3bf63baf9f5039dadc247375c29eb13706706cfde997d0330d05aa63a77d8820" + +[[package]] +name = "thread_local" +version = "1.1.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c" +dependencies = [ + "cfg-if", + "once_cell", +] + +[[package]] +name = "time" +version = "0.3.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885" +dependencies = [ + "deranged", + "itoa", + "num-conv", + "powerfmt", + "serde", + "time-core", + "time-macros", +] + +[[package]] +name = "time-core" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ef927ca75afb808a4d64dd374f00a2adf8d0fcff8e7b184af886c3c87ec4a3f3" + +[[package]] +name = "time-macros" +version = "0.2.18" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf" +dependencies = [ + "num-conv", + "time-core", +] + +[[package]] +name = "tinystr" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f" +dependencies = [ + "displaydoc", + "zerovec", +] + +[[package]] +name = "tinyvec" +version = "1.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" +dependencies = [ + "tinyvec_macros", +] + +[[package]] +name = "tinyvec_macros" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" + +[[package]] +name = "tokio" +version = "1.40.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e2b070231665d27ad9ec9b8df639893f46727666c6767db40317fbe920a5d998" +dependencies = [ + "backtrace", + "bytes", + "libc", + "mio", + "parking_lot", + "pin-project-lite", + "signal-hook-registry", + "socket2", + "tokio-macros", + "windows-sys 0.52.0", +] + +[[package]] +name = "tokio-io-timeout" +version = "1.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "30b74022ada614a1b4834de765f9bb43877f910cc8ce4be40e89042c9223a8bf" +dependencies = [ + "pin-project-lite", + "tokio", +] + +[[package]] +name = "tokio-macros" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "tokio-metrics" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "eace09241d62c98b7eeb1107d4c5c64ca3bd7da92e8c218c153ab3a78f9be112" +dependencies = [ + "futures-util", + "pin-project-lite", + "tokio", + "tokio-stream", +] + +[[package]] +name = "tokio-rustls" +version = "0.25.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "775e0c0f0adb3a2f22a00c4745d728b479985fc15ee7ca6a2608388c5569860f" +dependencies = [ + "rustls 0.22.4", + "rustls-pki-types", + "tokio", +] + +[[package]] +name = "tokio-rustls" +version = "0.26.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" +dependencies = [ + "rustls 0.23.13", + "rustls-pki-types", + "tokio", +] + +[[package]] +name = "tokio-stream" +version = "0.1.16" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4f4e6ce100d0eb49a2734f8c0812bcd324cf357d21810932c5df6b96ef2b86f1" +dependencies = [ + "futures-core", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "tokio-util" +version = "0.7.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61e7c3654c13bcd040d4a03abee2c75b1d14a37b423cf5a813ceae1cc903ec6a" +dependencies = [ + "bytes", + "futures-core", + "futures-sink", + "pin-project-lite", + "tokio", +] + +[[package]] +name = "toml_datetime" +version = "0.6.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" + +[[package]] +name = "toml_edit" +version = "0.22.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" +dependencies = [ + "indexmap 2.6.0", + "toml_datetime", + "winnow", +] + +[[package]] +name = "tonic" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "76c4eb7a4e9ef9d4763600161f12f5070b92a578e1b634db88a6887844c91a13" +dependencies = [ + "async-stream", + "async-trait", + "axum 0.6.20", + "base64 0.21.7", + "bytes", + "h2 0.3.26", + "http 0.2.12", + "http-body 0.4.6", + "hyper 0.14.30", + "hyper-timeout 0.4.1", + "percent-encoding", + "pin-project", + "prost", + "tokio", + "tokio-stream", + "tower 0.4.13", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "tonic-build" +version = "0.12.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "be4ef6dd70a610078cb4e338a0f79d06bc759ff1b22d2120c2ff02ae264ba9c2" +dependencies = [ + "prettyplease", + "proc-macro2", + "prost-build", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "tower" +version = "0.4.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8fa9be0de6cf49e536ce1851f987bd21a43b771b09473c3549a6c853db37c1c" +dependencies = [ + "futures-core", + "futures-util", + "hdrhistogram", + "indexmap 1.9.3", + "pin-project", + "pin-project-lite", + "rand", + "slab", + "tokio", + "tokio-util", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "tower" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2873938d487c3cfb9aed7546dc9f2711d867c9f90c46b889989a2cb84eba6b4f" +dependencies = [ + "futures-core", + "futures-util", + "pin-project-lite", + "sync_wrapper 0.1.2", + "tokio", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "tower-http" +version = "0.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e9cd434a998747dd2c4276bc96ee2e0c7a2eadf3cae88e52be55a05fa9053f5" +dependencies = [ + "bitflags 2.6.0", + "bytes", + "futures-util", + "http 1.1.0", + "http-body 1.0.1", + "http-body-util", + "iri-string", + "pin-project-lite", + "tower 0.4.13", + "tower-layer", + "tower-service", + "tracing", +] + +[[package]] +name = "tower-layer" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" + +[[package]] +name = "tower-service" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" + +[[package]] +name = "tracing" +version = "0.1.40" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef" +dependencies = [ + "log", + "pin-project-lite", + "tracing-attributes", + "tracing-core", +] + +[[package]] +name = "tracing-attributes" +version = "0.1.27" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "tracing-core" +version = "0.1.32" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54" +dependencies = [ + "once_cell", +] + +[[package]] +name = "tree-deserializer" +version = "0.9.0" +source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" +dependencies = [ + "ic-crypto-tree-hash", + "leb128", + "serde", +] + +[[package]] +name = "trustworthy-node-metrics" +version = "0.5.5" +dependencies = [ + "anyhow", + "candid", + "chrono", + "dfn_core", + "futures", + "ic-base-types", + "ic-cdk 0.16.0", + "ic-cdk-macros 0.16.0", + "ic-cdk-timers 0.10.0", + "ic-management-canister-types", + "ic-nns-common", + "ic-nns-constants", + "ic-nns-governance-api", + "ic-protobuf", + "ic-registry-keys", + "ic-stable-structures", + "itertools 0.13.0", + "num-traits", + "rust_decimal", + "rust_decimal_macros", + "trustworthy-node-metrics-types", +] + +[[package]] +name = "trustworthy-node-metrics-types" +version = "0.5.5" +dependencies = [ + "candid", + "dfn_core", + "ic-management-canister-types", + "ic-nns-governance-api", + "ic-protobuf", + "ic-stable-structures", + "serde", + "serde_json", +] + +[[package]] +name = "try-lock" +version = "0.2.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" + +[[package]] +name = "typed-arena" +version = "2.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a" + +[[package]] +name = "typeid" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0e13db2e0ccd5e14a544e8a246ba2312cd25223f616442d7f2cb0e3db614236e" + +[[package]] +name = "typenum" +version = "1.17.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" + +[[package]] +name = "ucd-trie" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" + +[[package]] +name = "unicode-bidi" +version = "0.3.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75" + +[[package]] +name = "unicode-ident" +version = "1.0.13" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" + +[[package]] +name = "unicode-normalization" +version = "0.1.24" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" +dependencies = [ + "tinyvec", +] + +[[package]] +name = "unicode-segmentation" +version = "1.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" + +[[package]] +name = "unicode-width" +version = "0.1.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e51733f11c9c4f72aa0c160008246859e340b00807569a0da0e7a1079b27ba85" + +[[package]] +name = "unsafe-libyaml" +version = "0.2.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "673aac59facbab8a9007c7f6108d11f63b603f7cabff99fabf650fea5c32b861" + +[[package]] +name = "untrusted" +version = "0.9.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1" + +[[package]] +name = "url" +version = "2.5.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c" +dependencies = [ + "form_urlencoded", + "idna 0.5.0", + "percent-encoding", + "serde", +] + +[[package]] +name = "urlencoding" +version = "2.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "daf8dba3b7eb870caf1ddeed7bc9d2a049f3cfdfae7cb521b087cc33ae4c49da" + +[[package]] +name = "utf16_iter" +version = "1.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246" + +[[package]] +name = "utf8-width" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86bd8d4e895da8537e5315b8254664e6b769c4ff3db18321b297a1e7004392e3" + +[[package]] +name = "utf8_iter" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be" + +[[package]] +name = "utf8parse" +version = "0.2.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" + +[[package]] +name = "uuid" +version = "1.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314" +dependencies = [ + "getrandom", + "serde", +] + +[[package]] +name = "version_check" +version = "0.9.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" + +[[package]] +name = "wait-timeout" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f200f5b12eb75f8c1ed65abd4b2db8a6e1b138a20de009dacee265a2498f3f6" +dependencies = [ + "libc", +] + +[[package]] +name = "walkdir" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b" +dependencies = [ + "same-file", + "winapi-util", +] + +[[package]] +name = "walrus" +version = "0.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "501ace8ec3492754a9b3c4b59eac7159ceff8414f9e43a05029fe8ef43b9218f" +dependencies = [ + "anyhow", + "gimli 0.26.2", + "id-arena", + "leb128", + "log", + "walrus-macro", + "wasm-encoder", + "wasmparser", +] + +[[package]] +name = "walrus-macro" +version = "0.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0a6e5bd22c71e77d60140b0bd5be56155a37e5bd14e24f5f87298040d0cc40d7" +dependencies = [ + "heck 0.3.3", + "proc-macro2", + "quote", + "syn 1.0.109", +] + +[[package]] +name = "want" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bfa7760aed19e106de2c7c0b581b509f2f25d3dacaf737cb82ac61bc6d760b0e" +dependencies = [ + "try-lock", +] + +[[package]] +name = "wasi" +version = "0.11.0+wasi-snapshot-preview1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" + +[[package]] +name = "wasm-bindgen" +version = "0.2.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5" +dependencies = [ + "cfg-if", + "once_cell", + "wasm-bindgen-macro", +] + +[[package]] +name = "wasm-bindgen-backend" +version = "0.2.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b" +dependencies = [ + "bumpalo", + "log", + "once_cell", + "proc-macro2", + "quote", + "syn 2.0.79", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-futures" +version = "0.4.43" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "61e9300f63a621e96ed275155c108eb6f843b6a26d053f122ab69724559dc8ed" +dependencies = [ + "cfg-if", + "js-sys", + "wasm-bindgen", + "web-sys", +] + +[[package]] +name = "wasm-bindgen-macro" +version = "0.2.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf" +dependencies = [ + "quote", + "wasm-bindgen-macro-support", +] + +[[package]] +name = "wasm-bindgen-macro-support" +version = "0.2.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", + "wasm-bindgen-backend", + "wasm-bindgen-shared", +] + +[[package]] +name = "wasm-bindgen-shared" +version = "0.2.93" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484" + +[[package]] +name = "wasm-encoder" +version = "0.212.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "501940df4418b8929eb6d52f1aade1fdd15a5b86c92453cb696e3c906bd3fc33" +dependencies = [ + "leb128", +] + +[[package]] +name = "wasm-streams" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4e072d4e72f700fb3443d8fe94a39315df013eef1104903cdb0a2abd322bbecd" +dependencies = [ + "futures-util", + "js-sys", + "wasm-bindgen", + "wasm-bindgen-futures", + "web-sys", +] + +[[package]] +name = "wasmparser" +version = "0.212.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8d28bc49ba1e5c5b61ffa7a2eace10820443c4b7d1c0b144109261d14570fdf8" +dependencies = [ + "ahash 0.8.11", + "bitflags 2.6.0", + "hashbrown 0.14.5", + "indexmap 2.6.0", + "semver", + "serde", +] + +[[package]] +name = "web-sys" +version = "0.3.70" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26fdeaafd9bd129f65e7c031593c24d62186301e0c72c8978fa1678be7d532c0" +dependencies = [ + "js-sys", + "wasm-bindgen", +] + +[[package]] +name = "webpki-roots" +version = "0.26.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "841c67bff177718f1d4dfefde8d8f0e78f9b6589319ba88312f567fc5841a958" +dependencies = [ + "rustls-pki-types", +] + +[[package]] +name = "which" +version = "4.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" +dependencies = [ + "either", + "home", + "once_cell", + "rustix", +] + +[[package]] +name = "winapi" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419" +dependencies = [ + "winapi-i686-pc-windows-gnu", + "winapi-x86_64-pc-windows-gnu", +] + +[[package]] +name = "winapi-i686-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" + +[[package]] +name = "winapi-util" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb" +dependencies = [ + "windows-sys 0.59.0", +] + +[[package]] +name = "winapi-x86_64-pc-windows-gnu" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" + +[[package]] +name = "windows-core" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-registry" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e400001bb720a623c1c69032f8e3e4cf09984deec740f007dd2b03ec864804b0" +dependencies = [ + "windows-result", + "windows-strings", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-result" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-strings" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10" +dependencies = [ + "windows-result", + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.42.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" +dependencies = [ + "windows_aarch64_gnullvm 0.42.2", + "windows_aarch64_msvc 0.42.2", + "windows_i686_gnu 0.42.2", + "windows_i686_msvc 0.42.2", + "windows_x86_64_gnu 0.42.2", + "windows_x86_64_gnullvm 0.42.2", + "windows_x86_64_msvc 0.42.2", +] + +[[package]] +name = "windows-sys" +version = "0.48.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" +dependencies = [ + "windows-targets 0.48.5", +] + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets 0.52.6", +] + +[[package]] +name = "windows-targets" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" +dependencies = [ + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", + "windows_i686_gnullvm", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_i686_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" + +[[package]] +name = "windows_i686_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" + +[[package]] +name = "windows_i686_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.42.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.48.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" + +[[package]] +name = "winnow" +version = "0.6.20" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" +dependencies = [ + "memchr", +] + +[[package]] +name = "wiremock" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7fff469918e7ca034884c7fd8f93fe27bacb7fcb599fd879df6c7b429a29b646" +dependencies = [ + "assert-json-diff", + "async-trait", + "base64 0.22.1", + "deadpool", + "futures", + "http 1.1.0", + "http-body-util", + "hyper 1.4.1", + "hyper-util", + "log", + "once_cell", + "regex", + "serde", + "serde_json", + "tokio", + "url", +] + +[[package]] +name = "write16" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936" + +[[package]] +name = "writeable" +version = "0.5.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51" + +[[package]] +name = "wsl" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f8dab7ac864710bdea6594becbea5b5050333cf34fefb0dc319567eb347950d4" + +[[package]] +name = "wyz" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "05f360fc0b24296329c78fda852a1e9ae82de9cf7b27dae4b7f62f118f77b9ed" +dependencies = [ + "tap", +] + +[[package]] +name = "x509-parser" +version = "0.16.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fcbc162f30700d6f3f82a24bf7cc62ffe7caea42c0b2cba8bf7f3ae50cf51f69" +dependencies = [ + "asn1-rs", + "data-encoding", + "der-parser", + "lazy_static", + "nom", + "oid-registry", + "rusticata-macros", + "thiserror", + "time", +] + +[[package]] +name = "xattr" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f" +dependencies = [ + "libc", + "linux-raw-sys", + "rustix", +] + +[[package]] +name = "xz2" +version = "0.1.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "388c44dc09d76f1536602ead6d325eb532f5c122f17782bd57fb47baeeb767e2" +dependencies = [ + "lzma-sys", +] + +[[package]] +name = "yansi" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09041cd90cf85f7f8b2df60c646f853b7f535ce68f85244eb6731cf89fa498ec" + +[[package]] +name = "yansi" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cfe53a6657fd280eaa890a3bc59152892ffa3e30101319d168b781ed6529b049" + +[[package]] +name = "yoke" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6c5b1314b079b0930c31e3af543d8ee1757b1951ae1e1565ec704403a7240ca5" +dependencies = [ + "serde", + "stable_deref_trait", + "yoke-derive", + "zerofrom", +] + +[[package]] +name = "yoke-derive" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", + "synstructure", +] + +[[package]] +name = "zerocopy" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" +dependencies = [ + "byteorder", + "zerocopy-derive", +] + +[[package]] +name = "zerocopy-derive" +version = "0.7.35" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "zerofrom" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "91ec111ce797d0e0784a1116d0ddcdbea84322cd79e5d5ad173daeba4f93ab55" +dependencies = [ + "zerofrom-derive", +] + +[[package]] +name = "zerofrom-derive" +version = "0.1.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", + "synstructure", +] + +[[package]] +name = "zeroize" +version = "1.8.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ced3678a2879b30306d323f4542626697a464a97c0a07c9aebf7ebca65cd4dde" +dependencies = [ + "zeroize_derive", +] + +[[package]] +name = "zeroize_derive" +version = "1.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "zerovec" +version = "0.10.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079" +dependencies = [ + "yoke", + "zerofrom", + "zerovec-derive", +] + +[[package]] +name = "zerovec-derive" +version = "0.10.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.79", +] + +[[package]] +name = "zipsign-api" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6413a546ada9dbcd0b9a3e0b0880581279e35047bce9797e523b3408e1df607c" +dependencies = [ + "base64 0.22.1", + "ed25519-dalek", + "thiserror", +] From 7a0bf2ef8781dfbbebe2228522e85689edeb65f6 Mon Sep 17 00:00:00 2001 From: Pietro Date: Wed, 2 Oct 2024 17:37:14 +0200 Subject: [PATCH 13/16] Refresh cargo lock --- Cargo.lock | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6e1621989..d2c59e253 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -8420,7 +8420,7 @@ dependencies = [ [[package]] name = "tonic" -version = "0.12.3" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "76c4eb7a4e9ef9d4763600161f12f5070b92a578e1b634db88a6887844c91a13" dependencies = [ @@ -8447,7 +8447,7 @@ dependencies = [ [[package]] name = "tonic-build" -version = "0.12.3" +version = "0.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "be4ef6dd70a610078cb4e338a0f79d06bc759ff1b22d2120c2ff02ae264ba9c2" dependencies = [ From c67175565ad6ce8060de94afeea050adf9c65d0c Mon Sep 17 00:00:00 2001 From: Pietro Date: Wed, 2 Oct 2024 17:39:25 +0200 Subject: [PATCH 14/16] refresh cargo lock --- Cargo.lock | 725 ++++++++++++++++++++++++++--------------------------- 1 file changed, 360 insertions(+), 365 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d2c59e253..66ce7f790 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -21,9 +21,9 @@ dependencies = [ [[package]] name = "actix-http" -version = "3.9.0" +version = "3.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d48f96fc3003717aeb9856ca3d02a8c7de502667ad76eeacd830b48d2e91fac4" +checksum = "3ae682f693a9cd7b058f2b0b5d9a6d7728a8555779bedbbc35dd88528611d020" dependencies = [ "actix-codec", "actix-rt", @@ -62,7 +62,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e01ed3140b2f8d422c68afa1ed2e85d996ea619c988ac834d255db32138655cb" dependencies = [ "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -177,18 +177,24 @@ dependencies = [ "actix-router", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] name = "addr2line" -version = "0.24.1" +version = "0.22.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f5fb1d8e4442bd405fdfd1dacb42792696b0cf9cb15882e5d097b742a676d375" +checksum = "6e4503c46a5c0c7844e948c9a4d6acd9f50cccb4de1c48eb9e291ea17470c678" dependencies = [ - "gimli 0.31.0", + "gimli 0.29.0", ] +[[package]] +name = "adler" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" + [[package]] name = "adler2" version = "2.0.0" @@ -339,9 +345,9 @@ checksum = "23b62fc65de8e4e7f52534fb52b0f3ed04746ae267519eef2a83941e8085068b" [[package]] name = "arrayvec" -version = "0.7.6" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" +checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" [[package]] name = "asn1-rs" @@ -367,7 +373,7 @@ checksum = "965c2d33e53cb6b267e148a4cb0760bc01f4904c1cd4bb4002a085bb016d1490" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", "synstructure", ] @@ -379,7 +385,7 @@ checksum = "7b18050c2cd6fe86c3a76584ef5e0baf286d038cda203eb6223df2cc413565f7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -427,14 +433,14 @@ checksum = "3b43422f69d8ff38f95f1b2bb76517c91589a924d1559a0e935d7c8ce0274c11" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] name = "async-stream" -version = "0.3.6" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b5a71a6f37880a80d1d7f19efd781e4b5de42c88f0722cc13bcb6cc2cfe8476" +checksum = "cd56dd203fef61ac097dd65721a419ddccb106b2d2b70ba60a6b529f03961a51" dependencies = [ "async-stream-impl", "futures-core", @@ -443,24 +449,24 @@ dependencies = [ [[package]] name = "async-stream-impl" -version = "0.3.6" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c7c24de15d275a1ecfd47a380fb4d5ec9bfe0933f309ed5e705b775596a3574d" +checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] name = "async-trait" -version = "0.1.83" +version = "0.1.81" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "721cae7de5c34fbb2acd27e21e6d2cf7b886dce0c27388d46c4e6c47ea4318dd" +checksum = "6e0c28dcc82d7c8ead5cb13beb15405b57b8546e93215673ff8ca0349a028107" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -482,9 +488,9 @@ dependencies = [ [[package]] name = "autocfg" -version = "1.4.0" +version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26" +checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" [[package]] name = "axum" @@ -509,19 +515,19 @@ dependencies = [ "rustversion", "serde", "sync_wrapper 0.1.2", - "tower 0.4.13", + "tower", "tower-layer", "tower-service", ] [[package]] name = "axum" -version = "0.7.7" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "504e3947307ac8326a5437504c517c4b56716c9d98fac0028c2acc7ca47d70ae" +checksum = "3a6c9af12842a67734c9a2e355436e5d03b22383ed60cf13cd0c18fbfe3dcbcf" dependencies = [ "async-trait", - "axum-core 0.4.5", + "axum-core 0.4.3", "bytes", "futures-util", "http 1.1.0", @@ -542,7 +548,7 @@ dependencies = [ "serde_urlencoded", "sync_wrapper 1.0.1", "tokio", - "tower 0.5.1", + "tower", "tower-layer", "tower-service", "tracing", @@ -567,9 +573,9 @@ dependencies = [ [[package]] name = "axum-core" -version = "0.4.5" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09f2bd6146b97ae3359fa0cc6d6b376d9539582c7b4220f041a33ec24c226199" +checksum = "a15c63fd72d41492dc4f497196f5da1fb04fb7529e631d73630d1b491e47a2e3" dependencies = [ "async-trait", "bytes", @@ -580,7 +586,7 @@ dependencies = [ "mime", "pin-project-lite", "rustversion", - "sync_wrapper 1.0.1", + "sync_wrapper 0.1.2", "tower-layer", "tower-service", "tracing", @@ -592,7 +598,7 @@ version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "11b5bd67776dca9326650fc2e2ddd15ddaca16a3c8e80a9a874ba111afab82bd" dependencies = [ - "axum 0.7.7", + "axum 0.7.5", "futures-util", "http 1.1.0", "http-body 1.0.1", @@ -602,7 +608,7 @@ dependencies = [ "opentelemetry_sdk", "pin-project-lite", "prometheus", - "tower 0.4.13", + "tower", ] [[package]] @@ -625,7 +631,7 @@ version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d67782c3f868daa71d3533538e98a8e13713231969def7536e8039606fc46bf0" dependencies = [ - "fastrand", + "fastrand 2.1.0", "futures-core", "pin-project", "tokio", @@ -633,17 +639,17 @@ dependencies = [ [[package]] name = "backtrace" -version = "0.3.74" +version = "0.3.73" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d82cb332cdfaed17ae235a638438ac4d4839913cc2af585c3c6746e8f8bee1a" +checksum = "5cc23269a4f8976d0a4d2e7109211a419fe30e8d88d677cd60b6bc79c5732e0a" dependencies = [ "addr2line", + "cc", "cfg-if", "libc", - "miniz_oxide", + "miniz_oxide 0.7.4", "object", "rustc-demangle", - "windows-targets 0.52.6", ] [[package]] @@ -782,7 +788,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", "syn_derive", ] @@ -935,9 +941,9 @@ checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b" [[package]] name = "bytes" -version = "1.7.2" +version = "1.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "428d9aa8fbc0670b7b8d6030a7fadd0f86151cae55e4dbbece15f3780a3dfaf3" +checksum = "8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50" [[package]] name = "bytestring" @@ -975,9 +981,9 @@ dependencies = [ [[package]] name = "camino" -version = "1.1.9" +version = "1.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8b96ec4966b5813e2c0507c1f86115c8c5abaadc3980879c3424042a02fd1ad3" +checksum = "e0ec6b951b160caa93cc0c7b209e5a3bff7aae9062213451ac99493cd844c239" dependencies = [ "serde", ] @@ -1014,7 +1020,7 @@ dependencies = [ "lazy_static", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -1022,7 +1028,7 @@ name = "canister-log-fetcher" version = "0.5.5" dependencies = [ "anyhow", - "clap 4.5.19", + "clap 4.5.16", "humantime", "log", "pretty_env_logger", @@ -1057,9 +1063,9 @@ dependencies = [ [[package]] name = "cc" -version = "1.1.24" +version = "1.1.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "812acba72f0a070b003d3697490d2b55b837230ae7c6c6497f05cc2ddbb8d938" +checksum = "2d74707dde2ba56f86ae90effb3b43ddd369504387e718014de010cec7959800" dependencies = [ "shlex", ] @@ -1137,12 +1143,12 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.19" +version = "4.5.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7be5744db7978a28d9df86a214130d106a89ce49644cbc4e3f0c22c3fba30615" +checksum = "ed6719fffa43d0d87e5fd8caeab59be1554fb028cd30edc88fc4369b17971019" dependencies = [ "clap_builder", - "clap_derive 4.5.18", + "clap_derive 4.5.13", ] [[package]] @@ -1156,9 +1162,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.19" +version = "4.5.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a5fbc17d3ef8278f55b282b2a2e75ae6f6c7d4bb70ed3d0382375104bfafdb4b" +checksum = "216aec2b177652e3846684cbfe25c9964d18ec45234f0f5da5157b207ed1aab6" dependencies = [ "anstream", "anstyle", @@ -1169,11 +1175,11 @@ dependencies = [ [[package]] name = "clap_complete" -version = "4.5.30" +version = "4.5.26" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb31f1f3041ef3636e425b09e588911b72fc5513b2428b5b7df130f497e6a728" +checksum = "205d5ef6d485fa47606b98b0ddc4ead26eb850aaa86abfb562a94fb3280ecba0" dependencies = [ - "clap 4.5.19", + "clap 4.5.16", ] [[package]] @@ -1191,14 +1197,14 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.18" +version = "4.5.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ac6a0c7b1a9e9a5186361f67dfa1b88213572f427fb9ab038efb2bd8c582dab" +checksum = "501d359d5f3dcaf6ecdeee48833ae73ec6e42723a1e52419c79abf9507eec0a0" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -1223,7 +1229,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b7fc6734af48458f72f5a3fa7b840903606427d98a710256e808f76a965047d9" dependencies = [ "cfg-if", - "clap 4.5.19", + "clap 4.5.16", "is-terminal", "libc", "tempfile", @@ -1366,9 +1372,9 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.7" +version = "0.8.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b" +checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" [[package]] name = "core2" @@ -1381,9 +1387,9 @@ dependencies = [ [[package]] name = "cpufeatures" -version = "0.2.14" +version = "0.2.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "608697df725056feaccfa42cffdaeeec3fccc4ffc38358ecd19b243e716a78e0" +checksum = "53fe5e26ff1b7aef8bca9c6080520cfb8d9333c7568e1829cef191a9723e5504" dependencies = [ "libc", ] @@ -1573,7 +1579,7 @@ checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -1690,7 +1696,7 @@ dependencies = [ "proc-macro2", "quote", "strsim 0.11.1", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -1712,7 +1718,7 @@ checksum = "d336a2a514f6ccccaa3e09b02d41d35330c07ddf03a62165fcec10bb561c7806" dependencies = [ "darling_core 0.20.10", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -1779,7 +1785,7 @@ dependencies = [ "futures", "ic-base-types", "ic-management-types", - "indexmap 2.6.0", + "indexmap 2.5.0", "itertools 0.13.0", "log", "rand", @@ -1837,7 +1843,7 @@ dependencies = [ "proc-macro2", "quote", "rustc_version", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -1991,7 +1997,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -2022,7 +2028,7 @@ dependencies = [ "backon", "candid", "chrono", - "clap 4.5.19", + "clap 4.5.16", "clap-num", "clap_complete", "clio", @@ -2060,7 +2066,7 @@ dependencies = [ "ic-sns-wasm", "ic-sys", "ic-types", - "indexmap 2.6.0", + "indexmap 2.5.0", "itertools 0.13.0", "keyring", "log", @@ -2201,14 +2207,14 @@ dependencies = [ [[package]] name = "enum-as-inner" -version = "0.6.1" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1e6a265c649f3f5979b601d26f1d05ada116434c87741c9493cb56218f76cbc" +checksum = "5ffccbb6966c05b32ef8fbac435df276c4ae4d3dc55a8cd0eb9745e6c12f546a" dependencies = [ - "heck 0.5.0", + "heck 0.4.1", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -2311,9 +2317,18 @@ checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" [[package]] name = "fastrand" -version = "2.1.1" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" +checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be" +dependencies = [ + "instant", +] + +[[package]] +name = "fastrand" +version = "2.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9fc0510504f03c51ada170672ac806f1f105a88aa97a5281117e1ddc3368e51a" [[package]] name = "fe-derive" @@ -2346,14 +2361,14 @@ checksum = "28dea519a9695b9977216879a3ebfddf92f1c08c05d984f8996aecd6ecdc811d" [[package]] name = "filetime" -version = "0.2.25" +version = "0.2.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586" +checksum = "1ee447700ac8aa0b2f2bd7bc4462ad686ba06baa6727ac149a2d6277f0d240fd" dependencies = [ "cfg-if", "libc", - "libredox", - "windows-sys 0.59.0", + "redox_syscall 0.4.1", + "windows-sys 0.52.0", ] [[package]] @@ -2364,12 +2379,12 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" [[package]] name = "flate2" -version = "1.0.34" +version = "1.0.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1b589b4dc103969ad3cf85c950899926ec64300a1a46d76c03a6072957036f0" +checksum = "324a1be68054ef05ad64b861cc9eaf1d623d2d8cb25b4bf2cb9cdd902b4bf253" dependencies = [ "crc32fast", - "miniz_oxide", + "miniz_oxide 0.8.0", ] [[package]] @@ -2474,7 +2489,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -2544,9 +2559,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.31.0" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32085ea23f3234fc7846555e85283ba4de91e21016dc0455a16286d87a292d64" +checksum = "40ecd4077b5ae9fd2e9e169b102c6c330d0605168eb0e8bf79952b256dbefffd" [[package]] name = "glob" @@ -2577,7 +2592,7 @@ dependencies = [ "futures-sink", "futures-util", "http 0.2.12", - "indexmap 2.6.0", + "indexmap 2.5.0", "slab", "tokio", "tokio-util", @@ -2586,9 +2601,9 @@ dependencies = [ [[package]] name = "h2" -version = "0.4.6" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "524e8ac6999421f49a846c2d4411f337e53497d8ec55d67753beffa43c5d9205" +checksum = "fa82e28a107a8cc405f0839610bdc9b15f1e25ec7d696aa5cf173edbcb1486ab" dependencies = [ "atomic-waker", "bytes", @@ -2596,7 +2611,7 @@ dependencies = [ "futures-core", "futures-sink", "http 1.1.0", - "indexmap 2.6.0", + "indexmap 2.5.0", "slab", "tokio", "tokio-util", @@ -2639,12 +2654,6 @@ dependencies = [ "serde", ] -[[package]] -name = "hashbrown" -version = "0.15.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e087f84d4f86bf4b218b927129862374b72199ae7d8657835f1e89000eea4fb" - [[package]] name = "hdrhistogram" version = "7.5.4" @@ -2797,9 +2806,9 @@ dependencies = [ [[package]] name = "httparse" -version = "1.9.5" +version = "1.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7d71d3574edd2771538b901e6549113b4006ece66150fb69c0fb6d9a2adae946" +checksum = "0fcc0b4a115bf80b728eb8ea024ad5bd707b615bfed49e0665b6e0f86fd082d9" [[package]] name = "httpdate" @@ -2852,7 +2861,7 @@ dependencies = [ "bytes", "futures-channel", "futures-util", - "h2 0.4.6", + "h2 0.4.5", "http 1.1.0", "http-body 1.0.1", "httparse", @@ -2876,7 +2885,7 @@ dependencies = [ "hyper-util", "log", "rustls 0.22.4", - "rustls-native-certs 0.7.3", + "rustls-native-certs", "rustls-pki-types", "tokio", "tokio-rustls 0.25.0", @@ -2885,16 +2894,16 @@ dependencies = [ [[package]] name = "hyper-rustls" -version = "0.27.3" +version = "0.27.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08afdbb5c31130e3034af566421053ab03787c640246a446327f550d11bcb333" +checksum = "5ee4be2c948921a1a5320b629c4193916ed787a7f7f293fd3f7f5a6c9de74155" dependencies = [ "futures-util", "http 1.1.0", "hyper 1.4.1", "hyper-util", - "rustls 0.23.13", - "rustls-native-certs 0.8.0", + "rustls 0.23.12", + "rustls-native-certs", "rustls-pki-types", "tokio", "tokio-rustls 0.26.0", @@ -2929,9 +2938,9 @@ dependencies = [ [[package]] name = "hyper-util" -version = "0.1.9" +version = "0.1.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41296eb09f183ac68eec06e03cdbea2e759633d4067b2f6552fc2e009bcad08b" +checksum = "cde7055719c54e36e95e8719f95883f22072a48ede39db7fc17a4e1d5281e9b9" dependencies = [ "bytes", "futures-channel", @@ -2942,15 +2951,16 @@ dependencies = [ "pin-project-lite", "socket2", "tokio", + "tower", "tower-service", "tracing", ] [[package]] name = "iana-time-zone" -version = "0.1.61" +version = "0.1.60" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220" +checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141" dependencies = [ "android_system_properties", "core-foundation-sys", @@ -2981,7 +2991,7 @@ dependencies = [ "slog", "tokio", "tonic", - "tower 0.4.13", + "tower", ] [[package]] @@ -3043,7 +3053,7 @@ source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f00 dependencies = [ "anyhow", "async-stream", - "axum 0.7.7", + "axum 0.7.5", "byte-unit", "bytes", "futures", @@ -3108,7 +3118,7 @@ dependencies = [ "futures-util", "http-body-util", "hyper 1.4.1", - "hyper-rustls 0.27.3", + "hyper-rustls 0.27.2", "hyper-util", "ic-canister-client-sender", "ic-canonical-state", @@ -3120,11 +3130,11 @@ dependencies = [ "ic-types", "itertools 0.12.1", "prost", - "rustls 0.23.13", + "rustls 0.23.12", "serde", "serde_cbor", "tokio", - "tower 0.4.13", + "tower", "tree-deserializer", "url", ] @@ -3303,8 +3313,8 @@ dependencies = [ "proc-macro2", "quote", "serde", - "serde_tokenstream 0.2.2", - "syn 2.0.79", + "serde_tokenstream 0.2.1", + "syn 2.0.77", ] [[package]] @@ -3585,7 +3595,7 @@ name = "ic-crypto-internal-types" version = "0.9.0" source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" dependencies = [ - "arrayvec 0.7.6", + "arrayvec 0.7.4", "hex", "ic-protobuf", "phantom_newtype", @@ -3733,7 +3743,7 @@ name = "ic-http-endpoints-metrics" version = "0.9.0" source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f0016d5e3296b31#d4ee25b0865e89d3eaac13a60f0016d5e3296b31" dependencies = [ - "axum 0.7.7", + "axum 0.7.5", "ic-async-utils", "ic-config", "ic-metrics", @@ -3742,7 +3752,7 @@ dependencies = [ "thiserror", "tokio", "tokio-io-timeout", - "tower 0.4.13", + "tower", ] [[package]] @@ -3859,7 +3869,7 @@ dependencies = [ "strum 0.26.3", "strum_macros 0.26.4", "thiserror", - "tower 0.4.13", + "tower", ] [[package]] @@ -3955,7 +3965,7 @@ dependencies = [ "backon", "candid", "chrono", - "clap 4.5.19", + "clap 4.5.16", "custom_error", "decentralization", "dirs", @@ -3982,7 +3992,7 @@ dependencies = [ "ic-registry-nns-data-provider", "ic-registry-subnet-type", "ic-types", - "indexmap 2.6.0", + "indexmap 2.5.0", "itertools 0.13.0", "lazy_static", "log", @@ -4035,7 +4045,7 @@ dependencies = [ "ic-protobuf", "ic-registry-subnet-type", "ic-types", - "indexmap 2.6.0", + "indexmap 2.5.0", "registry-canister", "reqwest", "serde", @@ -5080,13 +5090,13 @@ dependencies = [ [[package]] name = "ic-wasm" -version = "0.8.6" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19fabaeecfe37f24b433c62489242fc54503d98d4cc8d0f9ef7544dfdfc0ddcb" +checksum = "941376953c00628d8edae0adcad4b6e882c01cbfd5416d2ac2bc5fb709927737" dependencies = [ "anyhow", "candid", - "clap 4.5.19", + "clap 4.5.16", "libflate", "rustc-demangle", "serde", @@ -5339,7 +5349,7 @@ checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -5394,12 +5404,12 @@ dependencies = [ [[package]] name = "indexmap" -version = "2.6.0" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da" +checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5" dependencies = [ "equivalent", - "hashbrown 0.15.0", + "hashbrown 0.14.5", "serde", ] @@ -5427,15 +5437,15 @@ dependencies = [ [[package]] name = "ipnet" -version = "2.10.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "187674a687eed5fe42285b40c6291f9a01517d415fad1c3cbc6a9f778af7fcd4" +checksum = "8f518f335dce6725a761382244631d86cf0ccb2863413590b31338feb467f9c3" [[package]] name = "iri-string" -version = "0.7.6" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44bd7eced44cfe2cebc674adb2a7124a754a4b5269288d22e9f39f8fada3562d" +checksum = "7f5f6c2df22c009ac44f6f1499308e7a3ac7ba42cd2378475cc691510e1eef1b" dependencies = [ "memchr", "serde", @@ -5494,9 +5504,9 @@ checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b" [[package]] name = "js-sys" -version = "0.3.70" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a" +checksum = "29c15563dc2726973df627357ce0c9ddddbea194836909d655df6a75d2cf296d" dependencies = [ "wasm-bindgen", ] @@ -5529,9 +5539,9 @@ dependencies = [ [[package]] name = "k256" -version = "0.13.4" +version = "0.13.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6e3919bbaa2945715f0bb6d3934a173d1e9a59ac23767fbaaef277265a7411b" +checksum = "956ff9b67e26e1a6a866cb758f12c6f8746208489e3e4a4b5580802f2f0a587b" dependencies = [ "cfg-if", "ecdsa", @@ -5552,9 +5562,9 @@ dependencies = [ [[package]] name = "keyring" -version = "3.3.0" +version = "3.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fa83d1ca02db069b5fbe94b23b584d588e989218310c9c15015bb5571ef1a94" +checksum = "030a9b84bb2a2f3673d4c8b8236091ed5d8f6b66a56d8085471d8abd5f3c6a80" dependencies = [ "dbus-secret-service", "security-framework", @@ -5583,9 +5593,9 @@ checksum = "884e2677b40cc8c339eaefcb701c32ef1fd2493d71118dc0ca4b6a736c93bd67" [[package]] name = "libc" -version = "0.2.159" +version = "0.2.158" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "561d97a539a36e26a9a5fad1ea11a3039a67714694aaa379433e580854bc3dc5" +checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439" [[package]] name = "libdbus-sys" @@ -5654,7 +5664,6 @@ checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d" dependencies = [ "bitflags 2.6.0", "libc", - "redox_syscall", ] [[package]] @@ -5707,7 +5716,7 @@ name = "log-fetcher" version = "0.5.5" dependencies = [ "anyhow", - "clap 4.5.19", + "clap 4.5.16", "log", "pretty_env_logger", "reqwest", @@ -5721,8 +5730,8 @@ dependencies = [ name = "log-noise-filter-backend" version = "0.5.5" dependencies = [ - "axum 0.7.7", - "clap 4.5.19", + "axum 0.7.5", + "clap 4.5.16", "regex", "serde", "serde_json", @@ -5737,7 +5746,7 @@ name = "log-noise-filter-downloader" version = "0.5.5" dependencies = [ "anyhow", - "clap 4.5.19", + "clap 4.5.16", "log-noise-filter-backend", "reqwest", "serde", @@ -5811,6 +5820,15 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" +[[package]] +name = "miniz_oxide" +version = "0.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" +dependencies = [ + "adler", +] + [[package]] name = "miniz_oxide" version = "0.8.0" @@ -5822,9 +5840,9 @@ dependencies = [ [[package]] name = "mio" -version = "1.0.2" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "80e04d1dcff3aae0704555fe5fee3bcfaf3d1fdf8a7e521d5b9d2b42acb52cec" +checksum = "4569e456d394deccd22ce1c1913e6ea0e54519f577285001215d33557431afe4" dependencies = [ "hermit-abi 0.3.9", "libc", @@ -5856,7 +5874,7 @@ dependencies = [ "cfg-if", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -5871,10 +5889,10 @@ version = "0.5.5" dependencies = [ "anyhow", "assert_cmd", - "axum 0.7.7", + "axum 0.7.5", "axum-otel-metrics", "base64 0.22.1", - "clap 4.5.19", + "clap 4.5.16", "crossbeam", "crossbeam-channel", "flate2", @@ -5905,7 +5923,7 @@ dependencies = [ name = "multiservice-discovery-downloader" version = "0.5.5" dependencies = [ - "clap 4.5.19", + "clap 4.5.16", "crossbeam", "crossbeam-channel", "futures-util", @@ -5952,7 +5970,7 @@ name = "node-status-updater" version = "0.5.5" dependencies = [ "anyhow", - "clap 4.5.19", + "clap 4.5.16", "crossbeam", "crossbeam-channel", "futures-util", @@ -6107,9 +6125,9 @@ checksum = "830b246a0e5f20af87141b25c173cd1b609bd7779a4617d6ec582abaf90870f3" [[package]] name = "object" -version = "0.36.4" +version = "0.36.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "084f1a5821ac4c651660a94a7153d27ac9d8a53736203f58b31945ded098070a" +checksum = "27b64972346851a39438c60b341ebc01bba47464ae329e55cf343eb93964efd9" dependencies = [ "memchr", ] @@ -6159,7 +6177,7 @@ dependencies = [ "serde_urlencoded", "snafu", "tokio", - "tower 0.4.13", + "tower", "tower-http", "tracing", "url", @@ -6167,9 +6185,9 @@ dependencies = [ [[package]] name = "oid-registry" -version = "0.7.1" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a8d8034d9489cdaf79228eb9f6a3b8d7bb32ba00d6645ebd48eef4077ceb5bd9" +checksum = "1c958dd45046245b9c3c2547369bb634eb461670b2e7e0de552905801a648d1d" dependencies = [ "asn1-rs", ] @@ -6181,12 +6199,9 @@ source = "git+https://github.com/dfinity/ic.git?rev=d4ee25b0865e89d3eaac13a60f00 [[package]] name = "once_cell" -version = "1.20.1" +version = "1.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82881c4be219ab5faaf2ad5e5e5ecdff8c66bd7402ca3160975c93b24961afd1" -dependencies = [ - "portable-atomic", -] +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" [[package]] name = "opaque-debug" @@ -6264,9 +6279,9 @@ checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" [[package]] name = "ordered-float" -version = "4.3.0" +version = "4.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d501f1a72f71d3c063a6bbc8f7271fa73aa09fe5d6283b6571e2ed176a2537" +checksum = "4a91171844676f8c7990ce64959210cd2eaef32c2612c50f9fae9f8aaa6065a6" dependencies = [ "num-traits", ] @@ -6311,9 +6326,9 @@ dependencies = [ [[package]] name = "parking" -version = "2.2.1" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba" +checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae" [[package]] name = "parking_lot" @@ -6333,7 +6348,7 @@ checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ "cfg-if", "libc", - "redox_syscall", + "redox_syscall 0.5.3", "smallvec", "windows-targets 0.52.6", ] @@ -6380,9 +6395,9 @@ checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e" [[package]] name = "pest" -version = "2.7.13" +version = "2.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fdbef9d1d47087a895abd220ed25eb4ad973a5e26f6a4367b038c25e28dfc2d9" +checksum = "cd53dff83f26735fdc1ca837098ccf133605d794cdae66acfc2bfac3ec809d95" dependencies = [ "memchr", "thiserror", @@ -6391,9 +6406,9 @@ dependencies = [ [[package]] name = "pest_derive" -version = "2.7.13" +version = "2.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d3a6e3394ec80feb3b6393c725571754c6188490265c61aaf260810d6b95aa0" +checksum = "2a548d2beca6773b1c244554d36fcf8548a8a58e74156968211567250e48e49a" dependencies = [ "pest", "pest_generator", @@ -6401,22 +6416,22 @@ dependencies = [ [[package]] name = "pest_generator" -version = "2.7.13" +version = "2.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94429506bde1ca69d1b5601962c73f4172ab4726571a59ea95931218cb0e930e" +checksum = "3c93a82e8d145725dcbaf44e5ea887c8a869efdcc28706df2d08c69e17077183" dependencies = [ "pest", "pest_meta", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] name = "pest_meta" -version = "2.7.13" +version = "2.7.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ac8a071862e93690b6e34e9a5fb8e33ff3734473ac0245b27232222c4906a33f" +checksum = "a941429fea7e08bedec25e4f6785b6ffaacc6b755da98df5ef3e7dcf4a124c4f" dependencies = [ "once_cell", "pest", @@ -6430,7 +6445,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" dependencies = [ "fixedbitset", - "indexmap 2.6.0", + "indexmap 2.5.0", ] [[package]] @@ -6461,7 +6476,7 @@ checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -6498,15 +6513,15 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.31" +version = "0.3.30" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2" +checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec" [[package]] name = "portable-atomic" -version = "1.9.0" +version = "1.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cc9c68a3f6da06753e9335d63e27f6b9754dd1920d941135b7ea8224f141adb2" +checksum = "da544ee218f0d287a911e9c99a39a8c9bc8fcad3cb8db5959940044ecfc67265" [[package]] name = "powerfmt" @@ -6583,12 +6598,12 @@ dependencies = [ [[package]] name = "prettyplease" -version = "0.2.22" +version = "0.2.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "479cf940fbbb3426c32c5d5176f62ad57549a0bb84773423ba8be9d089f5faba" +checksum = "5f12335488a2f3b0a83b14edad48dca9879ce89b2edd10e80237e4e852dd645e" dependencies = [ "proc-macro2", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -6612,9 +6627,9 @@ dependencies = [ [[package]] name = "proc-macro-crate" -version = "3.2.0" +version = "3.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b" +checksum = "6d37c51ca738a55da99dc0c4a34860fd675453b8b36209178c2249bb13651284" dependencies = [ "toml_edit", ] @@ -6718,7 +6733,7 @@ version = "0.5.5" dependencies = [ "anyhow", "base64 0.22.1", - "clap 4.5.19", + "clap 4.5.16", "config-writer-common", "crossbeam", "futures-util", @@ -6793,7 +6808,7 @@ dependencies = [ "prost", "prost-types", "regex", - "syn 2.0.79", + "syn 2.0.77", "tempfile", ] @@ -6807,7 +6822,7 @@ dependencies = [ "itertools 0.12.1", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -6827,9 +6842,9 @@ checksum = "106dd99e98437432fed6519dedecfade6a06a73bb7b2a1e019fdd2bee5778d94" [[package]] name = "psm" -version = "0.1.23" +version = "0.1.21" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aa37f80ca58604976033fae9515a8a2989fc13797d953f7c04fb8fa36a11f205" +checksum = "5787f7cda34e3033a72192c018bc5883100330f362ef279a8cbccfce8bb4e874" dependencies = [ "cc", ] @@ -6865,16 +6880,16 @@ dependencies = [ [[package]] name = "quinn" -version = "0.11.5" +version = "0.11.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8c7c5fdde3cdae7203427dc4f0a68fe0ed09833edc525a03456b153b79828684" +checksum = "b22d8e7369034b9a7132bc2008cac12f2013c8132b45e0554e6e20e2617f2156" dependencies = [ "bytes", "pin-project-lite", "quinn-proto", "quinn-udp", "rustc-hash", - "rustls 0.23.13", + "rustls 0.23.12", "socket2", "thiserror", "tokio", @@ -6883,15 +6898,15 @@ dependencies = [ [[package]] name = "quinn-proto" -version = "0.11.8" +version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fadfaed2cd7f389d0161bb73eeb07b7b78f8691047a6f3e73caaeae55310a4a6" +checksum = "ba92fb39ec7ad06ca2582c0ca834dfeadcaf06ddfc8e635c80aa7e1c05315fdd" dependencies = [ "bytes", "rand", "ring", "rustc-hash", - "rustls 0.23.13", + "rustls 0.23.12", "slab", "thiserror", "tinyvec", @@ -6900,15 +6915,15 @@ dependencies = [ [[package]] name = "quinn-udp" -version = "0.5.5" +version = "0.5.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4fe68c2e9e1a1234e218683dbdf9f9dfcb094113c5ac2b938dfcb9bab4c4140b" +checksum = "8bffec3605b73c6f1754535084a85229fa8a30f86014e6c81aeec4abb68b0285" dependencies = [ "libc", "once_cell", "socket2", "tracing", - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -6993,18 +7008,27 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.7" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f" +checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa" +dependencies = [ + "bitflags 1.3.2", +] + +[[package]] +name = "redox_syscall" +version = "0.5.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4" dependencies = [ "bitflags 2.6.0", ] [[package]] name = "redox_users" -version = "0.4.6" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43" +checksum = "bd283d9651eeda4b2a83a43c1c91b266c40fd76ecd39a50a8c630ae69dc72891" dependencies = [ "getrandom", "libredox", @@ -7013,9 +7037,9 @@ dependencies = [ [[package]] name = "regex" -version = "1.11.0" +version = "1.10.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38200e5ee88914975b69f657f0801b6f6dccafd44fd9326302a4aaeecfacb1d8" +checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619" dependencies = [ "aho-corasick", "memchr", @@ -7025,9 +7049,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.8" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "368758f23274712b504848e9d5a6f010445cc8b87a7cdb4d7cbee666c1288da3" +checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" dependencies = [ "aho-corasick", "memchr", @@ -7042,9 +7066,9 @@ checksum = "53a49587ad06b26609c52e423de037e7f57f20d53535d66e08c695f347df952a" [[package]] name = "regex-syntax" -version = "0.8.5" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c" +checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" [[package]] name = "registry-canister" @@ -7102,9 +7126,9 @@ dependencies = [ [[package]] name = "reqwest" -version = "0.12.8" +version = "0.12.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f713147fbe92361e52392c73b8c9e48c04c6625bce969ef54dc901e58e042a7b" +checksum = "f8f4955649ef5c38cc7f9e8aa41761d48fb9677197daea9984dc54f56aad5e63" dependencies = [ "base64 0.22.1", "bytes", @@ -7115,7 +7139,7 @@ dependencies = [ "http-body 1.0.1", "http-body-util", "hyper 1.4.1", - "hyper-rustls 0.27.3", + "hyper-rustls 0.27.2", "hyper-util", "ipnet", "js-sys", @@ -7125,7 +7149,7 @@ dependencies = [ "percent-encoding", "pin-project-lite", "quinn", - "rustls 0.23.13", + "rustls 0.23.12", "rustls-pemfile", "rustls-pki-types", "serde", @@ -7181,9 +7205,9 @@ dependencies = [ [[package]] name = "rkyv" -version = "0.7.45" +version = "0.7.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9008cd6385b9e161d8229e1f6549dd23c3d022f132a2ea37ac3a10ac4935779b" +checksum = "5cba464629b3394fc4dbc6f940ff8f5b4ff5c7aef40f29166fd4ad12acbc99c0" dependencies = [ "bitvec", "bytecheck", @@ -7199,9 +7223,9 @@ dependencies = [ [[package]] name = "rkyv_derive" -version = "0.7.45" +version = "0.7.44" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "503d1d27590a2b0a3a4ca4c94755aa2875657196ecbf401a42eff41d7de532c0" +checksum = "a7dddfff8de25e6f62b9d64e6e432bf1c6736c57d20323e15ee10435fbda7c65" dependencies = [ "proc-macro2", "quote", @@ -7220,7 +7244,7 @@ version = "1.36.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b082d80e3e3cc52b2ed634388d436fe1f4de6af5786cc2de9ba9737527bdf555" dependencies = [ - "arrayvec 0.7.6", + "arrayvec 0.7.4", "borsh", "bytes", "num-traits", @@ -7254,9 +7278,9 @@ checksum = "583034fd73374156e66797ed8e5b0d5690409c9226b22d87cb7f19821c05d152" [[package]] name = "rustc_version" -version = "0.4.1" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfcb3a22ef46e85b45de6ee7e79d063319ebb6594faafcf1c225ea92ab6e9b92" +checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ "semver", ] @@ -7272,9 +7296,9 @@ dependencies = [ [[package]] name = "rustix" -version = "0.38.37" +version = "0.38.34" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811" +checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" dependencies = [ "bitflags 2.6.0", "errno", @@ -7299,9 +7323,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.23.13" +version = "0.23.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f2dabaac7466917e566adb06783a81ca48944c6898a1b08b9374106dd671f4c8" +checksum = "c58f8c84392efc0a126acce10fa59ff7b3d2ac06ab451a33f2741989b806b044" dependencies = [ "brotli", "brotli-decompressor", @@ -7315,22 +7339,9 @@ dependencies = [ [[package]] name = "rustls-native-certs" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5bfb394eeed242e909609f56089eecfe5fda225042e8b171791b9c95f5931e5" -dependencies = [ - "openssl-probe", - "rustls-pemfile", - "rustls-pki-types", - "schannel", - "security-framework", -] - -[[package]] -name = "rustls-native-certs" -version = "0.8.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcaf18a4f2be7326cd874a5fa579fae794320a0f388d365dca7e480e55f83f8a" +checksum = "a88d6d420651b496bdd98684116959239430022a115c1240e6c3993be0b15fba" dependencies = [ "openssl-probe", "rustls-pemfile", @@ -7341,24 +7352,25 @@ dependencies = [ [[package]] name = "rustls-pemfile" -version = "2.2.0" +version = "2.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dce314e5fee3f39953d46bb63bb8a46d40c2f8fb7cc5a3b6cab2bde9721d6e50" +checksum = "196fe16b00e106300d3e45ecfcb764fa292a535d7326a29a5875c579c7417425" dependencies = [ + "base64 0.22.1", "rustls-pki-types", ] [[package]] name = "rustls-pki-types" -version = "1.9.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e696e35370c65c9c541198af4543ccd580cf17fc25d8e05c5a242b202488c55" +checksum = "fc0a2ce646f8655401bb81e7927b812614bd5d91dbc968696be50603510fcaf0" [[package]] name = "rustls-webpki" -version = "0.102.8" +version = "0.102.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64ca1bc8749bd4cf37b5ce386cc146580777b4e8572c7b97baf22c83f444bee9" +checksum = "8e6b52d4fda176fd835fdc55a835d4a89b8499cad995885a21149d5ad62f852e" dependencies = [ "ring", "rustls-pki-types", @@ -7388,11 +7400,11 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.24" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e9aaafd5a2b6e3d657ff009d82fbd630b6bd54dd4eb06f21693925cdf80f9b8b" +checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" dependencies = [ - "windows-sys 0.59.0", + "windows-sys 0.52.0", ] [[package]] @@ -7451,9 +7463,9 @@ dependencies = [ [[package]] name = "security-framework-sys" -version = "2.12.0" +version = "2.11.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea4a292869320c0272d7bc55a5a6aafaff59b4f63404a003887b679a2e05b4b6" +checksum = "75da29fe9b9b08fe9d6b22b5b4bcbc75d8db3aa31e639aa56bb62e9d46bfceaf" dependencies = [ "core-foundation-sys", "libc", @@ -7461,13 +7473,13 @@ dependencies = [ [[package]] name = "self-replace" -version = "1.5.0" +version = "1.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03ec815b5eab420ab893f63393878d89c90fdd94c0bcc44c07abb8ad95552fb7" +checksum = "f7828a58998685d8bf5a3c5e7a3379a5867289c20828c3ee436280b44b598515" dependencies = [ - "fastrand", + "fastrand 1.9.0", "tempfile", - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] @@ -7536,7 +7548,7 @@ checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -7545,7 +7557,7 @@ version = "1.0.128" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6ff5456707a1de34e7e37f2a6fd3d3f808c318259cbd01ab6377795054b483d8" dependencies = [ - "indexmap 2.6.0", + "indexmap 2.5.0", "itoa", "memchr", "ryu", @@ -7570,7 +7582,7 @@ checksum = "6c64451ba24fc7a6a2d60fc75dd9c83c90903b19028d4eff35e88fc1e86564e9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -7586,14 +7598,14 @@ dependencies = [ [[package]] name = "serde_tokenstream" -version = "0.2.2" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "64060d864397305347a78851c51588fd283767e7e7589829e8121d65512340f1" +checksum = "8790a7c3fe883e443eaa2af6f705952bc5d6e8671a220b9335c8cae92c037e74" dependencies = [ "proc-macro2", "quote", "serde", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -7636,7 +7648,7 @@ version = "0.9.34+deprecated" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6a8b1a1a2ebf674015cc02edccce75287f1a0130d394307b36743c2f5d504b47" dependencies = [ - "indexmap 2.6.0", + "indexmap 2.5.0", "itoa", "ryu", "serde", @@ -7744,9 +7756,9 @@ dependencies = [ [[package]] name = "simdutf8" -version = "0.1.5" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3a9fe34e3e7a50316060351f37187a3f546bce95496156754b601a5fa71b76e" +checksum = "f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a" [[package]] name = "simple_asn1" @@ -7775,7 +7787,7 @@ version = "0.5.5" dependencies = [ "anyhow", "candid", - "clap 4.5.19", + "clap 4.5.16", "dotenv", "env_logger 0.11.5", "futures", @@ -7872,30 +7884,30 @@ checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67" [[package]] name = "snafu" -version = "0.8.5" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "223891c85e2a29c3fe8fb900c1fae5e69c2e42415e3177752e8718475efa5019" +checksum = "2b835cb902660db3415a672d862905e791e54d306c6e8189168c7f3d9ae1c79d" dependencies = [ "snafu-derive", ] [[package]] name = "snafu-derive" -version = "0.8.5" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03c3c6b7927ffe7ecaa769ee0e3994da3b8cafc8f444578982c83ecb161af917" +checksum = "38d1e02fca405f6280643174a50c942219f0bbf4dbf7d480f1dd864d6f211ae5" dependencies = [ "heck 0.5.0", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] name = "sns-downloader" version = "0.5.5" dependencies = [ - "clap 4.5.19", + "clap 4.5.16", "crossbeam", "crossbeam-channel", "futures-util", @@ -7957,15 +7969,15 @@ checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3" [[package]] name = "stacker" -version = "0.1.17" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "799c883d55abdb5e98af1a7b3f23b9b6de8ecada0ecac058672d7635eb48ca7b" +checksum = "c886bd4480155fd3ef527d45e9ac8dd7118a898a46530b7b94c3e21866259fce" dependencies = [ "cc", "cfg-if", "libc", "psm", - "windows-sys 0.59.0", + "winapi", ] [[package]] @@ -8027,7 +8039,7 @@ dependencies = [ "proc-macro2", "quote", "rustversion", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -8055,9 +8067,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.79" +version = "2.0.77" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "89132cd0bf050864e1d38dc3bbc07a0eb8e7530af26344d3d2bbbef83499f590" +checksum = "9f35bcdf61fd8e7be6caf75f429fdca8beb3ed76584befb503b1569faee373ed" dependencies = [ "proc-macro2", "quote", @@ -8073,7 +8085,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -8099,7 +8111,7 @@ checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -8148,9 +8160,9 @@ checksum = "55937e1799185b12863d447f42597ed69d9928686b8d88a1df17376a097d8369" [[package]] name = "tar" -version = "0.4.42" +version = "0.4.41" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ff6c40d3aedb5e06b57c6f669ad17ab063dd1e63d977c6a88e7f4dfa4f04020" +checksum = "cb797dad5fb5b76fcf519e702f4a589483b5ef06567f160c392832c1f5e44909" dependencies = [ "filetime", "libc", @@ -8159,12 +8171,12 @@ dependencies = [ [[package]] name = "tempfile" -version = "3.13.0" +version = "3.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0f2c9fc62d0beef6951ccffd757e241266a2c833136efbe35af6cd2567dca5b" +checksum = "04cbcdd0c794ebb0d4cf35e88edd2f7d2c4c3e9a5a6dab322839b321c6a87a64" dependencies = [ "cfg-if", - "fastrand", + "fastrand 2.1.0", "once_cell", "rustix", "windows-sys 0.59.0", @@ -8192,12 +8204,12 @@ dependencies = [ [[package]] name = "terminal_size" -version = "0.4.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f599bd7ca042cfdf8f4512b277c02ba102247820f9d9d4a9f521f496751a6ef" +checksum = "21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7" dependencies = [ "rustix", - "windows-sys 0.59.0", + "windows-sys 0.48.0", ] [[package]] @@ -8214,22 +8226,22 @@ checksum = "23d434d3f8967a09480fb04132ebe0a3e088c173e6d0ee7897abbdf4eab0f8b9" [[package]] name = "thiserror" -version = "1.0.64" +version = "1.0.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d50af8abc119fb8bb6dbabcfa89656f46f84aa0ac7688088608076ad2b459a84" +checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.64" +version = "1.0.63" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08904e7672f5eb876eaaf87e0ce17857500934f4981c4a0ab2b4aa98baac7fc3" +checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -8340,7 +8352,7 @@ checksum = "693d596312e88961bc67d7f1f97af8a70227d9f90c31bba5806eec004978d752" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -8372,16 +8384,16 @@ version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c7bc40d0e5a97695bb96e27995cd3a08538541b0a846f65bba7a359f36700d4" dependencies = [ - "rustls 0.23.13", + "rustls 0.23.12", "rustls-pki-types", "tokio", ] [[package]] name = "tokio-stream" -version = "0.1.16" +version = "0.1.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f4e6ce100d0eb49a2734f8c0812bcd324cf357d21810932c5df6b96ef2b86f1" +checksum = "267ac89e0bec6e691e5813911606935d77c476ff49024f98abcea3e7b15e37af" dependencies = [ "futures-core", "pin-project-lite", @@ -8409,11 +8421,11 @@ checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41" [[package]] name = "toml_edit" -version = "0.22.22" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5" +checksum = "6a8534fd7f78b5405e860340ad6575217ce99f38d4d5c8f2442cb5ecb50090e1" dependencies = [ - "indexmap 2.6.0", + "indexmap 2.5.0", "toml_datetime", "winnow", ] @@ -8439,7 +8451,7 @@ dependencies = [ "prost", "tokio", "tokio-stream", - "tower 0.4.13", + "tower", "tower-layer", "tower-service", "tracing", @@ -8455,7 +8467,7 @@ dependencies = [ "proc-macro2", "prost-build", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -8479,22 +8491,6 @@ dependencies = [ "tracing", ] -[[package]] -name = "tower" -version = "0.5.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2873938d487c3cfb9aed7546dc9f2711d867c9f90c46b889989a2cb84eba6b4f" -dependencies = [ - "futures-core", - "futures-util", - "pin-project-lite", - "sync_wrapper 0.1.2", - "tokio", - "tower-layer", - "tower-service", - "tracing", -] - [[package]] name = "tower-http" version = "0.5.2" @@ -8509,7 +8505,7 @@ dependencies = [ "http-body-util", "iri-string", "pin-project-lite", - "tower 0.4.13", + "tower", "tower-layer", "tower-service", "tracing", @@ -8517,15 +8513,15 @@ dependencies = [ [[package]] name = "tower-layer" -version = "0.3.3" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "121c2a6cda46980bb0fcd1647ffaf6cd3fc79a013de288782836f6df9c48780e" +checksum = "c20c8dbed6283a09604c3e69b4b7eeb54e298b8a600d4d5ecb5ad39de609f1d0" [[package]] name = "tower-service" -version = "0.3.3" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8df9b6e13f2d32c91b9bd719c00d1958837bc7dec474d94952798cc8e69eeec3" +checksum = "b6bc1c9ce2b5135ac7f93c72918fc37feb872bdc6a5533a8b85eb4b86bfdae52" [[package]] name = "tracing" @@ -8547,7 +8543,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -8624,9 +8620,9 @@ checksum = "6af6ae20167a9ece4bcb41af5b80f8a1f1df981f6391189ce00fd257af04126a" [[package]] name = "typeid" -version = "1.0.2" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e13db2e0ccd5e14a544e8a246ba2312cd25223f616442d7f2cb0e3db614236e" +checksum = "059d83cc991e7a42fc37bd50941885db0888e34209f8cfd9aab07ddec03bc9cf" [[package]] name = "typenum" @@ -8636,9 +8632,9 @@ checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" [[package]] name = "ucd-trie" -version = "0.1.7" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2896d95c02a80c6d6a5d6e953d479f5ddf2dfdb6a244441010e373ac0fb88971" +checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" [[package]] name = "unicode-bidi" @@ -8654,18 +8650,18 @@ checksum = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe" [[package]] name = "unicode-normalization" -version = "0.1.24" +version = "0.1.23" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5033c97c4262335cded6d6fc3e5c18ab755e1a3dc96376350f3d8e9f009ad956" +checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5" dependencies = [ "tinyvec", ] [[package]] name = "unicode-segmentation" -version = "1.12.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493" +checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" [[package]] name = "unicode-width" @@ -8764,9 +8760,9 @@ dependencies = [ [[package]] name = "walrus" -version = "0.21.3" +version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "501ace8ec3492754a9b3c4b59eac7159ceff8414f9e43a05029fe8ef43b9218f" +checksum = "467611cafbc8a84834b77d2b4bb191fd2f5769752def8340407e924390c6883b" dependencies = [ "anyhow", "gimli 0.26.2", @@ -8807,35 +8803,34 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.93" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5" +checksum = "4be2531df63900aeb2bca0daaaddec08491ee64ceecbee5076636a3b026795a8" dependencies = [ "cfg-if", - "once_cell", "wasm-bindgen-macro", ] [[package]] name = "wasm-bindgen-backend" -version = "0.2.93" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b" +checksum = "614d787b966d3989fa7bb98a654e369c762374fd3213d212cfc0251257e747da" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-futures" -version = "0.4.43" +version = "0.4.42" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61e9300f63a621e96ed275155c108eb6f843b6a26d053f122ab69724559dc8ed" +checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0" dependencies = [ "cfg-if", "js-sys", @@ -8845,9 +8840,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.93" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf" +checksum = "a1f8823de937b71b9460c0c34e25f3da88250760bec0ebac694b49997550d726" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -8855,22 +8850,22 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.93" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836" +checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.93" +version = "0.2.92" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484" +checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" [[package]] name = "wasm-encoder" @@ -8883,9 +8878,9 @@ dependencies = [ [[package]] name = "wasm-streams" -version = "0.4.1" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e072d4e72f700fb3443d8fe94a39315df013eef1104903cdb0a2abd322bbecd" +checksum = "b65dc4c90b63b118468cf747d8bf3566c1913ef60be765b5730ead9e0a3ba129" dependencies = [ "futures-util", "js-sys", @@ -8903,16 +8898,16 @@ dependencies = [ "ahash 0.8.11", "bitflags 2.6.0", "hashbrown 0.14.5", - "indexmap 2.6.0", + "indexmap 2.5.0", "semver", "serde", ] [[package]] name = "web-sys" -version = "0.3.70" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26fdeaafd9bd129f65e7c031593c24d62186301e0c72c8978fa1678be7d532c0" +checksum = "77afa9a11836342370f4817622a2f0f418b134426d91a82dfb48f532d2ec13ef" dependencies = [ "js-sys", "wasm-bindgen", @@ -8920,9 +8915,9 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.26.6" +version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "841c67bff177718f1d4dfefde8d8f0e78f9b6589319ba88312f567fc5841a958" +checksum = "bd7c23921eeb1713a4e851530e9b9756e4fb0e89978582942612524cf09f01cd" dependencies = [ "rustls-pki-types", ] @@ -9216,9 +9211,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winnow" -version = "0.6.20" +version = "0.5.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b" +checksum = "f593a95398737aeed53e489c785df13f3618e41dbcd6718c6addbf1395aa6876" dependencies = [ "memchr", ] @@ -9343,7 +9338,7 @@ checksum = "28cc31741b18cb6f1d5ff12f5b7523e3d6eb0852bbbad19d73905511d9849b95" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", "synstructure", ] @@ -9365,7 +9360,7 @@ checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -9385,7 +9380,7 @@ checksum = "0ea7b4a3637ea8669cedf0f1fd5c286a17f3de97b8dd5a70a6c167a1730e63a5" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", "synstructure", ] @@ -9406,7 +9401,7 @@ checksum = "ce36e65b0d2999d2aafac989fb249189a141aee1f53c612c1f37d72631959f69" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -9428,7 +9423,7 @@ checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6" dependencies = [ "proc-macro2", "quote", - "syn 2.0.79", + "syn 2.0.77", ] [[package]] @@ -9440,4 +9435,4 @@ dependencies = [ "base64 0.22.1", "ed25519-dalek", "thiserror", -] +] \ No newline at end of file From 11f10b88c1f7753edd65facade500b9ad758ac3a Mon Sep 17 00:00:00 2001 From: Pietro Date: Wed, 2 Oct 2024 17:39:54 +0200 Subject: [PATCH 15/16] Add missing whitespace --- Cargo.lock | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Cargo.lock b/Cargo.lock index 66ce7f790..457fec6d3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -9435,4 +9435,4 @@ dependencies = [ "base64 0.22.1", "ed25519-dalek", "thiserror", -] \ No newline at end of file +] From b8435191d9bc93bf0c0f8ce24d21c152ac048c85 Mon Sep 17 00:00:00 2001 From: Pietro Date: Wed, 2 Oct 2024 17:44:40 +0200 Subject: [PATCH 16/16] Allowing unused --- .../src/trustworthy-node-metrics/src/rewards_manager.rs | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs index 161ebc4df..d4ad7d3bf 100644 --- a/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs +++ b/rs/dre-canisters/trustworthy-node-metrics/src/trustworthy-node-metrics/src/rewards_manager.rs @@ -4,7 +4,7 @@ use ic_nns_governance_api::pb::v1::MonthlyNodeProviderRewards; use ic_protobuf::registry::node_rewards::{v2::NodeRewardRate, v2::NodeRewardsTable}; use ic_registry_keys::NODE_REWARDS_TABLE_KEY; use itertools::Itertools; -use num_traits::{FromPrimitive, ToPrimitive, Zero}; +use num_traits::{ToPrimitive, Zero}; use rust_decimal::Decimal; use rust_decimal_macros::dec; use std::collections::{self, HashMap}; @@ -165,13 +165,14 @@ fn get_node_rate(region: &String, node_type: &String) -> NodeRewardRate { } } +#[allow(unused_variables)] fn coumpute_node_provider_rewards( nodes_multiplier: &[NodeRewardsMultiplier], rewardable_nodes: collections::BTreeMap, ) -> NodeProviderRewardsComputation { - let mut rewards_xdr_total = dec!(0); - let mut rewards_xdr_no_reduction_total = dec!(0); - let mut computation_logger = ComputationLogger::new(); + let rewards_xdr_total = dec!(0); + let rewards_xdr_no_reduction_total = dec!(0); + let computation_logger = ComputationLogger::new(); // 1 - Compute rewards and coefficients average for all nodes type3 and type3.1 in the same region let mut type3_coefficients: HashMap> = HashMap::new();