From 393c2406284ad7db07218c0b801d71a0167b0d1b Mon Sep 17 00:00:00 2001 From: Sean Klein Date: Fri, 19 Jan 2024 10:52:03 -0800 Subject: [PATCH 1/7] WIp package cache (mostly changes from omicron-package now) --- Cargo.lock | 3 +-- Cargo.toml | 3 ++- package/src/bin/omicron-package.rs | 5 +++++ 3 files changed, 8 insertions(+), 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index e754c2d594..64114d1af9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5222,8 +5222,6 @@ dependencies = [ [[package]] name = "omicron-zone-package" version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdfd257b7067e7a6aa9fba896a89b0f625bac7660213bb830db36e543bd3cdb8" dependencies = [ "anyhow", "async-trait", @@ -5237,6 +5235,7 @@ dependencies = [ "semver 1.0.21", "serde", "serde_derive", + "serde_json", "tar", "tempfile", "thiserror", diff --git a/Cargo.toml b/Cargo.toml index 650fd4a0b9..71e33cea66 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -265,7 +265,8 @@ omicron-package = { path = "package" } omicron-rpaths = { path = "rpaths" } omicron-sled-agent = { path = "sled-agent" } omicron-test-utils = { path = "test-utils" } -omicron-zone-package = "0.10.1" +# omicron-zone-package = "0.10.1" +omicron-zone-package = { path = "../omicron-package" } oxide-client = { path = "clients/oxide-client" } oxide-vpc = { git = "https://github.com/oxidecomputer/opte", rev = "4e6e6ab6379fa4bc40f5d0c7340b9f35c45ad6e4", features = [ "api", "std" ] } once_cell = "1.19.0" diff --git a/package/src/bin/omicron-package.rs b/package/src/bin/omicron-package.rs index 59c5c6ffe6..6729a61ac2 100644 --- a/package/src/bin/omicron-package.rs +++ b/package/src/bin/omicron-package.rs @@ -446,6 +446,11 @@ async fn get_package( } PackageSource::Local { .. } | PackageSource::Composite { .. } => { progress.set_message("bundle package".into()); + + // TODO: + // - track inputs (name, digest) + // - track outputs (name, digest) + package .create_with_progress_for_target(&progress, &target, package_name, &output_directory) .await From 7c27002b41aa86dc18b70a5f22541e5b3dbeb511 Mon Sep 17 00:00:00 2001 From: Sean Klein Date: Mon, 29 Jan 2024 10:56:46 -0800 Subject: [PATCH 2/7] Continue pulling in changes from omicron-package --- Cargo.lock | 34 ++- Cargo.toml | 3 +- dev-tools/thing-flinger/Cargo.toml | 1 + .../thing-flinger/src/bin/thing-flinger.rs | 162 +++++------- package/Cargo.toml | 2 + package/src/bin/omicron-package.rs | 231 ++++++++++-------- package/src/dot.rs | 12 +- package/src/lib.rs | 15 +- 8 files changed, 239 insertions(+), 221 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 3c9edad40c..e3a3599de9 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -562,6 +562,21 @@ dependencies = [ "constant_time_eq 0.2.6", ] +[[package]] +name = "blake3" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0231f06152bf547e9c2b5194f247cd97aacf6dcd8b15d8e5ec0663f64580da87" +dependencies = [ + "arrayref", + "arrayvec", + "cc", + "cfg-if", + "constant_time_eq 0.3.0", + "memmap2", + "rayon", +] + [[package]] name = "block-buffer" version = "0.10.4" @@ -3880,6 +3895,15 @@ version = "2.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f232d6ef707e1956a43342693d2a31e72989554d58299d7a88738cc95b0d35c" +[[package]] +name = "memmap2" +version = "0.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f49388d20533534cd19360ad3d6a7dadc885944aa802ba3995040c5ec11288c6" +dependencies = [ + "libc", +] + [[package]] name = "memoffset" version = "0.7.1" @@ -4668,6 +4692,7 @@ name = "omicron-deploy" version = "0.1.0" dependencies = [ "anyhow", + "camino", "clap 4.4.3", "crossbeam", "omicron-package", @@ -4918,6 +4943,7 @@ name = "omicron-package" version = "0.1.0" dependencies = [ "anyhow", + "camino", "clap 4.4.3", "expectorate", "futures", @@ -4935,6 +4961,7 @@ dependencies = [ "sled-hardware", "slog", "slog-async", + "slog-bunyan", "slog-term", "smf", "strum", @@ -5214,19 +5241,24 @@ version = "0.10.1" dependencies = [ "anyhow", "async-trait", + "blake3", + "camino", + "camino-tempfile", "chrono", "filetime", "flate2", + "futures", "futures-util", "hex", + "once_cell", "reqwest", "ring 0.16.20", "semver 1.0.21", "serde", "serde_derive", "serde_json", + "slog", "tar", - "tempfile", "thiserror", "tokio", "toml 0.7.8", diff --git a/Cargo.toml b/Cargo.toml index 289dfdfa86..52dca74e8d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -164,7 +164,7 @@ bootstrap-agent-client = { path = "clients/bootstrap-agent-client" } buf-list = { version = "1.0.3", features = ["tokio1"] } byteorder = "1.5.0" bytes = "1.5.0" -camino = "1.1" +camino = { version = "1.1", features = ["serde1"] } camino-tempfile = "1.1.1" cancel-safe-futures = "0.1.5" chacha20poly1305 = "0.10.1" @@ -347,6 +347,7 @@ sled-hardware = { path = "sled-hardware" } sled-storage = { path = "sled-storage" } slog = { version = "2.7", features = [ "dynamic-keys", "max_level_trace", "release_max_level_debug" ] } slog-async = "2.8" +slog-bunyan = "2.5" slog-dtrace = "0.2" slog-envlogger = "2.2" slog-error-chain = { git = "https://github.com/oxidecomputer/slog-error-chain", branch = "main", features = ["derive"] } diff --git a/dev-tools/thing-flinger/Cargo.toml b/dev-tools/thing-flinger/Cargo.toml index 2acbaf5659..a427685871 100644 --- a/dev-tools/thing-flinger/Cargo.toml +++ b/dev-tools/thing-flinger/Cargo.toml @@ -7,6 +7,7 @@ license = "MPL-2.0" [dependencies] anyhow.workspace = true +camino.workspace = true clap.workspace = true crossbeam.workspace = true omicron-package.workspace = true diff --git a/dev-tools/thing-flinger/src/bin/thing-flinger.rs b/dev-tools/thing-flinger/src/bin/thing-flinger.rs index a13d5cfef7..02ca4babbc 100644 --- a/dev-tools/thing-flinger/src/bin/thing-flinger.rs +++ b/dev-tools/thing-flinger/src/bin/thing-flinger.rs @@ -6,8 +6,8 @@ use omicron_package::{parse, BuildCommand, DeployCommand}; +use camino::{Utf8Path, Utf8PathBuf}; use std::collections::{BTreeMap, BTreeSet}; -use std::path::{Path, PathBuf}; use std::process::Command; use anyhow::{Context, Result}; @@ -20,7 +20,7 @@ use thiserror::Error; #[derive(Deserialize, Debug)] struct Builder { server: String, - omicron_path: PathBuf, + omicron_path: Utf8PathBuf, } // A server on which an omicron package is deployed. @@ -33,19 +33,19 @@ struct Server { #[derive(Deserialize, Debug)] struct Deployment { rss_server: String, - staging_dir: PathBuf, + staging_dir: Utf8PathBuf, servers: BTreeSet, } #[derive(Debug, Deserialize)] struct Config { - omicron_path: PathBuf, + omicron_path: Utf8PathBuf, builder: Builder, servers: BTreeMap, deployment: Deployment, #[serde(default)] - rss_config_path: Option, + rss_config_path: Option, #[serde(default)] debug: bool, @@ -129,7 +129,7 @@ struct Args { help = "Path to deployment manifest toml file", action )] - config: PathBuf, + config: Utf8PathBuf, #[clap( short, @@ -140,7 +140,7 @@ struct Args { /// The output directory, where artifacts should be built and staged #[clap(long = "artifacts", default_value = "out/")] - artifact_dir: PathBuf, + artifact_dir: Utf8PathBuf, #[clap(subcommand)] subcommand: SubCommand, @@ -152,11 +152,6 @@ enum FlingError { #[error("Servers not listed in configuration: {0:?}")] InvalidServers(Vec), - /// The parameter should be the name of the argument that could not be - /// properly converted to a string. - #[error("{0} is not valid UTF-8")] - BadString(String), - /// Failed to rsync omicron to build host #[error("Failed to sync {src} with {dst}")] FailedSync { src: String, dst: String }, @@ -238,20 +233,14 @@ fn do_sync(config: &Config) -> Result<()> { // trailing slash. let src = format!( "{}/", - config - .omicron_path - .canonicalize() - .with_context(|| format!( - "could not canonicalize {}", - config.omicron_path.display() - ))? - .to_string_lossy() + config.omicron_path.canonicalize_utf8().with_context(|| format!( + "could not canonicalize {}", + config.omicron_path + ))? ); let dst = format!( "{}@{}:{}", - builder.username, - builder.addr, - config.builder.omicron_path.to_str().unwrap() + builder.username, builder.addr, config.builder.omicron_path ); println!("Synchronizing source files to: {}", dst); @@ -301,9 +290,7 @@ fn copy_to_deployment_staging_dir( || { let dst = format!( "{}@{}:{}", - server.username, - server.addr, - config.deployment.staging_dir.to_str().unwrap() + server.username, server.addr, config.deployment.staging_dir ); let mut cmd = partial_cmd(); cmd.arg(&dst); @@ -330,14 +317,10 @@ fn rsync_config_needed_for_tools(config: &Config) -> Result<()> { // the `./` here is load-bearing; it interacts with `--relative` to tell // rsync to create `smf/sled-agent` but none of its parents "{}/./smf/sled-agent/", - config - .omicron_path - .canonicalize() - .with_context(|| format!( - "could not canonicalize {}", - config.omicron_path.display() - ))? - .to_string_lossy() + config.omicron_path.canonicalize_utf8().with_context(|| format!( + "could not canonicalize {}", + config.omicron_path + ))? ); copy_to_deployment_staging_dir(config, src, "Copy smf/sled-agent dir") @@ -351,14 +334,10 @@ fn rsync_tools_dir_to_deployment_servers(config: &Config) -> Result<()> { // the `./` here is load-bearing; it interacts with `--relative` to tell // rsync to create `tools` but none of its parents "{}/./tools/", - config - .omicron_path - .canonicalize() - .with_context(|| format!( - "could not canonicalize {}", - config.omicron_path.display() - ))? - .to_string_lossy() + config.omicron_path.canonicalize_utf8().with_context(|| format!( + "could not canonicalize {}", + config.omicron_path + ))? ); copy_to_deployment_staging_dir(config, src, "Copy tools dir") } @@ -405,7 +384,7 @@ fn do_install_prereqs(config: &Config) -> Result<()> { let cmd = format!( "cd {} && mkdir -p out && pfexec ./tools/{}", - root_path.display(), + root_path.clone(), script ); println!( @@ -426,7 +405,7 @@ fn create_external_tls_cert_on_builder(config: &Config) -> Result<()> { let builder = &config.servers[&config.builder.server]; let cmd = format!( "cd {} && ./tools/create_self_signed_cert.sh", - config.builder.omicron_path.to_string_lossy() + config.builder.omicron_path, ); ssh_exec(&builder, &cmd, SshStrategy::NoForward) } @@ -434,7 +413,7 @@ fn create_external_tls_cert_on_builder(config: &Config) -> Result<()> { fn create_virtual_hardware_on_deployment_servers(config: &Config) { let cmd = format!( "cd {} && pfexec ./tools/create_virtual_hardware.sh", - config.deployment.staging_dir.display() + config.deployment.staging_dir ); let fns = config.deployment_servers().map(|server| { || { @@ -464,7 +443,7 @@ fn do_build_minimal(config: &Config) -> Result<()> { let server = &config.servers[&config.builder.server]; let cmd = format!( "cd {} && cargo build {} -p {} -p {}", - config.builder.omicron_path.to_string_lossy(), + config.builder.omicron_path, config.release_arg(), "omicron-package", "omicron-deploy" @@ -472,11 +451,8 @@ fn do_build_minimal(config: &Config) -> Result<()> { ssh_exec(&server, &cmd, SshStrategy::NoForward) } -fn do_package(config: &Config, artifact_dir: PathBuf) -> Result<()> { +fn do_package(config: &Config, artifact_dir: Utf8PathBuf) -> Result<()> { let builder = &config.servers[&config.builder.server]; - let artifact_dir = artifact_dir - .to_str() - .ok_or_else(|| FlingError::BadString("artifact_dir".to_string()))?; // We use a bash login shell to get a proper environment, so we have a path to // postgres, and $DEP_PQ_LIBDIRS is filled in. This is required for building @@ -487,9 +463,9 @@ fn do_package(config: &Config, artifact_dir: PathBuf) -> Result<()> { "bash -lc \ 'cd {} && \ cargo run {} --bin omicron-package -- package --out {}'", - config.builder.omicron_path.to_string_lossy(), + config.builder.omicron_path, config.release_arg(), - &artifact_dir, + artifact_dir, ); ssh_exec(&builder, &cmd, SshStrategy::NoForward) @@ -506,7 +482,7 @@ fn do_check(config: &Config) -> Result<()> { "bash -lc \ 'cd {} && \ cargo run {} --bin omicron-package -- check'", - config.builder.omicron_path.to_string_lossy(), + config.builder.omicron_path, config.release_arg(), ); @@ -521,7 +497,7 @@ fn do_uninstall(config: &Config) -> Result<()> { // Run `omicron-package uninstall` on the deployment server let cmd = format!( "cd {} && pfexec ./omicron-package uninstall", - config.deployment.staging_dir.to_string_lossy(), + config.deployment.staging_dir, ); println!("$ {}", cmd); ssh_exec(&server, &cmd, SshStrategy::Forward)?; @@ -531,10 +507,10 @@ fn do_uninstall(config: &Config) -> Result<()> { fn do_clean( config: &Config, - artifact_dir: PathBuf, - install_dir: PathBuf, + artifact_dir: Utf8PathBuf, + install_dir: Utf8PathBuf, ) -> Result<()> { - let mut deployment_src = PathBuf::from(&config.deployment.staging_dir); + let mut deployment_src = Utf8PathBuf::from(&config.deployment.staging_dir); deployment_src.push(&artifact_dir); let builder = &config.servers[&config.builder.server]; for server in config.deployment_servers() { @@ -543,9 +519,7 @@ fn do_clean( // Run `omicron-package uninstall` on the deployment server let cmd = format!( "cd {} && pfexec ./omicron-package clean --in {} --out {}", - config.deployment.staging_dir.to_string_lossy(), - deployment_src.to_string_lossy(), - install_dir.to_string_lossy() + config.deployment.staging_dir, deployment_src, install_dir, ); println!("$ {}", cmd); ssh_exec(&server, &cmd, SshStrategy::Forward)?; @@ -586,12 +560,14 @@ where .unwrap(); } -fn do_install(config: &Config, artifact_dir: &Path, install_dir: &Path) { +fn do_install( + config: &Config, + artifact_dir: &Utf8Path, + install_dir: &Utf8Path, +) { let builder = &config.servers[&config.builder.server]; - let mut pkg_dir = PathBuf::from(&config.builder.omicron_path); + let mut pkg_dir = Utf8PathBuf::from(&config.builder.omicron_path); pkg_dir.push(artifact_dir); - let pkg_dir = pkg_dir.to_string_lossy(); - let pkg_dir = &pkg_dir; let fns = config.deployment.servers.iter().map(|server_name| { (server_name, || { @@ -599,7 +575,7 @@ fn do_install(config: &Config, artifact_dir: &Path, install_dir: &Path) { config, &artifact_dir, &install_dir, - &pkg_dir, + pkg_dir.as_str(), builder, server_name, ) @@ -611,7 +587,7 @@ fn do_install(config: &Config, artifact_dir: &Path, install_dir: &Path) { fn do_overlay(config: &Config) -> Result<()> { let builder = &config.servers[&config.builder.server]; - let mut root_path = PathBuf::from(&config.builder.omicron_path); + let mut root_path = Utf8PathBuf::from(&config.builder.omicron_path); // TODO: This needs to match the artifact_dir in `package` root_path.push("out/overlay"); @@ -649,7 +625,7 @@ fn do_overlay(config: &Config) -> Result<()> { fn overlay_rss_config( builder: &Server, config: &Config, - rss_server_dir: &Path, + rss_server_dir: &Utf8Path, ) -> Result<()> { // Sync `config-rss.toml` to the directory for the RSS server on the // builder. @@ -660,9 +636,7 @@ fn overlay_rss_config( }; let dst = format!( "{}@{}:{}/config-rss.toml", - builder.username, - builder.addr, - rss_server_dir.display() + builder.username, builder.addr, rss_server_dir ); let mut cmd = rsync_common(); @@ -671,11 +645,7 @@ fn overlay_rss_config( let status = cmd.status().context(format!("Failed to run command: ({:?})", cmd))?; if !status.success() { - return Err(FlingError::FailedSync { - src: src.to_string_lossy().to_string(), - dst, - } - .into()); + return Err(FlingError::FailedSync { src: src.to_string(), dst }.into()); } Ok(()) @@ -683,8 +653,8 @@ fn overlay_rss_config( fn single_server_install( config: &Config, - artifact_dir: &Path, - install_dir: &Path, + artifact_dir: &Utf8Path, + install_dir: &Utf8Path, pkg_dir: &str, builder: &Server, server_name: &str, @@ -757,7 +727,7 @@ fn copy_package_artifacts_to_staging( pkg_dir, destination.username, destination.addr, - config.deployment.staging_dir.to_string_lossy() + config.deployment.staging_dir ); println!("$ {}", cmd); ssh_exec(builder, &cmd, SshStrategy::Forward) @@ -768,17 +738,17 @@ fn copy_omicron_package_binary_to_staging( builder: &Server, destination: &Server, ) -> Result<()> { - let mut bin_path = PathBuf::from(&config.builder.omicron_path); + let mut bin_path = Utf8PathBuf::from(&config.builder.omicron_path); bin_path.push(format!( "target/{}/omicron-package", if config.debug { "debug" } else { "release" } )); let cmd = format!( "rsync -avz {} {}@{}:{}", - bin_path.to_string_lossy(), + bin_path, destination.username, destination.addr, - config.deployment.staging_dir.to_string_lossy() + config.deployment.staging_dir ); println!("$ {}", cmd); ssh_exec(builder, &cmd, SshStrategy::Forward) @@ -789,14 +759,14 @@ fn copy_package_manifest_to_staging( builder: &Server, destination: &Server, ) -> Result<()> { - let mut path = PathBuf::from(&config.builder.omicron_path); + let mut path = Utf8PathBuf::from(&config.builder.omicron_path); path.push("package-manifest.toml"); let cmd = format!( "rsync {} {}@{}:{}", - path.to_string_lossy(), + path, destination.username, destination.addr, - config.deployment.staging_dir.to_string_lossy() + config.deployment.staging_dir ); println!("$ {}", cmd); ssh_exec(builder, &cmd, SshStrategy::Forward) @@ -805,13 +775,12 @@ fn copy_package_manifest_to_staging( fn run_omicron_package_activate_from_staging( config: &Config, destination: &Server, - install_dir: &Path, + install_dir: &Utf8Path, ) -> Result<()> { // Run `omicron-package activate` on the deployment server let cmd = format!( "cd {} && pfexec ./omicron-package activate --out {}", - config.deployment.staging_dir.to_string_lossy(), - install_dir.to_string_lossy(), + config.deployment.staging_dir, install_dir, ); println!("$ {}", cmd); @@ -821,18 +790,16 @@ fn run_omicron_package_activate_from_staging( fn run_omicron_package_unpack_from_staging( config: &Config, destination: &Server, - artifact_dir: &Path, - install_dir: &Path, + artifact_dir: &Utf8Path, + install_dir: &Utf8Path, ) -> Result<()> { - let mut deployment_src = PathBuf::from(&config.deployment.staging_dir); + let mut deployment_src = Utf8PathBuf::from(&config.deployment.staging_dir); deployment_src.push(&artifact_dir); // Run `omicron-package unpack` on the deployment server let cmd = format!( "cd {} && pfexec ./omicron-package unpack --in {} --out {}", - config.deployment.staging_dir.to_string_lossy(), - deployment_src.to_string_lossy(), - install_dir.to_string_lossy(), + config.deployment.staging_dir, deployment_src, install_dir, ); println!("$ {}", cmd); @@ -852,7 +819,7 @@ fn copy_overlay_files_to_staging( destination_name, destination.username, destination.addr, - config.deployment.staging_dir.to_string_lossy() + config.deployment.staging_dir ); println!("$ {}", cmd); ssh_exec(builder, &cmd, SshStrategy::Forward) @@ -861,12 +828,11 @@ fn copy_overlay_files_to_staging( fn install_overlay_files_from_staging( config: &Config, destination: &Server, - install_dir: &Path, + install_dir: &Utf8Path, ) -> Result<()> { let cmd = format!( "pfexec cp -r {}/overlay/* {}", - config.deployment.staging_dir.to_string_lossy(), - install_dir.to_string_lossy() + config.deployment.staging_dir, install_dir ); println!("$ {}", cmd); ssh_exec(&destination, &cmd, SshStrategy::NoForward) @@ -925,7 +891,7 @@ fn validate_servers( } fn validate_absolute_path( - path: &Path, + path: &Utf8Path, field: &'static str, ) -> Result<(), FlingError> { if path.is_absolute() || path.starts_with("$HOME") { diff --git a/package/Cargo.toml b/package/Cargo.toml index 0dc86ceb8c..8067473aa0 100644 --- a/package/Cargo.toml +++ b/package/Cargo.toml @@ -7,6 +7,7 @@ license = "MPL-2.0" [dependencies] anyhow.workspace = true +camino.workspace = true clap.workspace = true futures.workspace = true hex.workspace = true @@ -22,6 +23,7 @@ serde.workspace = true sled-hardware.workspace = true slog.workspace = true slog-async.workspace = true +slog-bunyan.workspace = true slog-term.workspace = true smf.workspace = true strum.workspace = true diff --git a/package/src/bin/omicron-package.rs b/package/src/bin/omicron-package.rs index 6729a61ac2..9362421405 100644 --- a/package/src/bin/omicron-package.rs +++ b/package/src/bin/omicron-package.rs @@ -5,6 +5,7 @@ //! Utility for bundling target binaries as tarfiles. use anyhow::{anyhow, bail, Context, Result}; +use camino::{Utf8Path, Utf8PathBuf}; use clap::{Parser, Subcommand}; use futures::stream::{self, StreamExt, TryStreamExt}; use illumos_utils::{zfs, zone}; @@ -26,7 +27,6 @@ use slog::{info, warn}; use std::env; use std::fs::create_dir_all; use std::io::Write; -use std::path::{Path, PathBuf}; use std::str::FromStr; use std::sync::Arc; use swrite::{swrite, SWrite}; @@ -60,7 +60,7 @@ struct Args { help = "Path to package manifest toml file", action )] - manifest: PathBuf, + manifest: Utf8PathBuf, #[clap( short, @@ -72,7 +72,7 @@ struct Args { /// The output directory, where artifacts should be built and staged #[clap(long = "artifacts", default_value = "out/")] - artifact_dir: PathBuf, + artifact_dir: Utf8PathBuf, #[clap( short, @@ -203,13 +203,13 @@ async fn do_dot(config: &Config) -> Result<()> { const ACTIVE: &str = "active"; async fn do_target( - artifact_dir: &Path, + artifact_dir: &Utf8Path, name: &str, subcommand: &TargetCommand, ) -> Result<()> { let target_dir = artifact_dir.join("target"); tokio::fs::create_dir_all(&target_dir).await.with_context(|| { - format!("failed to create directory {}", target_dir.display()) + format!("failed to create directory {}", target_dir) })?; match subcommand { TargetCommand::Create { image, machine, switch, rack_topology } => { @@ -224,7 +224,7 @@ async fn do_target( tokio::fs::write(&path, Target::from(target).to_string()) .await .with_context(|| { - format!("failed to write target to {}", path.display()) + format!("failed to write target to {}", path) })?; replace_active_link(&name, &target_dir).await?; @@ -233,7 +233,7 @@ async fn do_target( } TargetCommand::List => { let active = tokio::fs::read_link(target_dir.join(ACTIVE)).await?; - let active = active.to_string_lossy(); + let active = Utf8PathBuf::try_from(active)?; for entry in walkdir::WalkDir::new(&target_dir) .max_depth(1) .sort_by_file_name() @@ -268,9 +268,9 @@ async fn do_target( } async fn get_single_target( - target_dir: impl AsRef, + target_dir: impl AsRef, name: &str, -) -> Result { +) -> Result { if name == ACTIVE { bail!( "The name '{name}' is reserved, please try another (e.g. 'default')\n\ @@ -282,29 +282,25 @@ async fn get_single_target( } async fn replace_active_link( - src: impl AsRef, - target_dir: impl AsRef, + src: impl AsRef, + target_dir: impl AsRef, ) -> Result<()> { let src = src.as_ref(); let target_dir = target_dir.as_ref(); let dst = target_dir.join(ACTIVE); if !target_dir.join(src).exists() { - bail!("Target file {} does not exist", src.display()); + bail!("Target file {} does not exist", src); } let _ = tokio::fs::remove_file(&dst).await; tokio::fs::symlink(src, &dst).await.with_context(|| { - format!( - "failed creating symlink to {} at {}", - src.display(), - dst.display() - ) + format!("failed creating symlink to {} at {}", src, dst) })?; Ok(()) } // Calculates the SHA256 digest for a file. -async fn get_sha256_digest(path: &PathBuf) -> Result { +async fn get_sha256_digest(path: &Utf8PathBuf) -> Result { let mut reader = BufReader::new( tokio::fs::File::open(&path) .await @@ -333,21 +329,21 @@ async fn download_prebuilt( repo: &str, commit: &str, expected_digest: &Vec, - path: &Path, + path: &Utf8Path, ) -> Result<()> { progress.set_message("downloading prebuilt".into()); let url = format!( "https://buildomat.eng.oxide.computer/public/file/oxidecomputer/{}/image/{}/{}", repo, commit, - path.file_name().unwrap().to_string_lossy(), + path.file_name().unwrap(), ); let response = reqwest::Client::new() .get(&url) .send() .await .with_context(|| format!("failed to get {url}"))?; - progress.set_length( + progress.increment_total( response .content_length() .ok_or_else(|| anyhow!("Missing Content Length"))?, @@ -367,7 +363,7 @@ async fn download_prebuilt( .await .with_context(|| format!("failed writing {path:?}"))?; // Record progress in the UI - progress.increment(chunk.len().try_into().unwrap()); + progress.increment_completed(chunk.len().try_into().unwrap()); } let digest = context.finish(); @@ -382,16 +378,15 @@ async fn download_prebuilt( } // Ensures a package exists, either by creating it or downloading it. -async fn get_package( +async fn ensure_package( config: &Config, - target: &Target, ui: &Arc, package_name: &String, package: &Package, - output_directory: &Path, + output_directory: &Utf8Path, ) -> Result<()> { - let total_work = package.get_total_work_for_target(&target)?; - let progress = ui.add_package(package_name.to_string(), total_work); + let target = &config.target; + let progress = ui.add_package(package_name.to_string()); match &package.source { PackageSource::Prebuilt { repo, commit, sha256 } => { let expected_digest = hex::decode(&sha256)?; @@ -435,24 +430,26 @@ async fn get_package( } } PackageSource::Manual => { + progress.set_message("confirming manual package".into()); let path = package.get_output_path(package_name, &output_directory); if !path.exists() { bail!( "The package for {} (expected at {}) does not exist.", package_name, - path.to_string_lossy(), + path, ); } } PackageSource::Local { .. } | PackageSource::Composite { .. } => { - progress.set_message("bundle package".into()); - - // TODO: - // - track inputs (name, digest) - // - track outputs (name, digest) + progress.set_message("building package".into()); + let build_config = omicron_zone_package::package::BuildConfig { + target, + progress: &progress, + ..Default::default() + }; package - .create_with_progress_for_target(&progress, &target, package_name, &output_directory) + .create(package_name, &output_directory, &build_config) .await .with_context(|| { let msg = format!("failed to create {package_name} in {output_directory:?}"); @@ -468,11 +465,14 @@ async fn get_package( Ok(()) } -async fn do_package(config: &Config, output_directory: &Path) -> Result<()> { +async fn do_package( + config: &Config, + output_directory: &Utf8Path, +) -> Result<()> { create_dir_all(&output_directory) .map_err(|err| anyhow!("Cannot create output directory: {}", err))?; - let ui = ProgressUI::new(); + let ui = ProgressUI::new(&config.log); do_build(&config).await?; @@ -487,9 +487,8 @@ async fn do_package(config: &Config, output_directory: &Path) -> Result<()> { .try_for_each_concurrent( None, |((package_name, package), ui)| async move { - get_package( + ensure_package( &config, - &config.target, &ui, package_name, package, @@ -507,7 +506,7 @@ async fn do_package(config: &Config, output_directory: &Path) -> Result<()> { async fn do_stamp( config: &Config, - output_directory: &Path, + output_directory: &Utf8Path, package_name: &str, version: &semver::Version, ) -> Result<()> { @@ -523,14 +522,14 @@ async fn do_stamp( // Stamp it let stamped_path = package.stamp(package_name, output_directory, version).await?; - println!("Created: {}", stamped_path.display()); + println!("Created: {}", stamped_path); Ok(()) } async fn do_unpack( config: &Config, - artifact_dir: &Path, - install_dir: &Path, + artifact_dir: &Utf8Path, + install_dir: &Utf8Path, ) -> Result<()> { create_dir_all(&install_dir).map_err(|err| { anyhow!("Cannot create installation directory: {}", err) @@ -548,14 +547,14 @@ async fn do_unpack( info!( &config.log, "Installing service"; - "src" => %src.to_string_lossy(), - "dst" => %dst.to_string_lossy(), + "src" => %src, + "dst" => %dst, ); std::fs::copy(&src, &dst).map_err(|err| { anyhow!( "Failed to copy {src} to {dst}: {err}", - src = src.display(), - dst = dst.display() + src = src, + dst = dst ) })?; Ok(()) @@ -580,8 +579,8 @@ async fn do_unpack( info!( &config.log, "Unpacking service tarball"; - "tar_path" => %tar_path.to_string_lossy(), - "service_path" => %service_path.to_string_lossy(), + "tar_path" => %tar_path, + "service_path" => %service_path, ); let tar_file = std::fs::File::open(&tar_path)?; @@ -594,7 +593,7 @@ async fn do_unpack( Ok(()) } -fn do_activate(config: &Config, install_dir: &Path) -> Result<()> { +fn do_activate(config: &Config, install_dir: &Utf8Path) -> Result<()> { // Install the bootstrap service, which itself extracts and // installs other services. if let Some(package) = @@ -606,8 +605,7 @@ fn do_activate(config: &Config, install_dir: &Path) -> Result<()> { .join("manifest.xml"); info!( config.log, - "Installing bootstrap service from {}", - manifest_path.to_string_lossy() + "Installing bootstrap service from {}", manifest_path ); smf::Config::import().run(&manifest_path)?; @@ -618,8 +616,8 @@ fn do_activate(config: &Config, install_dir: &Path) -> Result<()> { async fn do_install( config: &Config, - artifact_dir: &Path, - install_dir: &Path, + artifact_dir: &Utf8Path, + install_dir: &Utf8Path, ) -> Result<()> { do_unpack(config, artifact_dir, install_dir).await?; do_activate(config, install_dir) @@ -679,7 +677,9 @@ fn uninstall_all_packages(config: &Config) { } } -fn remove_file_unless_already_removed>(path: P) -> Result<()> { +fn remove_file_unless_already_removed>( + path: P, +) -> Result<()> { if let Err(e) = std::fs::remove_file(path.as_ref()) { match e.kind() { std::io::ErrorKind::NotFound => {} @@ -689,7 +689,9 @@ fn remove_file_unless_already_removed>(path: P) -> Result<()> { Ok(()) } -fn remove_all_unless_already_removed>(path: P) -> Result<()> { +fn remove_all_unless_already_removed>( + path: P, +) -> Result<()> { if let Err(e) = std::fs::remove_dir_all(path.as_ref()) { match e.kind() { std::io::ErrorKind::NotFound => {} @@ -699,22 +701,22 @@ fn remove_all_unless_already_removed>(path: P) -> Result<()> { Ok(()) } -fn remove_all_except>( +fn remove_all_except>( path: P, to_keep: &[&str], log: &Logger, ) -> Result<()> { - let dir = match path.as_ref().read_dir() { + let dir = match path.as_ref().read_dir_utf8() { Ok(dir) => dir, Err(e) if e.kind() == std::io::ErrorKind::NotFound => return Ok(()), Err(e) => bail!(e), }; for entry in dir { let entry = entry?; - if to_keep.contains(&&*(entry.file_name().to_string_lossy())) { - info!(log, "Keeping: '{}'", entry.path().to_string_lossy()); + if to_keep.contains(&entry.file_name()) { + info!(log, "Keeping: '{}'", entry.path()); } else { - info!(log, "Removing: '{}'", entry.path().to_string_lossy()); + info!(log, "Removing: '{}'", entry.path()); if entry.metadata()?.is_dir() { remove_all_unless_already_removed(entry.path())?; } else { @@ -744,15 +746,11 @@ async fn do_uninstall(config: &Config) -> Result<()> { async fn do_clean( config: &Config, - artifact_dir: &Path, - install_dir: &Path, + artifact_dir: &Utf8Path, + install_dir: &Utf8Path, ) -> Result<()> { do_uninstall(&config).await?; - info!( - config.log, - "Removing artifacts from {}", - artifact_dir.to_string_lossy() - ); + info!(config.log, "Removing artifacts from {}", artifact_dir); const ARTIFACTS_TO_KEEP: &[&str] = &[ "clickhouse", "cockroachdb", @@ -762,11 +760,7 @@ async fn do_clean( "softnpu", ]; remove_all_except(artifact_dir, ARTIFACTS_TO_KEEP, &config.log)?; - info!( - config.log, - "Removing installed objects in: {}", - install_dir.to_string_lossy() - ); + info!(config.log, "Removing installed objects in: {}", install_dir); const INSTALLED_OBJECTS_TO_KEEP: &[&str] = &["opte"]; remove_all_except(install_dir, INSTALLED_OBJECTS_TO_KEEP, &config.log)?; @@ -775,52 +769,80 @@ async fn do_clean( fn in_progress_style() -> ProgressStyle { ProgressStyle::default_bar() - .template( - "[{elapsed_precise}] {bar:40.cyan/blue} {pos:>7}/{len:7} {msg}", - ) + .template("[{elapsed:>3}] {bar:30.cyan/blue} {pos:>7}/{len:7} {msg}") .expect("Invalid template") .progress_chars("#>.") } fn completed_progress_style() -> ProgressStyle { ProgressStyle::default_bar() - .template("[{elapsed_precise}] {bar:40.cyan/blue} {pos:>7}/{len:7} {msg:.green}") + .template( + "[{elapsed:>3}] {bar:30.cyan/blue} {pos:>7}/{len:7} {msg:.green}", + ) .expect("Invalid template") .progress_chars("#>.") } fn error_progress_style() -> ProgressStyle { ProgressStyle::default_bar() - .template("[{elapsed_precise}] {bar:40.cyan/blue} {pos:>7}/{len:7} {msg:.red}") + .template( + "[{elapsed:>3}] {bar:30.cyan/blue} {pos:>7}/{len:7} {msg:.red}", + ) .expect("Invalid template") .progress_chars("#>.") } // Struct managing display of progress to UI. struct ProgressUI { + log: Logger, multi: MultiProgress, style: ProgressStyle, } +impl ProgressUI { + fn new(log: &Logger) -> Arc { + Arc::new(Self { + log: log.clone(), + multi: MultiProgress::new(), + style: in_progress_style(), + }) + } + + fn add_package(&self, service_name: String) -> PackageProgress { + let pb = self.multi.add(ProgressBar::new(1)); + pb.set_style(self.style.clone()); + pb.set_message(service_name.clone()); + pb.tick(); + PackageProgress::new(&self.log, pb, service_name) + } +} + struct PackageProgress { + log: Logger, pb: ProgressBar, service_name: String, } impl PackageProgress { + fn new(log: &Logger, pb: ProgressBar, service_name: String) -> Self { + Self { + log: log.new(o!("package" => service_name.clone())), + pb, + service_name, + } + } + fn finish(&self) { self.pb.set_style(completed_progress_style()); self.pb.finish_with_message(format!("{}: done", self.service_name)); self.pb.tick(); } - fn set_length(&self, total: u64) { - self.pb.set_length(total); - } - fn set_error_message(&self, message: std::borrow::Cow<'static, str>) { self.pb.set_style(error_progress_style()); - self.pb.set_message(format!("{}: {}", self.service_name, message)); + let message = format!("{}: {}", self.service_name, message); + warn!(self.log, "{}", &message); + self.pb.set_message(message); self.pb.tick(); } @@ -832,29 +854,22 @@ impl PackageProgress { impl Progress for PackageProgress { fn set_message(&self, message: std::borrow::Cow<'static, str>) { self.pb.set_style(in_progress_style()); - self.pb.set_message(format!("{}: {}", self.service_name, message)); + let message = format!("{}: {}", self.service_name, message); + info!(self.log, "{}", &message); + self.pb.set_message(message); self.pb.tick(); } - fn increment(&self, delta: u64) { - self.pb.inc(delta); + fn get_log(&self) -> &Logger { + &self.log } -} -impl ProgressUI { - fn new() -> Arc { - Arc::new(Self { - multi: MultiProgress::new(), - style: in_progress_style(), - }) + fn increment_total(&self, delta: u64) { + self.pb.inc_length(delta); } - fn add_package(&self, service_name: String, total: u64) -> PackageProgress { - let pb = self.multi.add(ProgressBar::new(total)); - pb.set_style(self.style.clone()); - pb.set_message(service_name.clone()); - pb.tick(); - PackageProgress { pb, service_name } + fn increment_completed(&self, delta: u64) { + self.pb.inc(delta); } } @@ -896,10 +911,16 @@ async fn main() -> Result<()> { let args = Args::try_parse()?; let package_config = parse::<_, PackageConfig>(&args.manifest)?; - let decorator = slog_term::TermDecorator::new().build(); - let drain = slog_term::CompactFormat::new(decorator).build().fuse(); + let mut open_options = std::fs::OpenOptions::new(); + open_options.write(true).create(true).truncate(true); + tokio::fs::create_dir_all(&args.artifact_dir).await?; + let logpath = args.artifact_dir.join("LOG"); + let logfile = std::io::LineWriter::new(open_options.open(&logpath)?); + println!("Logging to: {}", std::fs::canonicalize(logpath)?.display()); + + let drain = slog_bunyan::new(logfile).build().fuse(); let drain = slog_async::Async::new(drain).build().fuse(); - let log = slog::Logger::root(drain, o!()); + let log = Logger::root(drain, o!()); let target_help_str = || -> String { format!( @@ -914,7 +935,7 @@ async fn main() -> Result<()> { std::fs::read_to_string(&target_path).map_err(|e| { eprintln!( "Failed to read build target: {}\n{}", - target_path.display(), + target_path, target_help_str() ); e @@ -923,7 +944,7 @@ async fn main() -> Result<()> { .map_err(|e| { eprintln!( "Failed to parse {} as target\n{}", - target_path.display(), + target_path, target_help_str() ); e @@ -943,10 +964,10 @@ async fn main() -> Result<()> { // Use a CWD that is the root of the Omicron repository. if let Ok(manifest) = env::var("CARGO_MANIFEST_DIR") { - let manifest_dir = PathBuf::from(manifest); + let manifest_dir = Utf8PathBuf::from(manifest); let root = manifest_dir.parent().unwrap(); env::set_current_dir(root).with_context(|| { - format!("failed to set current directory to {}", root.display()) + format!("failed to set current directory to {}", root) })?; } diff --git a/package/src/dot.rs b/package/src/dot.rs index 133d5c0f00..3307d100ba 100644 --- a/package/src/dot.rs +++ b/package/src/dot.rs @@ -10,7 +10,6 @@ use petgraph::graph::EdgeReference; use petgraph::graph::NodeIndex; use petgraph::Graph; use std::collections::BTreeMap; -use std::path::Path; /// A node in our visual representation of the package manifest /// @@ -132,13 +131,11 @@ pub fn do_dot( let pkg_node = pkg_nodes .get(pkgname) .expect("expected node for package already"); - let output_directory = Path::new("/nonexistent"); + let output_directory = camino::Utf8Path::new("/nonexistent"); let output_basename = pkg .get_output_path(pkgname, output_directory) .file_name() - .unwrap() - .to_str() - .expect("expected package output filename to be UTF-8") + .expect("Missing file name") .to_string(); (output_basename, pkg_node) }) @@ -190,9 +187,8 @@ pub fn do_dot( // on which it depends. if let Some(blobs) = blobs { for b in blobs { - let s3_node = graph.add_node(GraphNode::Blob { - path: b.display().to_string(), - }); + let s3_node = graph + .add_node(GraphNode::Blob { path: b.to_string() }); graph.add_edge(*pkg_node, s3_node, "download"); } } diff --git a/package/src/lib.rs b/package/src/lib.rs index 395f3ed472..fe3476c937 100644 --- a/package/src/lib.rs +++ b/package/src/lib.rs @@ -1,9 +1,8 @@ //! Common code shared between `omicron-package` and `thing-flinger` binaries. +use camino::{Utf8Path, Utf8PathBuf}; use clap::Subcommand; use serde::de::DeserializeOwned; -use std::path::Path; -use std::path::PathBuf; use thiserror::Error; pub mod dot; @@ -13,12 +12,12 @@ pub mod target; #[derive(Error, Debug)] pub enum ParseError { #[error("Error deserializing toml from {path}: {err}")] - Toml { path: PathBuf, err: toml::de::Error }, + Toml { path: Utf8PathBuf, err: toml::de::Error }, #[error("IO error: {message}: {err}")] Io { message: String, err: std::io::Error }, } -pub fn parse, C: DeserializeOwned>( +pub fn parse, C: DeserializeOwned>( path: P, ) -> Result { let path = path.as_ref(); @@ -116,7 +115,7 @@ pub enum DeployCommand { /// /// Defaults to "/opt/oxide". #[clap(long = "out", default_value = "/opt/oxide", action)] - install_dir: PathBuf, + install_dir: Utf8PathBuf, }, /// Unpacks the files created by `package` to an install directory. /// Issues the `uninstall` command. @@ -134,7 +133,7 @@ pub enum DeployCommand { /// /// Defaults to "/opt/oxide". #[clap(long = "out", default_value = "/opt/oxide", action)] - install_dir: PathBuf, + install_dir: Utf8PathBuf, }, /// Imports and starts the sled-agent illumos service /// @@ -145,7 +144,7 @@ pub enum DeployCommand { /// /// Defaults to "/opt/oxide". #[clap(long = "out", default_value = "/opt/oxide", action)] - install_dir: PathBuf, + install_dir: Utf8PathBuf, }, /// Deletes all Omicron zones and stops all services. /// @@ -166,6 +165,6 @@ pub enum DeployCommand { /// /// Defaults to "/opt/oxide". #[clap(long = "out", default_value = "/opt/oxide", action)] - install_dir: PathBuf, + install_dir: Utf8PathBuf, }, } From 2d2ae363db0ba510fada1d355005f7e107f9aa23 Mon Sep 17 00:00:00 2001 From: Sean Klein Date: Tue, 30 Jan 2024 22:06:46 -0800 Subject: [PATCH 3/7] lockfiles --- Cargo.lock | 6 +- workspace-hack/Cargo.toml | 154 ++++++++++++++++++-------------------- 2 files changed, 74 insertions(+), 86 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 84fc9a021d..4a2136ba21 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5271,7 +5271,6 @@ dependencies = [ "dof 0.3.0", "either", "elliptic-curve", - "errno", "ff", "flate2", "futures", @@ -5297,6 +5296,7 @@ dependencies = [ "lalrpop-util", "lazy_static", "libc", + "linux-raw-sys", "log", "managed", "memchr", @@ -5329,7 +5329,6 @@ dependencies = [ "sha2", "similar", "slog", - "socket2 0.5.5", "spin 0.9.8", "string_cache", "subtle", @@ -5349,7 +5348,8 @@ dependencies = [ "trust-dns-proto", "unicode-bidi", "unicode-normalization", - "usdt 0.3.5", + "unicode-xid", + "usdt 0.5.0", "usdt-impl 0.5.0", "uuid", "yasna", diff --git a/workspace-hack/Cargo.toml b/workspace-hack/Cargo.toml index 282c7557e6..1b5e2af08c 100644 --- a/workspace-hack/Cargo.toml +++ b/workspace-hack/Cargo.toml @@ -14,26 +14,26 @@ publish = false ### BEGIN HAKARI SECTION [dependencies] -ahash = { version = "0.8.6" } -aho-corasick = { version = "1.0.4" } -anyhow = { version = "1.0.75", features = ["backtrace"] } +ahash = { version = "0.8.7" } +aho-corasick = { version = "1.1.2" } +anyhow = { version = "1.0.79", features = ["backtrace"] } base16ct = { version = "0.2.0", default-features = false, features = ["alloc"] } bit-set = { version = "0.5.3" } bit-vec = { version = "0.6.3" } bitflags-dff4ba8e3ae991db = { package = "bitflags", version = "1.3.2" } -bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.0", default-features = false, features = ["serde"] } +bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["serde", "std"] } bstr-6f8ce4dd05d13bba = { package = "bstr", version = "0.2.17" } -bstr-dff4ba8e3ae991db = { package = "bstr", version = "1.6.0" } +bstr-dff4ba8e3ae991db = { package = "bstr", version = "1.9.0" } byteorder = { version = "1.5.0" } bytes = { version = "1.5.0", features = ["serde"] } -chrono = { version = "0.4.31", features = ["alloc", "serde"] } +chrono = { version = "0.4.33", features = ["serde"] } cipher = { version = "0.4.4", default-features = false, features = ["block-padding", "zeroize"] } -clap = { version = "4.4.3", features = ["cargo", "derive", "env", "wrap_help"] } -clap_builder = { version = "4.4.2", default-features = false, features = ["cargo", "color", "env", "std", "suggestions", "usage", "wrap_help"] } +clap = { version = "4.4.18", features = ["cargo", "derive", "env", "wrap_help"] } +clap_builder = { version = "4.4.18", default-features = false, features = ["cargo", "color", "env", "std", "suggestions", "usage", "wrap_help"] } console = { version = "0.15.8" } -const-oid = { version = "0.9.5", default-features = false, features = ["db", "std"] } -crossbeam-epoch = { version = "0.9.15" } -crossbeam-utils = { version = "0.8.16" } +const-oid = { version = "0.9.6", default-features = false, features = ["db", "std"] } +crossbeam-epoch = { version = "0.9.18" } +crossbeam-utils = { version = "0.8.19" } crossterm = { version = "0.27.0", features = ["event-stream", "serde"] } crypto-common = { version = "0.1.6", default-features = false, features = ["getrandom", "std"] } der = { version = "0.7.8", default-features = false, features = ["derive", "flagset", "oid", "pem", "std"] } @@ -52,14 +52,14 @@ futures-task = { version = "0.3.30", default-features = false, features = ["std" futures-util = { version = "0.3.30", features = ["channel", "io", "sink"] } gateway-messages = { git = "https://github.com/oxidecomputer/management-gateway-service", rev = "2739c18e80697aa6bc235c935176d14b4d757ee9", features = ["std"] } generic-array = { version = "0.14.7", default-features = false, features = ["more_lengths", "zeroize"] } -getrandom = { version = "0.2.10", default-features = false, features = ["js", "rdrand", "std"] } +getrandom = { version = "0.2.12", default-features = false, features = ["js", "rdrand", "std"] } group = { version = "0.13.0", default-features = false, features = ["alloc"] } -hashbrown-582f2526e08bb6a0 = { package = "hashbrown", version = "0.14.2", features = ["raw"] } +hashbrown-582f2526e08bb6a0 = { package = "hashbrown", version = "0.14.3", features = ["raw"] } hashbrown-594e8ee84c453af0 = { package = "hashbrown", version = "0.13.2" } hex = { version = "0.4.3", features = ["serde"] } hmac = { version = "0.12.1", default-features = false, features = ["reset"] } -hyper = { version = "0.14.27", features = ["full"] } -indexmap = { version = "2.1.0", features = ["serde"] } +hyper = { version = "0.14.28", features = ["full"] } +indexmap = { version = "2.2.1", features = ["serde"] } inout = { version = "0.1.3", default-features = false, features = ["std"] } ipnetwork = { version = "0.20.0", features = ["schemars"] } itertools = { version = "0.10.5" } @@ -68,12 +68,12 @@ lazy_static = { version = "1.4.0", default-features = false, features = ["spin_n libc = { version = "0.2.152", features = ["extra_traits"] } log = { version = "0.4.20", default-features = false, features = ["std"] } managed = { version = "0.8.0", default-features = false, features = ["alloc", "map"] } -memchr = { version = "2.6.3" } +memchr = { version = "2.7.1" } nom = { version = "7.1.3" } num-bigint = { version = "0.4.4", features = ["rand"] } num-integer = { version = "0.1.45", features = ["i128"] } num-iter = { version = "0.1.43", default-features = false, features = ["i128"] } -num-traits = { version = "0.2.16", features = ["i128", "libm"] } +num-traits = { version = "0.2.17", features = ["i128", "libm"] } openapiv3 = { version = "2.0.0", default-features = false, features = ["skip_serializing_defaults"] } pem-rfc7468 = { version = "0.7.0", default-features = false, features = ["std"] } petgraph = { version = "0.6.4", features = ["serde-1"] } @@ -84,35 +84,34 @@ proc-macro2 = { version = "1.0.78" } rand = { version = "0.8.5" } rand_chacha = { version = "0.3.1", default-features = false, features = ["std"] } regex = { version = "1.10.3" } -regex-automata = { version = "0.4.5", default-features = false, features = ["dfa-onepass", "hybrid", "meta", "nfa-backtrack", "perf-inline", "perf-literal", "unicode"] } +regex-automata = { version = "0.4.5", default-features = false, features = ["dfa-onepass", "dfa-search", "hybrid", "meta", "nfa", "perf", "unicode"] } regex-syntax = { version = "0.8.2" } -reqwest = { version = "0.11.22", features = ["blocking", "json", "rustls-tls", "stream"] } +reqwest = { version = "0.11.23", features = ["blocking", "json", "rustls-tls", "stream"] } ring = { version = "0.17.7", features = ["std"] } schemars = { version = "0.8.16", features = ["bytes", "chrono", "uuid1"] } semver = { version = "1.0.21", features = ["serde"] } -serde = { version = "1.0.195", features = ["alloc", "derive", "rc"] } +serde = { version = "1.0.196", features = ["alloc", "derive", "rc"] } serde_json = { version = "1.0.113", features = ["raw_value", "unbounded_depth"] } sha2 = { version = "0.10.8", features = ["oid"] } -similar = { version = "2.3.0", features = ["inline", "unicode"] } +similar = { version = "2.4.0", features = ["inline", "unicode"] } slog = { version = "2.7.0", features = ["dynamic-keys", "max_level_trace", "release_max_level_debug", "release_max_level_trace"] } -socket2 = { version = "0.5.5", default-features = false, features = ["all"] } spin = { version = "0.9.8" } string_cache = { version = "0.8.7" } subtle = { version = "2.5.0" } syn-dff4ba8e3ae991db = { package = "syn", version = "1.0.109", features = ["extra-traits", "fold", "full", "visit"] } syn-f595c2ba2a3f28df = { package = "syn", version = "2.0.48", features = ["extra-traits", "fold", "full", "visit", "visit-mut"] } -time = { version = "0.3.27", features = ["formatting", "local-offset", "macros", "parsing"] } +time = { version = "0.3.31", features = ["formatting", "local-offset", "macros", "parsing"] } tokio = { version = "1.35.1", features = ["full", "test-util"] } tokio-postgres = { version = "0.7.10", features = ["with-chrono-0_4", "with-serde_json-1", "with-uuid-1"] } tokio-stream = { version = "0.1.14", features = ["net"] } tokio-util = { version = "0.7.10", features = ["codec", "io-util"] } toml = { version = "0.7.8" } toml_edit-647d43efb71741da = { package = "toml_edit", version = "0.21.0", features = ["serde"] } -tracing = { version = "0.1.37", features = ["log"] } +tracing = { version = "0.1.40", features = ["log"] } trust-dns-proto = { version = "0.22.0" } -unicode-bidi = { version = "0.3.13" } +unicode-bidi = { version = "0.3.15" } unicode-normalization = { version = "0.1.22" } -usdt = { version = "0.3.5" } +usdt = { version = "0.5.0" } usdt-impl = { version = "0.5.0", default-features = false, features = ["asm", "des"] } uuid = { version = "1.7.0", features = ["serde", "v4"] } yasna = { version = "0.5.2", features = ["bit-vec", "num-bigint", "std", "time"] } @@ -121,26 +120,26 @@ zeroize = { version = "1.7.0", features = ["std", "zeroize_derive"] } zip = { version = "0.6.6", default-features = false, features = ["bzip2", "deflate"] } [build-dependencies] -ahash = { version = "0.8.6" } -aho-corasick = { version = "1.0.4" } -anyhow = { version = "1.0.75", features = ["backtrace"] } +ahash = { version = "0.8.7" } +aho-corasick = { version = "1.1.2" } +anyhow = { version = "1.0.79", features = ["backtrace"] } base16ct = { version = "0.2.0", default-features = false, features = ["alloc"] } bit-set = { version = "0.5.3" } bit-vec = { version = "0.6.3" } bitflags-dff4ba8e3ae991db = { package = "bitflags", version = "1.3.2" } -bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.0", default-features = false, features = ["serde"] } +bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["serde", "std"] } bstr-6f8ce4dd05d13bba = { package = "bstr", version = "0.2.17" } -bstr-dff4ba8e3ae991db = { package = "bstr", version = "1.6.0" } +bstr-dff4ba8e3ae991db = { package = "bstr", version = "1.9.0" } byteorder = { version = "1.5.0" } bytes = { version = "1.5.0", features = ["serde"] } -chrono = { version = "0.4.31", features = ["alloc", "serde"] } +chrono = { version = "0.4.33", features = ["serde"] } cipher = { version = "0.4.4", default-features = false, features = ["block-padding", "zeroize"] } -clap = { version = "4.4.3", features = ["cargo", "derive", "env", "wrap_help"] } -clap_builder = { version = "4.4.2", default-features = false, features = ["cargo", "color", "env", "std", "suggestions", "usage", "wrap_help"] } +clap = { version = "4.4.18", features = ["cargo", "derive", "env", "wrap_help"] } +clap_builder = { version = "4.4.18", default-features = false, features = ["cargo", "color", "env", "std", "suggestions", "usage", "wrap_help"] } console = { version = "0.15.8" } -const-oid = { version = "0.9.5", default-features = false, features = ["db", "std"] } -crossbeam-epoch = { version = "0.9.15" } -crossbeam-utils = { version = "0.8.16" } +const-oid = { version = "0.9.6", default-features = false, features = ["db", "std"] } +crossbeam-epoch = { version = "0.9.18" } +crossbeam-utils = { version = "0.8.19" } crossterm = { version = "0.27.0", features = ["event-stream", "serde"] } crypto-common = { version = "0.1.6", default-features = false, features = ["getrandom", "std"] } der = { version = "0.7.8", default-features = false, features = ["derive", "flagset", "oid", "pem", "std"] } @@ -159,14 +158,14 @@ futures-task = { version = "0.3.30", default-features = false, features = ["std" futures-util = { version = "0.3.30", features = ["channel", "io", "sink"] } gateway-messages = { git = "https://github.com/oxidecomputer/management-gateway-service", rev = "2739c18e80697aa6bc235c935176d14b4d757ee9", features = ["std"] } generic-array = { version = "0.14.7", default-features = false, features = ["more_lengths", "zeroize"] } -getrandom = { version = "0.2.10", default-features = false, features = ["js", "rdrand", "std"] } +getrandom = { version = "0.2.12", default-features = false, features = ["js", "rdrand", "std"] } group = { version = "0.13.0", default-features = false, features = ["alloc"] } -hashbrown-582f2526e08bb6a0 = { package = "hashbrown", version = "0.14.2", features = ["raw"] } +hashbrown-582f2526e08bb6a0 = { package = "hashbrown", version = "0.14.3", features = ["raw"] } hashbrown-594e8ee84c453af0 = { package = "hashbrown", version = "0.13.2" } hex = { version = "0.4.3", features = ["serde"] } hmac = { version = "0.12.1", default-features = false, features = ["reset"] } -hyper = { version = "0.14.27", features = ["full"] } -indexmap = { version = "2.1.0", features = ["serde"] } +hyper = { version = "0.14.28", features = ["full"] } +indexmap = { version = "2.2.1", features = ["serde"] } inout = { version = "0.1.3", default-features = false, features = ["std"] } ipnetwork = { version = "0.20.0", features = ["schemars"] } itertools = { version = "0.10.5" } @@ -175,12 +174,12 @@ lazy_static = { version = "1.4.0", default-features = false, features = ["spin_n libc = { version = "0.2.152", features = ["extra_traits"] } log = { version = "0.4.20", default-features = false, features = ["std"] } managed = { version = "0.8.0", default-features = false, features = ["alloc", "map"] } -memchr = { version = "2.6.3" } +memchr = { version = "2.7.1" } nom = { version = "7.1.3" } num-bigint = { version = "0.4.4", features = ["rand"] } num-integer = { version = "0.1.45", features = ["i128"] } num-iter = { version = "0.1.43", default-features = false, features = ["i128"] } -num-traits = { version = "0.2.16", features = ["i128", "libm"] } +num-traits = { version = "0.2.17", features = ["i128", "libm"] } openapiv3 = { version = "2.0.0", default-features = false, features = ["skip_serializing_defaults"] } pem-rfc7468 = { version = "0.7.0", default-features = false, features = ["std"] } petgraph = { version = "0.6.4", features = ["serde-1"] } @@ -191,36 +190,35 @@ proc-macro2 = { version = "1.0.78" } rand = { version = "0.8.5" } rand_chacha = { version = "0.3.1", default-features = false, features = ["std"] } regex = { version = "1.10.3" } -regex-automata = { version = "0.4.5", default-features = false, features = ["dfa-onepass", "hybrid", "meta", "nfa-backtrack", "perf-inline", "perf-literal", "unicode"] } +regex-automata = { version = "0.4.5", default-features = false, features = ["dfa-onepass", "dfa-search", "hybrid", "meta", "nfa", "perf", "unicode"] } regex-syntax = { version = "0.8.2" } -reqwest = { version = "0.11.22", features = ["blocking", "json", "rustls-tls", "stream"] } +reqwest = { version = "0.11.23", features = ["blocking", "json", "rustls-tls", "stream"] } ring = { version = "0.17.7", features = ["std"] } schemars = { version = "0.8.16", features = ["bytes", "chrono", "uuid1"] } semver = { version = "1.0.21", features = ["serde"] } -serde = { version = "1.0.195", features = ["alloc", "derive", "rc"] } +serde = { version = "1.0.196", features = ["alloc", "derive", "rc"] } serde_json = { version = "1.0.113", features = ["raw_value", "unbounded_depth"] } sha2 = { version = "0.10.8", features = ["oid"] } -similar = { version = "2.3.0", features = ["inline", "unicode"] } +similar = { version = "2.4.0", features = ["inline", "unicode"] } slog = { version = "2.7.0", features = ["dynamic-keys", "max_level_trace", "release_max_level_debug", "release_max_level_trace"] } -socket2 = { version = "0.5.5", default-features = false, features = ["all"] } spin = { version = "0.9.8" } string_cache = { version = "0.8.7" } subtle = { version = "2.5.0" } syn-dff4ba8e3ae991db = { package = "syn", version = "1.0.109", features = ["extra-traits", "fold", "full", "visit"] } syn-f595c2ba2a3f28df = { package = "syn", version = "2.0.48", features = ["extra-traits", "fold", "full", "visit", "visit-mut"] } -time = { version = "0.3.27", features = ["formatting", "local-offset", "macros", "parsing"] } -time-macros = { version = "0.2.13", default-features = false, features = ["formatting", "parsing"] } +time = { version = "0.3.31", features = ["formatting", "local-offset", "macros", "parsing"] } +time-macros = { version = "0.2.16", default-features = false, features = ["formatting", "parsing"] } tokio = { version = "1.35.1", features = ["full", "test-util"] } tokio-postgres = { version = "0.7.10", features = ["with-chrono-0_4", "with-serde_json-1", "with-uuid-1"] } tokio-stream = { version = "0.1.14", features = ["net"] } tokio-util = { version = "0.7.10", features = ["codec", "io-util"] } toml = { version = "0.7.8" } toml_edit-647d43efb71741da = { package = "toml_edit", version = "0.21.0", features = ["serde"] } -tracing = { version = "0.1.37", features = ["log"] } +tracing = { version = "0.1.40", features = ["log"] } trust-dns-proto = { version = "0.22.0" } -unicode-bidi = { version = "0.3.13" } +unicode-bidi = { version = "0.3.15" } unicode-normalization = { version = "0.1.22" } -usdt = { version = "0.3.5" } +usdt = { version = "0.5.0" } usdt-impl = { version = "0.5.0", default-features = false, features = ["asm", "des"] } uuid = { version = "1.7.0", features = ["serde", "v4"] } yasna = { version = "0.5.2", features = ["bit-vec", "num-bigint", "std", "time"] } @@ -229,65 +227,55 @@ zeroize = { version = "1.7.0", features = ["std", "zeroize_derive"] } zip = { version = "0.6.6", default-features = false, features = ["bzip2", "deflate"] } [target.x86_64-unknown-linux-gnu.dependencies] -bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.0", default-features = false, features = ["std"] } dof = { version = "0.3.0", default-features = false, features = ["des"] } -mio = { version = "0.8.9", features = ["net", "os-ext"] } -once_cell = { version = "1.19.0", features = ["unstable"] } +linux-raw-sys = { version = "0.4.13", default-features = false, features = ["elf", "errno", "general", "ioctl", "no_std", "std"] } +mio = { version = "0.8.10", features = ["net", "os-ext"] } +once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } [target.x86_64-unknown-linux-gnu.build-dependencies] -bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.0", default-features = false, features = ["std"] } dof = { version = "0.3.0", default-features = false, features = ["des"] } -mio = { version = "0.8.9", features = ["net", "os-ext"] } -once_cell = { version = "1.19.0", features = ["unstable"] } +linux-raw-sys = { version = "0.4.13", default-features = false, features = ["elf", "errno", "general", "ioctl", "no_std", "std"] } +mio = { version = "0.8.10", features = ["net", "os-ext"] } +once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } +unicode-xid = { version = "0.2.4" } [target.x86_64-apple-darwin.dependencies] -bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.0", default-features = false, features = ["std"] } -errno = { version = "0.3.8", default-features = false, features = ["std"] } -mio = { version = "0.8.9", features = ["net", "os-ext"] } -once_cell = { version = "1.19.0", features = ["unstable"] } +mio = { version = "0.8.10", features = ["net", "os-ext"] } +once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } [target.x86_64-apple-darwin.build-dependencies] -bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.0", default-features = false, features = ["std"] } -errno = { version = "0.3.8", default-features = false, features = ["std"] } -mio = { version = "0.8.9", features = ["net", "os-ext"] } -once_cell = { version = "1.19.0", features = ["unstable"] } +mio = { version = "0.8.10", features = ["net", "os-ext"] } +once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } [target.aarch64-apple-darwin.dependencies] -bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.0", default-features = false, features = ["std"] } -errno = { version = "0.3.8", default-features = false, features = ["std"] } -mio = { version = "0.8.9", features = ["net", "os-ext"] } -once_cell = { version = "1.19.0", features = ["unstable"] } +mio = { version = "0.8.10", features = ["net", "os-ext"] } +once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } [target.aarch64-apple-darwin.build-dependencies] -bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.0", default-features = false, features = ["std"] } -errno = { version = "0.3.8", default-features = false, features = ["std"] } -mio = { version = "0.8.9", features = ["net", "os-ext"] } -once_cell = { version = "1.19.0", features = ["unstable"] } +mio = { version = "0.8.10", features = ["net", "os-ext"] } +once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } [target.x86_64-unknown-illumos.dependencies] -bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.0", default-features = false, features = ["std"] } dof = { version = "0.3.0", default-features = false, features = ["des"] } -errno = { version = "0.3.8", default-features = false, features = ["std"] } -mio = { version = "0.8.9", features = ["net", "os-ext"] } -once_cell = { version = "1.19.0", features = ["unstable"] } +mio = { version = "0.8.10", features = ["net", "os-ext"] } +once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } toml_datetime = { version = "0.6.5", default-features = false, features = ["serde"] } toml_edit-cdcf2f9584511fe6 = { package = "toml_edit", version = "0.19.15", features = ["serde"] } [target.x86_64-unknown-illumos.build-dependencies] -bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.0", default-features = false, features = ["std"] } dof = { version = "0.3.0", default-features = false, features = ["des"] } -errno = { version = "0.3.8", default-features = false, features = ["std"] } -mio = { version = "0.8.9", features = ["net", "os-ext"] } -once_cell = { version = "1.19.0", features = ["unstable"] } +mio = { version = "0.8.10", features = ["net", "os-ext"] } +once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } toml_datetime = { version = "0.6.5", default-features = false, features = ["serde"] } toml_edit-cdcf2f9584511fe6 = { package = "toml_edit", version = "0.19.15", features = ["serde"] } +unicode-xid = { version = "0.2.4" } ### END HAKARI SECTION From c01c25d097134b5b0fc35294fb2138174f82e69a Mon Sep 17 00:00:00 2001 From: Sean Klein Date: Tue, 30 Jan 2024 22:12:38 -0800 Subject: [PATCH 4/7] Add --disable-cache option to omicron-package package --- package/src/bin/omicron-package.rs | 9 +++++++-- package/src/lib.rs | 8 +++++++- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/package/src/bin/omicron-package.rs b/package/src/bin/omicron-package.rs index 9362421405..8a46f5cd07 100644 --- a/package/src/bin/omicron-package.rs +++ b/package/src/bin/omicron-package.rs @@ -384,6 +384,7 @@ async fn ensure_package( package_name: &String, package: &Package, output_directory: &Utf8Path, + disable_cache: bool, ) -> Result<()> { let target = &config.target; let progress = ui.add_package(package_name.to_string()); @@ -446,6 +447,7 @@ async fn ensure_package( let build_config = omicron_zone_package::package::BuildConfig { target, progress: &progress, + cache_disabled: disable_cache, ..Default::default() }; package @@ -468,6 +470,7 @@ async fn ensure_package( async fn do_package( config: &Config, output_directory: &Utf8Path, + disable_cache: bool, ) -> Result<()> { create_dir_all(&output_directory) .map_err(|err| anyhow!("Cannot create output directory: {}", err))?; @@ -493,6 +496,7 @@ async fn do_package( package_name, package, output_directory, + disable_cache, ) .await }, @@ -978,8 +982,9 @@ async fn main() -> Result<()> { SubCommand::Build(BuildCommand::Dot) => { do_dot(&get_config()?).await?; } - SubCommand::Build(BuildCommand::Package) => { - do_package(&get_config()?, &args.artifact_dir).await?; + SubCommand::Build(BuildCommand::Package { disable_cache }) => { + do_package(&get_config()?, &args.artifact_dir, *disable_cache) + .await?; } SubCommand::Build(BuildCommand::Stamp { package_name, version }) => { do_stamp(&get_config()?, &args.artifact_dir, package_name, version) diff --git a/package/src/lib.rs b/package/src/lib.rs index fe3476c937..bba1a3a0cd 100644 --- a/package/src/lib.rs +++ b/package/src/lib.rs @@ -92,7 +92,13 @@ pub enum BuildCommand { Dot, /// Builds the packages specified in a manifest, and places them into an /// 'out' directory. - Package, + Package { + /// If true, disables the cache. + /// + /// By default, the cache is used. + #[clap(short, long)] + disable_cache: bool, + }, /// Stamps semver versions onto packages within a manifest Stamp { /// The name of the artifact to be stamped. From d6e4fe408d1528a885080e1040ca254b66125650 Mon Sep 17 00:00:00 2001 From: Sean Klein Date: Tue, 30 Jan 2024 22:16:31 -0800 Subject: [PATCH 5/7] thing-flinger --- Cargo.lock | 746 +++++++++--------- .../thing-flinger/src/bin/thing-flinger.rs | 2 +- workspace-hack/Cargo.toml | 24 +- 3 files changed, 385 insertions(+), 387 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 4a2136ba21..88c3bdcd52 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -126,26 +126,26 @@ dependencies = [ [[package]] name = "anstyle" -version = "1.0.5" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2faccea4cc4ab4a667ce676a30e8ec13922a692c99bb8f5b11f1502c72e04220" +checksum = "15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea" [[package]] name = "anstyle-parse" -version = "0.2.3" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c75ac65da39e5fe5ab759307499ddad880d724eed2f6ce5b5e8a26f4f387928c" +checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333" dependencies = [ "utf8parse", ] [[package]] name = "anstyle-query" -version = "1.0.2" +version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e28923312444cdd728e4738b3f9c9cac739500909bb3d3c94b43551b16517648" +checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] @@ -313,18 +313,18 @@ dependencies = [ [[package]] name = "atomic-polyfill" -version = "1.0.3" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8cf2bce30dfe09ef0bfaef228b9d414faaf7e563035494d7fe092dba54b300f4" +checksum = "e3ff7eb3f316534d83a8a2c3d1674ace8a5a71198eba31e2e2b597833f699b28" dependencies = [ "critical-section", ] [[package]] name = "atomic-waker" -version = "1.1.2" +version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" +checksum = "1181e1e0d1fce796a03db1ae795d67167da795f9cf4a39c37589e85ef57f26d3" [[package]] name = "atomicwrites" @@ -393,7 +393,7 @@ dependencies = [ "cfg-if", "libc", "miniz_oxide", - "object 0.32.2", + "object 0.32.1", "rustc-demangle", ] @@ -426,9 +426,9 @@ dependencies = [ [[package]] name = "bb8" -version = "0.8.2" +version = "0.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a231b0053b541477a802d9bb79830e02d4b8eba400ba7686b676609a7958d90f" +checksum = "98b4b0f25f18bcdc3ac72bdb486ed0acf7e185221fd4dc985bc15db5800b0ba2" dependencies = [ "async-trait", "futures-channel", @@ -559,13 +559,13 @@ dependencies = [ [[package]] name = "blake2b_simd" -version = "1.0.2" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23285ad32269793932e830392f2fe2f83e26488fd3ec778883a93c8323735780" +checksum = "3c2f0dc9a68c6317d884f97cc36cf5a3d20ba14ce404227df55e1af708ab04bc" dependencies = [ "arrayref", "arrayvec", - "constant_time_eq", + "constant_time_eq 0.2.6", ] [[package]] @@ -578,7 +578,7 @@ dependencies = [ "arrayvec", "cc", "cfg-if", - "constant_time_eq", + "constant_time_eq 0.3.0", "memmap2", "rayon", ] @@ -697,15 +697,15 @@ dependencies = [ [[package]] name = "bumpalo" -version = "3.14.0" +version = "3.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec" +checksum = "a3e2c3daef883ecc1b5d58c15adae93470a91d425f3532ba1695849656af3fc1" [[package]] name = "bytecount" -version = "0.6.7" +version = "0.6.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1e5f035d16fc623ae5f74981db80a439803888314e3a555fd6f04acd51a3205" +checksum = "2c676a478f63e9fa2dd5368a42f28bba0d6c560b775f38583c8bbaa7fcd67c9c" [[package]] name = "byteorder" @@ -786,9 +786,9 @@ dependencies = [ [[package]] name = "cargo-platform" -version = "0.1.6" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ceed8ef69d8518a5dda55c07425450b58a4e1946f4951eab6d7191ee86c2443d" +checksum = "2cfa25e60aea747ec7e1124f238816749faa93759c6ff5b31f1ccdda137f4479" dependencies = [ "serde", ] @@ -809,9 +809,9 @@ dependencies = [ [[package]] name = "cargo_toml" -version = "0.19.1" +version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dc9f7a067415ab5058020f04c60ec7b557084dbec0e021217bbabc7a8d38d14" +checksum = "922d6ea3081d68b9e3e09557204bff47f9b5406a4a304dc917e187f8cafd582b" dependencies = [ "serde", "toml 0.8.8", @@ -858,11 +858,11 @@ dependencies = [ [[package]] name = "cfg-expr" -version = "0.15.6" +version = "0.15.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6100bc57b6209840798d95cb2775684849d332f7bd788db2a8c8caf7ef82a41a" +checksum = "03915af431787e6ffdcc74c645077518c6b6e01f80b761e0fbbfa288536311b3" dependencies = [ - "smallvec 1.13.1", + "smallvec 1.11.2", "target-lexicon", ] @@ -951,9 +951,9 @@ dependencies = [ [[package]] name = "clang-sys" -version = "1.7.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1" +checksum = "c688fc74432808e3eb684cae8830a86be1d66a2bd58e1f248ed0960a590baf6f" dependencies = [ "glob", "libc", @@ -1039,10 +1039,11 @@ checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7" [[package]] name = "colored" -version = "2.1.0" +version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbf2150cce219b664a8a70df7a1f933836724b503f8a413af9365b4dcc4d90b8" +checksum = "2674ec482fbc38012cf31e6c42ba0177b431a0cb6f15fe40efa5aab1bda516f6" dependencies = [ + "is-terminal", "lazy_static", "windows-sys 0.48.0", ] @@ -1066,6 +1067,12 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2459377285ad874054d797f3ccebf984978aa39129f6eafde5cdc8315b612f8" +[[package]] +name = "constant_time_eq" +version = "0.2.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "21a53c0a4d288377e7415b53dcfc3c04da5cdc2cc95c8d5ac178b58f0b861ad6" + [[package]] name = "constant_time_eq" version = "0.3.0" @@ -1090,9 +1097,9 @@ dependencies = [ [[package]] name = "core-foundation" -version = "0.9.4" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f" +checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146" dependencies = [ "core-foundation-sys", "libc", @@ -1100,9 +1107,9 @@ dependencies = [ [[package]] name = "core-foundation-sys" -version = "0.8.6" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f" +checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa" [[package]] name = "corncobs" @@ -1130,15 +1137,15 @@ dependencies = [ [[package]] name = "crc-any" -version = "2.4.4" +version = "2.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c01a5e1f881f6fb6099a7bdf949e946719fd4f1fefa56264890574febf0eb6d0" +checksum = "774646b687f63643eb0f4bf13dc263cb581c8c9e57973b6ddf78bda3994d88df" [[package]] name = "crc-catalog" -version = "2.4.0" +version = "2.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19d374276b40fb8bbdee95aef7c7fa6b5316ec764510eb64b8dd0e2ed0d7e7f5" +checksum = "9cace84e55f07e7301bae1c519df89cdad8cc3cd868413d3fdbdeca9ff3db484" [[package]] name = "crc32fast" @@ -1207,10 +1214,11 @@ checksum = "7059fff8937831a9ae6f0fe4d658ffabf58f2ca96aa9dec1c889f936f705f216" [[package]] name = "crossbeam" -version = "0.8.4" +version = "0.8.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1137cd7e7fc0fb5d3c5a8678be38ec56e819125d8d7907411fe24ccb943faca8" +checksum = "2801af0d36612ae591caa9568261fddce32ce6e08a7275ea334a06a4ad021a2c" dependencies = [ + "cfg-if", "crossbeam-channel", "crossbeam-deque", "crossbeam-epoch", @@ -1220,19 +1228,21 @@ dependencies = [ [[package]] name = "crossbeam-channel" -version = "0.5.11" +version = "0.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "176dc175b78f56c0f321911d9c8eb2b77a78a4860b9c19db83835fea1a46649b" +checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200" dependencies = [ + "cfg-if", "crossbeam-utils", ] [[package]] name = "crossbeam-deque" -version = "0.8.5" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d" +checksum = "ce6fd6f855243022dcecf8702fef0c297d4338e226845fe067f6341ad9fa0cef" dependencies = [ + "cfg-if", "crossbeam-epoch", "crossbeam-utils", ] @@ -1248,10 +1258,11 @@ dependencies = [ [[package]] name = "crossbeam-queue" -version = "0.3.11" +version = "0.3.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35" +checksum = "d1cfb3ea8a53f37c40dea2c7bedcbd88bdfae54f5e2175d6ecaff1c988353add" dependencies = [ + "cfg-if", "crossbeam-utils", ] @@ -1347,9 +1358,9 @@ checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7" [[package]] name = "crypto-bigint" -version = "0.5.5" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dc92fb57ca44df6db8059111ab3af99a63d5d0f8375d9972e319a379c6bab76" +checksum = "cf4c2f4e1afd912bc40bfd6fed5d9dc1f288e0ba01bfcc835cc5bc3eb13efe15" dependencies = [ "generic-array", "rand_core 0.6.4", @@ -1407,9 +1418,9 @@ dependencies = [ [[package]] name = "curve25519-dalek-derive" -version = "0.1.1" +version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f46882e17999c6cc590af592290432be3bce0428cb0d5f8b6715e4dc7b383eb3" +checksum = "83fdaf97f4804dcebfa5862639bc9ce4121e82140bec2a987ac5140294865b5b" dependencies = [ "proc-macro2", "quote", @@ -1428,12 +1439,12 @@ dependencies = [ [[package]] name = "darling" -version = "0.20.5" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fc5d6b04b3fd0ba9926f945895de7d806260a2d7431ba82e7edaecb043c4c6b8" +checksum = "0209d94da627ab5605dcccf08bb18afa5009cfbef48d8a8b7d7bdbc79be25c5e" dependencies = [ - "darling_core 0.20.5", - "darling_macro 0.20.5", + "darling_core 0.20.3", + "darling_macro 0.20.3", ] [[package]] @@ -1452,9 +1463,9 @@ dependencies = [ [[package]] name = "darling_core" -version = "0.20.5" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04e48a959bcd5c761246f5d090ebc2fbf7b9cd527a492b07a67510c108f1e7e3" +checksum = "177e3443818124b357d8e76f53be906d60937f0d3a90773a664fa63fa253e621" dependencies = [ "fnv", "ident_case", @@ -1477,20 +1488,20 @@ dependencies = [ [[package]] name = "darling_macro" -version = "0.20.5" +version = "0.20.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d1545d67a2149e1d93b7e5c7752dce5a7426eb5d1357ddcfd89336b94444f77" +checksum = "836a9bbc7ad63342d6d6e7b815ccab164bc77a2d95d84bc3117a8c0d5c98e2d5" dependencies = [ - "darling_core 0.20.5", + "darling_core 0.20.3", "quote", "syn 2.0.48", ] [[package]] name = "data-encoding" -version = "2.5.0" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e962a19be5cfc3f3bf6dd8f61eb50107f356ad6270fbb3ed41476571db78be5" +checksum = "c2e66c9d817f1720209181c316d28635c050fa304f9c79e47a520882661b7308" [[package]] name = "datatest-stable" @@ -1870,7 +1881,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e6b21a1211455e82b1245d6e1b024f30606afbb734c114515d40d0e0b34ce81" dependencies = [ "thiserror", - "zerocopy 0.3.2", + "zerocopy 0.3.0", ] [[package]] @@ -1922,7 +1933,7 @@ dependencies = [ [[package]] name = "dropshot" version = "0.9.1-dev" -source = "git+https://github.com/oxidecomputer/dropshot?branch=main#605a6d1421b610b37cf9435c5094e15b59de88b9" +source = "git+https://github.com/oxidecomputer/dropshot?branch=main#711a7490d81416731cfe0f9fef366ed5f266a0ee" dependencies = [ "async-stream", "async-trait", @@ -1959,7 +1970,7 @@ dependencies = [ "tokio", "tokio-rustls 0.25.0", "toml 0.8.8", - "usdt 0.5.0", + "usdt 0.3.5", "uuid", "version_check", "waitgroup", @@ -1968,7 +1979,7 @@ dependencies = [ [[package]] name = "dropshot_endpoint" version = "0.9.1-dev" -source = "git+https://github.com/oxidecomputer/dropshot?branch=main#605a6d1421b610b37cf9435c5094e15b59de88b9" +source = "git+https://github.com/oxidecomputer/dropshot?branch=main#711a7490d81416731cfe0f9fef366ed5f266a0ee" dependencies = [ "proc-macro2", "quote", @@ -2001,9 +2012,9 @@ dependencies = [ [[package]] name = "dyn-clone" -version = "1.0.16" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "545b22097d44f8a9581187cdf93de7a71e4722bf51200cfaba810865b49a495d" +checksum = "bbfc4744c1b8f2a09adc0e55242f60b1af195d88596bd8700be74418c056c555" [[package]] name = "ecdsa" @@ -2015,7 +2026,7 @@ dependencies = [ "digest", "elliptic-curve", "rfc6979", - "signature 2.2.0", + "signature 2.1.0", "spki", ] @@ -2030,26 +2041,25 @@ dependencies = [ [[package]] name = "ed25519" -version = "2.2.3" +version = "2.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "115531babc129696a58c64a4fef0a8bf9e9698629fb97e9e40767d235cfbcd53" +checksum = "60f6d271ca33075c88028be6f04d502853d63a5ece419d269c15315d4fc1cf1d" dependencies = [ "pkcs8", - "signature 2.2.0", + "signature 2.1.0", ] [[package]] name = "ed25519-dalek" -version = "2.1.0" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1f628eaec48bfd21b865dc2950cfa014450c01d2fa2b69a86c2fd5844ec523c0" +checksum = "7277392b266383ef8396db7fdeb1e77b6c52fed775f5df15bb24f35b72156980" dependencies = [ "curve25519-dalek", - "ed25519 2.2.3", + "ed25519 2.2.2", "rand_core 0.6.4", "serde", "sha2", - "subtle", "zeroize", ] @@ -2156,9 +2166,9 @@ dependencies = [ [[package]] name = "env_logger" -version = "0.10.2" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580" +checksum = "85cdab6a89accf66733ad5a1693a4dcced6aeff64602b634530dd73c1f3ee9f0" dependencies = [ "is-terminal", "log", @@ -2206,9 +2216,9 @@ checksum = "4443176a9f2c162692bd3d352d745ef9413eec5782a80d8fd6f8a1ac692a07f7" [[package]] name = "fastrand" -version = "2.0.1" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25cbce373ec4653f1a01a31e8a5e5ec0c622dc27ff9c4e6606eefef5cbbed4a5" +checksum = "6999dc1837253364c2ebb0704ba97994bd874e8f195d665c50b7548f6ea92764" [[package]] name = "fatfs" @@ -2256,9 +2266,9 @@ dependencies = [ [[package]] name = "fiat-crypto" -version = "0.2.5" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "27573eac26f4dd11e2b1916c3fe1baa56407c83c71a773a8ba17ec0bca03b6b7" +checksum = "d0870c84016d4b481be5c9f323c24f65e31e901ae618f0e80f4308fb00de1d2d" [[package]] name = "filetime" @@ -2272,12 +2282,6 @@ dependencies = [ "windows-sys 0.52.0", ] -[[package]] -name = "finl_unicode" -version = "1.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8fcfdc7a0362c9f4444381a9e697c79d435fe65b52a37466fc2c1184cee9edc6" - [[package]] name = "fixedbitset" version = "0.4.2" @@ -2286,9 +2290,9 @@ checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" [[package]] name = "flagset" -version = "0.4.4" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d52a7e408202050813e6f1d9addadcaafef3dca7530c7ddfb005d4081cce6779" +checksum = "cda653ca797810c02f7ca4b804b40b8b95ae046eb989d356bce17919a8c25499" [[package]] name = "flate2" @@ -2571,9 +2575,9 @@ dependencies = [ "serde_repr", "smoltcp 0.9.1", "static_assertions", - "strum_macros 0.25.3", + "strum_macros 0.25.2", "uuid", - "zerocopy 0.6.6", + "zerocopy 0.6.4", ] [[package]] @@ -2679,9 +2683,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.28.1" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4271d37baee1b8c7e4b708028c57d816cf9d2434acb33a549475f78c181f6253" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" [[package]] name = "glob" @@ -2691,15 +2695,15 @@ checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b" [[package]] name = "globset" -version = "0.4.14" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57da3b9b5b85bd66f31093f8c408b90a74431672542466497dcbdfdc02034be1" +checksum = "759c97c1e17c55525b57192c06a267cda0ac5210b222d6b82189a2338fa1c13d" dependencies = [ "aho-corasick", "bstr 1.9.0", + "fnv", "log", - "regex-automata 0.4.5", - "regex-syntax 0.8.2", + "regex", ] [[package]] @@ -2738,7 +2742,7 @@ dependencies = [ "fixedbitset", "guppy-workspace-hack", "indexmap 2.2.1", - "itertools 0.12.1", + "itertools 0.12.0", "nested", "once_cell", "pathdiff", @@ -2746,7 +2750,7 @@ dependencies = [ "semver 1.0.21", "serde", "serde_json", - "smallvec 1.13.1", + "smallvec 1.11.2", "static_assertions", "target-spec", ] @@ -2855,9 +2859,9 @@ dependencies = [ [[package]] name = "heapless" -version = "0.7.17" +version = "0.7.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cdc6457c0eb62c71aac4bc17216026d8410337c4126773b9c5daba343f17964f" +checksum = "db04bc24a18b9ea980628ecf00e6c0264f3c1426dac36c00cb49b6fbad8b0743" dependencies = [ "atomic-polyfill", "hash32 0.2.1", @@ -2902,9 +2906,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.3.4" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d3d0e0f38255e7fa3cf31335b3a56f05febd18025f4db5ef7a0cfb4f8da651f" +checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b" [[package]] name = "hex" @@ -2947,11 +2951,11 @@ dependencies = [ [[package]] name = "home" -version = "0.5.9" +version = "0.5.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3d1354bf6b7235cb4a0576c2619fd4ed18183f689b12b006a0ee7329eeff9a5" +checksum = "5444c27eef6923071f7ebcc33e3444508466a76f7a2b93da00ed6e19f30c1ddb" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] @@ -2989,9 +2993,9 @@ dependencies = [ [[package]] name = "http-body" -version = "0.4.6" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ceab25649e9960c0311ea418d17bee82c0dcec1bd053b5f9a66e265a693bed2" +checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" dependencies = [ "bytes", "http 0.2.11", @@ -3051,7 +3055,7 @@ dependencies = [ [[package]] name = "hubpack" version = "0.1.0" -source = "git+https://github.com/cbiffle/hubpack.git?rev=df08cc3a6e1f97381cd0472ae348e310f0119e25#df08cc3a6e1f97381cd0472ae348e310f0119e25" +source = "git+https://github.com/cbiffle/hubpack?rev=df08cc3a6e1f97381cd0472ae348e310f0119e25#df08cc3a6e1f97381cd0472ae348e310f0119e25" dependencies = [ "hubpack_derive 0.1.0", "serde", @@ -3070,7 +3074,7 @@ dependencies = [ [[package]] name = "hubpack_derive" version = "0.1.0" -source = "git+https://github.com/cbiffle/hubpack.git?rev=df08cc3a6e1f97381cd0472ae348e310f0119e25#df08cc3a6e1f97381cd0472ae348e310f0119e25" +source = "git+https://github.com/cbiffle/hubpack?rev=df08cc3a6e1f97381cd0472ae348e310f0119e25#df08cc3a6e1f97381cd0472ae348e310f0119e25" dependencies = [ "proc-macro2", "quote", @@ -3090,8 +3094,8 @@ dependencies = [ [[package]] name = "hubtools" -version = "0.4.4" -source = "git+https://github.com/oxidecomputer/hubtools.git?branch=main#eca20d8e487e0c75697e31e1508d02affd39f568" +version = "0.4.1" +source = "git+https://github.com/oxidecomputer/hubtools.git?branch=main#73cd5a84689d59ecce9da66ad4389c540d315168" dependencies = [ "lpc55_areas", "lpc55_sign", @@ -3099,11 +3103,11 @@ dependencies = [ "path-slash", "rsa", "thiserror", - "tlvc 0.3.1 (git+https://github.com/oxidecomputer/tlvc)", + "tlvc 0.3.1 (git+https://github.com/oxidecomputer/tlvc.git)", "tlvc-text", "toml 0.7.8", "x509-cert", - "zerocopy 0.6.6", + "zerocopy 0.6.4", "zip", ] @@ -3125,7 +3129,7 @@ dependencies = [ "futures-util", "h2", "http 0.2.11", - "http-body 0.4.6", + "http-body 0.4.5", "httparse", "httpdate", "itoa", @@ -3164,7 +3168,7 @@ dependencies = [ "futures-util", "http 0.2.11", "hyper 0.14.28", - "rustls 0.21.10", + "rustls 0.21.9", "tokio", "tokio-rustls 0.24.1", ] @@ -3242,16 +3246,16 @@ dependencies = [ [[package]] name = "iana-time-zone" -version = "0.1.59" +version = "0.1.57" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6a67363e2aa4443928ce15e57ebae94fd8949958fd1223c4cfc0cd473ad7539" +checksum = "2fad5b825842d2b38bd206f3e81d6957625fd7f0a361e345c30e01a0ae2dd613" dependencies = [ "android_system_properties", "core-foundation-sys", "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "windows-core", + "windows", ] [[package]] @@ -3395,9 +3399,9 @@ checksum = "bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306" [[package]] name = "indoc" -version = "2.0.4" +version = "2.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8" +checksum = "2c785eefb63ebd0e33416dfcb8d6da0bf27ce752843a45632a67bf10d4d4b5c4" [[package]] name = "inout" @@ -3430,7 +3434,7 @@ dependencies = [ "installinator-artifact-client", "installinator-common", "ipcc", - "itertools 0.12.1", + "itertools 0.12.0", "libc", "omicron-common", "omicron-test-utils", @@ -3616,13 +3620,13 @@ dependencies = [ [[package]] name = "is-terminal" -version = "0.4.10" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bad00257d07be169d870ab665980b06cdb366d792ad690bf2e76876dc503455" +checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b" dependencies = [ - "hermit-abi 0.3.4", + "hermit-abi 0.3.2", "rustix", - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] @@ -3642,33 +3646,33 @@ dependencies = [ [[package]] name = "itertools" -version = "0.12.1" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +checksum = "25db6b064527c5d482d0423354fcd07a89a2dfe07b67892e62411946db7f07b0" dependencies = [ "either", ] [[package]] name = "itoa" -version = "1.0.10" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c" +checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" [[package]] name = "js-sys" -version = "0.3.67" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9a1d36f1235bc969acba30b7f5990b864423a6068a10f7c90ae8f0112e3a59d1" +checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" dependencies = [ "wasm-bindgen", ] [[package]] name = "keccak" -version = "0.1.5" +version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ecc2af9a1119c51f12a14607e783cb977bde58bc069ff0c3da1095e635d70654" +checksum = "8f6d5ed8676d904364de097082f4e7d240b571b67989ced0240f08b7f966f940" dependencies = [ "cpufeatures", ] @@ -3781,24 +3785,24 @@ checksum = "b024e211b1b371da58cd69e4fb8fa4ed16915edcc0e2e1fb04ac4bad61959f25" [[package]] name = "libloading" -version = "0.8.1" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c571b676ddfc9a8c12f1f3d3085a7b163966a8fd8098a90640953ce5f6170161" +checksum = "b67380fd3b2fbe7527a606e18729d21c6f3951633d0500574c4dc22d2d638b9f" dependencies = [ "cfg-if", - "windows-sys 0.48.0", + "winapi", ] [[package]] name = "libm" -version = "0.2.8" +version = "0.2.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" +checksum = "f7012b1bbb0719e1097c47611d3898568c546d597c2e74d66f6087edd5233ff4" [[package]] name = "libnet" version = "0.1.0" -source = "git+https://github.com/oxidecomputer/netadm-sys#d44d9e084f39e844f8083d4d9b39a331061ebbcc" +source = "git+https://github.com/oxidecomputer/netadm-sys#f114bd0d543d886cd453932e9f0967de57289bc2" dependencies = [ "anyhow", "cfg-if", @@ -3809,22 +3813,11 @@ dependencies = [ "nvpair", "nvpair-sys", "rusty-doors", - "socket2 0.4.10", + "socket2 0.4.9", "thiserror", "tracing", ] -[[package]] -name = "libredox" -version = "0.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "85c833ca1e66078851dba29046874e38f08b2c883700aa29a03ddd3b23814ee8" -dependencies = [ - "bitflags 2.4.2", - "libc", - "redox_syscall 0.4.1", -] - [[package]] name = "libsw" version = "3.3.1" @@ -3876,9 +3869,9 @@ checksum = "01cda141df6706de531b6c46c3a33ecca755538219bd484262fa09410c13539c" [[package]] name = "lock_api" -version = "0.4.11" +version = "0.4.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45" +checksum = "c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16" dependencies = [ "autocfg", "scopeguard", @@ -3923,14 +3916,14 @@ dependencies = [ "sha2", "thiserror", "x509-cert", - "zerocopy 0.6.6", + "zerocopy 0.6.4", ] [[package]] name = "lru" -version = "0.12.2" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db2c024b41519440580066ba82aab04092b333e09066a5eb86c7c4890df31f22" +checksum = "2994eeba8ed550fd9b47a0b38f0242bc3344e496483c6180b69139cc2fa5d1d7" dependencies = [ "hashbrown 0.14.3", ] @@ -3985,11 +3978,10 @@ checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" [[package]] name = "md-5" -version = "0.10.6" +version = "0.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d89e7ee0cfbedfc4da3340218492196241d89eefb6dab27de5df917a6d2e78cf" +checksum = "6365506850d44bff6e2fbcb5176cf63650e48bd45ef2fe2665ae1570e0f4b9ca" dependencies = [ - "cfg-if", "digest", ] @@ -4101,9 +4093,9 @@ dependencies = [ [[package]] name = "mockall" -version = "0.12.1" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43766c2b5203b10de348ffe19f7e54564b64f3d6018ff7648d1e2d6d3a0f0a48" +checksum = "1a978c8292954bcb9347a4e28772c0a0621166a1598fc1be28ac0076a4bb810e" dependencies = [ "cfg-if", "downcast", @@ -4116,9 +4108,9 @@ dependencies = [ [[package]] name = "mockall_derive" -version = "0.12.1" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "af7cbce79ec385a1d4f54baa90a76401eb15d9cab93685f62e7e9f942aa00ae2" +checksum = "ad2765371d0978ba4ace4ebef047baa62fc068b431e468444b5610dd441c639b" dependencies = [ "cfg-if", "proc-macro2", @@ -4286,7 +4278,7 @@ dependencies = [ "illumos-utils", "internal-dns", "ipnetwork", - "itertools 0.12.1", + "itertools 0.12.0", "macaddr", "newtype_derive", "nexus-db-model", @@ -4487,7 +4479,7 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77a5d83df9f36fe23f0c3648c6bbb8b0298bb5f1939c8f2704431371f4b84d43" dependencies = [ - "smallvec 1.13.1", + "smallvec 1.11.2", ] [[package]] @@ -4584,7 +4576,7 @@ dependencies = [ "num-traits", "rand 0.8.5", "serde", - "smallvec 1.13.1", + "smallvec 1.11.2", "zeroize", ] @@ -4599,9 +4591,9 @@ dependencies = [ [[package]] name = "num-derive" -version = "0.4.1" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cfb77679af88f8b125209d354a202862602672222e7f2313fdd6dc349bad4712" +checksum = "9e6a0fd4f737c707bd9086cc16c925f294943eb62eb71499e9fd4cf71f8b9f4e" dependencies = [ "proc-macro2", "quote", @@ -4656,7 +4648,7 @@ version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "hermit-abi 0.3.4", + "hermit-abi 0.3.2", "libc", ] @@ -4725,9 +4717,9 @@ dependencies = [ [[package]] name = "object" -version = "0.32.2" +version = "0.32.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6a622008b6e321afc04970976f62ee297fdbaa6f95318ca343e3eebb9648441" +checksum = "9cf5f9dd3933bd50a9e1f149ec995f39ae2c496d31fd772c1fd45ebc27e902b0" dependencies = [ "memchr", ] @@ -4933,7 +4925,7 @@ dependencies = [ "illumos-utils", "internal-dns", "ipnetwork", - "itertools 0.12.1", + "itertools 0.12.0", "macaddr", "mg-admin-client", "mime_guess", @@ -5153,7 +5145,7 @@ dependencies = [ "installinator-common", "internal-dns", "ipnetwork", - "itertools 0.12.1", + "itertools 0.12.0", "key-manager", "libc", "macaddr", @@ -5296,7 +5288,6 @@ dependencies = [ "lalrpop-util", "lazy_static", "libc", - "linux-raw-sys", "log", "managed", "memchr", @@ -5348,8 +5339,7 @@ dependencies = [ "trust-dns-proto", "unicode-bidi", "unicode-normalization", - "unicode-xid", - "usdt 0.5.0", + "usdt 0.3.5", "usdt-impl 0.5.0", "uuid", "yasna", @@ -5360,8 +5350,8 @@ dependencies = [ [[package]] name = "omicron-zone-package" -version = "0.10.1" -source = "git+https://github.com/oxidecomputer/omicron-package?branch=cache2#ca34b7106f28adae67c49bdedf117d66231fc77c" +version = "0.11.0" +source = "git+https://github.com/oxidecomputer/omicron-package?branch=cache2#1da3f67a1d4148463ddefe4c97121ae9082a884c" dependencies = [ "anyhow", "async-trait", @@ -5433,9 +5423,9 @@ dependencies = [ [[package]] name = "openssl" -version = "0.10.63" +version = "0.10.60" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15c9d69dd87a29568d4d017cfe8ec518706046a05184e5aea92d0af890b803c8" +checksum = "79a4c6c3a2b158f7f8f2a2fc5a969fa3a068df6fc9dbb4a43845436e3af7c800" dependencies = [ "bitflags 2.4.2", "cfg-if", @@ -5465,9 +5455,9 @@ checksum = "ff011a302c396a5197692431fc1948019154afc178baf7d8e37367442a4601cf" [[package]] name = "openssl-sys" -version = "0.9.99" +version = "0.9.96" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22e1bf214306098e4832460f797824c05d25aacdf896f64a985fb0fd992454ae" +checksum = "3812c071ba60da8b5677cc12bcb1d42989a65553772897a7e0355545a819838f" dependencies = [ "cc", "libc", @@ -5525,9 +5515,9 @@ checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" [[package]] name = "oso" -version = "0.27.3" +version = "0.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eeabb069616e6a494420f5ab27dbad46efa8dd4b45d30a0302857a7bcdea4293" +checksum = "fceecc04a9e9dcb63a42d937a4249557da8d2695cf83eb5ee78015473ab12ae2" dependencies = [ "impl-trait-for-tuples", "lazy_static", @@ -5540,9 +5530,9 @@ dependencies = [ [[package]] name = "oso-derive" -version = "0.27.3" +version = "0.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2f5236d7c60cce1bcd76146bcbc4b2a5fb1234894fb84b1ec751863e8399e9c" +checksum = "1766857f83748ce5596ab98e1a57d64ccfe3259e71b7b53289c8c32c2cfef9a8" dependencies = [ "quote", "syn 1.0.109", @@ -5684,7 +5674,7 @@ dependencies = [ "futures", "highway", "indexmap 2.2.1", - "itertools 0.12.1", + "itertools 0.12.0", "omicron-common", "omicron-test-utils", "omicron-workspace-hack", @@ -5838,7 +5828,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" dependencies = [ "lock_api", - "parking_lot_core 0.9.9", + "parking_lot_core 0.9.8", ] [[package]] @@ -5851,20 +5841,20 @@ dependencies = [ "instant", "libc", "redox_syscall 0.2.16", - "smallvec 1.13.1", + "smallvec 1.11.2", "winapi", ] [[package]] name = "parking_lot_core" -version = "0.9.9" +version = "0.9.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e" +checksum = "93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.4.1", - "smallvec 1.13.1", + "redox_syscall 0.3.5", + "smallvec 1.11.2", "windows-targets 0.48.5", ] @@ -5984,9 +5974,9 @@ checksum = "19b17cddbe7ec3f8bc800887bab5e717348c95ea2ca0b1bf0837fb964dc67099" [[package]] name = "pem" -version = "3.0.3" +version = "3.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b8fcc794035347fb64beda2d3b462595dd2753e3f268d89c5aae77e8cf2c310" +checksum = "3163d2912b7c3b52d651a055f2c7eec9ba5cd22d26ef75b8dd3a59980b185923" dependencies = [ "base64", "serde", @@ -6093,18 +6083,18 @@ dependencies = [ [[package]] name = "pin-project" -version = "1.1.4" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0302c4a0442c456bd56f841aee5c3bfd17967563f6fadc9ceb9f9c23cf3807e0" +checksum = "fda4ed1c6c173e3fc7a83629421152e01d7b1f9b7f65fb301e490e8cfc656422" dependencies = [ "pin-project-internal", ] [[package]] name = "pin-project-internal" -version = "1.1.4" +version = "1.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "266c042b60c9c76b8d53061e52b2e0d1116abc57cefc8c5cd671619a56ac3690" +checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", @@ -6146,9 +6136,9 @@ dependencies = [ [[package]] name = "pkg-config" -version = "0.3.29" +version = "0.3.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2900ede94e305130c13ddd391e0ab7cbaeb783945ae07a279c268cb05109c6cb" +checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" [[package]] name = "plain" @@ -6158,9 +6148,9 @@ checksum = "b4596b6d070b27117e987119b4dac604f3c58cfb0b191112e24771b2faeac1a6" [[package]] name = "platforms" -version = "3.3.0" +version = "3.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "626dec3cac7cc0e1577a2ec3fc496277ec2baa084bebad95bb6fdbfae235f84c" +checksum = "e3d7ddaed09e0eb771a79ab0fd64609ba0afb0a8366421957936ad14cbd13630" [[package]] name = "plotters" @@ -6192,9 +6182,9 @@ dependencies = [ [[package]] name = "polar-core" -version = "0.27.3" +version = "0.27.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3aa6f61d235de56ccffbca8627377ebe6ff0052a419f67b098f319a5f32e06d" +checksum = "9d1b77e852bec994296c8a1dddc231ab3f112bfa0a0399fc8a7fd8bddfb46b4e" dependencies = [ "indoc 1.0.9", "js-sys", @@ -6236,9 +6226,9 @@ source = "git+https://github.com/oxidecomputer/poptrie?branch=multipath#ca52bef3 [[package]] name = "portable-atomic" -version = "1.6.0" +version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7170ef9988bc169ba16dd36a7fa041e5c4cbeb6a35b76d4c03daded371eae7c0" +checksum = "31114a898e107c51bb1609ffaf55a0e011cf6a4d7f1170d0015a165082c0338b" [[package]] name = "postcard" @@ -6801,8 +6791,8 @@ dependencies = [ "bitflags 2.4.2", "cassowary", "crossterm", - "indoc 2.0.4", - "itertools 0.12.1", + "indoc 2.0.3", + "itertools 0.12.0", "lru", "paste", "stability", @@ -6813,9 +6803,9 @@ dependencies = [ [[package]] name = "rayon" -version = "1.8.1" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa7237101a77a10773db45d62004a272517633fbcc3df19d96455ede1122e051" +checksum = "9c27db03db7734835b3f53954b534c91069375ce6ccaa2e065441e07d9b6cdb1" dependencies = [ "either", "rayon-core", @@ -6823,9 +6813,9 @@ dependencies = [ [[package]] name = "rayon-core" -version = "1.12.1" +version = "1.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2" +checksum = "5ce3fb6ad83f861aac485e76e1985cd109d9a3713802152be56c3b1f0e0658ed" dependencies = [ "crossbeam-deque", "crossbeam-utils", @@ -6861,6 +6851,15 @@ dependencies = [ "bitflags 1.3.2", ] +[[package]] +name = "redox_syscall" +version = "0.3.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" +dependencies = [ + "bitflags 1.3.2", +] + [[package]] name = "redox_syscall" version = "0.4.1" @@ -6872,12 +6871,12 @@ dependencies = [ [[package]] name = "redox_users" -version = "0.4.4" +version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a18479200779601e498ada4e8c1e1f50e3ee19deb0259c25825a98b5603b2cb4" +checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" dependencies = [ "getrandom 0.2.12", - "libredox", + "redox_syscall 0.2.16", "thiserror", ] @@ -6890,12 +6889,12 @@ dependencies = [ "chrono", "crossterm", "fd-lock 3.0.13", - "itertools 0.12.1", + "itertools 0.12.0", "nu-ansi-term", "serde", "strip-ansi-escapes", "strum", - "strum_macros 0.25.3", + "strum_macros 0.25.2", "thiserror", "unicode-segmentation", "unicode-width", @@ -6903,18 +6902,18 @@ dependencies = [ [[package]] name = "ref-cast" -version = "1.0.22" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4846d4c50d1721b1a3bef8af76924eef20d5e723647333798c1b519b3a9473f" +checksum = "acde58d073e9c79da00f2b5b84eed919c8326832648a5b109b3fce1bb1175280" dependencies = [ "ref-cast-impl", ] [[package]] name = "ref-cast-impl" -version = "1.0.22" +version = "1.0.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5fddb4f8d99b0a2ebafc65a87a69a7b9875e4b1ae1f00db265d300ef7f28bccc" +checksum = "7f7473c2cfcf90008193dd0e3e16599455cb601a9fce322b5bb55de799664925" dependencies = [ "proc-macro2", "quote", @@ -6980,9 +6979,9 @@ dependencies = [ [[package]] name = "relative-path" -version = "1.9.2" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e898588f33fdd5b9420719948f9f2a32c922a246964576f71ba7f24f80610fbc" +checksum = "c707298afce11da2efef2f600116fa93ffa7a032b5d7b628aa17711ec81383ca" [[package]] name = "remove_dir_all" @@ -7006,7 +7005,7 @@ dependencies = [ "futures-util", "h2", "http 0.2.11", - "http-body 0.4.6", + "http-body 0.4.5", "hyper 0.14.28", "hyper-rustls 0.24.2", "hyper-tls", @@ -7018,8 +7017,8 @@ dependencies = [ "once_cell", "percent-encoding", "pin-project-lite", - "rustls 0.21.10", - "rustls-pemfile 1.0.4", + "rustls 0.21.9", + "rustls-pemfile 1.0.3", "serde", "serde_json", "serde_urlencoded", @@ -7112,21 +7111,23 @@ dependencies = [ [[package]] name = "rsa" -version = "0.9.6" +version = "0.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d0e5124fcb30e76a7e79bfee683a2746db83784b86289f6251b54b7950a0dfc" +checksum = "6ab43bb47d23c1a631b4b680199a45255dce26fa9ab2fa902581f624ff13e6a8" dependencies = [ + "byteorder", "const-oid", "digest", "num-bigint-dig", "num-integer", + "num-iter", "num-traits", "pkcs1", "pkcs8", "rand_core 0.6.4", "serde", "sha2", - "signature 2.2.0", + "signature 2.1.0", "spki", "subtle", "zeroize", @@ -7163,12 +7164,12 @@ dependencies = [ [[package]] name = "rtoolbox" -version = "0.0.2" +version = "0.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c247d24e63230cdb56463ae328478bd5eac8b8faa8c69461a77e8e323afac90e" +checksum = "034e22c514f5c0cb8a10ff341b9b048b5ceb21591f31c8f44c43b960f9b3524a" dependencies = [ "libc", - "windows-sys 0.48.0", + "winapi", ] [[package]] @@ -7208,9 +7209,9 @@ dependencies = [ [[package]] name = "russh-cryptovec" -version = "0.7.2" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2b077b6dd8d8c085dac62f7fcc5a83df60c7f7a22d49bfba994f2f4dbf60bc74" +checksum = "c3fdf036c2216b554053d19d4af45c1722d13b00ac494ea19825daf4beac034e" dependencies = [ "libc", "winapi", @@ -7262,7 +7263,7 @@ checksum = "a5885493fdf0be6cdff808d1533ce878d21cfa49c7086fa00c66355cd9141bfc" dependencies = [ "base64", "blake2b_simd", - "constant_time_eq", + "constant_time_eq 0.3.0", "crossbeam-utils", ] @@ -7298,14 +7299,14 @@ dependencies = [ [[package]] name = "rustfmt-wrapper" -version = "0.2.1" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f1adc9dfed5cc999077978cc7163b9282c5751c8d39827c4ea8c8c220ca5a440" +checksum = "ed729e3bee08ec2befd593c27e90ca9fdd25efdc83c94c3b82eaef16e4f7406e" dependencies = [ "serde", "tempfile", "thiserror", - "toml 0.8.8", + "toml 0.5.11", "toolchain_find", ] @@ -7324,9 +7325,9 @@ dependencies = [ [[package]] name = "rustls" -version = "0.21.10" +version = "0.21.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9d5a6813c0759e4609cd494e8e725babae6a2ca7b62a5536a13daaec6fcb7ba" +checksum = "629648aced5775d558af50b2b4c7b02983a04b312126d45eeead26e7caa498b9" dependencies = [ "log", "ring 0.17.7", @@ -7363,9 +7364,9 @@ dependencies = [ [[package]] name = "rustls-pemfile" -version = "1.0.4" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c74cae0a4cf6ccbbf5f359f08efdf8ee7e1dc532573bf0db71968cb56b1448c" +checksum = "2d3987094b1d07b653b7dfdc3f70ce9a1da9c51ac18c1b06b662e4f9a0e9f4b2" dependencies = [ "base64", ] @@ -7467,9 +7468,9 @@ dependencies = [ [[package]] name = "ryu" -version = "1.0.16" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f98d2aa92eebf49b69786be48e4477826b256916e84a57ff2a4f21923b48eb4c" +checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" [[package]] name = "salty" @@ -7520,11 +7521,11 @@ dependencies = [ [[package]] name = "schannel" -version = "0.1.23" +version = "0.1.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534" +checksum = "0c3733bf4cf7ea0880754e19cb5a462007c4a8c1914bff372ccc95b464f1df88" dependencies = [ - "windows-sys 0.52.0", + "windows-sys 0.48.0", ] [[package]] @@ -7591,12 +7592,12 @@ dependencies = [ [[package]] name = "sct" -version = "0.7.1" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da046153aa2352493d6cb7da4b6e5c0c057d8a1d0a9aa8560baffdd945acd414" +checksum = "d53dcdb7c9f8158937a7981b48accfd39a43af418591a5d008c7b22b5e1b7ca4" dependencies = [ - "ring 0.17.7", - "untrusted 0.9.0", + "ring 0.16.20", + "untrusted 0.7.1", ] [[package]] @@ -7651,6 +7652,15 @@ version = "0.1.20" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d4f410fedcf71af0345d7607d246e7ad15faaadd49d240ee3b24e5dc21a820ac" +[[package]] +name = "semver" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" +dependencies = [ + "semver-parser", +] + [[package]] name = "semver" version = "1.0.21" @@ -7660,6 +7670,15 @@ dependencies = [ "serde", ] +[[package]] +name = "semver-parser" +version = "0.10.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "00b0bef5b7f9e0df16536d3961cfb6e84331c065b4066afb39768d0e319411f7" +dependencies = [ + "pest", +] + [[package]] name = "serde" version = "1.0.196" @@ -7761,9 +7780,9 @@ dependencies = [ [[package]] name = "serde_repr" -version = "0.1.18" +version = "0.1.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b2e6b945e9d3df726b65d6ee24060aff8e3533d431f677a9695db04eff9dfdb" +checksum = "8725e1dfadb3a50f7e5ce0b1a540466f6ed3fe7a0fca2ac2b8b831d31316bd00" dependencies = [ "proc-macro2", "quote", @@ -7772,9 +7791,9 @@ dependencies = [ [[package]] name = "serde_spanned" -version = "0.6.5" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eb3622f419d1296904700073ea6cc23ad690adbd66f13ea683df73298736f0c1" +checksum = "12022b835073e5b11e90a14f86838ceb1c8fb0325b72416845c487ac0fa95e80" dependencies = [ "serde", ] @@ -7816,9 +7835,9 @@ dependencies = [ [[package]] name = "serde_with" -version = "3.6.0" +version = "3.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b0ed1662c5a68664f45b76d18deb0e234aff37207086803165c961eb695e981" +checksum = "f5c9fdb6b00a489875b22efd4b78fe2b363b72265cc5f6eb2e2b9ee270e6140c" dependencies = [ "base64", "chrono", @@ -7833,11 +7852,11 @@ dependencies = [ [[package]] name = "serde_with_macros" -version = "3.6.0" +version = "3.5.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "568577ff0ef47b879f736cd66740e022f3672788cdf002a05a4e609ea5a6fb15" +checksum = "dbff351eb4b33600a2e138dfa0b10b65a238ea8ff8fb2387c422c5022a3e8298" dependencies = [ - "darling 0.20.5", + "darling 0.20.3", "proc-macro2", "quote", "syn 2.0.48", @@ -7845,9 +7864,9 @@ dependencies = [ [[package]] name = "serde_yaml" -version = "0.9.31" +version = "0.9.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adf8a49373e98a4c5f0ceb5d05aa7c648d75f63774981ed95b7c7443bbd50c6e" +checksum = "1a49e178e4452f45cb61d0cd8cebc1b0fafd3e41929e996cef79aa3aca91f574" dependencies = [ "indexmap 2.2.1", "itoa", @@ -7950,9 +7969,9 @@ checksum = "74233d3b3b2f6d4b006dc19dee745e73e2a6bfb6f93607cd3b02bd5b00797d7c" [[package]] name = "signature" -version = "2.2.0" +version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "77549399552de45a898a580c1b41d445bf730df867cc44e6c0233bbc4b8329de" +checksum = "5e1788eed21689f9cf370582dfc467ef36ed9c707f073528ddafa8d83e3b8500" dependencies = [ "digest", "rand_core 0.6.4", @@ -8215,21 +8234,21 @@ dependencies = [ [[package]] name = "smallvec" -version = "1.13.1" +version = "1.11.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e6ecd384b10a64542d77071bd64bd7b231f4ed5940fba55e98c3de13824cf3d7" +checksum = "4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970" [[package]] name = "smawk" -version = "0.3.2" +version = "0.3.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7c388c1b5e93756d0c740965c41e8822f866621d41acbdf6336a6a168f8840c" +checksum = "f67ad224767faa3c7d8b6d91985b78e70a1324408abcb1cfcc2be4c06bc06043" [[package]] name = "smf" -version = "0.2.3" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4a491bfc47dffa70a3c267bc379e9de9f4b0a7195e474a94498189b177f8d18c" +checksum = "e6015a9bbf269b84c928dc68e11680bbdfa6f065f1c6d5383ec134f55bab188b" dependencies = [ "thiserror", ] @@ -8243,7 +8262,7 @@ dependencies = [ "bitflags 1.3.2", "byteorder", "cfg-if", - "heapless 0.7.17", + "heapless 0.7.16", "managed", ] @@ -8287,9 +8306,9 @@ dependencies = [ [[package]] name = "socket2" -version = "0.4.10" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9f7916fc008ca5542385b89a3d3ce689953c143e9304a9bf8beec1de48994c0d" +checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662" dependencies = [ "libc", "winapi", @@ -8345,9 +8364,9 @@ dependencies = [ [[package]] name = "spki" -version = "0.7.3" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d91ed6c858b01f942cd56b37a94b3e0a1798290327d1236e4d9cf4eaca44d29d" +checksum = "9d1e996ef02c474957d681f1b05213dfb0abab947b446a62d37770b23500184a" dependencies = [ "base64ct", "der", @@ -8386,7 +8405,7 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ce81b7bd7c4493975347ef60d8c7e8b742d4694f4c49f93e0a12ea263938176c" dependencies = [ - "itertools 0.12.1", + "itertools 0.12.0", "nom", "unicode_categories", ] @@ -8472,11 +8491,10 @@ dependencies = [ [[package]] name = "stringprep" -version = "0.1.4" +version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bb41d74e231a107a1b4ee36bd1214b11285b77768d2e3824aedafa988fd36ee6" +checksum = "db3737bde7edce97102e0e2b15365bf7a20bfdb5f60f4f9e8d7004258a51a8da" dependencies = [ - "finl_unicode", "unicode-bidi", "unicode-normalization", ] @@ -8555,7 +8573,7 @@ version = "0.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "290d54ea6f91c969195bdbcd7442c8c2a2ba87da8bf60a7ee86a235d4bc1e125" dependencies = [ - "strum_macros 0.25.3", + "strum_macros 0.25.2", ] [[package]] @@ -8573,9 +8591,9 @@ dependencies = [ [[package]] name = "strum_macros" -version = "0.25.3" +version = "0.25.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23dc1fa9ac9c169a78ba62f0b841814b7abae11bdd047b9c58f893439e309ea0" +checksum = "ad8d03b598d3d0fff69bf533ee3ef19b8eeb342729596df84bcc7e1f96ec4059" dependencies = [ "heck 0.4.1", "proc-macro2", @@ -8720,9 +8738,9 @@ dependencies = [ [[package]] name = "target-lexicon" -version = "0.12.13" +version = "0.12.12" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69758bda2e78f098e4ccb393021a0963bb3442eac05f135c30f61b7370bbafae" +checksum = "14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a" [[package]] name = "target-spec" @@ -8772,9 +8790,9 @@ dependencies = [ [[package]] name = "termcolor" -version = "1.4.1" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755" +checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6" dependencies = [ "winapi-util", ] @@ -8878,11 +8896,12 @@ dependencies = [ [[package]] name = "thread-id" -version = "4.2.1" +version = "4.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f0ec81c46e9eb50deaa257be2f148adf052d1fb7701cfd55ccfab2525280b70b" +checksum = "79474f573561cdc4871a0de34a51c92f7f5a56039113fbb5b9c9f96bdb756669" dependencies = [ "libc", + "redox_syscall 0.2.16", "winapi", ] @@ -8970,27 +8989,6 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" -[[package]] -name = "tls_codec" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b5e78c9c330f8c85b2bae7c8368f2739157db9991235123aa1b15ef9502bfb6a" -dependencies = [ - "tls_codec_derive", - "zeroize", -] - -[[package]] -name = "tls_codec_derive" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d9ef545650e79f30233c0003bcc2504d7efac6dad25fca40744de773fe2049c" -dependencies = [ - "proc-macro2", - "quote", - "syn 2.0.48", -] - [[package]] name = "tlvc" version = "0.3.1" @@ -8998,28 +8996,28 @@ source = "git+https://github.com/oxidecomputer/tlvc.git?branch=main#e644a21a7ca9 dependencies = [ "byteorder", "crc", - "zerocopy 0.6.6", + "zerocopy 0.6.4", ] [[package]] name = "tlvc" version = "0.3.1" -source = "git+https://github.com/oxidecomputer/tlvc#e644a21a7ca973ed31499106ea926bd63ebccc6f" +source = "git+https://github.com/oxidecomputer/tlvc.git#e644a21a7ca973ed31499106ea926bd63ebccc6f" dependencies = [ "byteorder", "crc", - "zerocopy 0.6.6", + "zerocopy 0.6.4", ] [[package]] name = "tlvc-text" version = "0.3.0" -source = "git+https://github.com/oxidecomputer/tlvc#e644a21a7ca973ed31499106ea926bd63ebccc6f" +source = "git+https://github.com/oxidecomputer/tlvc.git#e644a21a7ca973ed31499106ea926bd63ebccc6f" dependencies = [ "ron", "serde", - "tlvc 0.3.1 (git+https://github.com/oxidecomputer/tlvc)", - "zerocopy 0.6.6", + "tlvc 0.3.1 (git+https://github.com/oxidecomputer/tlvc.git)", + "zerocopy 0.6.4", ] [[package]] @@ -9106,7 +9104,7 @@ version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c28327cf380ac148141087fbfb9de9d7bd4e84ab5d2c28fbc911d753de8a7081" dependencies = [ - "rustls 0.21.10", + "rustls 0.21.9", "tokio", ] @@ -9228,14 +9226,14 @@ dependencies = [ [[package]] name = "toolchain_find" -version = "0.4.0" +version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebc8c9a7f0a2966e1acdaf0461023d0b01471eeead645370cf4c3f5cff153f2a" +checksum = "5e85654a10e7a07a47c6f19d93818f3f343e22927f2fa280c84f7c8042743413" dependencies = [ "home", - "once_cell", + "lazy_static", "regex", - "semver 1.0.21", + "semver 0.11.0", "walkdir", ] @@ -9376,7 +9374,7 @@ dependencies = [ "ipnet", "lazy_static", "rand 0.8.5", - "smallvec 1.13.1", + "smallvec 1.11.2", "thiserror", "tinyvec", "tokio", @@ -9397,7 +9395,7 @@ dependencies = [ "lru-cache", "parking_lot 0.12.1", "resolv-conf", - "smallvec 1.13.1", + "smallvec 1.11.2", "thiserror", "tokio", "tracing", @@ -9428,9 +9426,9 @@ dependencies = [ [[package]] name = "try-lock" -version = "0.2.5" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e421abadd41a4225275504ea4d6566923418b7f05506fbc9c0fe86ba7396114b" +checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed" [[package]] name = "trybuild" @@ -9490,7 +9488,7 @@ dependencies = [ "futures", "hex", "hubtools", - "itertools 0.12.1", + "itertools 0.12.0", "omicron-common", "omicron-test-utils", "omicron-workspace-hack", @@ -9547,9 +9545,9 @@ checksum = "4a90726108dab678edab76459751e1cc7c597c3484a6384d6423191255fa641b" [[package]] name = "typenum" -version = "1.17.0" +version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "42ff0bf0c66b8238c6f3b578df37d0b7848e55df8577b3f74f92a69acceeb825" +checksum = "497961ef93d974e23eb6f433eb5fe1b7930b659f06d12dec6fc44a8f554c0bba" [[package]] name = "typify" @@ -10023,9 +10021,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.90" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b1223296a201415c7fad14792dbefaace9bd52b62d33453ade1c5b5f07555406" +checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" dependencies = [ "cfg-if", "wasm-bindgen-macro", @@ -10033,9 +10031,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.90" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fcdc935b63408d58a32f8cc9738a0bffd8f05cc7c002086c6ef20b7312ad9dcd" +checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" dependencies = [ "bumpalo", "log", @@ -10048,9 +10046,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-futures" -version = "0.4.40" +version = "0.4.37" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bde2032aeb86bdfaecc8b261eef3cba735cc426c1f3a3416d1e0791be95fc461" +checksum = "c02dbc21516f9f1f04f187958890d7e6026df8d16540b7ad9492bc34a67cea03" dependencies = [ "cfg-if", "js-sys", @@ -10060,9 +10058,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro" -version = "0.2.90" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e4c238561b2d428924c49815533a8b9121c664599558a5d9ec51f8a1740a999" +checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -10070,9 +10068,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.90" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bae1abb6806dc1ad9e560ed242107c0f6c84335f1749dd4e8ddb012ebd5e25a7" +checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", @@ -10083,9 +10081,9 @@ dependencies = [ [[package]] name = "wasm-bindgen-shared" -version = "0.2.90" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4d91413b1c31d7539ba5ef2451af3f0b833a005eb27a631cec32bc0635a8602b" +checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" [[package]] name = "wasm-streams" @@ -10102,9 +10100,9 @@ dependencies = [ [[package]] name = "web-sys" -version = "0.3.67" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "58cd2333b6e0be7a39605f0e255892fd7418a682d8da8fe042fe25128794d2ed" +checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" dependencies = [ "js-sys", "wasm-bindgen", @@ -10112,20 +10110,19 @@ dependencies = [ [[package]] name = "webpki-roots" -version = "0.25.3" +version = "0.25.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1778a42e8b3b90bff8d0f5032bf22250792889a5cdc752aa0020c84abe3aaf10" +checksum = "14247bb57be4f377dfb94c72830b8ce8fc6beac03cf4bf7b9732eadd414123fc" [[package]] name = "which" -version = "4.4.2" +version = "4.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87ba24419a2078cd2b0f2ede2691b6c66d8e47836da3b6db8265ebad47afbfc7" +checksum = "2441c784c52b289a054b7201fc93253e288f094e2f4be9058343127c4226a269" dependencies = [ "either", - "home", + "libc", "once_cell", - "rustix", ] [[package]] @@ -10153,7 +10150,7 @@ dependencies = [ "humantime", "indexmap 2.2.1", "indicatif", - "itertools 0.12.1", + "itertools 0.12.0", "omicron-common", "omicron-passwords", "omicron-workspace-hack", @@ -10259,7 +10256,7 @@ dependencies = [ "installinator-common", "internal-dns", "ipnetwork", - "itertools 0.12.1", + "itertools 0.12.0", "maplit", "omicron-certificates", "omicron-common", @@ -10341,9 +10338,9 @@ checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6" [[package]] name = "winapi-util" -version = "0.1.6" +version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f29e6f9198ba0d26b4c9f07dbe6f9ed633e1f3d5b8b414090084349e46a52596" +checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" dependencies = [ "winapi", ] @@ -10355,12 +10352,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" [[package]] -name = "windows-core" -version = "0.52.0" +name = "windows" +version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "33ab640c8d7e35bf8ba19b884ba838ceb4fba93a4e8c65a9059d08afcfc683d9" +checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" dependencies = [ - "windows-targets 0.52.0", + "windows-targets 0.48.5", ] [[package]] @@ -10497,9 +10494,9 @@ checksum = "dff9641d1cd4be8d1a070daf9e3773c5f67e78b4d9d42263020c057706765c04" [[package]] name = "winnow" -version = "0.5.35" +version = "0.5.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1931d78a9c73861da0134f453bb1f790ce49b2e30eba8410b4b79bac72b46a2d" +checksum = "7c2e3184b9c4e92ad5167ca73039d0c42476302ab603e2fec4487511f38ccefc" dependencies = [ "memchr", ] @@ -10525,25 +10522,22 @@ dependencies = [ [[package]] name = "x509-cert" -version = "0.2.5" +version = "0.2.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1301e935010a701ae5f8655edc0ad17c44bad3ac5ce8c39185f75453b720ae94" +checksum = "25eefca1d99701da3a57feb07e5079fc62abba059fc139e98c13bbb250f3ef29" dependencies = [ "const-oid", "der", "spki", - "tls_codec", ] [[package]] name = "xattr" -version = "1.3.1" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8da84f1a25939b27f6820d92aed108f83ff920fdf11a7b19366c27c4cda81d4f" +checksum = "f4686009f71ff3e5c4dbcf1a282d0a44db3f021ba69350cd42086b3e5f1c6985" dependencies = [ "libc", - "linux-raw-sys", - "rustix", ] [[package]] @@ -10576,9 +10570,9 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.3.2" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da091bab2bd35db397c46f5b81748b56f28f8fda837087fab9b6b07b6d66e3f1" +checksum = "6580539ad917b7c026220c4b3f2c08d52ce54d6ce0dc491e66002e35388fab46" dependencies = [ "byteorder", "zerocopy-derive 0.2.0", @@ -10586,12 +10580,12 @@ dependencies = [ [[package]] name = "zerocopy" -version = "0.6.6" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "854e949ac82d619ee9a14c66a1b674ac730422372ccb759ce0c39cabcf2bf8e6" +checksum = "20707b61725734c595e840fb3704378a0cd2b9c74cc9e6e20724838fc6a1e2f9" dependencies = [ "byteorder", - "zerocopy-derive 0.6.6", + "zerocopy-derive 0.6.4", ] [[package]] @@ -10617,9 +10611,9 @@ dependencies = [ [[package]] name = "zerocopy-derive" -version = "0.6.6" +version = "0.6.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "125139de3f6b9d625c39e2efdd73d41bdac468ccd556556440e322be0e1bbd91" +checksum = "56097d5b91d711293a42be9289403896b68654625021732067eac7a4ca388a1f" dependencies = [ "proc-macro2", "quote", diff --git a/dev-tools/thing-flinger/src/bin/thing-flinger.rs b/dev-tools/thing-flinger/src/bin/thing-flinger.rs index 02ca4babbc..43b137790d 100644 --- a/dev-tools/thing-flinger/src/bin/thing-flinger.rs +++ b/dev-tools/thing-flinger/src/bin/thing-flinger.rs @@ -936,7 +936,7 @@ fn main() -> Result<()> { SubCommand::Builder(BuildCommand::Target { .. }) => { todo!("Setting target not supported through thing-flinger") } - SubCommand::Builder(BuildCommand::Package) => { + SubCommand::Builder(BuildCommand::Package { .. }) => { do_package(&config, args.artifact_dir)?; } SubCommand::Builder(BuildCommand::Stamp { .. }) => { diff --git a/workspace-hack/Cargo.toml b/workspace-hack/Cargo.toml index 1b5e2af08c..61446b7342 100644 --- a/workspace-hack/Cargo.toml +++ b/workspace-hack/Cargo.toml @@ -21,7 +21,7 @@ base16ct = { version = "0.2.0", default-features = false, features = ["alloc"] } bit-set = { version = "0.5.3" } bit-vec = { version = "0.6.3" } bitflags-dff4ba8e3ae991db = { package = "bitflags", version = "1.3.2" } -bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["serde", "std"] } +bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["serde"] } bstr-6f8ce4dd05d13bba = { package = "bstr", version = "0.2.17" } bstr-dff4ba8e3ae991db = { package = "bstr", version = "1.9.0" } byteorder = { version = "1.5.0" } @@ -84,7 +84,7 @@ proc-macro2 = { version = "1.0.78" } rand = { version = "0.8.5" } rand_chacha = { version = "0.3.1", default-features = false, features = ["std"] } regex = { version = "1.10.3" } -regex-automata = { version = "0.4.5", default-features = false, features = ["dfa-onepass", "dfa-search", "hybrid", "meta", "nfa", "perf", "unicode"] } +regex-automata = { version = "0.4.5", default-features = false, features = ["dfa-onepass", "dfa-search", "hybrid", "meta", "nfa-backtrack", "perf-inline", "perf-literal", "unicode"] } regex-syntax = { version = "0.8.2" } reqwest = { version = "0.11.23", features = ["blocking", "json", "rustls-tls", "stream"] } ring = { version = "0.17.7", features = ["std"] } @@ -111,7 +111,7 @@ tracing = { version = "0.1.40", features = ["log"] } trust-dns-proto = { version = "0.22.0" } unicode-bidi = { version = "0.3.15" } unicode-normalization = { version = "0.1.22" } -usdt = { version = "0.5.0" } +usdt = { version = "0.3.5" } usdt-impl = { version = "0.5.0", default-features = false, features = ["asm", "des"] } uuid = { version = "1.7.0", features = ["serde", "v4"] } yasna = { version = "0.5.2", features = ["bit-vec", "num-bigint", "std", "time"] } @@ -127,7 +127,7 @@ base16ct = { version = "0.2.0", default-features = false, features = ["alloc"] } bit-set = { version = "0.5.3" } bit-vec = { version = "0.6.3" } bitflags-dff4ba8e3ae991db = { package = "bitflags", version = "1.3.2" } -bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["serde", "std"] } +bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["serde"] } bstr-6f8ce4dd05d13bba = { package = "bstr", version = "0.2.17" } bstr-dff4ba8e3ae991db = { package = "bstr", version = "1.9.0" } byteorder = { version = "1.5.0" } @@ -190,7 +190,7 @@ proc-macro2 = { version = "1.0.78" } rand = { version = "0.8.5" } rand_chacha = { version = "0.3.1", default-features = false, features = ["std"] } regex = { version = "1.10.3" } -regex-automata = { version = "0.4.5", default-features = false, features = ["dfa-onepass", "dfa-search", "hybrid", "meta", "nfa", "perf", "unicode"] } +regex-automata = { version = "0.4.5", default-features = false, features = ["dfa-onepass", "dfa-search", "hybrid", "meta", "nfa-backtrack", "perf-inline", "perf-literal", "unicode"] } regex-syntax = { version = "0.8.2" } reqwest = { version = "0.11.23", features = ["blocking", "json", "rustls-tls", "stream"] } ring = { version = "0.17.7", features = ["std"] } @@ -218,7 +218,7 @@ tracing = { version = "0.1.40", features = ["log"] } trust-dns-proto = { version = "0.22.0" } unicode-bidi = { version = "0.3.15" } unicode-normalization = { version = "0.1.22" } -usdt = { version = "0.5.0" } +usdt = { version = "0.3.5" } usdt-impl = { version = "0.5.0", default-features = false, features = ["asm", "des"] } uuid = { version = "1.7.0", features = ["serde", "v4"] } yasna = { version = "0.5.2", features = ["bit-vec", "num-bigint", "std", "time"] } @@ -227,41 +227,45 @@ zeroize = { version = "1.7.0", features = ["std", "zeroize_derive"] } zip = { version = "0.6.6", default-features = false, features = ["bzip2", "deflate"] } [target.x86_64-unknown-linux-gnu.dependencies] +bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["std"] } dof = { version = "0.3.0", default-features = false, features = ["des"] } -linux-raw-sys = { version = "0.4.13", default-features = false, features = ["elf", "errno", "general", "ioctl", "no_std", "std"] } mio = { version = "0.8.10", features = ["net", "os-ext"] } once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } [target.x86_64-unknown-linux-gnu.build-dependencies] +bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["std"] } dof = { version = "0.3.0", default-features = false, features = ["des"] } -linux-raw-sys = { version = "0.4.13", default-features = false, features = ["elf", "errno", "general", "ioctl", "no_std", "std"] } mio = { version = "0.8.10", features = ["net", "os-ext"] } once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } -unicode-xid = { version = "0.2.4" } [target.x86_64-apple-darwin.dependencies] +bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["std"] } mio = { version = "0.8.10", features = ["net", "os-ext"] } once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } [target.x86_64-apple-darwin.build-dependencies] +bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["std"] } mio = { version = "0.8.10", features = ["net", "os-ext"] } once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } [target.aarch64-apple-darwin.dependencies] +bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["std"] } mio = { version = "0.8.10", features = ["net", "os-ext"] } once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } [target.aarch64-apple-darwin.build-dependencies] +bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["std"] } mio = { version = "0.8.10", features = ["net", "os-ext"] } once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } [target.x86_64-unknown-illumos.dependencies] +bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["std"] } dof = { version = "0.3.0", default-features = false, features = ["des"] } mio = { version = "0.8.10", features = ["net", "os-ext"] } once_cell = { version = "1.19.0" } @@ -270,12 +274,12 @@ toml_datetime = { version = "0.6.5", default-features = false, features = ["serd toml_edit-cdcf2f9584511fe6 = { package = "toml_edit", version = "0.19.15", features = ["serde"] } [target.x86_64-unknown-illumos.build-dependencies] +bitflags-f595c2ba2a3f28df = { package = "bitflags", version = "2.4.2", default-features = false, features = ["std"] } dof = { version = "0.3.0", default-features = false, features = ["des"] } mio = { version = "0.8.10", features = ["net", "os-ext"] } once_cell = { version = "1.19.0" } rustix = { version = "0.38.30", features = ["fs", "termios"] } toml_datetime = { version = "0.6.5", default-features = false, features = ["serde"] } toml_edit-cdcf2f9584511fe6 = { package = "toml_edit", version = "0.19.15", features = ["serde"] } -unicode-xid = { version = "0.2.4" } ### END HAKARI SECTION From 5b80a4509173f9cc3163c38d5b2c7a1e106bce27 Mon Sep 17 00:00:00 2001 From: Sean Klein Date: Thu, 1 Feb 2024 16:14:11 -0800 Subject: [PATCH 6/7] hakari --- Cargo.lock | 1 - workspace-hack/Cargo.toml | 2 -- 2 files changed, 3 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 8af4536506..a1c3585233 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -5289,7 +5289,6 @@ dependencies = [ "bstr 1.6.0", "byteorder", "bytes", - "camino", "chrono", "cipher", "clap 4.4.3", diff --git a/workspace-hack/Cargo.toml b/workspace-hack/Cargo.toml index be82bc5fda..c591669cc1 100644 --- a/workspace-hack/Cargo.toml +++ b/workspace-hack/Cargo.toml @@ -26,7 +26,6 @@ bstr-6f8ce4dd05d13bba = { package = "bstr", version = "0.2.17" } bstr-dff4ba8e3ae991db = { package = "bstr", version = "1.6.0" } byteorder = { version = "1.5.0" } bytes = { version = "1.5.0", features = ["serde"] } -camino = { version = "1.1.6", default-features = false, features = ["serde1"] } chrono = { version = "0.4.31", features = ["alloc", "serde"] } cipher = { version = "0.4.4", default-features = false, features = ["block-padding", "zeroize"] } clap = { version = "4.4.3", features = ["cargo", "derive", "env", "wrap_help"] } @@ -134,7 +133,6 @@ bstr-6f8ce4dd05d13bba = { package = "bstr", version = "0.2.17" } bstr-dff4ba8e3ae991db = { package = "bstr", version = "1.6.0" } byteorder = { version = "1.5.0" } bytes = { version = "1.5.0", features = ["serde"] } -camino = { version = "1.1.6", default-features = false, features = ["serde1"] } chrono = { version = "0.4.31", features = ["alloc", "serde"] } cipher = { version = "0.4.4", default-features = false, features = ["block-padding", "zeroize"] } clap = { version = "4.4.3", features = ["cargo", "derive", "env", "wrap_help"] } From 52199bbd0e3d33423773cb9458a703f9fe3b51aa Mon Sep 17 00:00:00 2001 From: Sean Klein Date: Thu, 1 Feb 2024 16:27:14 -0800 Subject: [PATCH 7/7] clippy --- package/src/bin/omicron-package.rs | 1 - 1 file changed, 1 deletion(-) diff --git a/package/src/bin/omicron-package.rs b/package/src/bin/omicron-package.rs index 8a46f5cd07..3b8bd24918 100644 --- a/package/src/bin/omicron-package.rs +++ b/package/src/bin/omicron-package.rs @@ -448,7 +448,6 @@ async fn ensure_package( target, progress: &progress, cache_disabled: disable_cache, - ..Default::default() }; package .create(package_name, &output_directory, &build_config)