diff --git a/bindgen/3rdparty/crates/BUILD.proc-macro2-1.0.60.bazel b/bindgen/3rdparty/crates/BUILD.proc-macro2-1.0.60.bazel index 96ffffa39e..d3b4d10db2 100644 --- a/bindgen/3rdparty/crates/BUILD.proc-macro2-1.0.60.bazel +++ b/bindgen/3rdparty/crates/BUILD.proc-macro2-1.0.60.bazel @@ -29,9 +29,52 @@ rust_library( ], ), crate_features = [ - "default", "proc-macro", - ], + ] + select({ + "@rules_rust//rust/platform:aarch64-apple-darwin": [ + "default", # aarch64-apple-darwin + ], + "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ + "default", # aarch64-pc-windows-msvc + ], + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ + "default", # aarch64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ + "default", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + ], + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ + "default", # arm-unknown-linux-gnueabi + ], + "@rules_rust//rust/platform:i686-pc-windows-msvc": [ + "default", # i686-pc-windows-msvc + ], + "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ + "default", # i686-unknown-linux-gnu + ], + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ + "default", # powerpc-unknown-linux-gnu + ], + "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ + "default", # s390x-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-apple-darwin": [ + "default", # x86_64-apple-darwin + ], + "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ + "default", # x86_64-pc-windows-msvc + ], + "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ + "default", # x86_64-unknown-freebsd + ], + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ + "default", # x86_64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ + "default", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + ], + "//conditions:default": [], + }), crate_root = "src/lib.rs", edition = "2018", rustc_flags = [ diff --git a/bindgen/3rdparty/crates/BUILD.quote-1.0.28.bazel b/bindgen/3rdparty/crates/BUILD.quote-1.0.28.bazel index c06ccc2179..1897a58b2f 100644 --- a/bindgen/3rdparty/crates/BUILD.quote-1.0.28.bazel +++ b/bindgen/3rdparty/crates/BUILD.quote-1.0.28.bazel @@ -29,9 +29,52 @@ rust_library( ], ), crate_features = [ - "default", "proc-macro", - ], + ] + select({ + "@rules_rust//rust/platform:aarch64-apple-darwin": [ + "default", # aarch64-apple-darwin + ], + "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ + "default", # aarch64-pc-windows-msvc + ], + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ + "default", # aarch64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ + "default", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + ], + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ + "default", # arm-unknown-linux-gnueabi + ], + "@rules_rust//rust/platform:i686-pc-windows-msvc": [ + "default", # i686-pc-windows-msvc + ], + "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ + "default", # i686-unknown-linux-gnu + ], + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ + "default", # powerpc-unknown-linux-gnu + ], + "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ + "default", # s390x-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-apple-darwin": [ + "default", # x86_64-apple-darwin + ], + "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ + "default", # x86_64-pc-windows-msvc + ], + "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ + "default", # x86_64-unknown-freebsd + ], + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ + "default", # x86_64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ + "default", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + ], + "//conditions:default": [], + }), crate_root = "src/lib.rs", edition = "2018", rustc_flags = [ diff --git a/crate_universe/3rdparty/crates/BUILD.phf_shared-0.11.2.bazel b/crate_universe/3rdparty/crates/BUILD.phf_shared-0.11.2.bazel index 9ffb85f168..78dfcda936 100644 --- a/crate_universe/3rdparty/crates/BUILD.phf_shared-0.11.2.bazel +++ b/crate_universe/3rdparty/crates/BUILD.phf_shared-0.11.2.bazel @@ -28,10 +28,65 @@ rust_library( "WORKSPACE.bazel", ], ), - crate_features = [ - "default", - "std", - ], + crate_features = select({ + "@rules_rust//rust/platform:aarch64-apple-darwin": [ + "default", # aarch64-apple-darwin + "std", # aarch64-apple-darwin + ], + "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ + "default", # aarch64-pc-windows-msvc + "std", # aarch64-pc-windows-msvc + ], + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ + "default", # aarch64-unknown-linux-gnu + "std", # aarch64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ + "default", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + "std", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + ], + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ + "default", # arm-unknown-linux-gnueabi + "std", # arm-unknown-linux-gnueabi + ], + "@rules_rust//rust/platform:i686-pc-windows-msvc": [ + "default", # i686-pc-windows-msvc + "std", # i686-pc-windows-msvc + ], + "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ + "default", # i686-unknown-linux-gnu + "std", # i686-unknown-linux-gnu + ], + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ + "default", # powerpc-unknown-linux-gnu + "std", # powerpc-unknown-linux-gnu + ], + "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ + "default", # s390x-unknown-linux-gnu + "std", # s390x-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-apple-darwin": [ + "default", # x86_64-apple-darwin + "std", # x86_64-apple-darwin + ], + "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ + "default", # x86_64-pc-windows-msvc + "std", # x86_64-pc-windows-msvc + ], + "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ + "default", # x86_64-unknown-freebsd + "std", # x86_64-unknown-freebsd + ], + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ + "default", # x86_64-unknown-linux-gnu + "std", # x86_64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ + "default", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + "std", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + ], + "//conditions:default": [], + }), crate_root = "src/lib.rs", edition = "2021", rustc_flags = [ diff --git a/crate_universe/3rdparty/crates/BUILD.rand-0.8.5.bazel b/crate_universe/3rdparty/crates/BUILD.rand-0.8.5.bazel index aeb49da71d..8c9aa8fbc3 100644 --- a/crate_universe/3rdparty/crates/BUILD.rand-0.8.5.bazel +++ b/crate_universe/3rdparty/crates/BUILD.rand-0.8.5.bazel @@ -34,10 +34,53 @@ rust_library( "getrandom", "libc", "rand_chacha", - "small_rng", "std", "std_rng", - ], + ] + select({ + "@rules_rust//rust/platform:aarch64-apple-darwin": [ + "small_rng", # aarch64-apple-darwin + ], + "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ + "small_rng", # aarch64-pc-windows-msvc + ], + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ + "small_rng", # aarch64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ + "small_rng", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + ], + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ + "small_rng", # arm-unknown-linux-gnueabi + ], + "@rules_rust//rust/platform:i686-pc-windows-msvc": [ + "small_rng", # i686-pc-windows-msvc + ], + "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ + "small_rng", # i686-unknown-linux-gnu + ], + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ + "small_rng", # powerpc-unknown-linux-gnu + ], + "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ + "small_rng", # s390x-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-apple-darwin": [ + "small_rng", # x86_64-apple-darwin + ], + "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ + "small_rng", # x86_64-pc-windows-msvc + ], + "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ + "small_rng", # x86_64-unknown-freebsd + ], + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ + "small_rng", # x86_64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ + "small_rng", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + ], + "//conditions:default": [], + }), crate_root = "src/lib.rs", edition = "2018", rustc_flags = [ diff --git a/crate_universe/BUILD.bazel b/crate_universe/BUILD.bazel index f32cbcc6dd..782b0005be 100644 --- a/crate_universe/BUILD.bazel +++ b/crate_universe/BUILD.bazel @@ -36,13 +36,23 @@ bzl_library( ) filegroup( - name = "rust_srcs", + name = "rust_data", srcs = glob([ "src/**/*.bzl", "src/**/*.j2", - "src/**/*.rs", + "src/**/*.sh", + "src/**/*.bat", ]), - visibility = ["//:__subpackages__"], +) + +filegroup( + name = "rust_srcs", + srcs = glob([ + "src/**/*.rs", + ]) + [ + ":rust_data", + ], + visibility = ["//crate_universe:__subpackages__"], ) rust_library( @@ -52,10 +62,7 @@ rust_library( exclude = ["src/main.rs"], ), aliases = aliases(), - compile_data = glob( - include = ["src/**"], - exclude = ["src/**/*.rs"], - ), + compile_data = [":rust_data"], edition = "2021", proc_macro_deps = all_crate_deps(proc_macro = True), # This target embeds additional, stamping related information (see @@ -119,16 +126,12 @@ rust_test( ], edition = "2021", env = { - "CARGO": "$(rootpath @rules_rust//rust/toolchain:current_cargo_files)", - "RUSTC": "$(rootpath @rules_rust//rust/toolchain:current_rustc_files)", + "CARGO": "$(rlocationpath @rules_rust//rust/toolchain:current_cargo_files)", + "RUSTC": "$(rlocationpath @rules_rust//rust/toolchain:current_rustc_files)", }, proc_macro_deps = all_crate_deps( proc_macro_dev = True, ), - rustc_env = { - "CARGO": "$(rootpath @rules_rust//rust/toolchain:current_cargo_files)", - "RUSTC": "$(rootpath @rules_rust//rust/toolchain:current_rustc_files)", - }, tags = ["requires-network"], deps = [ ":cargo_bazel", diff --git a/crate_universe/private/bootstrap_utils.bzl b/crate_universe/private/bootstrap_utils.bzl index 34642d3933..f9642198a5 100644 --- a/crate_universe/private/bootstrap_utils.bzl +++ b/crate_universe/private/bootstrap_utils.bzl @@ -19,7 +19,7 @@ def _format_src_label(label): return "Label(\"{}\"),".format(str(label).lstrip("@")) def _srcs_module_impl(ctx): - srcs = [_format_src_label(src.owner) for src in ctx.files.srcs] + srcs = [_format_src_label(src.owner) for src in sorted(ctx.files.srcs)] if not srcs: fail("`srcs` cannot be empty") output = ctx.actions.declare_file(ctx.label.name) diff --git a/crate_universe/private/srcs.bzl b/crate_universe/private/srcs.bzl index 38401e69bc..a96e424466 100644 --- a/crate_universe/private/srcs.bzl +++ b/crate_universe/private/srcs.bzl @@ -23,6 +23,8 @@ CARGO_BAZEL_SRCS = [ Label("//crate_universe:src/metadata.rs"), Label("//crate_universe:src/metadata/cargo_bin.rs"), Label("//crate_universe:src/metadata/cargo_tree_resolver.rs"), + Label("//crate_universe:src/metadata/cargo_tree_rustc_wrapper.bat"), + Label("//crate_universe:src/metadata/cargo_tree_rustc_wrapper.sh"), Label("//crate_universe:src/metadata/dependency.rs"), Label("//crate_universe:src/metadata/metadata_annotation.rs"), Label("//crate_universe:src/rendering.rs"), diff --git a/crate_universe/src/metadata/cargo_tree_resolver.rs b/crate_universe/src/metadata/cargo_tree_resolver.rs index 04257a5b0a..20cacc5390 100644 --- a/crate_universe/src/metadata/cargo_tree_resolver.rs +++ b/crate_universe/src/metadata/cargo_tree_resolver.rs @@ -3,6 +3,7 @@ use std::collections::{BTreeMap, BTreeSet, HashMap}; use std::io::BufRead; use std::path::{Path, PathBuf}; +use std::process::Child; use anyhow::{anyhow, bail, Context, Result}; use semver::Version; @@ -16,6 +17,41 @@ use crate::select::{Select, SelectableScalar}; use crate::utils::symlink::symlink; use crate::utils::target_triple::TargetTriple; +/// A list platform triples that support host tools +/// +/// [Tier 1](https://doc.rust-lang.org/nightly/rustc/platform-support.html#tier-1-with-host-tools) +/// [Tier 2](https://doc.rust-lang.org/nightly/rustc/platform-support.html#tier-2-with-host-tools) +const RUSTC_TRIPLES_WITH_HOST_TOOLS: [&str; 26] = [ + // Tier 1 + "aarch64-apple-darwin", + "aarch64-unknown-linux-gnu", + "i686-pc-windows-gnu", + "i686-pc-windows-msvc", + "i686-unknown-linux-gnu", + "x86_64-apple-darwin", + "x86_64-pc-windows-gnu", + "x86_64-pc-windows-msvc", + "x86_64-unknown-linux-gnu", + // Tier 2 + "aarch64-pc-windows-msvc", + "aarch64-unknown-linux-musl", + "arm-unknown-linux-gnueabi", + "arm-unknown-linux-gnueabihf", + "armv7-unknown-linux-gnueabihf", + "loongarch64-unknown-linux-gnu", + "loongarch64-unknown-linux-musl", + "powerpc-unknown-linux-gnu", + "powerpc64-unknown-linux-gnu", + "powerpc64le-unknown-linux-gnu", + "riscv64gc-unknown-linux-gnu", + "riscv64gc-unknown-linux-musl", + "s390x-unknown-linux-gnu", + "x86_64-unknown-freebsd", + "x86_64-unknown-illumo", + "x86_64-unknown-linux-musl", + "x86_64-unknown-netbsd", +]; + /// Feature resolver info about a given crate. #[derive(Debug, Default, Clone, Eq, PartialEq, Serialize, Deserialize)] pub(crate) struct CargoTreeEntry { @@ -39,6 +75,11 @@ impl CargoTreeEntry { pub fn is_empty(&self) -> bool { self.features.is_empty() && self.deps.is_empty() } + + pub fn consume(&mut self, other: Self) { + self.features.extend(other.features); + self.deps.extend(other.deps); + } } impl SelectableScalar for CargoTreeEntry {} @@ -66,71 +107,198 @@ impl TreeResolver { fn execute_cargo_tree( &self, manifest_path: &Path, + host_triples: &BTreeSet, target_triples: &BTreeSet, - ) -> Result>> { - debug!("Spawning processes for {:?}", target_triples); - let mut target_triple_to_child = BTreeMap::new(); - - for target_triple in target_triples { - // We use `cargo tree` here because `cargo metadata` doesn't report - // back target-specific features (enabled with `resolver = "2"`). - // This is unfortunately a bit of a hack. See: - // - https://github.com/rust-lang/cargo/issues/9863 - // - https://github.com/bazelbuild/rules_rust/issues/1662 - let output = self - .cargo_bin - .command()? - .current_dir(manifest_path.parent().expect("All manifests should have a valid parent.")) - .arg("tree") - .arg("--manifest-path") - .arg(manifest_path) - .arg("--edges") - .arg("normal,build,dev") - .arg("--prefix=indent") - // https://doc.rust-lang.org/cargo/commands/cargo-tree.html#tree-formatting-options - .arg("--format=;{p};{f};") - .arg("--color=never") - .arg("--charset=ascii") - .arg("--workspace") - .arg("--target") - .arg(target_triple.to_cargo()) - .stdout(std::process::Stdio::piped()) - .stderr(std::process::Stdio::piped()) - .spawn() - .with_context(|| { - format!( - "Error spawning cargo in child process to compute features for target '{}', manifest path '{}'", - target_triple, - manifest_path.display() - ) - })?; - target_triple_to_child.insert(target_triple.clone(), output); + rustc_wrapper: &Path, + ) -> Result>>> { + // A collection of all stdout logs from each process + let mut stdouts: BTreeMap>> = BTreeMap::new(); + + // We only want to spawn processes for unique cargo platforms + let mut cargo_host_triples = BTreeMap::>::new(); + for triple in host_triples { + cargo_host_triples + .entry(triple.to_cargo()) + .or_default() + .insert(triple); + } + let mut cargo_target_triples = BTreeMap::>::new(); + for triple in target_triples { + cargo_target_triples + .entry(triple.to_cargo()) + .or_default() + .insert(triple); } - // A collection of all stdout logs from each process - let mut stdouts: BTreeMap> = BTreeMap::new(); + for host_triple in cargo_host_triples.keys() { + // Note that for each host triple `cargo tree` child processes are spawned and then + // immediately waited upon so that we don't end up with `{HOST_TRIPLES} * {TARGET_TRIPLES}` + // number of processes (which can be +400 and hit operating system limitations). + let mut target_triple_to_child = BTreeMap::::new(); - for (target_triple, child) in target_triple_to_child.into_iter() { - let output = child - .wait_with_output() - .with_context(|| { + for target_triple in cargo_target_triples.keys() { + // We use `cargo tree` here because `cargo metadata` doesn't report + // back target-specific features (enabled with `resolver = "2"`). + // This is unfortunately a bit of a hack. See: + // - https://github.com/rust-lang/cargo/issues/9863 + // - https://github.com/bazelbuild/rules_rust/issues/1662 + let child = self + .cargo_bin + .command()? + // These next two environment variables are used to hack cargo into using a custom + // host triple instead of the host triple detected by rustc. + .env("RUSTC_WRAPPER", rustc_wrapper) + .env("HOST_TRIPLE", host_triple) + .current_dir(manifest_path.parent().expect("All manifests should have a valid parent.")) + .arg("tree") + .arg("--manifest-path") + .arg(manifest_path) + .arg("--edges") + .arg("normal,build,dev") + .arg("--prefix=indent") + // https://doc.rust-lang.org/cargo/commands/cargo-tree.html#tree-formatting-options + .arg("--format=;{p};{f};") + .arg("--color=never") + .arg("--charset=ascii") + .arg("--workspace") + .arg("--target") + .arg(target_triple) + .stdout(std::process::Stdio::piped()) + .stderr(std::process::Stdio::piped()) + .spawn() + .with_context(|| { + format!( + "Error spawning cargo in child process to compute features for target '{}', manifest path '{}'", + target_triple, + manifest_path.display() + ) + })?; + target_triple_to_child.insert(target_triple.clone(), child); + } + + debug!( + "Spawned `cargo tree` processes for host `{}`: {}", + host_triple, + target_triple_to_child.len(), + ); + + for (target_triple, child) in target_triple_to_child.into_iter() { + let output = child.wait_with_output().with_context(|| { format!( - "Error running cargo in child process to compute features for target '{}', manifest path '{}'", + "Error running `cargo tree --target={}` (host = '{}'), manifest path '{}'", target_triple, + host_triple, manifest_path.display() ) })?; - if !output.status.success() { - eprintln!("{}", String::from_utf8_lossy(&output.stdout)); - eprintln!("{}", String::from_utf8_lossy(&output.stderr)); - bail!(format!("Failed to run cargo tree: {}", output.status)) + if !output.status.success() { + eprintln!("{}", String::from_utf8_lossy(&output.stdout)); + eprintln!("{}", String::from_utf8_lossy(&output.stderr)); + bail!(format!("Failed to run cargo tree: {}", output.status)) + } + + // Replicate outputs for any de-duplicated platforms + for host_plat in cargo_host_triples[host_triple].iter() { + for target_plat in cargo_target_triples[&target_triple].iter() { + stdouts + .entry((*host_plat).clone()) + .or_default() + .insert((*target_plat).clone(), output.stdout.clone()); + } + } } - stdouts.insert(target_triple, output.stdout); } Ok(stdouts) } + // The use of this wrapper should __never__ escape this class. + #[cfg(target_family = "windows")] + fn create_rustc_wrapper_impl(output_dir: &Path) -> Result { + let wrapper = output_dir.join("cargo_tree_rustc_wrapper.bat"); + std::fs::write( + &wrapper, + include_str!(concat!( + env!("CARGO_MANIFEST_DIR",), + "/src/metadata/cargo_tree_rustc_wrapper.bat" + )), + ) + .context("Failed to write rustc wrapper")?; + + Ok(wrapper) + } + + // The use of this wrapper should __never__ escape this class. + #[cfg(target_family = "unix")] + fn create_rustc_wrapper_impl(output_dir: &Path) -> Result { + let wrapper = output_dir.join("cargo_tree_rustc_wrapper.sh"); + std::fs::write( + &wrapper, + include_str!(concat!( + env!("CARGO_MANIFEST_DIR",), + "/src/metadata/cargo_tree_rustc_wrapper.sh" + )), + ) + .context("Failed to write rustc wrapper")?; + + use std::os::unix::fs::PermissionsExt; + + let perms = std::fs::Permissions::from_mode(0o700); + std::fs::set_permissions(&wrapper, perms) + .context("Failed to modify permissions of rustc wrapper")?; + + Ok(wrapper) + } + + /// Create a wrapper for `rustc` which can intercept commands used to identify the host + /// platform and instead provide details for a specified platform triple. + /// + /// Currently Cargo does not have a subcommand that can provide enough information about + /// builds for all combinations of exec/host and target platforms. Unfortunately, `cargo tree` + /// (or any other subcommand) does not provide a way to to request metadata from the perspective + /// of another host platform. An example being, attempting to query the build graph on a Linux + /// machine for a build that would run on `aarch64-apple-darwin` and target `wasm32-unknown-unknown`. + /// When a build script or proc-macro is encountered in the build graph it is evaluated for + /// the current platform running `cargo tree`. + /// + /// The script created here takes advantage of the use of [`RUSTC_WRAPPER`](https://doc.rust-lang.org/cargo/reference/environment-variables.html#environment-variables-cargo-reads) + /// in Cargo to intercept some known commands Cargo uses to identify the host platform. Namely the + /// following two: + /// + /// [@cargo//src/cargo/util/rustc.rs#L61-L65](https://github.com/rust-lang/cargo/blob/0.81.0/src/cargo/util/rustc.rs#L61-L65) + /// ```ignore + /// rust -vV + /// ``` + /// + /// Used to identify information about the rustc binary. This output includes a `host: ${PLATFORM_TRIPLE}` + /// string which identifies the host for the rest of the `cargo tree` command. The created script will + /// intercept this command and replace the `host:` string with `host: ${HOST_TRIPLE}` where `HOST_TRIPLE` + /// is an environment variable set by this class. + /// + /// [@cargo//src/cargo/core/compiler/build_context/target_info.rs#L168-L218](https://github.com/rust-lang/cargo/blob/0.81.0/src/cargo/core/compiler/build_context/target_info.rs#L168-L218) + /// ```ignore + /// rust - --crate-name ___ --print=file-names + /// ``` + /// + /// As seen in the associated `target_info.rs` link, this command is generally a lot more complicated but + /// this prefix is what's used to identify the command to intercept. Cargo will make this call multiple times + /// to identify a myriad of information about a target platform (primarily [--print=cfg](https://doc.rust-lang.org/rustc/command-line-arguments.html#--print-print-compiler-information) + /// for the interests here) and will pass `--target ${TARGET_TRIPLE}` in the case where `cargo tree` was + /// called with the `--target` argument. When identifying host platform information, the `rustc` invocation + /// above, despite any additional flags, will not contain a `--target` flag. This command is intercepted and + /// indicates platform info is being requested. When intercepted a `--target ${HOST_TRIPLE}` argument will be + /// appended where `HOST_TRIPLE` is an environment variable set by this class. + /// + /// The design/use of this script feels blasphemous but it is the only way I could figure out how to get the + /// necessary information from Cargo without reimplementing the dependency+feature resolver logic. This is + /// valuable in allowing `cargo-bazel` to scale with different versions of Rust. + /// + /// This wrapper can probably be eliminated if the following feature request is implemented: + /// - + fn create_rustc_wrapper(output_dir: &Path) -> Result { + Self::create_rustc_wrapper_impl(output_dir) + } + /// Computes the set of enabled features for each target triplet for each crate. #[tracing::instrument(name = "TreeResolver::generate", skip_all)] pub(crate) fn generate( @@ -148,32 +316,61 @@ impl TreeResolver { let manifest_path_with_transitive_proc_macros = self .copy_project_with_explicit_deps_on_all_transitive_proc_macros( pristine_manifest_path, - &tempdir.path().join("normal"), + &tempdir.path().join("explicit_proc_macro_deps"), ) .context("Failed to copy project with proc macro deps made direct")?; - let deps_tree_streams = - self.execute_cargo_tree(&manifest_path_with_transitive_proc_macros, target_triples)?; + let rustc_wrapper = Self::create_rustc_wrapper(tempdir.path())?; + + let host_triples: BTreeSet = target_triples + .iter() + // Only query triples for platforms that have host tools. + .filter(|host_triple| { + RUSTC_TRIPLES_WITH_HOST_TOOLS.contains(&host_triple.to_cargo().as_str()) + }) + .cloned() + .collect(); + + // This is a very expensive process. Here we iterate over all target triples + // and generate tree data as though they were also the host triple + let deps_tree_streams: BTreeMap>> = self + .execute_cargo_tree( + &manifest_path_with_transitive_proc_macros, + &host_triples, + target_triples, + &rustc_wrapper, + )?; let mut metadata: BTreeMap> = BTreeMap::new(); - for (target_triple, stdout) in deps_tree_streams.into_iter() { - debug!( - "Parsing `cargo tree --target {}` output:\n```\n{}\n```", - target_triple, - String::from_utf8_lossy(&stdout), - ); - - for (crate_id, tree_data) in parse_features_from_cargo_tree_output(stdout.lines())? { + for (host_triple, target_streams) in deps_tree_streams.into_iter() { + for (target_triple, stdout) in target_streams.into_iter() { debug!( - "\tFor {} ({})\n\t\tfeatures: {:?}\n\t\tdeps: {:?}", - crate_id, target_triple, tree_data.features, tree_data.deps + "Parsing (host={}) `cargo tree --target {}` output:\n```\n{}\n```", + host_triple, + target_triple, + String::from_utf8_lossy(&stdout), ); - metadata - .entry(crate_id.clone()) - .or_default() - .insert(target_triple.clone(), tree_data); + + let (target_tree_data, host_tree_data) = parse_cargo_tree_output(stdout.lines())?; + + for (entry, tree_data) in target_tree_data { + metadata + .entry(entry.as_crate_id().clone()) + .or_default() + .entry(target_triple.clone()) + .or_default() + .consume(tree_data); + } + for (entry, tree_data) in host_tree_data { + metadata + .entry(entry.as_crate_id().clone()) + .or_default() + .entry(host_triple.clone()) + .or_default() + .consume(tree_data); + } } } @@ -447,7 +644,7 @@ fn set_url_scheme_despite_the_url_crate_not_wanting_us_to( ) -> Result { let (_old_scheme, new_url_without_scheme) = url.as_str().split_once(':').ok_or_else(|| { anyhow::anyhow!( - "Cannot set schme of URL which doesn't contain \":\": {:?}", + "Cannot set scheme of URL which doesn't contain \":\": {:?}", url ) })?; @@ -503,18 +700,77 @@ impl Ord for DependencyDetailWithOrd { impl Eq for DependencyDetailWithOrd {} +/// A wrapper for [CrateId] used by [parse_cargo_tree_output] to successfully +/// parse target and host dependencies. +#[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord)] +enum TreeDepCompileKind { + /// Collecting dependencies for the target platform. + Target(CrateId), + + /// Collecting dependencies for the host platform (e.g. `[build-dependency]` + /// and `proc-macro`). + Host(CrateId), + + /// A variant of [TreeDepCompileKind::Target] that represents an edge where + /// dependencies are to be collected for host. E.g. a crate which has + /// a `[build-dependency] or `(proc-macro)` dependency. This variant is only + /// used for internal bookkeeping to make sure other nodes farther down in + /// the graph are collected as [TreeDepCompileKind::Host]. + TargetWithHostDep(CrateId), +} + +impl TreeDepCompileKind { + pub fn new(crate_id: CrateId, is_host_dep: bool) -> Self { + if is_host_dep { + TreeDepCompileKind::Host(crate_id) + } else { + TreeDepCompileKind::Target(crate_id) + } + } + + pub fn as_crate_id(&self) -> &CrateId { + match self { + TreeDepCompileKind::Target(id) => id, + TreeDepCompileKind::TargetWithHostDep(id) => id, + TreeDepCompileKind::Host(id) => id, + } + } +} + +impl From for CrateId { + fn from(value: TreeDepCompileKind) -> Self { + match value { + TreeDepCompileKind::Target(id) => id, + TreeDepCompileKind::TargetWithHostDep(id) => id, + TreeDepCompileKind::Host(id) => id, + } + } +} + /// Parses the output of `cargo tree --format=|{p}|{f}|`. Other flags may be /// passed to `cargo tree` as well, but this format is critical. -fn parse_features_from_cargo_tree_output( +fn parse_cargo_tree_output( lines: I, -) -> Result> +) -> Result<( + BTreeMap, + BTreeMap, +)> where I: Iterator>, S: AsRef, E: std::error::Error + Sync + Send + 'static, { - let mut tree_data = BTreeMap::::new(); - let mut parents: Vec = Vec::new(); + let mut target_tree_data = BTreeMap::::new(); + let mut host_tree_data: BTreeMap = BTreeMap::new(); + let mut parents: Vec = Vec::new(); + + let is_host_child = |parents: &Vec| { + parents.iter().any(|p| match p { + TreeDepCompileKind::Target(_) => false, + TreeDepCompileKind::TargetWithHostDep(_) => true, + TreeDepCompileKind::Host(_) => true, + }) + }; for line in lines { let line = line?; @@ -526,19 +782,30 @@ where let parts = line.split(';').collect::>(); if parts.len() != 4 { // The only time a line will not cleanly contain 4 parts - // is when there's a build or dev dependencies divider. The - // depth of this indicator will match the package it's - // associated with and can be easily skipped. - if line.ends_with("[build-dependencies]") || line.ends_with("[dev-dependencies]") { + // is when there's a build dependencies divider. When found, + // start tracking build dependencies. + if line.ends_with("[build-dependencies]") { + let build_depth = + (line.chars().count() - "[build-dependencies]".chars().count()) / 4; + + if matches!(parents[build_depth], TreeDepCompileKind::Target(_)) { + parents[build_depth] = + TreeDepCompileKind::TargetWithHostDep(parents[build_depth].clone().into()); + } + + continue; + } else if line.ends_with("[dev-dependencies]") { + // Dev dependencies are not treated any differently than normal dependencies + // when we enter these blocks, continue to collect deps as usual. continue; } bail!("Unexpected line '{}'", line); } - // We expect the crate id (parts[1]) to be one of - // " v" - // " v ()" - // " v (proc-macro)" - // " v (proc-macro) ()" + // We expect the crate id (parts[1]) to be one of: + // ` v` + // ` v ()` + // ` v (proc-macro)` + // ` v (proc-macro) ()` // https://github.com/rust-lang/cargo/blob/19f952f160d4f750d1e12fad2bf45e995719673d/src/cargo/ops/tree/mod.rs#L281 let crate_id_parts = parts[1].split(' ').collect::>(); if crate_id_parts.len() < 2 && crate_id_parts.len() > 4 { @@ -555,6 +822,7 @@ where })?; let version = Version::parse(version_str).context("Failed to parse version")?; let crate_id = CrateId::new(crate_id_parts[0].to_owned(), version); + let is_proc_macro = crate_id_parts.len() > 2 && crate_id_parts[2] == "(proc-macro)"; // Update bookkeeping for dependency tracking. Note that the `cargo tree --prefix=indent` // output is expected to have 4 characters per section. We only care about depth but cannot @@ -562,7 +830,7 @@ where // need to identify when build dependencies start. let depth = parts[0].chars().count() / 4; - if (depth + 1) <= parents.len() { + let (kind, is_host_dep) = if (depth + 1) <= parents.len() { // Drain parents until we get down to the right depth let range = parents.len() - (depth + 1); for _ in 0..range { @@ -578,15 +846,40 @@ where // ├── quote v1.0.36 // │ └── proc-macro2 v1.0.81 (*) // ``` - if parents.last() != Some(&crate_id) { + if parents + .last() + .filter(|last| *last.as_crate_id() != crate_id) + .is_some() + { parents.pop(); - parents.push(crate_id.clone()); + + // Because we pop a parent we need to check at this time if the current crate is + // truly a host dependency. + let is_host_dep = is_proc_macro || is_host_child(&parents); + let kind = TreeDepCompileKind::new(crate_id, is_host_dep); + + parents.push(kind.clone()); + + (kind, is_host_dep) + } else { + let is_host_dep = is_proc_macro || is_host_child(&parents); + let kind = TreeDepCompileKind::new(crate_id, is_host_dep); + (kind, is_host_dep) } } else { + let is_host_dep = is_proc_macro || is_host_child(&parents); + let kind = if is_host_dep { + TreeDepCompileKind::Host(crate_id) + } else { + TreeDepCompileKind::Target(crate_id) + }; + // Start tracking the current crate as the new parent for any // crates that represent a new depth in the dep tree. - parents.push(crate_id.clone()); - } + parents.push(kind.clone()); + + (kind, is_host_dep) + }; let mut features = if parts[2].is_empty() { BTreeSet::new() @@ -599,27 +892,48 @@ where // Access the last item in the list of parents and insert the current // crate as a dependency to it. if let Some(parent) = parents.iter().rev().nth(1) { + // Ensure this variant is never referred to publicly + let sanitized_compile_kind = |parent: &TreeDepCompileKind| match parent { + TreeDepCompileKind::Target(_) => parent.clone(), + TreeDepCompileKind::TargetWithHostDep(p) => { + TreeDepCompileKind::Target(p.clone()) + } + TreeDepCompileKind::Host(_) => parent.clone(), + }; + // Dependency data is only tracked for direct consumers of build dependencies // since they're known to be wrong cross-platform. - tree_data - .entry(parent.clone()) - .or_default() - .deps - .insert(crate_id.clone()); + match parent { + TreeDepCompileKind::Target(_) => &mut target_tree_data, + TreeDepCompileKind::TargetWithHostDep(_) => &mut target_tree_data, + TreeDepCompileKind::Host(_) => &mut host_tree_data, + } + .entry(sanitized_compile_kind(parent)) + .or_default() + .deps + .insert(kind.as_crate_id().clone()); } } - tree_data - .entry(crate_id) - .or_default() - .features - .append(&mut features); + if is_host_dep { + &mut host_tree_data + } else { + &mut target_tree_data + } + .entry(kind) + .or_default() + .features + .append(&mut features); } - Ok(tree_data) + Ok((target_tree_data, host_tree_data)) } #[cfg(test)] mod test { + use std::process; + + use textwrap::dedent; + use super::*; #[test] @@ -652,6 +966,234 @@ mod test { ); } + #[cfg(unix)] + fn create_mock_rustc(output_dir: &Path, text: &str) -> (PathBuf, PathBuf) { + let wrapper = output_dir.join("rustc"); + + std::fs::write(&wrapper, text).unwrap(); + + use std::os::unix::fs::PermissionsExt; + + let perms = std::fs::Permissions::from_mode(0o700); + std::fs::set_permissions(&wrapper, perms).unwrap(); + + let rustc_wrapper = TreeResolver::create_rustc_wrapper(output_dir).unwrap(); + + (wrapper, rustc_wrapper) + } + + #[cfg(windows)] + fn create_mock_rustc(output_dir: &Path, text: &str) -> (PathBuf, PathBuf) { + let wrapper = output_dir.join("rustc.bat"); + + std::fs::write(&wrapper, text).unwrap(); + + let rustc_wrapper = TreeResolver::create_rustc_wrapper(output_dir).unwrap(); + + // For testing, the rustc executable is a batch script and not a compiled executable. + // any strings referring to it as an executable will need to be updated. + let content = std::fs::read_to_string(&rustc_wrapper).unwrap(); + std::fs::write( + &rustc_wrapper, + content + .replace("rustc.exe", "rustc.bat") + .replace("rustc\\.exe", "rustc\\.bat"), + ) + .unwrap(); + + (wrapper, rustc_wrapper) + } + + fn new_mock_rustc_command( + rustc_wrapper: &Path, + rustc: &Path, + workdir: &Path, + ) -> process::Command { + let mut command = process::Command::new(rustc_wrapper); + command + .current_dir(workdir) + .env("RUSTC_WRAPPER", rustc_wrapper) + .env("RUSTC", rustc) + .env("HOST_TRIPLE", "mock-platform-triple") + .arg(rustc); + command + } + + #[test] + fn cargo_tree_rustc_wrapper_vv() { + let (_, tempdir) = crate::test::test_tempdir("cargo_tree_rustc_wrapper_vv"); + + let text = dedent( + r#" + rustc 1.81.0 (eeb90cda1 2024-09-04) + binary: rustc + commit-hash: eeb90cda1969383f56a2637cbd3037bdf598841c + commit-date: 2024-09-04 + host: x86_64-unknown-linux-gnu + release: 1.81.0 + LLVM version: 18.1.7 + "#, + ); + + let script_text = if cfg!(windows) { + dedent( + r#" + @ECHO OFF + "#, + ) + &text + .lines() + .map(|l| "echo ".to_owned() + l) + .collect::>() + .join("\n") + } else { + dedent( + r#" + #!/usr/bin/env bash + set -euo pipefail + cat << EOF + "#, + ) + &text + + "\nEOF\n" + }; + + let (rustc, rustc_wrapper) = create_mock_rustc(&tempdir, &script_text); + + let output = new_mock_rustc_command(&rustc_wrapper, &rustc, &tempdir) + .arg("-vV") + .output() + .unwrap(); + + assert_eq!( + output.status.code().unwrap(), + 0, + "Exit with {}\n{}\n{}", + output.status.code().unwrap(), + String::from_utf8_lossy(&output.stdout), + String::from_utf8_lossy(&output.stderr), + ); + + let stdout = String::from_utf8(output.stdout).unwrap(); + + assert!( + stdout.contains("mock-platform-triple") && !stdout.contains("x86_64-unknown-linux-gnu"), + "The rustc wrapper did not replace the host platform\n{}", + stdout + ) + } + + #[test] + fn cargo_tree_rustc_wrapper_target_inject() { + let (_, tempdir) = crate::test::test_tempdir("cargo_tree_rustc_wrapper_target_inject"); + + let script_text = if cfg!(windows) { + dedent( + r#" + @ECHO OFF + echo %* + "#, + ) + } else { + dedent( + r#" + #!/usr/bin/env bash + set -euo pipefail + echo "$@" + "#, + ) + }; + + let (rustc, rustc_wrapper) = create_mock_rustc(&tempdir, &script_text); + + let output = new_mock_rustc_command(&rustc_wrapper, &rustc, &tempdir) + .arg("-") + .arg("--crate-name") + .arg("___") + .arg("--print=file-names") + .arg("--print=cfg") + .output() + .unwrap(); + + assert_eq!( + output.status.code().unwrap(), + 0, + "Exit with {}\n{}\n{}", + output.status.code().unwrap(), + String::from_utf8_lossy(&output.stdout), + String::from_utf8_lossy(&output.stderr), + ); + + let stdout = String::from_utf8(output.stdout).unwrap(); + + assert!( + stdout.contains("--target mock-platform-triple"), + "The rustc wrapper did not inject `--target`. Got output:\n{}", + stdout + ) + } + + #[test] + fn cargo_tree_rustc_wrapper_fallthrough() { + let (_, tempdir) = crate::test::test_tempdir("cargo_tree_rustc_wrapper_fallthrough"); + + let script_text = if cfg!(windows) { + dedent( + r#" + @ECHO OFF + echo %* + "#, + ) + } else { + dedent( + r#" + #!/usr/bin/env bash + set -euo pipefail + echo "$@" + "#, + ) + }; + + let (rustc, rustc_wrapper) = create_mock_rustc(&tempdir, &script_text); + + for args in [ + vec!["-vV", "--help"], + vec![ + "-", + "--crate-name", + "___", + "--print=file-names", + "--target", + "wasm64-unknown-unknown", + ], + ] { + let output = new_mock_rustc_command(&rustc_wrapper, &rustc, &tempdir) + .args(args.clone()) + .output() + .unwrap(); + + assert_eq!( + output.status.code().unwrap(), + 0, + "Exit with {}\n{}\n{}", + output.status.code().unwrap(), + String::from_utf8_lossy(&output.stdout), + String::from_utf8_lossy(&output.stderr), + ); + + // For some reason Windows is putting quotes around some strings. Given + // the set of inputs, this can be safely stripped + let stdout = String::from_utf8(output.stdout).unwrap().replace('"', ""); + + let expected = args.join(" "); + + assert!( + stdout.trim().ends_with(&expected), + "The rustc wrapper output didn't match expectations\nexpected: `{}`\ngot: `{}`", + expected, + stdout + ) + } + } + #[test] fn serde_cargo_tree_entry() { { @@ -701,7 +1243,7 @@ mod test { } #[test] - fn parse_features_from_cargo_tree_output_test() { + fn parse_cargo_tree_output_test() { let autocfg_id = CrateId { name: "autocfg".to_owned(), version: Version::new(1, 2, 0), @@ -763,7 +1305,7 @@ mod test { version: Version::new(1, 0, 12), }; - let output = parse_features_from_cargo_tree_output( + let (target_output, host_output) = parse_cargo_tree_output( textwrap::dedent( r#" ;tree-data v0.1.0 (/rules_rust/crate_universe/test_data/metadata/tree_data);; @@ -790,20 +1332,79 @@ mod test { `-- ;unicode-ident v1.0.12;; "#, - ).lines().map(Ok::<&str, std::io::Error>) + ).lines().map(Ok::<&str, std::io::Error>), ) .unwrap(); + assert_eq!( BTreeMap::from([ ( - autocfg_id.clone(), + TreeDepCompileKind::Host(autocfg_id.clone()), + CargoTreeEntry { + features: BTreeSet::new(), + deps: BTreeSet::new(), + }, + ), + ( + TreeDepCompileKind::Host(proc_macro2_id.clone()), + CargoTreeEntry { + features: BTreeSet::from(["default".to_owned(), "proc-macro".to_owned()]), + deps: BTreeSet::from([unicode_ident_id.clone(),]), + }, + ), + ( + TreeDepCompileKind::Host(quote_id.clone()), + CargoTreeEntry { + features: BTreeSet::from(["default".to_owned(), "proc-macro".to_owned()]), + deps: BTreeSet::from([proc_macro2_id.clone()]), + }, + ), + ( + TreeDepCompileKind::Host(serde_derive_id.clone()), + CargoTreeEntry { + features: BTreeSet::from(["default".to_owned()]), + deps: BTreeSet::from([ + proc_macro2_id.clone(), + quote_id.clone(), + syn_id.clone() + ]), + } + ), + ( + TreeDepCompileKind::Host(syn_id.clone()), + CargoTreeEntry { + features: BTreeSet::from([ + "clone-impls".to_owned(), + "default".to_owned(), + "derive".to_owned(), + "parsing".to_owned(), + "printing".to_owned(), + "proc-macro".to_owned(), + "quote".to_owned() + ]), + deps: BTreeSet::from([ + proc_macro2_id.clone(), + quote_id.clone(), + unicode_ident_id.clone() + ]), + }, + ), + ( + TreeDepCompileKind::Host(unicode_ident_id.clone()), CargoTreeEntry { features: BTreeSet::new(), deps: BTreeSet::new(), }, ), + ]), + host_output, + "Failed checking host dependencies." + ); + + assert_eq!( + BTreeMap::from([ ( - chrono_id.clone(), + TreeDepCompileKind::Target(chrono_id.clone()), CargoTreeEntry { features: BTreeSet::from([ "clock".to_owned(), @@ -826,110 +1427,64 @@ mod test { } ), ( - core_foundation_sys_id.clone(), + TreeDepCompileKind::Target(core_foundation_sys_id.clone()), CargoTreeEntry { features: BTreeSet::from(["default".to_owned(), "link".to_owned()]), deps: BTreeSet::new(), } ), ( - cpufeatures_id.clone(), + TreeDepCompileKind::Target(cpufeatures_id.clone()), CargoTreeEntry { features: BTreeSet::new(), deps: BTreeSet::from([libc_id.clone()]), }, ), ( - iana_time_zone_id, + TreeDepCompileKind::Target(iana_time_zone_id), CargoTreeEntry { features: BTreeSet::from(["fallback".to_owned()]), deps: BTreeSet::from([core_foundation_sys_id]), } ), ( - libc_id.clone(), + TreeDepCompileKind::Target(libc_id.clone()), CargoTreeEntry { features: BTreeSet::from(["default".to_owned(), "std".to_owned()]), deps: BTreeSet::new(), } ), ( - num_integer_id, + TreeDepCompileKind::Target(num_integer_id), CargoTreeEntry { features: BTreeSet::new(), deps: BTreeSet::from([num_traits_id.clone()]), }, ), ( - num_traits_id, + TreeDepCompileKind::Target(num_traits_id), CargoTreeEntry { features: BTreeSet::from(["i128".to_owned()]), deps: BTreeSet::from([autocfg_id.clone()]), } ), ( - proc_macro2_id.clone(), - CargoTreeEntry { - features: BTreeSet::from(["default".to_owned(), "proc-macro".to_owned()]), - deps: BTreeSet::from([unicode_ident_id.clone()]) - } - ), - ( - quote_id.clone(), - CargoTreeEntry { - features: BTreeSet::from(["default".to_owned(), "proc-macro".to_owned()]), - deps: BTreeSet::from([proc_macro2_id.clone()]), - } - ), - ( - serde_derive_id.clone(), - CargoTreeEntry { - features: BTreeSet::from(["default".to_owned()]), - deps: BTreeSet::from([ - proc_macro2_id.clone(), - quote_id.clone(), - syn_id.clone() - ]), - } - ), - ( - syn_id, - CargoTreeEntry { - features: BTreeSet::from([ - "clone-impls".to_owned(), - "default".to_owned(), - "derive".to_owned(), - "parsing".to_owned(), - "printing".to_owned(), - "proc-macro".to_owned(), - "quote".to_owned(), - ]), - deps: BTreeSet::from([proc_macro2_id, quote_id, unicode_ident_id.clone(),]), - } - ), - ( - time_id, + TreeDepCompileKind::Target(time_id), CargoTreeEntry { features: BTreeSet::new(), deps: BTreeSet::from([libc_id]), } ), ( - tree_data_id, + TreeDepCompileKind::Target(tree_data_id), CargoTreeEntry { features: BTreeSet::new(), deps: BTreeSet::from([chrono_id, cpufeatures_id, serde_derive_id,]), } ), - ( - unicode_ident_id, - CargoTreeEntry { - features: BTreeSet::new(), - deps: BTreeSet::new() - } - ) ]), - output, + target_output, + "Failed checking target dependencies." ); } @@ -937,7 +1492,7 @@ mod test { /// successfully parsed and transitive dependencies are tracked (or more /// importantly for N+1 transitive deps, not tracked). #[test] - fn parse_features_from_cargo_tree_output_nested_build_deps() { + fn parse_cargo_tree_output_nested_build_deps() { let autocfg_id = CrateId { name: "autocfg".to_owned(), version: Version::new(1, 3, 0), @@ -975,7 +1530,7 @@ mod test { version: Version::new(0, 9, 5), }; - let output = parse_features_from_cargo_tree_output( + let (target_output, host_output) = parse_cargo_tree_output( textwrap::dedent( r#" ;nested_build_dependencies v0.0.0 (/rules_rust/crate_universe/test_data/metadata/nested_build_dependencies);; @@ -997,39 +1552,28 @@ mod test { `-- ;version_check v0.9.5;; "#, - ).lines().map(Ok::<&str, std::io::Error>) + ).lines().map(Ok::<&str, std::io::Error>), ) .unwrap(); assert_eq!( BTreeMap::from([ ( - autocfg_id.clone(), + TreeDepCompileKind::Host(autocfg_id.clone()), CargoTreeEntry { features: BTreeSet::new(), deps: BTreeSet::new(), }, ), ( - nested_build_dependencies_id.clone(), - CargoTreeEntry { - features: BTreeSet::new(), - deps: BTreeSet::from([ - num_traits_id.clone(), - syn_id.clone(), - proc_macro_error_attr_id.clone(), - ]), - } - ), - ( - num_traits_id.clone(), + TreeDepCompileKind::Host(num_traits_id.clone()), CargoTreeEntry { features: BTreeSet::from(["default".to_owned(), "std".to_owned()]), - deps: BTreeSet::from([autocfg_id.clone()]), - } + deps: BTreeSet::from([autocfg_id.clone(),]), + }, ), ( - proc_macro_error_attr_id.clone(), + TreeDepCompileKind::Host(proc_macro_error_attr_id.clone()), CargoTreeEntry { features: BTreeSet::new(), deps: BTreeSet::from([ @@ -1037,24 +1581,24 @@ mod test { quote_id.clone(), version_check_id.clone(), ]), - }, + } ), ( - proc_macro2_id.clone(), + TreeDepCompileKind::Host(proc_macro2_id.clone()), CargoTreeEntry { features: BTreeSet::from(["default".to_owned(), "proc-macro".to_owned()]), deps: BTreeSet::from([unicode_ident_id.clone(),]), - } + }, ), ( - quote_id.clone(), + TreeDepCompileKind::Host(quote_id.clone()), CargoTreeEntry { features: BTreeSet::from(["default".to_owned(), "proc-macro".to_owned()]), - deps: BTreeSet::from([proc_macro2_id.clone()]), - } + deps: BTreeSet::from([proc_macro2_id.clone(),]), + }, ), ( - syn_id.clone(), + TreeDepCompileKind::Host(syn_id.clone()), CargoTreeEntry { features: BTreeSet::from([ "clone-impls".to_owned(), @@ -1067,26 +1611,86 @@ mod test { deps: BTreeSet::from([ proc_macro2_id.clone(), quote_id.clone(), - unicode_ident_id.clone(), + unicode_ident_id.clone() ]), - } + }, ), ( - unicode_ident_id.clone(), + TreeDepCompileKind::Host(unicode_ident_id.clone()), CargoTreeEntry { features: BTreeSet::new(), deps: BTreeSet::new(), } ), ( - version_check_id.clone(), + TreeDepCompileKind::Host(version_check_id.clone()), CargoTreeEntry { features: BTreeSet::new(), deps: BTreeSet::new(), } ), ]), - output, + host_output, + "Failed checking host dependencies." + ); + + assert_eq!( + BTreeMap::from([( + TreeDepCompileKind::Target(nested_build_dependencies_id.clone()), + CargoTreeEntry { + features: BTreeSet::new(), + deps: BTreeSet::from([ + num_traits_id.clone(), + syn_id.clone(), + proc_macro_error_attr_id.clone(), + ]), + } + )]), + target_output, + "Failed checking target dependencies." + ); + } + + #[test] + fn parse_cargo_tree_output_same_level_host_deps() { + let autocfg_id = CrateId { + name: "autocfg".to_owned(), + version: Version::new(1, 2, 0), + }; + + let (_target_output, host_output) = parse_cargo_tree_output( + textwrap::dedent( + // This is a modified/reduced output of the `resolver_2_deps` manifest. + r#" + ;resolver_2_deps v0.1.0 (/rules_rust/crate_universe/test_data/metadata/resolver_2_deps);; + |-- ;reqwest v0.12.4;__tls,charset,default,default-tls,h2,http2,macos-system-configuration; + | |-- ;h2 v0.4.4;; + | | |-- ;slab v0.4.9;default,std; + | | | [build-dependencies] + | | | `-- ;autocfg v1.2.0;; + | | |-- ;tokio v1.37.0;bytes,default,io-std,io-util,libc,mio,net,rt,socket2,sync,time; + | | | |-- ;bytes v1.6.0;default,std; + | | | |-- ;libc v0.2.153;default,std; + | | | |-- ;mio v0.8.11;net,os-ext,os-poll; + | | | | `-- ;libc v0.2.153;default,std; + | | | |-- ;pin-project-lite v0.2.14;; + | | | `-- ;socket2 v0.5.7;all; + | | | `-- ;libc v0.2.153;default,std; + "#, + ).lines().map(Ok::<&str, std::io::Error>), + ) + .unwrap(); + + assert_eq!( + BTreeMap::from([( + TreeDepCompileKind::Host(autocfg_id.clone()), + CargoTreeEntry { + features: BTreeSet::new(), + deps: BTreeSet::new(), + }, + ),]), + host_output, + "Failed checking host dependencies." ); } } diff --git a/crate_universe/src/metadata/cargo_tree_rustc_wrapper.bat b/crate_universe/src/metadata/cargo_tree_rustc_wrapper.bat new file mode 100755 index 0000000000..52b4046e62 --- /dev/null +++ b/crate_universe/src/metadata/cargo_tree_rustc_wrapper.bat @@ -0,0 +1,37 @@ +@ECHO OFF +@REM +@REM For details, see: +@REM `@rules_rust//crate_universe/src/metadata/cargo_tree_resolver.rs - TreeResolver::create_rustc_wrapper` + +SETLOCAL ENABLEDELAYEDEXPANSION + +@REM When cargo is detecting the host configuration, the host target needs to be +@REM injected into the command. +echo %*| FINDSTR /C:"rustc.exe - --crate-name ___ " | FINDSTR /V /C:"--target" >NUL +if %errorlevel%==0 ( + %* --target %HOST_TRIPLE% + exit /b +) + +@REM When querying info about the compiler, ensure the triple is mocked out to be +@REM the desired target triple for the host. +echo %*| FINDSTR /R /C:".*rustc\.exe -[vV][vV]$" >NUL +if %errorlevel%==0 ( + + @REM TODO: The exit code is lost here. It should be captured and explicitly + @REM returned. + for /F "delims=" %%i in ('%*') do ( + echo %%i| FINDSTR /R /C:"^host:" >NUL + if errorlevel 1 ( + echo %%i + ) else ( + echo host: %HOST_TRIPLE% + ) + ) + + exit /b +) + +@REM No unique calls intercepted. Simply call rustc.exe as normal. +%* +exit /b diff --git a/crate_universe/src/metadata/cargo_tree_rustc_wrapper.sh b/crate_universe/src/metadata/cargo_tree_rustc_wrapper.sh new file mode 100755 index 0000000000..f13e4567df --- /dev/null +++ b/crate_universe/src/metadata/cargo_tree_rustc_wrapper.sh @@ -0,0 +1,37 @@ +#!/usr/bin/env bash +# +# For details, see: +# `@rules_rust//crate_universe/src/metadata/cargo_tree_resolver.rs - TreeResolver::create_rustc_wrapper` + +set -euo pipefail + +# When cargo is detecting the host configuration, the host target needs to be +# injected into the command. +if [[ "$@" == *"rustc - --crate-name ___ "* && "$@" != *" --target "* ]]; then + exec "$@" --target "${HOST_TRIPLE}" +fi + +# When querying info about the compiler, ensure the triple is mocked out to be +# the desired target triple for the host. +if [[ "$@" == *"rustc -Vv" || "$@" == *"rustc -vV" ]]; then + set +e + _RUSTC_OUTPUT="$($@)" + _EXIT_CODE=$? + set -e + + # Loop through each line of the output + while IFS= read -r line; do + # If the line starts with "host:", replace it with the new host value + if [[ "${line}" == host:* ]]; then + echo "host: ${HOST_TRIPLE}" + else + # Print the other lines unchanged + echo "${line}" + fi + done <<<"${_RUSTC_OUTPUT}" + + exit ${_EXIT_CODE} +fi + +# If there is nothing special to do then simply forward the call +exec "$@" diff --git a/crate_universe/src/test.rs b/crate_universe/src/test.rs index 8a70b7041f..0450e9bc11 100644 --- a/crate_universe/src/test.rs +++ b/crate_universe/src/test.rs @@ -1,5 +1,7 @@ //! A module containing common test helpers +use std::path::PathBuf; + pub(crate) fn mock_cargo_metadata_package() -> cargo_metadata::Package { serde_json::from_value(serde_json::json!({ "name": "mock-pkg", @@ -42,6 +44,22 @@ pub(crate) fn mock_cargo_lock_package() -> cargo_lock::Package { .unwrap() } +/// Create a temp directory that is conditionally leaked when running under Bazel. +/// Bazel will cleanup the test temp directory after tests have finished. +pub(crate) fn test_tempdir(prefix: &str) -> (Option, PathBuf) { + match std::env::var("TEST_TMPDIR") { + Ok(t) => { + let dir = tempfile::TempDir::with_prefix_in(prefix, t).unwrap(); + (None, dir.into_path()) + } + Err(_) => { + let dir = tempfile::TempDir::with_prefix(prefix).unwrap(); + let path = PathBuf::from(dir.path()); + (Some(dir), path) + } + } +} + pub(crate) mod metadata { pub(crate) fn alias() -> cargo_metadata::Metadata { serde_json::from_str(include_str!(concat!( diff --git a/crate_universe/test_data/metadata/host_specific_build_deps/Cargo.lock b/crate_universe/test_data/metadata/host_specific_build_deps/Cargo.lock new file mode 100644 index 0000000000..39b3ac0a51 --- /dev/null +++ b/crate_universe/test_data/metadata/host_specific_build_deps/Cargo.lock @@ -0,0 +1,485 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "aho-corasick" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916" +dependencies = [ + "memchr", +] + +[[package]] +name = "anyhow" +version = "1.0.87" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10f00e1f6e58a40e807377c75c6a7f97bf9044fab57816f2414e6f5f4499d7b8" + +[[package]] +name = "autocfg" +version = "1.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0" + +[[package]] +name = "base64" +version = "0.21.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567" + +[[package]] +name = "bitflags" +version = "2.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" + +[[package]] +name = "bytes" +version = "1.7.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50" + +[[package]] +name = "cfg-if" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" + +[[package]] +name = "chrono" +version = "0.4.38" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401" +dependencies = [ + "num-traits", +] + +[[package]] +name = "either" +version = "1.13.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" + +[[package]] +name = "equivalent" +version = "1.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5" + +[[package]] +name = "errno" +version = "0.3.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba" +dependencies = [ + "libc", + "windows-sys 0.52.0", +] + +[[package]] +name = "fastrand" +version = "2.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6" + +[[package]] +name = "fixedbitset" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80" + +[[package]] +name = "hashbrown" +version = "0.14.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1" + +[[package]] +name = "heck" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" + +[[package]] +name = "host_specific_build_deps" +version = "0.0.0" +dependencies = [ + "pbjson-types", +] + +[[package]] +name = "indexmap" +version = "2.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "68b900aa2f7301e21c36462b170ee99994de34dff39a4a6a528e80e7376d07e5" +dependencies = [ + "equivalent", + "hashbrown", +] + +[[package]] +name = "itertools" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b1c173a5686ce8bfa551b3563d0c2170bf24ca44da99c7ca4bfdab5418c3fe57" +dependencies = [ + "either", +] + +[[package]] +name = "itertools" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +dependencies = [ + "either", +] + +[[package]] +name = "libc" +version = "0.2.158" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439" + +[[package]] +name = "linux-raw-sys" +version = "0.4.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89" + +[[package]] +name = "log" +version = "0.4.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" + +[[package]] +name = "memchr" +version = "2.7.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" + +[[package]] +name = "multimap" +version = "0.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "defc4c55412d89136f966bbb339008b474350e5e6e78d2714439c386b3137a03" + +[[package]] +name = "num-traits" +version = "0.2.19" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841" +dependencies = [ + "autocfg", +] + +[[package]] +name = "once_cell" +version = "1.19.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" + +[[package]] +name = "pbjson" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1030c719b0ec2a2d25a5df729d6cff1acf3cc230bf766f4f97833591f7577b90" +dependencies = [ + "base64", + "serde", +] + +[[package]] +name = "pbjson-build" +version = "0.6.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2580e33f2292d34be285c5bc3dba5259542b083cfad6037b6d70345f24dcb735" +dependencies = [ + "heck", + "itertools 0.11.0", + "prost", + "prost-types", +] + +[[package]] +name = "pbjson-types" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "18f596653ba4ac51bdecbb4ef6773bc7f56042dc13927910de1684ad3d32aa12" +dependencies = [ + "bytes", + "chrono", + "pbjson", + "pbjson-build", + "prost", + "prost-build", + "serde", +] + +[[package]] +name = "petgraph" +version = "0.6.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db" +dependencies = [ + "fixedbitset", + "indexmap", +] + +[[package]] +name = "prettyplease" +version = "0.2.22" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "479cf940fbbb3426c32c5d5176f62ad57549a0bb84773423ba8be9d089f5faba" +dependencies = [ + "proc-macro2", + "syn", +] + +[[package]] +name = "proc-macro2" +version = "1.0.86" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" +dependencies = [ + "unicode-ident", +] + +[[package]] +name = "prost" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "deb1435c188b76130da55f17a466d252ff7b1418b2ad3e037d127b94e3411f29" +dependencies = [ + "bytes", + "prost-derive", +] + +[[package]] +name = "prost-build" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "22505a5c94da8e3b7c2996394d1c933236c4d743e81a410bcca4e6989fc066a4" +dependencies = [ + "bytes", + "heck", + "itertools 0.12.1", + "log", + "multimap", + "once_cell", + "petgraph", + "prettyplease", + "prost", + "prost-types", + "regex", + "syn", + "tempfile", +] + +[[package]] +name = "prost-derive" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "81bddcdb20abf9501610992b6759a4c888aef7d1a7247ef75e2404275ac24af1" +dependencies = [ + "anyhow", + "itertools 0.12.1", + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "prost-types" +version = "0.12.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9091c90b0a32608e984ff2fa4091273cbdd755d54935c51d520887f4a1dbd5b0" +dependencies = [ + "prost", +] + +[[package]] +name = "quote" +version = "1.0.37" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af" +dependencies = [ + "proc-macro2", +] + +[[package]] +name = "regex" +version = "1.10.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.4.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" +dependencies = [ + "aho-corasick", + "memchr", + "regex-syntax", +] + +[[package]] +name = "regex-syntax" +version = "0.8.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" + +[[package]] +name = "rustix" +version = "0.38.36" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f55e80d50763938498dd5ebb18647174e0c76dc38c5505294bb224624f30f36" +dependencies = [ + "bitflags", + "errno", + "libc", + "linux-raw-sys", + "windows-sys 0.52.0", +] + +[[package]] +name = "serde" +version = "1.0.210" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c8e3592472072e6e22e0a54d5904d9febf8508f65fb8552499a1abc7d1078c3a" +dependencies = [ + "serde_derive", +] + +[[package]] +name = "serde_derive" +version = "1.0.210" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "243902eda00fad750862fc144cea25caca5e20d615af0a81bee94ca738f1df1f" +dependencies = [ + "proc-macro2", + "quote", + "syn", +] + +[[package]] +name = "syn" +version = "2.0.77" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9f35bcdf61fd8e7be6caf75f429fdca8beb3ed76584befb503b1569faee373ed" +dependencies = [ + "proc-macro2", + "quote", + "unicode-ident", +] + +[[package]] +name = "tempfile" +version = "3.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04cbcdd0c794ebb0d4cf35e88edd2f7d2c4c3e9a5a6dab322839b321c6a87a64" +dependencies = [ + "cfg-if", + "fastrand", + "once_cell", + "rustix", + "windows-sys 0.59.0", +] + +[[package]] +name = "unicode-ident" +version = "1.0.12" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b" + +[[package]] +name = "windows-sys" +version = "0.52.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-sys" +version = "0.59.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b" +dependencies = [ + "windows-targets", +] + +[[package]] +name = "windows-targets" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" +dependencies = [ + "windows_aarch64_gnullvm", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_gnullvm", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", +] + +[[package]] +name = "windows_aarch64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" + +[[package]] +name = "windows_aarch64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" + +[[package]] +name = "windows_i686_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" + +[[package]] +name = "windows_i686_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" + +[[package]] +name = "windows_i686_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" + +[[package]] +name = "windows_x86_64_gnu" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" + +[[package]] +name = "windows_x86_64_gnullvm" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" + +[[package]] +name = "windows_x86_64_msvc" +version = "0.52.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" diff --git a/crate_universe/test_data/metadata/host_specific_build_deps/Cargo.toml b/crate_universe/test_data/metadata/host_specific_build_deps/Cargo.toml new file mode 100644 index 0000000000..d670c53b7d --- /dev/null +++ b/crate_universe/test_data/metadata/host_specific_build_deps/Cargo.toml @@ -0,0 +1,14 @@ +[package] +name = "host_specific_build_deps" +version = "0.0.0" +edition = "2021" + +# Required to satisfy cargo but no `lib.rs` is expected to +# exist within test data. +[lib] +path = "lib.rs" + +# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html + +[dependencies] +pbjson-types = "=0.6.0" diff --git a/crate_universe/test_data/metadata/host_specific_build_deps/metadata.json b/crate_universe/test_data/metadata/host_specific_build_deps/metadata.json new file mode 100644 index 0000000000..63791bfb3a --- /dev/null +++ b/crate_universe/test_data/metadata/host_specific_build_deps/metadata.json @@ -0,0 +1,14026 @@ +{ + "metadata": null, + "packages": [ + { + "authors": [ + "Andrew Gallant " + ], + "categories": [ + "text-processing" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "log", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.4.17", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "memchr", + "optional": true, + "registry": null, + "rename": null, + "req": "^2.4.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "doc-comment", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.3.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Fast multiple substring searching.", + "documentation": null, + "edition": "2021", + "features": { + "default": [ + "std", + "perf-literal" + ], + "logging": [ + "dep:log" + ], + "perf-literal": [ + "dep:memchr" + ], + "std": [ + "memchr?/std" + ] + }, + "homepage": "https://github.com/BurntSushi/aho-corasick", + "id": "registry+https://github.com/rust-lang/crates.io-index#aho-corasick@1.1.3", + "keywords": [ + "string", + "search", + "text", + "pattern", + "multi" + ], + "license": "Unlicense OR MIT", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/aho-corasick-1.1.3/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "all-features": true, + "rustdoc-args": [ + "--cfg", + "docsrs", + "--generate-link-to-definition" + ] + } + } + }, + "name": "aho-corasick", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/BurntSushi/aho-corasick", + "rust_version": "1.60.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "aho_corasick", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/aho-corasick-1.1.3/src/lib.rs", + "test": true + } + ], + "version": "1.1.3" + }, + { + "authors": [ + "David Tolnay " + ], + "categories": [ + "rust-patterns", + "no-std" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "backtrace", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.3.51", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "futures", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "rustversion", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "full" + ], + "kind": "dev", + "name": "syn", + "optional": false, + "registry": null, + "rename": null, + "req": "^2.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "thiserror", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.45", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "diff" + ], + "kind": "dev", + "name": "trybuild", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.66", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Flexible concrete Error type built on std::error::Error", + "documentation": "https://docs.rs/anyhow", + "edition": "2018", + "features": { + "backtrace": [ + "dep:backtrace" + ], + "default": [ + "std" + ], + "std": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#anyhow@1.0.87", + "keywords": [ + "error", + "error-handling" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "rustdoc-args": [ + "--generate-link-to-definition" + ], + "targets": [ + "x86_64-unknown-linux-gnu" + ] + } + } + }, + "name": "anyhow", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/dtolnay/anyhow", + "rust_version": "1.39", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "anyhow", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "compiletest", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/compiletest.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_autotrait", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/test_autotrait.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_backtrace", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/test_backtrace.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_boxed", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/test_boxed.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_chain", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/test_chain.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_context", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/test_context.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_convert", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/test_convert.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_downcast", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/test_downcast.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_ensure", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/test_ensure.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_ffi", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/test_ffi.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_fmt", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/test_fmt.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_macros", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/test_macros.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_repr", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/test_repr.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_source", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/tests/test_source.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/anyhow-1.0.87/build.rs", + "test": false + } + ], + "version": "1.0.87" + }, + { + "authors": [ + "Josh Stone " + ], + "categories": [ + "development-tools::build-utils" + ], + "default_run": null, + "dependencies": [], + "description": "Automatic cfg for Rust compiler features", + "documentation": "https://docs.rs/autocfg/", + "edition": "2015", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#autocfg@1.3.0", + "keywords": [ + "rustc", + "build", + "autoconf" + ], + "license": "Apache-2.0 OR MIT", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/autocfg-1.3.0/Cargo.toml", + "metadata": null, + "name": "autocfg", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/cuviper/autocfg", + "rust_version": "1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2015", + "kind": [ + "lib" + ], + "name": "autocfg", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/autocfg-1.3.0/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2015", + "kind": [ + "example" + ], + "name": "integers", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/autocfg-1.3.0/examples/integers.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2015", + "kind": [ + "example" + ], + "name": "nightly", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/autocfg-1.3.0/examples/nightly.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2015", + "kind": [ + "example" + ], + "name": "paths", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/autocfg-1.3.0/examples/paths.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2015", + "kind": [ + "example" + ], + "name": "traits", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/autocfg-1.3.0/examples/traits.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2015", + "kind": [ + "example" + ], + "name": "versions", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/autocfg-1.3.0/examples/versions.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2015", + "kind": [ + "test" + ], + "name": "no_std", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/autocfg-1.3.0/tests/no_std.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2015", + "kind": [ + "test" + ], + "name": "rustflags", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/autocfg-1.3.0/tests/rustflags.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2015", + "kind": [ + "test" + ], + "name": "wrappers", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/autocfg-1.3.0/tests/wrappers.rs", + "test": true + } + ], + "version": "1.3.0" + }, + { + "authors": [ + "Alice Maz ", + "Marshall Pierce " + ], + "categories": [ + "encoding" + ], + "default_run": null, + "dependencies": [ + { + "features": [ + "derive" + ], + "kind": "dev", + "name": "clap", + "optional": false, + "registry": null, + "rename": null, + "req": "^3.2.25", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "criterion", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "once_cell", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "small_rng" + ], + "kind": "dev", + "name": "rand", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.8.5", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "rstest", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.13.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "rstest_reuse", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.6.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "derive" + ], + "kind": "dev", + "name": "strum", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.25", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "encodes and decodes base64 as bytes or utf8", + "documentation": "https://docs.rs/base64", + "edition": "2018", + "features": { + "alloc": [], + "default": [ + "std" + ], + "std": [ + "alloc" + ] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#base64@0.21.7", + "keywords": [ + "base64", + "utf8", + "encode", + "decode", + "no_std" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/base64-0.21.7/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "rustdoc-args": [ + "--generate-link-to-definition" + ] + } + } + }, + "name": "base64", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/marshallpierce/rust-base64", + "rust_version": "1.48.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "base64", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/base64-0.21.7/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "example" + ], + "name": "base64", + "required-features": [ + "std" + ], + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/base64-0.21.7/examples/base64.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "encode", + "required-features": [ + "alloc" + ], + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/base64-0.21.7/tests/encode.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "tests", + "required-features": [ + "alloc" + ], + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/base64-0.21.7/tests/tests.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "benchmarks", + "required-features": [ + "std" + ], + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/base64-0.21.7/benches/benchmarks.rs", + "test": false + } + ], + "version": "0.21.7" + }, + { + "authors": [ + "The Rust Project Developers" + ], + "categories": [ + "no-std" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "arbitrary", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "bytemuck", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.12", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "compiler_builtins", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.1.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "rustc-std-workspace-core", + "optional": true, + "registry": null, + "rename": "core", + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "serde", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0.103", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [ + "derive" + ], + "kind": "dev", + "name": "arbitrary", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "derive" + ], + "kind": "dev", + "name": "bytemuck", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.12.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "rustversion", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serde_derive", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.103", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serde_json", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serde_test", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.19", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "trybuild", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.18", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "derive" + ], + "kind": "dev", + "name": "zerocopy", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.7", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "A macro to generate structures which behave like bitflags.\n", + "documentation": "https://docs.rs/bitflags", + "edition": "2021", + "features": { + "arbitrary": [ + "dep:arbitrary" + ], + "bytemuck": [ + "dep:bytemuck" + ], + "compiler_builtins": [ + "dep:compiler_builtins" + ], + "core": [ + "dep:core" + ], + "example_generated": [], + "rustc-dep-of-std": [ + "core", + "compiler_builtins" + ], + "serde": [ + "dep:serde" + ], + "std": [] + }, + "homepage": "https://github.com/bitflags/bitflags", + "id": "registry+https://github.com/rust-lang/crates.io-index#bitflags@2.6.0", + "keywords": [ + "bit", + "bitmask", + "bitflags", + "flags" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bitflags-2.6.0/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "features": [ + "example_generated" + ] + } + } + }, + "name": "bitflags", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/bitflags/bitflags", + "rust_version": "1.56.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "bitflags", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bitflags-2.6.0/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "example" + ], + "name": "custom_bits_type", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bitflags-2.6.0/examples/custom_bits_type.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "example" + ], + "name": "custom_derive", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bitflags-2.6.0/examples/custom_derive.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "example" + ], + "name": "fmt", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bitflags-2.6.0/examples/fmt.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "example" + ], + "name": "macro_free", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bitflags-2.6.0/examples/macro_free.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "example" + ], + "name": "serde", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bitflags-2.6.0/examples/serde.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "bench" + ], + "name": "parse", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bitflags-2.6.0/benches/parse.rs", + "test": false + } + ], + "version": "2.6.0" + }, + { + "authors": [ + "Carl Lerche ", + "Sean McArthur " + ], + "categories": [ + "network-programming", + "data-structures" + ], + "default_run": null, + "dependencies": [ + { + "features": [ + "alloc" + ], + "kind": null, + "name": "serde", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0.60", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "serde_test", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "loom", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.7", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(loom)", + "uses_default_features": true + } + ], + "description": "Types and traits for working with bytes", + "documentation": null, + "edition": "2018", + "features": { + "default": [ + "std" + ], + "serde": [ + "dep:serde" + ], + "std": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#bytes@1.7.1", + "keywords": [ + "buffers", + "zero-copy", + "io" + ], + "license": "MIT", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "rustdoc-args": [ + "--cfg", + "docsrs" + ] + } + } + }, + "name": "bytes", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/tokio-rs/bytes", + "rust_version": "1.39", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "bytes", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_buf", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/tests/test_buf.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_buf_mut", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/tests/test_buf_mut.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_bytes", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/tests/test_bytes.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_bytes_odd_alloc", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/tests/test_bytes_odd_alloc.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_bytes_vec_alloc", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/tests/test_bytes_vec_alloc.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_chain", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/tests/test_chain.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_debug", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/tests/test_debug.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_iter", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/tests/test_iter.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_reader", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/tests/test_reader.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_serde", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/tests/test_serde.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_take", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/tests/test_take.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "buf", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/benches/buf.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "bytes", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/benches/bytes.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "bytes_mut", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/bytes-1.7.1/benches/bytes_mut.rs", + "test": false + } + ], + "version": "1.7.1" + }, + { + "authors": [ + "Alex Crichton " + ], + "categories": [], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "compiler_builtins", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.1.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "rustc-std-workspace-core", + "optional": true, + "registry": null, + "rename": "core", + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "A macro to ergonomically define an item depending on a large number of #[cfg]\nparameters. Structured like an if-else chain, the first matching branch is the\nitem that gets emitted.\n", + "documentation": "https://docs.rs/cfg-if", + "edition": "2018", + "features": { + "compiler_builtins": [ + "dep:compiler_builtins" + ], + "core": [ + "dep:core" + ], + "rustc-dep-of-std": [ + "core", + "compiler_builtins" + ] + }, + "homepage": "https://github.com/alexcrichton/cfg-if", + "id": "registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.0", + "keywords": [], + "license": "MIT/Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/cfg-if-1.0.0/Cargo.toml", + "metadata": null, + "name": "cfg-if", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/alexcrichton/cfg-if", + "rust_version": null, + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "cfg_if", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/cfg-if-1.0.0/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "xcrate", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/cfg-if-1.0.0/tests/xcrate.rs", + "test": true + } + ], + "version": "1.0.0" + }, + { + "authors": [], + "categories": [ + "date-and-time" + ], + "default_run": null, + "dependencies": [ + { + "features": [ + "derive" + ], + "kind": null, + "name": "arbitrary", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "num-traits", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "pure-rust-locales", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.8", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "rkyv", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.7.43", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "serde", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0.99", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "bincode", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.3.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serde_derive", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "serde_json", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "js-sys", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(target_arch = \"wasm32\", not(any(target_os = \"emscripten\", target_os = \"wasi\"))))", + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "wasm-bindgen", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(target_arch = \"wasm32\", not(any(target_os = \"emscripten\", target_os = \"wasi\"))))", + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "wasm-bindgen-test", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(target_arch = \"wasm32\", not(any(target_os = \"emscripten\", target_os = \"wasi\"))))", + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "android-tzdata", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.1.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(target_os = \"android\")", + "uses_default_features": true + }, + { + "features": [ + "fallback" + ], + "kind": null, + "name": "iana-time-zone", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.1.45", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(unix)", + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "windows-targets", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.52", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(windows)", + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "windows-bindgen", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(windows)", + "uses_default_features": true + } + ], + "description": "Date and time library for Rust", + "documentation": "https://docs.rs/chrono/", + "edition": "2021", + "features": { + "__internal_bench": [], + "alloc": [], + "android-tzdata": [ + "dep:android-tzdata" + ], + "arbitrary": [ + "dep:arbitrary" + ], + "clock": [ + "winapi", + "iana-time-zone", + "android-tzdata", + "now" + ], + "default": [ + "clock", + "std", + "oldtime", + "wasmbind" + ], + "iana-time-zone": [ + "dep:iana-time-zone" + ], + "js-sys": [ + "dep:js-sys" + ], + "libc": [], + "now": [ + "std" + ], + "oldtime": [], + "pure-rust-locales": [ + "dep:pure-rust-locales" + ], + "rkyv": [ + "dep:rkyv", + "rkyv/size_32" + ], + "rkyv-16": [ + "dep:rkyv", + "rkyv?/size_16" + ], + "rkyv-32": [ + "dep:rkyv", + "rkyv?/size_32" + ], + "rkyv-64": [ + "dep:rkyv", + "rkyv?/size_64" + ], + "rkyv-validation": [ + "rkyv?/validation" + ], + "serde": [ + "dep:serde" + ], + "std": [ + "alloc" + ], + "unstable-locales": [ + "pure-rust-locales" + ], + "wasm-bindgen": [ + "dep:wasm-bindgen" + ], + "wasmbind": [ + "wasm-bindgen", + "js-sys" + ], + "winapi": [ + "windows-targets" + ], + "windows-targets": [ + "dep:windows-targets" + ] + }, + "homepage": "https://github.com/chronotope/chrono", + "id": "registry+https://github.com/rust-lang/crates.io-index#chrono@0.4.38", + "keywords": [ + "date", + "time", + "calendar" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/chrono-0.4.38/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "features": [ + "arbitrary", + "rkyv", + "serde", + "unstable-locales" + ], + "rustdoc-args": [ + "--cfg", + "docsrs" + ] + } + }, + "playground": { + "features": [ + "serde" + ] + } + }, + "name": "chrono", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/chronotope/chrono", + "rust_version": "1.61.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "chrono", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/chrono-0.4.38/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "dateutils", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/chrono-0.4.38/tests/dateutils.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "wasm", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/chrono-0.4.38/tests/wasm.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "win_bindings", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/chrono-0.4.38/tests/win_bindings.rs", + "test": true + } + ], + "version": "0.4.38" + }, + { + "authors": [ + "bluss" + ], + "categories": [ + "data-structures", + "no-std" + ], + "default_run": null, + "dependencies": [ + { + "features": [ + "derive" + ], + "kind": null, + "name": "serde", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serde_json", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "The enum `Either` with variants `Left` and `Right` is a general purpose sum type with two cases.\n", + "documentation": "https://docs.rs/either/1/", + "edition": "2018", + "features": { + "default": [ + "use_std" + ], + "serde": [ + "dep:serde" + ], + "use_std": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#either@1.13.0", + "keywords": [ + "data-structure", + "no_std" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/either-1.13.0/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "features": [ + "serde" + ] + } + }, + "playground": { + "features": [ + "serde" + ] + }, + "release": { + "no-dev-version": true, + "tag-name": "{{version}}" + } + }, + "name": "either", + "publish": null, + "readme": "README-crates.io.md", + "repository": "https://github.com/rayon-rs/either", + "rust_version": "1.37", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "either", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/either-1.13.0/src/lib.rs", + "test": true + } + ], + "version": "1.13.0" + }, + { + "authors": [], + "categories": [ + "data-structures", + "no-std" + ], + "default_run": null, + "dependencies": [], + "description": "Traits for key comparison in maps.", + "documentation": null, + "edition": "2015", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#equivalent@1.0.1", + "keywords": [ + "hashmap", + "no_std" + ], + "license": "Apache-2.0 OR MIT", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/equivalent-1.0.1/Cargo.toml", + "metadata": null, + "name": "equivalent", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/cuviper/equivalent", + "rust_version": "1.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2015", + "kind": [ + "lib" + ], + "name": "equivalent", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/equivalent-1.0.1/src/lib.rs", + "test": true + } + ], + "version": "1.0.1" + }, + { + "authors": [ + "Chris Wong " + ], + "categories": [ + "no-std", + "os" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "libc", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(target_os = \"hermit\")", + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "libc", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(target_os = \"wasi\")", + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "libc", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(unix)", + "uses_default_features": false + }, + { + "features": [ + "Win32_Foundation", + "Win32_System_Diagnostics_Debug" + ], + "kind": null, + "name": "windows-sys", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.52", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(windows)", + "uses_default_features": true + } + ], + "description": "Cross-platform interface to the `errno` variable.", + "documentation": "https://docs.rs/errno", + "edition": "2018", + "features": { + "default": [ + "std" + ], + "std": [ + "libc/std" + ] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#errno@0.3.9", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/errno-0.3.9/Cargo.toml", + "metadata": null, + "name": "errno", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/lambda-fairy/rust-errno", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "errno", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/errno-0.3.9/src/lib.rs", + "test": true + } + ], + "version": "0.3.9" + }, + { + "authors": [ + "Stjepan Glavina " + ], + "categories": [ + "algorithms" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": "dev", + "name": "getrandom", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "rand", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.8", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "wyhash", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.5", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "js" + ], + "kind": null, + "name": "getrandom", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(any(target_arch = \"wasm32\", target_arch = \"wasm64\"), target_os = \"unknown\"))", + "uses_default_features": true + }, + { + "features": [ + "js" + ], + "kind": "dev", + "name": "getrandom", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(any(target_arch = \"wasm32\", target_arch = \"wasm64\"), target_os = \"unknown\"))", + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "wasm-bindgen-test", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(any(target_arch = \"wasm32\", target_arch = \"wasm64\"), target_os = \"unknown\"))", + "uses_default_features": true + } + ], + "description": "A simple and fast random number generator", + "documentation": null, + "edition": "2018", + "features": { + "alloc": [], + "default": [ + "std" + ], + "getrandom": [ + "dep:getrandom" + ], + "js": [ + "std", + "getrandom" + ], + "std": [ + "alloc" + ] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#fastrand@2.1.1", + "keywords": [ + "simple", + "fast", + "rand", + "random", + "wyrand" + ], + "license": "Apache-2.0 OR MIT", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/fastrand-2.1.1/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "all-features": true, + "rustdoc-args": [ + "--cfg", + "docsrs" + ] + } + } + }, + "name": "fastrand", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/smol-rs/fastrand", + "rust_version": "1.36", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "fastrand", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/fastrand-2.1.1/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "char", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/fastrand-2.1.1/tests/char.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "smoke", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/fastrand-2.1.1/tests/smoke.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "bench", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/fastrand-2.1.1/benches/bench.rs", + "test": false + } + ], + "version": "2.1.1" + }, + { + "authors": [ + "bluss" + ], + "categories": [ + "data-structures" + ], + "default_run": null, + "dependencies": [ + { + "features": [ + "derive" + ], + "kind": null, + "name": "serde", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serde_json", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "FixedBitSet is a simple bitset collection", + "documentation": "https://docs.rs/fixedbitset/", + "edition": "2015", + "features": { + "default": [ + "std" + ], + "serde": [ + "dep:serde" + ], + "std": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#fixedbitset@0.4.2", + "keywords": [ + "container", + "data-structure", + "bitvec", + "bitset", + "no_std" + ], + "license": "MIT/Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/fixedbitset-0.4.2/Cargo.toml", + "metadata": { + "release": { + "no-dev-version": true, + "tag-name": "{{version}}" + } + }, + "name": "fixedbitset", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/petgraph/fixedbitset", + "rust_version": null, + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2015", + "kind": [ + "lib" + ], + "name": "fixedbitset", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/fixedbitset-0.4.2/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2015", + "kind": [ + "bench" + ], + "name": "benches", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/fixedbitset-0.4.2/benches/benches.rs", + "test": false + } + ], + "version": "0.4.2" + }, + { + "authors": [ + "Amanieu d'Antras " + ], + "categories": [ + "data-structures", + "no-std" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "ahash", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.8.7", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "rustc-std-workspace-alloc", + "optional": true, + "registry": null, + "rename": "alloc", + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "alloc" + ], + "kind": null, + "name": "allocator-api2", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.2.9", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "compiler_builtins", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.1.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "rustc-std-workspace-core", + "optional": true, + "registry": null, + "rename": "core", + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "equivalent", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "rayon", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "alloc" + ], + "kind": null, + "name": "rkyv", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.7.42", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "serde", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0.25", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [ + "allocator-api2" + ], + "kind": "dev", + "name": "bumpalo", + "optional": false, + "registry": null, + "rename": null, + "req": "^3.13.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "doc-comment", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.3.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "fnv", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.7", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "lazy_static", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.4", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "small_rng" + ], + "kind": "dev", + "name": "rand", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.8.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "rayon", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "validation" + ], + "kind": "dev", + "name": "rkyv", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.7.42", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serde_test", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "A Rust port of Google's SwissTable hash map", + "documentation": null, + "edition": "2021", + "features": { + "ahash": [ + "dep:ahash" + ], + "alloc": [ + "dep:alloc" + ], + "allocator-api2": [ + "dep:allocator-api2" + ], + "compiler_builtins": [ + "dep:compiler_builtins" + ], + "core": [ + "dep:core" + ], + "default": [ + "ahash", + "inline-more", + "allocator-api2" + ], + "equivalent": [ + "dep:equivalent" + ], + "inline-more": [], + "nightly": [ + "allocator-api2?/nightly", + "bumpalo/allocator_api" + ], + "raw": [], + "rayon": [ + "dep:rayon" + ], + "rkyv": [ + "dep:rkyv" + ], + "rustc-dep-of-std": [ + "nightly", + "core", + "compiler_builtins", + "alloc", + "rustc-internal-api" + ], + "rustc-internal-api": [], + "serde": [ + "dep:serde" + ] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.14.5", + "keywords": [ + "hash", + "no_std", + "hashmap", + "swisstable" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/hashbrown-0.14.5/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "features": [ + "nightly", + "rayon", + "serde", + "raw" + ], + "rustdoc-args": [ + "--generate-link-to-definition" + ] + } + } + }, + "name": "hashbrown", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/rust-lang/hashbrown", + "rust_version": "1.63.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "hashbrown", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/hashbrown-0.14.5/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "equivalent_trait", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/hashbrown-0.14.5/tests/equivalent_trait.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "hasher", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/hashbrown-0.14.5/tests/hasher.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "raw", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/hashbrown-0.14.5/tests/raw.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "rayon", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/hashbrown-0.14.5/tests/rayon.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "serde", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/hashbrown-0.14.5/tests/serde.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "set", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/hashbrown-0.14.5/tests/set.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "bench" + ], + "name": "bench", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/hashbrown-0.14.5/benches/bench.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "bench" + ], + "name": "insert_unique_unchecked", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/hashbrown-0.14.5/benches/insert_unique_unchecked.rs", + "test": false + } + ], + "version": "0.14.5" + }, + { + "authors": [ + "Without Boats " + ], + "categories": [], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "unicode-segmentation", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.2.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "heck is a case conversion library.", + "documentation": "https://docs.rs/heck", + "edition": "2018", + "features": { + "default": [], + "unicode": [ + "unicode-segmentation" + ], + "unicode-segmentation": [ + "dep:unicode-segmentation" + ] + }, + "homepage": "https://github.com/withoutboats/heck", + "id": "registry+https://github.com/rust-lang/crates.io-index#heck@0.4.1", + "keywords": [ + "string", + "case", + "camel", + "snake", + "unicode" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/heck-0.4.1/Cargo.toml", + "metadata": null, + "name": "heck", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/withoutboats/heck", + "rust_version": null, + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "heck", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/heck-0.4.1/src/lib.rs", + "test": true + } + ], + "version": "0.4.1" + }, + { + "authors": [], + "categories": [], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "pbjson-types", + "optional": false, + "registry": null, + "rename": null, + "req": "=0.6.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": null, + "documentation": null, + "edition": "2021", + "features": {}, + "homepage": null, + "id": "path+file://{TEMP_DIR}/host_specific_build_deps#0.0.0", + "keywords": [], + "license": null, + "license_file": null, + "links": null, + "manifest_path": "{TEMP_DIR}/host_specific_build_deps/Cargo.toml", + "metadata": null, + "name": "host_specific_build_deps", + "publish": null, + "readme": null, + "repository": null, + "rust_version": null, + "source": null, + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "host_specific_build_deps", + "src_path": "{TEMP_DIR}/host_specific_build_deps/lib.rs", + "test": true + } + ], + "version": "0.0.0" + }, + { + "authors": [], + "categories": [ + "data-structures", + "no-std" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "arbitrary", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "borsh", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "equivalent", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [ + "raw" + ], + "kind": null, + "name": "hashbrown", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.14.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "quickcheck", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "rayon", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.5.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "rustc-rayon", + "optional": true, + "registry": null, + "rename": "rustc-rayon", + "req": "^0.5", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "serde", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "fnv", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "fxhash", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "itertools", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.13", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "lazy_static", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "quickcheck", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [ + "small_rng" + ], + "kind": "dev", + "name": "rand", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.8", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serde_derive", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "A hash table with consistent order and fast iteration.", + "documentation": "https://docs.rs/indexmap/", + "edition": "2021", + "features": { + "arbitrary": [ + "dep:arbitrary" + ], + "borsh": [ + "dep:borsh" + ], + "default": [ + "std" + ], + "quickcheck": [ + "dep:quickcheck" + ], + "rayon": [ + "dep:rayon" + ], + "rustc-rayon": [ + "dep:rustc-rayon" + ], + "serde": [ + "dep:serde" + ], + "std": [], + "test_debug": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#indexmap@2.5.0", + "keywords": [ + "hashmap", + "no_std" + ], + "license": "Apache-2.0 OR MIT", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/indexmap-2.5.0/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "features": [ + "arbitrary", + "quickcheck", + "serde", + "borsh", + "rayon" + ], + "rustdoc-args": [ + "--cfg", + "docsrs" + ] + } + }, + "release": { + "allow-branch": [ + "master" + ], + "sign-tag": true, + "tag-name": "{{version}}" + } + }, + "name": "indexmap", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/indexmap-rs/indexmap", + "rust_version": "1.63", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "indexmap", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/indexmap-2.5.0/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "equivalent_trait", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/indexmap-2.5.0/tests/equivalent_trait.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "macros_full_path", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/indexmap-2.5.0/tests/macros_full_path.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "quick", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/indexmap-2.5.0/tests/quick.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "tests", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/indexmap-2.5.0/tests/tests.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "bench" + ], + "name": "bench", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/indexmap-2.5.0/benches/bench.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "bench" + ], + "name": "faststring", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/indexmap-2.5.0/benches/faststring.rs", + "test": false + } + ], + "version": "2.5.0" + }, + { + "authors": [ + "bluss" + ], + "categories": [ + "algorithms", + "rust-patterns" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "either", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "criterion", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "paste", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "permutohedron", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "quickcheck", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.9", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "rand", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.7", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Extra iterator adaptors, iterator methods, free functions, and macros.", + "documentation": "https://docs.rs/itertools/", + "edition": "2018", + "features": { + "default": [ + "use_std" + ], + "use_alloc": [], + "use_std": [ + "use_alloc", + "either/use_std" + ] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#itertools@0.11.0", + "keywords": [ + "iterator", + "data-structure", + "zip", + "product", + "group-by" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/Cargo.toml", + "metadata": null, + "name": "itertools", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/rust-itertools/itertools", + "rust_version": "1.36.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "itertools", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/src/lib.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "example" + ], + "name": "iris", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/examples/iris.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "adaptors_no_collect", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/tests/adaptors_no_collect.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "flatten_ok", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/tests/flatten_ok.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "macros_hygiene", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/tests/macros_hygiene.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "merge_join", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/tests/merge_join.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "peeking_take_while", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/tests/peeking_take_while.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "quick", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/tests/quick.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "specializations", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/tests/specializations.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_core", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/tests/test_core.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_std", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/tests/test_std.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "tuples", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/tests/tuples.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "zip", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/tests/zip.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "bench1", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/benches/bench1.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "combinations", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/benches/combinations.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "combinations_with_replacement", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/benches/combinations_with_replacement.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "fold_specialization", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/benches/fold_specialization.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "powerset", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/benches/powerset.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "tree_fold1", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/benches/tree_fold1.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "tuple_combinations", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/benches/tuple_combinations.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "tuples", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.11.0/benches/tuples.rs", + "test": false + } + ], + "version": "0.11.0" + }, + { + "authors": [ + "bluss" + ], + "categories": [ + "algorithms", + "rust-patterns" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "either", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "criterion", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "paste", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "permutohedron", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "quickcheck", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.9", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "rand", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.7", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Extra iterator adaptors, iterator methods, free functions, and macros.", + "documentation": "https://docs.rs/itertools/", + "edition": "2018", + "features": { + "default": [ + "use_std" + ], + "use_alloc": [], + "use_std": [ + "use_alloc", + "either/use_std" + ] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#itertools@0.12.1", + "keywords": [ + "iterator", + "data-structure", + "zip", + "product", + "group-by" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/Cargo.toml", + "metadata": null, + "name": "itertools", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/rust-itertools/itertools", + "rust_version": "1.43.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "itertools", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/src/lib.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "example" + ], + "name": "iris", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/examples/iris.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "adaptors_no_collect", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/tests/adaptors_no_collect.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "flatten_ok", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/tests/flatten_ok.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "macros_hygiene", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/tests/macros_hygiene.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "merge_join", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/tests/merge_join.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "peeking_take_while", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/tests/peeking_take_while.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "quick", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/tests/quick.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "specializations", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/tests/specializations.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_core", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/tests/test_core.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test_std", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/tests/test_std.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "tuples", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/tests/tuples.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "zip", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/tests/zip.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "bench1", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/benches/bench1.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "combinations", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/benches/combinations.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "combinations_with_replacement", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/benches/combinations_with_replacement.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "fold_specialization", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/benches/fold_specialization.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "powerset", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/benches/powerset.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "specializations", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/benches/specializations.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "tree_fold1", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/benches/tree_fold1.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "tuple_combinations", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/benches/tuple_combinations.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "tuples", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/itertools-0.12.1/benches/tuples.rs", + "test": false + } + ], + "version": "0.12.1" + }, + { + "authors": [ + "The Rust Project Developers" + ], + "categories": [ + "external-ffi-bindings", + "no-std", + "os" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "rustc-std-workspace-core", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Raw FFI bindings to platform libraries like libc.\n", + "documentation": "https://docs.rs/libc/", + "edition": "2015", + "features": { + "align": [], + "const-extern-fn": [], + "default": [ + "std" + ], + "extra_traits": [], + "rustc-dep-of-std": [ + "align", + "rustc-std-workspace-core" + ], + "rustc-std-workspace-core": [ + "dep:rustc-std-workspace-core" + ], + "std": [], + "use_std": [ + "std" + ] + }, + "homepage": "https://github.com/rust-lang/libc", + "id": "registry+https://github.com/rust-lang/crates.io-index#libc@0.2.158", + "keywords": [ + "libc", + "ffi", + "bindings", + "operating", + "system" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/libc-0.2.158/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "cargo-args": [ + "-Zbuild-std=core" + ], + "default-target": "x86_64-unknown-linux-gnu", + "features": [ + "const-extern-fn", + "extra_traits" + ], + "targets": [ + "aarch64-apple-darwin", + "aarch64-apple-ios", + "aarch64-linux-android", + "aarch64-pc-windows-msvc", + "aarch64-unknown-freebsd", + "aarch64-unknown-fuchsia", + "aarch64-unknown-hermit", + "aarch64-unknown-linux-gnu", + "aarch64-unknown-linux-musl", + "aarch64-unknown-netbsd", + "aarch64-unknown-openbsd", + "aarch64-wrs-vxworks", + "arm-linux-androideabi", + "arm-unknown-linux-gnueabi", + "arm-unknown-linux-gnueabihf", + "arm-unknown-linux-musleabi", + "arm-unknown-linux-musleabihf", + "armebv7r-none-eabi", + "armebv7r-none-eabihf", + "armv5te-unknown-linux-gnueabi", + "armv5te-unknown-linux-musleabi", + "armv7-linux-androideabi", + "armv7-unknown-linux-gnueabihf", + "armv7-unknown-linux-musleabihf", + "armv7-wrs-vxworks-eabihf", + "armv7r-none-eabi", + "armv7r-none-eabihf", + "i586-pc-windows-msvc", + "i586-unknown-linux-gnu", + "i586-unknown-linux-musl", + "i686-linux-android", + "i686-pc-windows-gnu", + "i686-pc-windows-msvc", + "i686-pc-windows-msvc", + "i686-unknown-freebsd", + "i686-unknown-haiku", + "i686-unknown-linux-gnu", + "i686-unknown-linux-musl", + "i686-unknown-netbsd", + "i686-unknown-openbsd", + "i686-wrs-vxworks", + "mips-unknown-linux-gnu", + "mips-unknown-linux-musl", + "mips64-unknown-linux-gnuabi64", + "mips64-unknown-linux-muslabi64", + "mips64el-unknown-linux-gnuabi64", + "mips64el-unknown-linux-muslabi64", + "mipsel-sony-psp", + "mipsel-unknown-linux-gnu", + "mipsel-unknown-linux-musl", + "nvptx64-nvidia-cuda", + "powerpc-unknown-linux-gnu", + "powerpc-unknown-linux-gnuspe", + "powerpc-unknown-netbsd", + "powerpc-wrs-vxworks", + "powerpc-wrs-vxworks-spe", + "powerpc64-unknown-freebsd", + "powerpc64-unknown-linux-gnu", + "powerpc64-wrs-vxworks", + "powerpc64le-unknown-linux-gnu", + "riscv32gc-unknown-linux-gnu", + "riscv32i-unknown-none-elf", + "riscv32imac-unknown-none-elf", + "riscv32imc-unknown-none-elf", + "riscv64gc-unknown-freebsd", + "riscv64gc-unknown-hermit", + "riscv64gc-unknown-linux-gnu", + "riscv64gc-unknown-linux-musl", + "riscv64gc-unknown-none-elf", + "riscv64imac-unknown-none-elf", + "s390x-unknown-linux-gnu", + "s390x-unknown-linux-musl", + "sparc-unknown-linux-gnu", + "sparc64-unknown-linux-gnu", + "sparc64-unknown-netbsd", + "sparcv9-sun-solaris", + "thumbv6m-none-eabi", + "thumbv7em-none-eabi", + "thumbv7em-none-eabihf", + "thumbv7m-none-eabi", + "thumbv7neon-linux-androideabi", + "thumbv7neon-unknown-linux-gnueabihf", + "wasm32-unknown-emscripten", + "wasm32-unknown-unknown", + "wasm32-wasi", + "x86_64-apple-darwin", + "x86_64-apple-ios", + "x86_64-fortanix-unknown-sgx", + "x86_64-linux-android", + "x86_64-pc-solaris", + "x86_64-pc-windows-gnu", + "x86_64-pc-windows-msvc", + "x86_64-unknown-dragonfly", + "x86_64-unknown-freebsd", + "x86_64-unknown-fuchsia", + "x86_64-unknown-haiku", + "x86_64-unknown-hermit", + "x86_64-unknown-illumos", + "x86_64-unknown-l4re-uclibc", + "x86_64-unknown-linux-gnu", + "x86_64-unknown-linux-gnux32", + "x86_64-unknown-linux-musl", + "x86_64-unknown-netbsd", + "x86_64-unknown-openbsd", + "x86_64-unknown-redox", + "x86_64-wrs-vxworks" + ] + } + } + }, + "name": "libc", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/rust-lang/libc", + "rust_version": null, + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2015", + "kind": [ + "lib" + ], + "name": "libc", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/libc-0.2.158/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2015", + "kind": [ + "test" + ], + "name": "const_fn", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/libc-0.2.158/tests/const_fn.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2015", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/libc-0.2.158/build.rs", + "test": false + } + ], + "version": "0.2.158" + }, + { + "authors": [ + "Dan Gohman " + ], + "categories": [ + "external-ffi-bindings" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "compiler_builtins", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.1.49", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "rustc-std-workspace-core", + "optional": true, + "registry": null, + "rename": "core", + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "libc", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2.100", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "static_assertions", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Generated bindings for Linux's userspace API", + "documentation": "https://docs.rs/linux-raw-sys", + "edition": "2021", + "features": { + "bootparam": [], + "compiler_builtins": [ + "dep:compiler_builtins" + ], + "core": [ + "dep:core" + ], + "default": [ + "std", + "general", + "errno" + ], + "elf": [], + "errno": [], + "general": [], + "if_arp": [], + "if_ether": [], + "if_packet": [], + "io_uring": [], + "ioctl": [], + "loop_device": [], + "mempolicy": [], + "net": [], + "netlink": [], + "no_std": [], + "prctl": [], + "rustc-dep-of-std": [ + "core", + "compiler_builtins", + "no_std" + ], + "std": [], + "system": [], + "xdp": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#linux-raw-sys@0.4.14", + "keywords": [ + "linux", + "uapi", + "ffi" + ], + "license": "Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/linux-raw-sys-0.4.14/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "features": [ + "default", + "bootparam", + "ioctl", + "netlink", + "io_uring", + "if_arp", + "if_ether", + "if_packet", + "net", + "prctl", + "elf", + "xdp", + "mempolicy", + "system", + "loop_device" + ], + "targets": [ + "x86_64-unknown-linux-gnu", + "i686-unknown-linux-gnu" + ] + } + } + }, + "name": "linux-raw-sys", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/sunfishcode/linux-raw-sys", + "rust_version": "1.63", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "linux_raw_sys", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/linux-raw-sys-0.4.14/src/lib.rs", + "test": true + } + ], + "version": "0.4.14" + }, + { + "authors": [ + "The Rust Project Developers" + ], + "categories": [ + "development-tools::debugging" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "serde", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "sval", + "optional": true, + "registry": null, + "rename": null, + "req": "^2.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "sval_ref", + "optional": true, + "registry": null, + "rename": null, + "req": "^2.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [ + "inline-i128" + ], + "kind": null, + "name": "value-bag", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.7", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "proc-macro2", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.63", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [ + "derive" + ], + "kind": "dev", + "name": "serde", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serde_json", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serde_test", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "sval", + "optional": false, + "registry": null, + "rename": null, + "req": "^2.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "sval_derive", + "optional": false, + "registry": null, + "rename": null, + "req": "^2.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "test" + ], + "kind": "dev", + "name": "value-bag", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.7", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "A lightweight logging facade for Rust\n", + "documentation": "https://docs.rs/log", + "edition": "2021", + "features": { + "kv": [], + "kv_serde": [ + "kv_std", + "value-bag/serde", + "serde" + ], + "kv_std": [ + "std", + "kv", + "value-bag/error" + ], + "kv_sval": [ + "kv", + "value-bag/sval", + "sval", + "sval_ref" + ], + "kv_unstable": [ + "kv", + "value-bag" + ], + "kv_unstable_serde": [ + "kv_serde", + "kv_unstable_std" + ], + "kv_unstable_std": [ + "kv_std", + "kv_unstable" + ], + "kv_unstable_sval": [ + "kv_sval", + "kv_unstable" + ], + "max_level_debug": [], + "max_level_error": [], + "max_level_info": [], + "max_level_off": [], + "max_level_trace": [], + "max_level_warn": [], + "release_max_level_debug": [], + "release_max_level_error": [], + "release_max_level_info": [], + "release_max_level_off": [], + "release_max_level_trace": [], + "release_max_level_warn": [], + "serde": [ + "dep:serde" + ], + "std": [], + "sval": [ + "dep:sval" + ], + "sval_ref": [ + "dep:sval_ref" + ], + "value-bag": [ + "dep:value-bag" + ] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#log@0.4.22", + "keywords": [ + "logging" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/log-0.4.22/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "features": [ + "std", + "serde", + "kv_std", + "kv_sval", + "kv_serde" + ] + } + } + }, + "name": "log", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/rust-lang/log", + "rust_version": "1.60.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "log", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/log-0.4.22/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "integration", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/log-0.4.22/tests/integration.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "macros", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/log-0.4.22/tests/macros.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "bench" + ], + "name": "value", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/log-0.4.22/benches/value.rs", + "test": false + } + ], + "version": "0.4.22" + }, + { + "authors": [ + "Andrew Gallant ", + "bluss" + ], + "categories": [], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "compiler_builtins", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.1.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "rustc-std-workspace-core", + "optional": true, + "registry": null, + "rename": "core", + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "log", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.4.20", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "quickcheck", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + } + ], + "description": "Provides extremely fast (uses SIMD on x86_64, aarch64 and wasm32) routines for\n1, 2 or 3 byte search and single substring search.\n", + "documentation": "https://docs.rs/memchr/", + "edition": "2021", + "features": { + "alloc": [], + "compiler_builtins": [ + "dep:compiler_builtins" + ], + "core": [ + "dep:core" + ], + "default": [ + "std" + ], + "libc": [], + "logging": [ + "dep:log" + ], + "rustc-dep-of-std": [ + "core", + "compiler_builtins" + ], + "std": [ + "alloc" + ], + "use_std": [ + "std" + ] + }, + "homepage": "https://github.com/BurntSushi/memchr", + "id": "registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.4", + "keywords": [ + "memchr", + "memmem", + "substring", + "find", + "search" + ], + "license": "Unlicense OR MIT", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/memchr-2.7.4/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "rustdoc-args": [ + "--generate-link-to-definition" + ] + } + } + }, + "name": "memchr", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/BurntSushi/memchr", + "rust_version": "1.61", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "memchr", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/memchr-2.7.4/src/lib.rs", + "test": true + } + ], + "version": "2.7.4" + }, + { + "authors": [ + "H\u00e5var N\u00f8vik " + ], + "categories": [], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "serde", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serde_test", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "A multimap implementation.", + "documentation": "https://docs.rs/multimap", + "edition": "2015", + "features": { + "default": [ + "serde_impl" + ], + "serde": [ + "dep:serde" + ], + "serde_impl": [ + "serde" + ] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#multimap@0.10.0", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/multimap-0.10.0/Cargo.toml", + "metadata": null, + "name": "multimap", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/havarnov/multimap", + "rust_version": null, + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2015", + "kind": [ + "lib" + ], + "name": "multimap", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/multimap-0.10.0/src/lib.rs", + "test": true + } + ], + "version": "0.10.0" + }, + { + "authors": [ + "The Rust Project Developers" + ], + "categories": [ + "algorithms", + "science", + "no-std" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "libm", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.2.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "build", + "name": "autocfg", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Numeric traits for generic mathematics", + "documentation": "https://docs.rs/num-traits", + "edition": "2021", + "features": { + "default": [ + "std" + ], + "i128": [], + "libm": [ + "dep:libm" + ], + "std": [] + }, + "homepage": "https://github.com/rust-num/num-traits", + "id": "registry+https://github.com/rust-lang/crates.io-index#num-traits@0.2.19", + "keywords": [ + "mathematics", + "numerics" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/num-traits-0.2.19/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "features": [ + "std" + ], + "rustdoc-args": [ + "--generate-link-to-definition" + ] + } + } + }, + "name": "num-traits", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/rust-num/num-traits", + "rust_version": "1.60", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "num_traits", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/num-traits-0.2.19/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "cast", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/num-traits-0.2.19/tests/cast.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/num-traits-0.2.19/build.rs", + "test": false + } + ], + "version": "0.2.19" + }, + { + "authors": [ + "Aleksey Kladov " + ], + "categories": [ + "rust-patterns", + "memory-management" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "critical-section", + "optional": true, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "parking_lot_core", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.9.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "portable-atomic", + "optional": true, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "std" + ], + "kind": "dev", + "name": "critical-section", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.1.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "regex", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.2.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Single assignment cells and lazy values.", + "documentation": "https://docs.rs/once_cell", + "edition": "2021", + "features": { + "alloc": [ + "race" + ], + "atomic-polyfill": [ + "critical-section" + ], + "critical-section": [ + "dep:critical-section", + "portable-atomic" + ], + "default": [ + "std" + ], + "parking_lot": [ + "dep:parking_lot_core" + ], + "portable-atomic": [ + "dep:portable-atomic" + ], + "race": [], + "std": [ + "alloc" + ], + "unstable": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#once_cell@1.19.0", + "keywords": [ + "lazy", + "static" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/once_cell-1.19.0/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "all-features": true, + "rustdoc-args": [ + "--generate-link-to-definition" + ] + } + } + }, + "name": "once_cell", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/matklad/once_cell", + "rust_version": "1.60", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "once_cell", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/once_cell-1.19.0/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "example" + ], + "name": "bench", + "required-features": [ + "std" + ], + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/once_cell-1.19.0/examples/bench.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "example" + ], + "name": "bench_acquire", + "required-features": [ + "std" + ], + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/once_cell-1.19.0/examples/bench_acquire.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "example" + ], + "name": "lazy_static", + "required-features": [ + "std" + ], + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/once_cell-1.19.0/examples/lazy_static.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "example" + ], + "name": "reentrant_init_deadlocks", + "required-features": [ + "std" + ], + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/once_cell-1.19.0/examples/reentrant_init_deadlocks.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "example" + ], + "name": "regex", + "required-features": [ + "std" + ], + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/once_cell-1.19.0/examples/regex.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "example" + ], + "name": "test_synchronization", + "required-features": [ + "std" + ], + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/once_cell-1.19.0/examples/test_synchronization.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "it", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/once_cell-1.19.0/tests/it/main.rs", + "test": true + } + ], + "version": "1.19.0" + }, + { + "authors": [ + "Raphael Taylor-Davies " + ], + "categories": [ + "encoding" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "base64", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.21", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "derive" + ], + "kind": null, + "name": "serde", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "bytes", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "rand", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.8", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Utilities for pbjson conversion", + "documentation": null, + "edition": "2021", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#pbjson@0.6.0", + "keywords": [ + "protobuf", + "json", + "serde" + ], + "license": "MIT", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/pbjson-0.6.0/Cargo.toml", + "metadata": null, + "name": "pbjson", + "publish": null, + "readme": null, + "repository": "https://github.com/influxdata/pbjson", + "rust_version": null, + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "pbjson", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/pbjson-0.6.0/src/lib.rs", + "test": true + } + ], + "version": "0.6.0" + }, + { + "authors": [ + "Raphael Taylor-Davies " + ], + "categories": [ + "encoding" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "heck", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "itertools", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.11", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "prost", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.12", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "prost-types", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.12", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "tempfile", + "optional": false, + "registry": null, + "rename": null, + "req": "^3.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Generates Serialize and Deserialize implementations for prost message types", + "documentation": null, + "edition": "2021", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#pbjson-build@0.6.2", + "keywords": [ + "protobuf", + "json", + "serde" + ], + "license": "MIT", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/pbjson-build-0.6.2/Cargo.toml", + "metadata": null, + "name": "pbjson-build", + "publish": null, + "readme": null, + "repository": "https://github.com/influxdata/pbjson", + "rust_version": null, + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "pbjson_build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/pbjson-build-0.6.2/src/lib.rs", + "test": true + } + ], + "version": "0.6.2" + }, + { + "authors": [ + "Raphael Taylor-Davies " + ], + "categories": [ + "encoding" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "bytes", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "alloc" + ], + "kind": null, + "name": "chrono", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "pbjson", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "prost", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.12", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "derive" + ], + "kind": null, + "name": "serde", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serde_json", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "build", + "name": "pbjson-build", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "build", + "name": "prost-build", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.12", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Protobuf well known types with serde serialization support", + "documentation": null, + "edition": "2021", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#pbjson-types@0.6.0", + "keywords": [ + "protobuf", + "json", + "serde" + ], + "license": "MIT", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/pbjson-types-0.6.0/Cargo.toml", + "metadata": null, + "name": "pbjson-types", + "publish": null, + "readme": null, + "repository": "https://github.com/influxdata/pbjson", + "rust_version": null, + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "pbjson_types", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/pbjson-types-0.6.0/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/pbjson-types-0.6.0/build.rs", + "test": false + } + ], + "version": "0.6.0" + }, + { + "authors": [ + "bluss", + "mitchmindtree" + ], + "categories": [ + "data-structures" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "fixedbitset", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "indexmap", + "optional": false, + "registry": null, + "rename": null, + "req": "^2.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "quickcheck", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.8", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "rayon", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.5.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "serde", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "serde_derive", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "ahash", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.7.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "bincode", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.3.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "defmac", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "fxhash", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "itertools", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.12.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "odds", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "rand", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.5.5", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Graph data structure library. Provides graph types and graph algorithms.", + "documentation": "https://docs.rs/petgraph/", + "edition": "2018", + "features": { + "all": [ + "unstable", + "quickcheck", + "matrix_graph", + "stable_graph", + "graphmap", + "rayon" + ], + "default": [ + "graphmap", + "stable_graph", + "matrix_graph" + ], + "generate": [], + "graphmap": [], + "matrix_graph": [], + "quickcheck": [ + "dep:quickcheck" + ], + "rayon": [ + "dep:rayon", + "indexmap/rayon" + ], + "serde": [ + "dep:serde" + ], + "serde-1": [ + "serde", + "serde_derive" + ], + "serde_derive": [ + "dep:serde_derive" + ], + "stable_graph": [], + "unstable": [ + "generate" + ] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#petgraph@0.6.5", + "keywords": [ + "data-structure", + "graph", + "unionfind", + "graph-algorithms" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "features": [ + "rayon", + "serde-1", + "quickcheck" + ] + } + }, + "release": { + "no-dev-version": true + } + }, + "name": "petgraph", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/petgraph/petgraph", + "rust_version": "1.64", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "petgraph", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "floyd_warshall", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/floyd_warshall.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "ford_fulkerson", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/ford_fulkerson.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "graph", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/graph.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "graphmap", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/graphmap.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "iso", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/iso.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "k_shortest_path", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/k_shortest_path.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "list", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/list.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "matching", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/matching.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "min_spanning_tree", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/min_spanning_tree.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "operator", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/operator.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "page_rank", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/page_rank.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "quickcheck", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/quickcheck.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "stable_graph", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/stable_graph.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "unionfind", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/tests/unionfind.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "bellman_ford", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/bellman_ford.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "dijkstra", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/dijkstra.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "feedback_arc_set", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/feedback_arc_set.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "floyd_warshall", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/floyd_warshall.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "ford_fulkerson", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/ford_fulkerson.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "graphmap", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/graphmap.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "iso", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/iso.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "k_shortest_path", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/k_shortest_path.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "matching", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/matching.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "matrix_graph", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/matrix_graph.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "min_spanning_tree", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/min_spanning_tree.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "ograph", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/ograph.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "page_rank", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/page_rank.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "serialize", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/serialize.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "stable_graph", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/stable_graph.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "unionfind", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/petgraph-0.6.5/benches/unionfind.rs", + "test": false + } + ], + "version": "0.6.5" + }, + { + "authors": [ + "David Tolnay " + ], + "categories": [ + "development-tools" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "proc-macro2", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.80", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [ + "full" + ], + "kind": null, + "name": "syn", + "optional": false, + "registry": null, + "rename": null, + "req": "^2.0.76", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "indoc", + "optional": false, + "registry": null, + "rename": null, + "req": "^2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "proc-macro2", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.80", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "quote", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.35", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [ + "parsing" + ], + "kind": "dev", + "name": "syn", + "optional": false, + "registry": null, + "rename": null, + "req": "^2.0.76", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + } + ], + "description": "A minimal `syn` syntax tree pretty-printer", + "documentation": "https://docs.rs/prettyplease", + "edition": "2021", + "features": { + "verbatim": [ + "syn/parsing" + ] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#prettyplease@0.2.22", + "keywords": [ + "rustfmt" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": "prettyplease02", + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/prettyplease-0.2.22/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "rustdoc-args": [ + "--generate-link-to-definition" + ], + "targets": [ + "x86_64-unknown-linux-gnu" + ] + } + }, + "playground": { + "features": [ + "verbatim" + ] + } + }, + "name": "prettyplease", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/dtolnay/prettyplease", + "rust_version": "1.61", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "prettyplease", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/prettyplease-0.2.22/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/prettyplease-0.2.22/tests/test.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/prettyplease-0.2.22/build.rs", + "test": false + } + ], + "version": "0.2.22" + }, + { + "authors": [ + "David Tolnay ", + "Alex Crichton " + ], + "categories": [ + "development-tools::procedural-macro-helpers" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "unicode-ident", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "flate2", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "quote", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "rayon", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "rustversion", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "tar", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "A substitute implementation of the compiler's `proc_macro` API to decouple token-based libraries from the procedural macro use case.", + "documentation": "https://docs.rs/proc-macro2", + "edition": "2021", + "features": { + "default": [ + "proc-macro" + ], + "nightly": [], + "proc-macro": [], + "span-locations": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.86", + "keywords": [ + "macros", + "syn" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.86/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "rustc-args": [ + "--cfg", + "procmacro2_semver_exempt" + ], + "rustdoc-args": [ + "--cfg", + "procmacro2_semver_exempt", + "--generate-link-to-definition" + ], + "targets": [ + "x86_64-unknown-linux-gnu" + ] + } + }, + "playground": { + "features": [ + "span-locations" + ] + } + }, + "name": "proc-macro2", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/dtolnay/proc-macro2", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "proc_macro2", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.86/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "comments", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.86/tests/comments.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "features", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.86/tests/features.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "marker", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.86/tests/marker.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.86/tests/test.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_fmt", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.86/tests/test_fmt.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_size", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.86/tests/test_size.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/proc-macro2-1.0.86/build.rs", + "test": false + } + ], + "version": "1.0.86" + }, + { + "authors": [ + "Dan Burkert ", + "Lucio Franco ", + "Casper Meijn ", + "Tokio Contributors " + ], + "categories": [ + "encoding" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "bytes", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "prost-derive", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.12.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "criterion", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "proptest", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "rand", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.8", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "A Protocol Buffers implementation for the Rust Language.", + "documentation": "https://docs.rs/prost", + "edition": "2021", + "features": { + "default": [ + "derive", + "std" + ], + "derive": [ + "dep:prost-derive" + ], + "no-recursion-limit": [], + "prost-derive": [ + "derive" + ], + "std": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#prost@0.12.6", + "keywords": [ + "protobuf", + "serialization" + ], + "license": "Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/prost-0.12.6/Cargo.toml", + "metadata": null, + "name": "prost", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/tokio-rs/prost", + "rust_version": "1.70", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "prost", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/prost-0.12.6/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "bench" + ], + "name": "varint", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/prost-0.12.6/benches/varint.rs", + "test": false + } + ], + "version": "0.12.6" + }, + { + "authors": [ + "Dan Burkert ", + "Lucio Franco ", + "Casper Meijn ", + "Tokio Contributors " + ], + "categories": [], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "bytes", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "heck", + "optional": false, + "registry": null, + "rename": null, + "req": ">=0.4, <=0.5", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "use_alloc" + ], + "kind": null, + "name": "itertools", + "optional": false, + "registry": null, + "rename": null, + "req": ">=0.10, <=0.12", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "log", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4.4", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "multimap", + "optional": false, + "registry": null, + "rename": null, + "req": ">=0.8, <=0.10", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "once_cell", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.17.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "petgraph", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "prettyplease", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "prost", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.12.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "prost-types", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.12.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "pulldown-cmark", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.9.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "pulldown-cmark-to-cmark", + "optional": true, + "registry": null, + "rename": null, + "req": "^10.0.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "std", + "unicode-bool" + ], + "kind": null, + "name": "regex", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.8.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [ + "full" + ], + "kind": null, + "name": "syn", + "optional": true, + "registry": null, + "rename": null, + "req": "^2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "tempfile", + "optional": false, + "registry": null, + "rename": null, + "req": "^3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "env_logger", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.10", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + } + ], + "description": "Generate Prost annotated Rust types from Protocol Buffers files.", + "documentation": "https://docs.rs/prost-build", + "edition": "2021", + "features": { + "cleanup-markdown": [ + "dep:pulldown-cmark", + "dep:pulldown-cmark-to-cmark" + ], + "default": [ + "format" + ], + "format": [ + "dep:prettyplease", + "dep:syn" + ] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#prost-build@0.12.6", + "keywords": [], + "license": "Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/prost-build-0.12.6/Cargo.toml", + "metadata": null, + "name": "prost-build", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/tokio-rs/prost", + "rust_version": "1.70", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "prost_build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/prost-build-0.12.6/src/lib.rs", + "test": true + } + ], + "version": "0.12.6" + }, + { + "authors": [ + "Dan Burkert ", + "Lucio Franco ", + "Casper Meijn ", + "Tokio Contributors " + ], + "categories": [], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "anyhow", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "use_alloc" + ], + "kind": null, + "name": "itertools", + "optional": false, + "registry": null, + "rename": null, + "req": ">=0.10, <=0.12", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "proc-macro2", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "quote", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "extra-traits" + ], + "kind": null, + "name": "syn", + "optional": false, + "registry": null, + "rename": null, + "req": "^2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Generate encoding and decoding implementations for Prost annotated types.", + "documentation": "https://docs.rs/prost-derive", + "edition": "2021", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#prost-derive@0.12.6", + "keywords": [], + "license": "Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/prost-derive-0.12.6/Cargo.toml", + "metadata": null, + "name": "prost-derive", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/tokio-rs/prost", + "rust_version": "1.70", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "proc-macro" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "proc-macro" + ], + "name": "prost_derive", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/prost-derive-0.12.6/src/lib.rs", + "test": true + } + ], + "version": "0.12.6" + }, + { + "authors": [ + "Dan Burkert ", + "Lucio Franco ", + "Casper Meijn ", + "Tokio Contributors " + ], + "categories": [], + "default_run": null, + "dependencies": [ + { + "features": [ + "prost-derive" + ], + "kind": null, + "name": "prost", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.12.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "proptest", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Prost definitions of Protocol Buffers well known types.", + "documentation": "https://docs.rs/prost-types", + "edition": "2021", + "features": { + "default": [ + "std" + ], + "std": [ + "prost/std" + ] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#prost-types@0.12.6", + "keywords": [], + "license": "Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/prost-types-0.12.6/Cargo.toml", + "metadata": null, + "name": "prost-types", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/tokio-rs/prost", + "rust_version": "1.70", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": false, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "prost_types", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/prost-types-0.12.6/src/lib.rs", + "test": true + } + ], + "version": "0.12.6" + }, + { + "authors": [ + "David Tolnay " + ], + "categories": [ + "development-tools::procedural-macro-helpers" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "proc-macro2", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.80", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "rustversion", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "diff" + ], + "kind": "dev", + "name": "trybuild", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.66", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Quasi-quoting macro quote!(...)", + "documentation": "https://docs.rs/quote/", + "edition": "2018", + "features": { + "default": [ + "proc-macro" + ], + "proc-macro": [ + "proc-macro2/proc-macro" + ] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.37", + "keywords": [ + "macros", + "syn" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/quote-1.0.37/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "rustdoc-args": [ + "--generate-link-to-definition" + ], + "targets": [ + "x86_64-unknown-linux-gnu" + ] + } + } + }, + "name": "quote", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/dtolnay/quote", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "quote", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/quote-1.0.37/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "compiletest", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/quote-1.0.37/tests/compiletest.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "test", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/quote-1.0.37/tests/test.rs", + "test": true + } + ], + "version": "1.0.37" + }, + { + "authors": [ + "The Rust Project Developers", + "Andrew Gallant " + ], + "categories": [ + "text-processing" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "aho-corasick", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "memchr", + "optional": true, + "registry": null, + "rename": null, + "req": "^2.6.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [ + "alloc", + "syntax", + "meta", + "nfa-pikevm" + ], + "kind": null, + "name": "regex-automata", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4.4", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "regex-syntax", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.8.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "anyhow", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.69", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "doc-comment", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "atty", + "humantime", + "termcolor" + ], + "kind": "dev", + "name": "env_logger", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.9.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "once_cell", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.17.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "quickcheck", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "regex-test", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "An implementation of regular expressions for Rust. This implementation uses\nfinite automata and guarantees linear time matching on all inputs.\n", + "documentation": "https://docs.rs/regex", + "edition": "2021", + "features": { + "default": [ + "std", + "perf", + "unicode", + "regex-syntax/default" + ], + "logging": [ + "aho-corasick?/logging", + "memchr?/logging", + "regex-automata/logging" + ], + "pattern": [], + "perf": [ + "perf-cache", + "perf-dfa", + "perf-onepass", + "perf-backtrack", + "perf-inline", + "perf-literal" + ], + "perf-backtrack": [ + "regex-automata/nfa-backtrack" + ], + "perf-cache": [], + "perf-dfa": [ + "regex-automata/hybrid" + ], + "perf-dfa-full": [ + "regex-automata/dfa-build", + "regex-automata/dfa-search" + ], + "perf-inline": [ + "regex-automata/perf-inline" + ], + "perf-literal": [ + "dep:aho-corasick", + "dep:memchr", + "regex-automata/perf-literal" + ], + "perf-onepass": [ + "regex-automata/dfa-onepass" + ], + "std": [ + "aho-corasick?/std", + "memchr?/std", + "regex-automata/std", + "regex-syntax/std" + ], + "unicode": [ + "unicode-age", + "unicode-bool", + "unicode-case", + "unicode-gencat", + "unicode-perl", + "unicode-script", + "unicode-segment", + "regex-automata/unicode", + "regex-syntax/unicode" + ], + "unicode-age": [ + "regex-automata/unicode-age", + "regex-syntax/unicode-age" + ], + "unicode-bool": [ + "regex-automata/unicode-bool", + "regex-syntax/unicode-bool" + ], + "unicode-case": [ + "regex-automata/unicode-case", + "regex-syntax/unicode-case" + ], + "unicode-gencat": [ + "regex-automata/unicode-gencat", + "regex-syntax/unicode-gencat" + ], + "unicode-perl": [ + "regex-automata/unicode-perl", + "regex-automata/unicode-word-boundary", + "regex-syntax/unicode-perl" + ], + "unicode-script": [ + "regex-automata/unicode-script", + "regex-syntax/unicode-script" + ], + "unicode-segment": [ + "regex-automata/unicode-segment", + "regex-syntax/unicode-segment" + ], + "unstable": [ + "pattern" + ], + "use_std": [ + "std" + ] + }, + "homepage": "https://github.com/rust-lang/regex", + "id": "registry+https://github.com/rust-lang/crates.io-index#regex@1.10.6", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/regex-1.10.6/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "all-features": true, + "rustdoc-args": [ + "--cfg", + "docsrs" + ] + } + } + }, + "name": "regex", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/rust-lang/regex", + "rust_version": "1.65", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "regex", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/regex-1.10.6/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "integration", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/regex-1.10.6/tests/lib.rs", + "test": true + } + ], + "version": "1.10.6" + }, + { + "authors": [ + "The Rust Project Developers", + "Andrew Gallant " + ], + "categories": [ + "text-processing" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "aho-corasick", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "log", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.4.14", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "memchr", + "optional": true, + "registry": null, + "rename": null, + "req": "^2.6.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "regex-syntax", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.8.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "anyhow", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.69", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "std" + ], + "kind": "dev", + "name": "bstr", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.3.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "doc-comment", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.3.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "atty", + "humantime", + "termcolor" + ], + "kind": "dev", + "name": "env_logger", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.9.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "quickcheck", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "regex-test", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Automata construction and matching using regular expressions.", + "documentation": "https://docs.rs/regex-automata", + "edition": "2021", + "features": { + "alloc": [], + "default": [ + "std", + "syntax", + "perf", + "unicode", + "meta", + "nfa", + "dfa", + "hybrid" + ], + "dfa": [ + "dfa-build", + "dfa-search", + "dfa-onepass" + ], + "dfa-build": [ + "nfa-thompson", + "dfa-search" + ], + "dfa-onepass": [ + "nfa-thompson" + ], + "dfa-search": [], + "hybrid": [ + "alloc", + "nfa-thompson" + ], + "internal-instrument": [ + "internal-instrument-pikevm" + ], + "internal-instrument-pikevm": [ + "logging", + "std" + ], + "logging": [ + "dep:log", + "aho-corasick?/logging", + "memchr?/logging" + ], + "meta": [ + "syntax", + "nfa-pikevm" + ], + "nfa": [ + "nfa-thompson", + "nfa-pikevm", + "nfa-backtrack" + ], + "nfa-backtrack": [ + "nfa-thompson" + ], + "nfa-pikevm": [ + "nfa-thompson" + ], + "nfa-thompson": [ + "alloc" + ], + "perf": [ + "perf-inline", + "perf-literal" + ], + "perf-inline": [], + "perf-literal": [ + "perf-literal-substring", + "perf-literal-multisubstring" + ], + "perf-literal-multisubstring": [ + "std", + "dep:aho-corasick" + ], + "perf-literal-substring": [ + "aho-corasick?/perf-literal", + "dep:memchr" + ], + "std": [ + "regex-syntax?/std", + "memchr?/std", + "aho-corasick?/std", + "alloc" + ], + "syntax": [ + "dep:regex-syntax", + "alloc" + ], + "unicode": [ + "unicode-age", + "unicode-bool", + "unicode-case", + "unicode-gencat", + "unicode-perl", + "unicode-script", + "unicode-segment", + "unicode-word-boundary", + "regex-syntax?/unicode" + ], + "unicode-age": [ + "regex-syntax?/unicode-age" + ], + "unicode-bool": [ + "regex-syntax?/unicode-bool" + ], + "unicode-case": [ + "regex-syntax?/unicode-case" + ], + "unicode-gencat": [ + "regex-syntax?/unicode-gencat" + ], + "unicode-perl": [ + "regex-syntax?/unicode-perl" + ], + "unicode-script": [ + "regex-syntax?/unicode-script" + ], + "unicode-segment": [ + "regex-syntax?/unicode-segment" + ], + "unicode-word-boundary": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#regex-automata@0.4.7", + "keywords": [ + "regex", + "dfa", + "automata", + "automaton", + "nfa" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/regex-automata-0.4.7/Cargo.toml", + "metadata": null, + "name": "regex-automata", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/rust-lang/regex/tree/master/regex-automata", + "rust_version": "1.65", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "regex_automata", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/regex-automata-0.4.7/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "integration", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/regex-automata-0.4.7/tests/lib.rs", + "test": true + } + ], + "version": "0.4.7" + }, + { + "authors": [ + "The Rust Project Developers", + "Andrew Gallant " + ], + "categories": [], + "default_run": null, + "dependencies": [ + { + "features": [ + "derive" + ], + "kind": null, + "name": "arbitrary", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.3.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "A regular expression parser.", + "documentation": "https://docs.rs/regex-syntax", + "edition": "2021", + "features": { + "arbitrary": [ + "dep:arbitrary" + ], + "default": [ + "std", + "unicode" + ], + "std": [], + "unicode": [ + "unicode-age", + "unicode-bool", + "unicode-case", + "unicode-gencat", + "unicode-perl", + "unicode-script", + "unicode-segment" + ], + "unicode-age": [], + "unicode-bool": [], + "unicode-case": [], + "unicode-gencat": [], + "unicode-perl": [], + "unicode-script": [], + "unicode-segment": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#regex-syntax@0.8.4", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/regex-syntax-0.8.4/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "all-features": true, + "rustdoc-args": [ + "--cfg", + "docsrs" + ] + } + } + }, + "name": "regex-syntax", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/rust-lang/regex/tree/master/regex-syntax", + "rust_version": "1.65", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "regex_syntax", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/regex-syntax-0.8.4/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "bench" + ], + "name": "bench", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/regex-syntax-0.8.4/benches/bench.rs", + "test": false + } + ], + "version": "0.8.4" + }, + { + "authors": [ + "Dan Gohman ", + "Jakub Konka " + ], + "categories": [ + "os::unix-apis", + "date-and-time", + "filesystem", + "network-programming" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "bitflags", + "optional": false, + "registry": null, + "rename": null, + "req": "^2.4.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "compiler_builtins", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.1.49", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "rustc-std-workspace-core", + "optional": true, + "registry": null, + "rename": "core", + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "itoa", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "rustc-std-workspace-alloc", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "flate2", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "libc", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2.156", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "errno", + "optional": false, + "registry": null, + "rename": "libc_errno", + "req": "^0.3.8", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "memoffset", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.9.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serial_test", + "optional": false, + "registry": null, + "rename": null, + "req": "^2.0.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "static_assertions", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.1.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "tempfile", + "optional": false, + "registry": null, + "rename": null, + "req": "^3.5.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "general", + "ioctl", + "no_std" + ], + "kind": null, + "name": "linux-raw-sys", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4.14", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(any(target_os = \"android\", target_os = \"linux\"), any(rustix_use_libc, miri, not(all(target_os = \"linux\", target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"riscv64\", all(rustix_use_experimental_asm, target_arch = \"powerpc64\"), all(rustix_use_experimental_asm, target_arch = \"mips\"), all(rustix_use_experimental_asm, target_arch = \"mips32r6\"), all(rustix_use_experimental_asm, target_arch = \"mips64\"), all(rustix_use_experimental_asm, target_arch = \"mips64r6\"), target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\")))))))", + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "criterion", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(criterion, not(any(target_os = \"emscripten\", target_os = \"wasi\"))))", + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "libc", + "optional": true, + "registry": null, + "rename": null, + "req": "^0.2.156", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"riscv64\", all(rustix_use_experimental_asm, target_arch = \"powerpc64\"), all(rustix_use_experimental_asm, target_arch = \"mips\"), all(rustix_use_experimental_asm, target_arch = \"mips32r6\"), all(rustix_use_experimental_asm, target_arch = \"mips64\"), all(rustix_use_experimental_asm, target_arch = \"mips64r6\"), target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"))))", + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "errno", + "optional": true, + "registry": null, + "rename": "libc_errno", + "req": "^0.3.8", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"riscv64\", all(rustix_use_experimental_asm, target_arch = \"powerpc64\"), all(rustix_use_experimental_asm, target_arch = \"mips\"), all(rustix_use_experimental_asm, target_arch = \"mips32r6\"), all(rustix_use_experimental_asm, target_arch = \"mips64\"), all(rustix_use_experimental_asm, target_arch = \"mips64r6\"), target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"))))", + "uses_default_features": false + }, + { + "features": [ + "general", + "errno", + "ioctl", + "no_std", + "elf" + ], + "kind": null, + "name": "linux-raw-sys", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4.14", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"riscv64\", all(rustix_use_experimental_asm, target_arch = \"powerpc64\"), all(rustix_use_experimental_asm, target_arch = \"mips\"), all(rustix_use_experimental_asm, target_arch = \"mips32r6\"), all(rustix_use_experimental_asm, target_arch = \"mips64\"), all(rustix_use_experimental_asm, target_arch = \"mips64r6\"), target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"))))", + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "libc", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2.156", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(not(windows), any(rustix_use_libc, miri, not(all(target_os = \"linux\", target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"riscv64\", all(rustix_use_experimental_asm, target_arch = \"powerpc64\"), all(rustix_use_experimental_asm, target_arch = \"mips\"), all(rustix_use_experimental_asm, target_arch = \"mips32r6\"), all(rustix_use_experimental_asm, target_arch = \"mips64\"), all(rustix_use_experimental_asm, target_arch = \"mips64r6\"), target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\")))))))", + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "errno", + "optional": false, + "registry": null, + "rename": "libc_errno", + "req": "^0.3.8", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(not(windows), any(rustix_use_libc, miri, not(all(target_os = \"linux\", target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"riscv64\", all(rustix_use_experimental_asm, target_arch = \"powerpc64\"), all(rustix_use_experimental_asm, target_arch = \"mips\"), all(rustix_use_experimental_asm, target_arch = \"mips32r6\"), all(rustix_use_experimental_asm, target_arch = \"mips64\"), all(rustix_use_experimental_asm, target_arch = \"mips64r6\"), target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\")))))))", + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "once_cell", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.5.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(any(target_os = \"android\", target_os = \"linux\"))", + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "errno", + "optional": false, + "registry": null, + "rename": "libc_errno", + "req": "^0.3.8", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(windows)", + "uses_default_features": false + }, + { + "features": [ + "Win32_Foundation", + "Win32_Networking_WinSock", + "Win32_NetworkManagement_IpHelper", + "Win32_System_Threading" + ], + "kind": null, + "name": "windows-sys", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.52.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(windows)", + "uses_default_features": true + } + ], + "description": "Safe Rust bindings to POSIX/Unix/Linux/Winsock-like syscalls", + "documentation": "https://docs.rs/rustix", + "edition": "2021", + "features": { + "all-apis": [ + "event", + "fs", + "io_uring", + "mm", + "mount", + "net", + "param", + "pipe", + "process", + "procfs", + "pty", + "rand", + "runtime", + "shm", + "stdio", + "system", + "termios", + "thread", + "time" + ], + "alloc": [], + "cc": [], + "compiler_builtins": [ + "dep:compiler_builtins" + ], + "core": [ + "dep:core" + ], + "default": [ + "std", + "use-libc-auxv" + ], + "event": [], + "fs": [], + "io_uring": [ + "event", + "fs", + "net", + "linux-raw-sys/io_uring" + ], + "itoa": [ + "dep:itoa" + ], + "libc": [ + "dep:libc" + ], + "libc-extra-traits": [ + "libc?/extra_traits" + ], + "libc_errno": [ + "dep:libc_errno" + ], + "linux_4_11": [], + "linux_latest": [ + "linux_4_11" + ], + "mm": [], + "mount": [], + "net": [ + "linux-raw-sys/net", + "linux-raw-sys/netlink", + "linux-raw-sys/if_ether", + "linux-raw-sys/xdp" + ], + "once_cell": [ + "dep:once_cell" + ], + "param": [ + "fs" + ], + "pipe": [], + "process": [ + "linux-raw-sys/prctl" + ], + "procfs": [ + "once_cell", + "itoa", + "fs" + ], + "pty": [ + "itoa", + "fs" + ], + "rand": [], + "runtime": [ + "linux-raw-sys/prctl" + ], + "rustc-dep-of-std": [ + "core", + "rustc-std-workspace-alloc", + "compiler_builtins", + "linux-raw-sys/rustc-dep-of-std", + "bitflags/rustc-dep-of-std", + "compiler_builtins?/rustc-dep-of-std" + ], + "rustc-std-workspace-alloc": [ + "dep:rustc-std-workspace-alloc" + ], + "shm": [ + "fs" + ], + "std": [ + "bitflags/std", + "alloc", + "libc?/std", + "libc_errno?/std", + "libc-extra-traits" + ], + "stdio": [], + "system": [ + "linux-raw-sys/system" + ], + "termios": [], + "thread": [ + "linux-raw-sys/prctl" + ], + "time": [], + "try_close": [], + "use-explicitly-provided-auxv": [], + "use-libc": [ + "libc_errno", + "libc", + "libc-extra-traits" + ], + "use-libc-auxv": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#rustix@0.38.36", + "keywords": [ + "api", + "file", + "network", + "safe", + "syscall" + ], + "license": "Apache-2.0 WITH LLVM-exception OR Apache-2.0 OR MIT", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/rustix-0.38.36/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "features": [ + "all-apis" + ], + "targets": [ + "x86_64-unknown-linux-gnu", + "i686-unknown-linux-gnu", + "x86_64-apple-darwin", + "x86_64-pc-windows-msvc", + "x86_64-unknown-freebsd", + "x86_64-unknown-openbsd", + "x86_64-unknown-netbsd", + "x86_64-unknown-dragonfly", + "x86_64-unknown-illumos", + "x86_64-unknown-redox", + "x86_64-unknown-haiku", + "wasm32-unknown-emscripten", + "wasm32-wasi" + ] + } + } + }, + "name": "rustix", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/bytecodealliance/rustix", + "rust_version": "1.63", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "rustix", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/rustix-0.38.36/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "bench" + ], + "name": "mod", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/rustix-0.38.36/benches/mod.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/rustix-0.38.36/build.rs", + "test": false + } + ], + "version": "0.38.36" + }, + { + "authors": [ + "Erick Tryzelaar ", + "David Tolnay " + ], + "categories": [ + "encoding", + "no-std", + "no-std::no-alloc" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "serde_derive", + "optional": true, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "serde_derive", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "serde_derive", + "optional": false, + "registry": null, + "rename": null, + "req": "=1.0.210", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(any())", + "uses_default_features": true + } + ], + "description": "A generic serialization/deserialization framework", + "documentation": "https://docs.rs/serde", + "edition": "2018", + "features": { + "alloc": [], + "default": [ + "std" + ], + "derive": [ + "serde_derive" + ], + "rc": [], + "serde_derive": [ + "dep:serde_derive" + ], + "std": [], + "unstable": [] + }, + "homepage": "https://serde.rs", + "id": "registry+https://github.com/rust-lang/crates.io-index#serde@1.0.210", + "keywords": [ + "serde", + "serialization", + "no_std" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.210/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "features": [ + "derive", + "rc", + "unstable" + ], + "rustdoc-args": [ + "--generate-link-to-definition" + ], + "targets": [ + "x86_64-unknown-linux-gnu" + ] + } + }, + "playground": { + "features": [ + "derive", + "rc" + ] + } + }, + "name": "serde", + "publish": null, + "readme": "crates-io.md", + "repository": "https://github.com/serde-rs/serde", + "rust_version": "1.31", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "serde", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.210/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/serde-1.0.210/build.rs", + "test": false + } + ], + "version": "1.0.210" + }, + { + "authors": [ + "Erick Tryzelaar ", + "David Tolnay " + ], + "categories": [ + "no-std", + "no-std::no-alloc" + ], + "default_run": null, + "dependencies": [ + { + "features": [ + "proc-macro" + ], + "kind": null, + "name": "proc-macro2", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.74", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [ + "proc-macro" + ], + "kind": null, + "name": "quote", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.35", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [ + "clone-impls", + "derive", + "parsing", + "printing", + "proc-macro" + ], + "kind": null, + "name": "syn", + "optional": false, + "registry": null, + "rename": null, + "req": "^2.0.46", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "serde", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Macros 1.1 implementation of #[derive(Serialize, Deserialize)]", + "documentation": "https://serde.rs/derive.html", + "edition": "2015", + "features": { + "default": [], + "deserialize_in_place": [] + }, + "homepage": "https://serde.rs", + "id": "registry+https://github.com/rust-lang/crates.io-index#serde_derive@1.0.210", + "keywords": [ + "serde", + "serialization", + "no_std", + "derive" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/serde_derive-1.0.210/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "rustdoc-args": [ + "--generate-link-to-definition" + ], + "targets": [ + "x86_64-unknown-linux-gnu" + ] + } + } + }, + "name": "serde_derive", + "publish": null, + "readme": "crates-io.md", + "repository": "https://github.com/serde-rs/serde", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "proc-macro" + ], + "doc": true, + "doctest": true, + "edition": "2015", + "kind": [ + "proc-macro" + ], + "name": "serde_derive", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/serde_derive-1.0.210/src/lib.rs", + "test": true + } + ], + "version": "1.0.210" + }, + { + "authors": [ + "David Tolnay " + ], + "categories": [ + "development-tools::procedural-macro-helpers", + "parser-implementations" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "proc-macro2", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.0.83", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "quote", + "optional": true, + "registry": null, + "rename": null, + "req": "^1.0.35", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": null, + "name": "unicode-ident", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "anyhow", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "automod", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "insta", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "ref-cast", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "rustversion", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "syn-test-suite", + "optional": false, + "registry": null, + "rename": null, + "req": "^0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "termcolor", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "flate2", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(not(miri))", + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "rayon", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(not(miri))", + "uses_default_features": true + }, + { + "features": [ + "blocking" + ], + "kind": "dev", + "name": "reqwest", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.12", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(not(miri))", + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "tar", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4.16", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(not(miri))", + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "walkdir", + "optional": false, + "registry": null, + "rename": null, + "req": "^2.3.2", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(not(miri))", + "uses_default_features": true + } + ], + "description": "Parser for Rust source code", + "documentation": "https://docs.rs/syn", + "edition": "2021", + "features": { + "clone-impls": [], + "default": [ + "derive", + "parsing", + "printing", + "clone-impls", + "proc-macro" + ], + "derive": [], + "extra-traits": [], + "fold": [], + "full": [], + "parsing": [], + "printing": [ + "dep:quote" + ], + "proc-macro": [ + "proc-macro2/proc-macro", + "quote?/proc-macro" + ], + "test": [ + "syn-test-suite/all-features" + ], + "visit": [], + "visit-mut": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.77", + "keywords": [ + "macros", + "syn" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "all-features": true, + "rustdoc-args": [ + "--generate-link-to-definition" + ], + "targets": [ + "x86_64-unknown-linux-gnu" + ] + } + }, + "playground": { + "features": [ + "full", + "visit", + "visit-mut", + "fold", + "extra-traits" + ] + } + }, + "name": "syn", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/dtolnay/syn", + "rust_version": "1.61", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "syn", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "regression", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/regression.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_asyncness", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_asyncness.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_attribute", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_attribute.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_derive_input", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_derive_input.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_expr", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_expr.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_generics", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_generics.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_grouping", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_grouping.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_ident", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_ident.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_item", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_item.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_iterators", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_iterators.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_lit", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_lit.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_meta", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_meta.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_parse_buffer", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_parse_buffer.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_parse_quote", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_parse_quote.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_parse_stream", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_parse_stream.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_pat", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_pat.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_path", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_path.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_precedence", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_precedence.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_receiver", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_receiver.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_round_trip", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_round_trip.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_shebang", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_shebang.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_size", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_size.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_stmt", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_stmt.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_token_trees", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_token_trees.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_ty", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_ty.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_unparenthesize", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_unparenthesize.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "test_visibility", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/test_visibility.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "zzz_stable", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/tests/zzz_stable.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "bench" + ], + "name": "file", + "required-features": [ + "full", + "parsing" + ], + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/benches/file.rs", + "test": false + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "bench" + ], + "name": "rust", + "required-features": [ + "full", + "parsing" + ], + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/syn-2.0.77/benches/rust.rs", + "test": false + } + ], + "version": "2.0.77" + }, + { + "authors": [ + "Steven Allen ", + "The Rust Project Developers", + "Ashley Mannix ", + "Jason White " + ], + "categories": [], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "cfg-if", + "optional": false, + "registry": null, + "rename": null, + "req": "^1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "fastrand", + "optional": false, + "registry": null, + "rename": null, + "req": "^2.0.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "std" + ], + "kind": null, + "name": "once_cell", + "optional": false, + "registry": null, + "rename": null, + "req": "^1.19.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "doc-comment", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.3", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "fs" + ], + "kind": null, + "name": "rustix", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.38.31", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(any(unix, target_os = \"wasi\"))", + "uses_default_features": true + }, + { + "features": [ + "Win32_Storage_FileSystem", + "Win32_Foundation" + ], + "kind": null, + "name": "windows-sys", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.59", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(windows)", + "uses_default_features": true + } + ], + "description": "A library for managing temporary files and directories.", + "documentation": "https://docs.rs/tempfile", + "edition": "2021", + "features": { + "nightly": [] + }, + "homepage": "https://stebalien.com/projects/tempfile-rs/", + "id": "registry+https://github.com/rust-lang/crates.io-index#tempfile@3.12.0", + "keywords": [ + "tempfile", + "tmpfile", + "filesystem" + ], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/tempfile-3.12.0/Cargo.toml", + "metadata": null, + "name": "tempfile", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/Stebalien/tempfile", + "rust_version": "1.63", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "tempfile", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/tempfile-3.12.0/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "env", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/tempfile-3.12.0/tests/env.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "namedtempfile", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/tempfile-3.12.0/tests/namedtempfile.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "spooled", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/tempfile-3.12.0/tests/spooled.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "tempdir", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/tempfile-3.12.0/tests/tempdir.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "test" + ], + "name": "tempfile", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/tempfile-3.12.0/tests/tempfile.rs", + "test": true + } + ], + "version": "3.12.0" + }, + { + "authors": [ + "David Tolnay " + ], + "categories": [ + "development-tools::procedural-macro-helpers", + "no-std", + "no-std::no-alloc" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": "dev", + "name": "criterion", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.5", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "fst", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.4", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [ + "small_rng" + ], + "kind": "dev", + "name": "rand", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.8", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "roaring", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.10", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + }, + { + "features": [], + "kind": "dev", + "name": "ucd-trie", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.1", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": false + }, + { + "features": [], + "kind": "dev", + "name": "unicode-xid", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.2.4", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Determine whether characters have the XID_Start or XID_Continue properties according to Unicode Standard Annex #31", + "documentation": "https://docs.rs/unicode-ident", + "edition": "2018", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.12", + "keywords": [ + "unicode", + "xid" + ], + "license": "(MIT OR Apache-2.0) AND Unicode-DFS-2016", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/unicode-ident-1.0.12/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "rustdoc-args": [ + "--generate-link-to-definition" + ], + "targets": [ + "x86_64-unknown-linux-gnu" + ] + } + } + }, + "name": "unicode-ident", + "publish": null, + "readme": "README.md", + "repository": "https://github.com/dtolnay/unicode-ident", + "rust_version": "1.31", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2018", + "kind": [ + "lib" + ], + "name": "unicode_ident", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/unicode-ident-1.0.12/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "compare", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/unicode-ident-1.0.12/tests/compare.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "test" + ], + "name": "static_size", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/unicode-ident-1.0.12/tests/static_size.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2018", + "kind": [ + "bench" + ], + "name": "xid", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/unicode-ident-1.0.12/benches/xid.rs", + "test": false + } + ], + "version": "1.0.12" + }, + { + "authors": [ + "Microsoft" + ], + "categories": [ + "os::windows-apis" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "windows-targets", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.52.0", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Rust for Windows", + "documentation": null, + "edition": "2021", + "features": { + "Wdk": [], + "Wdk_Foundation": [ + "Wdk" + ], + "Wdk_Graphics": [ + "Wdk" + ], + "Wdk_Graphics_Direct3D": [ + "Wdk_Graphics" + ], + "Wdk_Storage": [ + "Wdk" + ], + "Wdk_Storage_FileSystem": [ + "Wdk_Storage" + ], + "Wdk_Storage_FileSystem_Minifilters": [ + "Wdk_Storage_FileSystem" + ], + "Wdk_System": [ + "Wdk" + ], + "Wdk_System_IO": [ + "Wdk_System" + ], + "Wdk_System_OfflineRegistry": [ + "Wdk_System" + ], + "Wdk_System_Registry": [ + "Wdk_System" + ], + "Wdk_System_SystemInformation": [ + "Wdk_System" + ], + "Wdk_System_SystemServices": [ + "Wdk_System" + ], + "Wdk_System_Threading": [ + "Wdk_System" + ], + "Win32": [], + "Win32_Data": [ + "Win32" + ], + "Win32_Data_HtmlHelp": [ + "Win32_Data" + ], + "Win32_Data_RightsManagement": [ + "Win32_Data" + ], + "Win32_Devices": [ + "Win32" + ], + "Win32_Devices_AllJoyn": [ + "Win32_Devices" + ], + "Win32_Devices_BiometricFramework": [ + "Win32_Devices" + ], + "Win32_Devices_Bluetooth": [ + "Win32_Devices" + ], + "Win32_Devices_Communication": [ + "Win32_Devices" + ], + "Win32_Devices_DeviceAndDriverInstallation": [ + "Win32_Devices" + ], + "Win32_Devices_DeviceQuery": [ + "Win32_Devices" + ], + "Win32_Devices_Display": [ + "Win32_Devices" + ], + "Win32_Devices_Enumeration": [ + "Win32_Devices" + ], + "Win32_Devices_Enumeration_Pnp": [ + "Win32_Devices_Enumeration" + ], + "Win32_Devices_Fax": [ + "Win32_Devices" + ], + "Win32_Devices_HumanInterfaceDevice": [ + "Win32_Devices" + ], + "Win32_Devices_PortableDevices": [ + "Win32_Devices" + ], + "Win32_Devices_Properties": [ + "Win32_Devices" + ], + "Win32_Devices_Pwm": [ + "Win32_Devices" + ], + "Win32_Devices_Sensors": [ + "Win32_Devices" + ], + "Win32_Devices_SerialCommunication": [ + "Win32_Devices" + ], + "Win32_Devices_Tapi": [ + "Win32_Devices" + ], + "Win32_Devices_Usb": [ + "Win32_Devices" + ], + "Win32_Devices_WebServicesOnDevices": [ + "Win32_Devices" + ], + "Win32_Foundation": [ + "Win32" + ], + "Win32_Gaming": [ + "Win32" + ], + "Win32_Globalization": [ + "Win32" + ], + "Win32_Graphics": [ + "Win32" + ], + "Win32_Graphics_Dwm": [ + "Win32_Graphics" + ], + "Win32_Graphics_Gdi": [ + "Win32_Graphics" + ], + "Win32_Graphics_GdiPlus": [ + "Win32_Graphics" + ], + "Win32_Graphics_Hlsl": [ + "Win32_Graphics" + ], + "Win32_Graphics_OpenGL": [ + "Win32_Graphics" + ], + "Win32_Graphics_Printing": [ + "Win32_Graphics" + ], + "Win32_Graphics_Printing_PrintTicket": [ + "Win32_Graphics_Printing" + ], + "Win32_Management": [ + "Win32" + ], + "Win32_Management_MobileDeviceManagementRegistration": [ + "Win32_Management" + ], + "Win32_Media": [ + "Win32" + ], + "Win32_Media_Audio": [ + "Win32_Media" + ], + "Win32_Media_DxMediaObjects": [ + "Win32_Media" + ], + "Win32_Media_KernelStreaming": [ + "Win32_Media" + ], + "Win32_Media_Multimedia": [ + "Win32_Media" + ], + "Win32_Media_Streaming": [ + "Win32_Media" + ], + "Win32_Media_WindowsMediaFormat": [ + "Win32_Media" + ], + "Win32_NetworkManagement": [ + "Win32" + ], + "Win32_NetworkManagement_Dhcp": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_Dns": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_InternetConnectionWizard": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_IpHelper": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_Multicast": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_Ndis": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_NetBios": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_NetManagement": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_NetShell": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_NetworkDiagnosticsFramework": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_P2P": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_QoS": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_Rras": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_Snmp": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WNet": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WebDav": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WiFi": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WindowsConnectionManager": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WindowsFilteringPlatform": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WindowsFirewall": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WindowsNetworkVirtualization": [ + "Win32_NetworkManagement" + ], + "Win32_Networking": [ + "Win32" + ], + "Win32_Networking_ActiveDirectory": [ + "Win32_Networking" + ], + "Win32_Networking_Clustering": [ + "Win32_Networking" + ], + "Win32_Networking_HttpServer": [ + "Win32_Networking" + ], + "Win32_Networking_Ldap": [ + "Win32_Networking" + ], + "Win32_Networking_WebSocket": [ + "Win32_Networking" + ], + "Win32_Networking_WinHttp": [ + "Win32_Networking" + ], + "Win32_Networking_WinInet": [ + "Win32_Networking" + ], + "Win32_Networking_WinSock": [ + "Win32_Networking" + ], + "Win32_Networking_WindowsWebServices": [ + "Win32_Networking" + ], + "Win32_Security": [ + "Win32" + ], + "Win32_Security_AppLocker": [ + "Win32_Security" + ], + "Win32_Security_Authentication": [ + "Win32_Security" + ], + "Win32_Security_Authentication_Identity": [ + "Win32_Security_Authentication" + ], + "Win32_Security_Authorization": [ + "Win32_Security" + ], + "Win32_Security_Credentials": [ + "Win32_Security" + ], + "Win32_Security_Cryptography": [ + "Win32_Security" + ], + "Win32_Security_Cryptography_Catalog": [ + "Win32_Security_Cryptography" + ], + "Win32_Security_Cryptography_Certificates": [ + "Win32_Security_Cryptography" + ], + "Win32_Security_Cryptography_Sip": [ + "Win32_Security_Cryptography" + ], + "Win32_Security_Cryptography_UI": [ + "Win32_Security_Cryptography" + ], + "Win32_Security_DiagnosticDataQuery": [ + "Win32_Security" + ], + "Win32_Security_DirectoryServices": [ + "Win32_Security" + ], + "Win32_Security_EnterpriseData": [ + "Win32_Security" + ], + "Win32_Security_ExtensibleAuthenticationProtocol": [ + "Win32_Security" + ], + "Win32_Security_Isolation": [ + "Win32_Security" + ], + "Win32_Security_LicenseProtection": [ + "Win32_Security" + ], + "Win32_Security_NetworkAccessProtection": [ + "Win32_Security" + ], + "Win32_Security_WinTrust": [ + "Win32_Security" + ], + "Win32_Security_WinWlx": [ + "Win32_Security" + ], + "Win32_Storage": [ + "Win32" + ], + "Win32_Storage_Cabinets": [ + "Win32_Storage" + ], + "Win32_Storage_CloudFilters": [ + "Win32_Storage" + ], + "Win32_Storage_Compression": [ + "Win32_Storage" + ], + "Win32_Storage_DistributedFileSystem": [ + "Win32_Storage" + ], + "Win32_Storage_FileHistory": [ + "Win32_Storage" + ], + "Win32_Storage_FileSystem": [ + "Win32_Storage" + ], + "Win32_Storage_Imapi": [ + "Win32_Storage" + ], + "Win32_Storage_IndexServer": [ + "Win32_Storage" + ], + "Win32_Storage_InstallableFileSystems": [ + "Win32_Storage" + ], + "Win32_Storage_IscsiDisc": [ + "Win32_Storage" + ], + "Win32_Storage_Jet": [ + "Win32_Storage" + ], + "Win32_Storage_Nvme": [ + "Win32_Storage" + ], + "Win32_Storage_OfflineFiles": [ + "Win32_Storage" + ], + "Win32_Storage_OperationRecorder": [ + "Win32_Storage" + ], + "Win32_Storage_Packaging": [ + "Win32_Storage" + ], + "Win32_Storage_Packaging_Appx": [ + "Win32_Storage_Packaging" + ], + "Win32_Storage_ProjectedFileSystem": [ + "Win32_Storage" + ], + "Win32_Storage_StructuredStorage": [ + "Win32_Storage" + ], + "Win32_Storage_Vhd": [ + "Win32_Storage" + ], + "Win32_Storage_Xps": [ + "Win32_Storage" + ], + "Win32_System": [ + "Win32" + ], + "Win32_System_AddressBook": [ + "Win32_System" + ], + "Win32_System_Antimalware": [ + "Win32_System" + ], + "Win32_System_ApplicationInstallationAndServicing": [ + "Win32_System" + ], + "Win32_System_ApplicationVerifier": [ + "Win32_System" + ], + "Win32_System_ClrHosting": [ + "Win32_System" + ], + "Win32_System_Com": [ + "Win32_System" + ], + "Win32_System_Com_Marshal": [ + "Win32_System_Com" + ], + "Win32_System_Com_StructuredStorage": [ + "Win32_System_Com" + ], + "Win32_System_Com_Urlmon": [ + "Win32_System_Com" + ], + "Win32_System_ComponentServices": [ + "Win32_System" + ], + "Win32_System_Console": [ + "Win32_System" + ], + "Win32_System_CorrelationVector": [ + "Win32_System" + ], + "Win32_System_DataExchange": [ + "Win32_System" + ], + "Win32_System_DeploymentServices": [ + "Win32_System" + ], + "Win32_System_DeveloperLicensing": [ + "Win32_System" + ], + "Win32_System_Diagnostics": [ + "Win32_System" + ], + "Win32_System_Diagnostics_Ceip": [ + "Win32_System_Diagnostics" + ], + "Win32_System_Diagnostics_Debug": [ + "Win32_System_Diagnostics" + ], + "Win32_System_Diagnostics_Debug_Extensions": [ + "Win32_System_Diagnostics_Debug" + ], + "Win32_System_Diagnostics_Etw": [ + "Win32_System_Diagnostics" + ], + "Win32_System_Diagnostics_ProcessSnapshotting": [ + "Win32_System_Diagnostics" + ], + "Win32_System_Diagnostics_ToolHelp": [ + "Win32_System_Diagnostics" + ], + "Win32_System_DistributedTransactionCoordinator": [ + "Win32_System" + ], + "Win32_System_Environment": [ + "Win32_System" + ], + "Win32_System_ErrorReporting": [ + "Win32_System" + ], + "Win32_System_EventCollector": [ + "Win32_System" + ], + "Win32_System_EventLog": [ + "Win32_System" + ], + "Win32_System_EventNotificationService": [ + "Win32_System" + ], + "Win32_System_GroupPolicy": [ + "Win32_System" + ], + "Win32_System_HostCompute": [ + "Win32_System" + ], + "Win32_System_HostComputeNetwork": [ + "Win32_System" + ], + "Win32_System_HostComputeSystem": [ + "Win32_System" + ], + "Win32_System_Hypervisor": [ + "Win32_System" + ], + "Win32_System_IO": [ + "Win32_System" + ], + "Win32_System_Iis": [ + "Win32_System" + ], + "Win32_System_Ioctl": [ + "Win32_System" + ], + "Win32_System_JobObjects": [ + "Win32_System" + ], + "Win32_System_Js": [ + "Win32_System" + ], + "Win32_System_Kernel": [ + "Win32_System" + ], + "Win32_System_LibraryLoader": [ + "Win32_System" + ], + "Win32_System_Mailslots": [ + "Win32_System" + ], + "Win32_System_Mapi": [ + "Win32_System" + ], + "Win32_System_Memory": [ + "Win32_System" + ], + "Win32_System_Memory_NonVolatile": [ + "Win32_System_Memory" + ], + "Win32_System_MessageQueuing": [ + "Win32_System" + ], + "Win32_System_MixedReality": [ + "Win32_System" + ], + "Win32_System_Ole": [ + "Win32_System" + ], + "Win32_System_PasswordManagement": [ + "Win32_System" + ], + "Win32_System_Performance": [ + "Win32_System" + ], + "Win32_System_Performance_HardwareCounterProfiling": [ + "Win32_System_Performance" + ], + "Win32_System_Pipes": [ + "Win32_System" + ], + "Win32_System_Power": [ + "Win32_System" + ], + "Win32_System_ProcessStatus": [ + "Win32_System" + ], + "Win32_System_Recovery": [ + "Win32_System" + ], + "Win32_System_Registry": [ + "Win32_System" + ], + "Win32_System_RemoteDesktop": [ + "Win32_System" + ], + "Win32_System_RemoteManagement": [ + "Win32_System" + ], + "Win32_System_RestartManager": [ + "Win32_System" + ], + "Win32_System_Restore": [ + "Win32_System" + ], + "Win32_System_Rpc": [ + "Win32_System" + ], + "Win32_System_Search": [ + "Win32_System" + ], + "Win32_System_Search_Common": [ + "Win32_System_Search" + ], + "Win32_System_SecurityCenter": [ + "Win32_System" + ], + "Win32_System_Services": [ + "Win32_System" + ], + "Win32_System_SetupAndMigration": [ + "Win32_System" + ], + "Win32_System_Shutdown": [ + "Win32_System" + ], + "Win32_System_StationsAndDesktops": [ + "Win32_System" + ], + "Win32_System_SubsystemForLinux": [ + "Win32_System" + ], + "Win32_System_SystemInformation": [ + "Win32_System" + ], + "Win32_System_SystemServices": [ + "Win32_System" + ], + "Win32_System_Threading": [ + "Win32_System" + ], + "Win32_System_Time": [ + "Win32_System" + ], + "Win32_System_TpmBaseServices": [ + "Win32_System" + ], + "Win32_System_UserAccessLogging": [ + "Win32_System" + ], + "Win32_System_Variant": [ + "Win32_System" + ], + "Win32_System_VirtualDosMachines": [ + "Win32_System" + ], + "Win32_System_WindowsProgramming": [ + "Win32_System" + ], + "Win32_System_Wmi": [ + "Win32_System" + ], + "Win32_UI": [ + "Win32" + ], + "Win32_UI_Accessibility": [ + "Win32_UI" + ], + "Win32_UI_ColorSystem": [ + "Win32_UI" + ], + "Win32_UI_Controls": [ + "Win32_UI" + ], + "Win32_UI_Controls_Dialogs": [ + "Win32_UI_Controls" + ], + "Win32_UI_HiDpi": [ + "Win32_UI" + ], + "Win32_UI_Input": [ + "Win32_UI" + ], + "Win32_UI_Input_Ime": [ + "Win32_UI_Input" + ], + "Win32_UI_Input_KeyboardAndMouse": [ + "Win32_UI_Input" + ], + "Win32_UI_Input_Pointer": [ + "Win32_UI_Input" + ], + "Win32_UI_Input_Touch": [ + "Win32_UI_Input" + ], + "Win32_UI_Input_XboxController": [ + "Win32_UI_Input" + ], + "Win32_UI_InteractionContext": [ + "Win32_UI" + ], + "Win32_UI_Magnification": [ + "Win32_UI" + ], + "Win32_UI_Shell": [ + "Win32_UI" + ], + "Win32_UI_Shell_PropertiesSystem": [ + "Win32_UI_Shell" + ], + "Win32_UI_TabletPC": [ + "Win32_UI" + ], + "Win32_UI_TextServices": [ + "Win32_UI" + ], + "Win32_UI_WindowsAndMessaging": [ + "Win32_UI" + ], + "Win32_Web": [ + "Win32" + ], + "Win32_Web_InternetExplorer": [ + "Win32_Web" + ], + "default": [], + "docs": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#windows-sys@0.52.0", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows-sys-0.52.0/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "all-features": true, + "default-target": "x86_64-pc-windows-msvc", + "targets": [] + } + } + }, + "name": "windows-sys", + "publish": null, + "readme": "readme.md", + "repository": "https://github.com/microsoft/windows-rs", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "windows_sys", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows-sys-0.52.0/src/lib.rs", + "test": true + } + ], + "version": "0.52.0" + }, + { + "authors": [ + "Microsoft" + ], + "categories": [ + "os::windows-apis" + ], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "windows-targets", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.52.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": null, + "uses_default_features": true + } + ], + "description": "Rust for Windows", + "documentation": null, + "edition": "2021", + "features": { + "Wdk": [ + "Win32_Foundation" + ], + "Wdk_Devices": [ + "Wdk" + ], + "Wdk_Devices_Bluetooth": [ + "Wdk_Devices" + ], + "Wdk_Devices_HumanInterfaceDevice": [ + "Wdk_Devices" + ], + "Wdk_Foundation": [ + "Wdk" + ], + "Wdk_Graphics": [ + "Wdk" + ], + "Wdk_Graphics_Direct3D": [ + "Wdk_Graphics" + ], + "Wdk_NetworkManagement": [ + "Wdk" + ], + "Wdk_NetworkManagement_Ndis": [ + "Wdk_NetworkManagement" + ], + "Wdk_NetworkManagement_WindowsFilteringPlatform": [ + "Wdk_NetworkManagement" + ], + "Wdk_Storage": [ + "Wdk" + ], + "Wdk_Storage_FileSystem": [ + "Wdk_Storage" + ], + "Wdk_Storage_FileSystem_Minifilters": [ + "Wdk_Storage_FileSystem" + ], + "Wdk_System": [ + "Wdk" + ], + "Wdk_System_IO": [ + "Wdk_System" + ], + "Wdk_System_Memory": [ + "Wdk_System" + ], + "Wdk_System_OfflineRegistry": [ + "Wdk_System" + ], + "Wdk_System_Registry": [ + "Wdk_System" + ], + "Wdk_System_SystemInformation": [ + "Wdk_System" + ], + "Wdk_System_SystemServices": [ + "Wdk_System" + ], + "Wdk_System_Threading": [ + "Wdk_System" + ], + "Win32": [ + "Win32_Foundation" + ], + "Win32_Data": [ + "Win32" + ], + "Win32_Data_HtmlHelp": [ + "Win32_Data" + ], + "Win32_Data_RightsManagement": [ + "Win32_Data" + ], + "Win32_Devices": [ + "Win32" + ], + "Win32_Devices_AllJoyn": [ + "Win32_Devices" + ], + "Win32_Devices_BiometricFramework": [ + "Win32_Devices" + ], + "Win32_Devices_Bluetooth": [ + "Win32_Devices" + ], + "Win32_Devices_Communication": [ + "Win32_Devices" + ], + "Win32_Devices_DeviceAndDriverInstallation": [ + "Win32_Devices" + ], + "Win32_Devices_DeviceQuery": [ + "Win32_Devices" + ], + "Win32_Devices_Display": [ + "Win32_Devices" + ], + "Win32_Devices_Enumeration": [ + "Win32_Devices" + ], + "Win32_Devices_Enumeration_Pnp": [ + "Win32_Devices_Enumeration" + ], + "Win32_Devices_Fax": [ + "Win32_Devices" + ], + "Win32_Devices_HumanInterfaceDevice": [ + "Win32_Devices" + ], + "Win32_Devices_PortableDevices": [ + "Win32_Devices" + ], + "Win32_Devices_Properties": [ + "Win32_Devices" + ], + "Win32_Devices_Pwm": [ + "Win32_Devices" + ], + "Win32_Devices_Sensors": [ + "Win32_Devices" + ], + "Win32_Devices_SerialCommunication": [ + "Win32_Devices" + ], + "Win32_Devices_Tapi": [ + "Win32_Devices" + ], + "Win32_Devices_Usb": [ + "Win32_Devices" + ], + "Win32_Devices_WebServicesOnDevices": [ + "Win32_Devices" + ], + "Win32_Foundation": [ + "Win32" + ], + "Win32_Gaming": [ + "Win32" + ], + "Win32_Globalization": [ + "Win32" + ], + "Win32_Graphics": [ + "Win32" + ], + "Win32_Graphics_Dwm": [ + "Win32_Graphics" + ], + "Win32_Graphics_Gdi": [ + "Win32_Graphics" + ], + "Win32_Graphics_GdiPlus": [ + "Win32_Graphics" + ], + "Win32_Graphics_Hlsl": [ + "Win32_Graphics" + ], + "Win32_Graphics_OpenGL": [ + "Win32_Graphics" + ], + "Win32_Graphics_Printing": [ + "Win32_Graphics" + ], + "Win32_Graphics_Printing_PrintTicket": [ + "Win32_Graphics_Printing" + ], + "Win32_Management": [ + "Win32" + ], + "Win32_Management_MobileDeviceManagementRegistration": [ + "Win32_Management" + ], + "Win32_Media": [ + "Win32" + ], + "Win32_Media_Audio": [ + "Win32_Media" + ], + "Win32_Media_DxMediaObjects": [ + "Win32_Media" + ], + "Win32_Media_KernelStreaming": [ + "Win32_Media" + ], + "Win32_Media_Multimedia": [ + "Win32_Media" + ], + "Win32_Media_Streaming": [ + "Win32_Media" + ], + "Win32_Media_WindowsMediaFormat": [ + "Win32_Media" + ], + "Win32_NetworkManagement": [ + "Win32" + ], + "Win32_NetworkManagement_Dhcp": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_Dns": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_InternetConnectionWizard": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_IpHelper": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_Multicast": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_Ndis": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_NetBios": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_NetManagement": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_NetShell": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_NetworkDiagnosticsFramework": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_P2P": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_QoS": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_Rras": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_Snmp": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WNet": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WebDav": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WiFi": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WindowsConnectionManager": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WindowsFilteringPlatform": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WindowsFirewall": [ + "Win32_NetworkManagement" + ], + "Win32_NetworkManagement_WindowsNetworkVirtualization": [ + "Win32_NetworkManagement" + ], + "Win32_Networking": [ + "Win32" + ], + "Win32_Networking_ActiveDirectory": [ + "Win32_Networking" + ], + "Win32_Networking_Clustering": [ + "Win32_Networking" + ], + "Win32_Networking_HttpServer": [ + "Win32_Networking" + ], + "Win32_Networking_Ldap": [ + "Win32_Networking" + ], + "Win32_Networking_WebSocket": [ + "Win32_Networking" + ], + "Win32_Networking_WinHttp": [ + "Win32_Networking" + ], + "Win32_Networking_WinInet": [ + "Win32_Networking" + ], + "Win32_Networking_WinSock": [ + "Win32_Networking" + ], + "Win32_Networking_WindowsWebServices": [ + "Win32_Networking" + ], + "Win32_Security": [ + "Win32" + ], + "Win32_Security_AppLocker": [ + "Win32_Security" + ], + "Win32_Security_Authentication": [ + "Win32_Security" + ], + "Win32_Security_Authentication_Identity": [ + "Win32_Security_Authentication" + ], + "Win32_Security_Authorization": [ + "Win32_Security" + ], + "Win32_Security_Credentials": [ + "Win32_Security" + ], + "Win32_Security_Cryptography": [ + "Win32_Security" + ], + "Win32_Security_Cryptography_Catalog": [ + "Win32_Security_Cryptography" + ], + "Win32_Security_Cryptography_Certificates": [ + "Win32_Security_Cryptography" + ], + "Win32_Security_Cryptography_Sip": [ + "Win32_Security_Cryptography" + ], + "Win32_Security_Cryptography_UI": [ + "Win32_Security_Cryptography" + ], + "Win32_Security_DiagnosticDataQuery": [ + "Win32_Security" + ], + "Win32_Security_DirectoryServices": [ + "Win32_Security" + ], + "Win32_Security_EnterpriseData": [ + "Win32_Security" + ], + "Win32_Security_ExtensibleAuthenticationProtocol": [ + "Win32_Security" + ], + "Win32_Security_Isolation": [ + "Win32_Security" + ], + "Win32_Security_LicenseProtection": [ + "Win32_Security" + ], + "Win32_Security_NetworkAccessProtection": [ + "Win32_Security" + ], + "Win32_Security_WinTrust": [ + "Win32_Security" + ], + "Win32_Security_WinWlx": [ + "Win32_Security" + ], + "Win32_Storage": [ + "Win32" + ], + "Win32_Storage_Cabinets": [ + "Win32_Storage" + ], + "Win32_Storage_CloudFilters": [ + "Win32_Storage" + ], + "Win32_Storage_Compression": [ + "Win32_Storage" + ], + "Win32_Storage_DistributedFileSystem": [ + "Win32_Storage" + ], + "Win32_Storage_FileHistory": [ + "Win32_Storage" + ], + "Win32_Storage_FileSystem": [ + "Win32_Storage" + ], + "Win32_Storage_Imapi": [ + "Win32_Storage" + ], + "Win32_Storage_IndexServer": [ + "Win32_Storage" + ], + "Win32_Storage_InstallableFileSystems": [ + "Win32_Storage" + ], + "Win32_Storage_IscsiDisc": [ + "Win32_Storage" + ], + "Win32_Storage_Jet": [ + "Win32_Storage" + ], + "Win32_Storage_Nvme": [ + "Win32_Storage" + ], + "Win32_Storage_OfflineFiles": [ + "Win32_Storage" + ], + "Win32_Storage_OperationRecorder": [ + "Win32_Storage" + ], + "Win32_Storage_Packaging": [ + "Win32_Storage" + ], + "Win32_Storage_Packaging_Appx": [ + "Win32_Storage_Packaging" + ], + "Win32_Storage_ProjectedFileSystem": [ + "Win32_Storage" + ], + "Win32_Storage_StructuredStorage": [ + "Win32_Storage" + ], + "Win32_Storage_Vhd": [ + "Win32_Storage" + ], + "Win32_Storage_Xps": [ + "Win32_Storage" + ], + "Win32_System": [ + "Win32" + ], + "Win32_System_AddressBook": [ + "Win32_System" + ], + "Win32_System_Antimalware": [ + "Win32_System" + ], + "Win32_System_ApplicationInstallationAndServicing": [ + "Win32_System" + ], + "Win32_System_ApplicationVerifier": [ + "Win32_System" + ], + "Win32_System_ClrHosting": [ + "Win32_System" + ], + "Win32_System_Com": [ + "Win32_System" + ], + "Win32_System_Com_Marshal": [ + "Win32_System_Com" + ], + "Win32_System_Com_StructuredStorage": [ + "Win32_System_Com" + ], + "Win32_System_Com_Urlmon": [ + "Win32_System_Com" + ], + "Win32_System_ComponentServices": [ + "Win32_System" + ], + "Win32_System_Console": [ + "Win32_System" + ], + "Win32_System_CorrelationVector": [ + "Win32_System" + ], + "Win32_System_DataExchange": [ + "Win32_System" + ], + "Win32_System_DeploymentServices": [ + "Win32_System" + ], + "Win32_System_DeveloperLicensing": [ + "Win32_System" + ], + "Win32_System_Diagnostics": [ + "Win32_System" + ], + "Win32_System_Diagnostics_Ceip": [ + "Win32_System_Diagnostics" + ], + "Win32_System_Diagnostics_Debug": [ + "Win32_System_Diagnostics" + ], + "Win32_System_Diagnostics_Debug_Extensions": [ + "Win32_System_Diagnostics_Debug" + ], + "Win32_System_Diagnostics_Etw": [ + "Win32_System_Diagnostics" + ], + "Win32_System_Diagnostics_ProcessSnapshotting": [ + "Win32_System_Diagnostics" + ], + "Win32_System_Diagnostics_ToolHelp": [ + "Win32_System_Diagnostics" + ], + "Win32_System_Diagnostics_TraceLogging": [ + "Win32_System_Diagnostics" + ], + "Win32_System_DistributedTransactionCoordinator": [ + "Win32_System" + ], + "Win32_System_Environment": [ + "Win32_System" + ], + "Win32_System_ErrorReporting": [ + "Win32_System" + ], + "Win32_System_EventCollector": [ + "Win32_System" + ], + "Win32_System_EventLog": [ + "Win32_System" + ], + "Win32_System_EventNotificationService": [ + "Win32_System" + ], + "Win32_System_GroupPolicy": [ + "Win32_System" + ], + "Win32_System_HostCompute": [ + "Win32_System" + ], + "Win32_System_HostComputeNetwork": [ + "Win32_System" + ], + "Win32_System_HostComputeSystem": [ + "Win32_System" + ], + "Win32_System_Hypervisor": [ + "Win32_System" + ], + "Win32_System_IO": [ + "Win32_System" + ], + "Win32_System_Iis": [ + "Win32_System" + ], + "Win32_System_Ioctl": [ + "Win32_System" + ], + "Win32_System_JobObjects": [ + "Win32_System" + ], + "Win32_System_Js": [ + "Win32_System" + ], + "Win32_System_Kernel": [ + "Win32_System" + ], + "Win32_System_LibraryLoader": [ + "Win32_System" + ], + "Win32_System_Mailslots": [ + "Win32_System" + ], + "Win32_System_Mapi": [ + "Win32_System" + ], + "Win32_System_Memory": [ + "Win32_System" + ], + "Win32_System_Memory_NonVolatile": [ + "Win32_System_Memory" + ], + "Win32_System_MessageQueuing": [ + "Win32_System" + ], + "Win32_System_MixedReality": [ + "Win32_System" + ], + "Win32_System_Ole": [ + "Win32_System" + ], + "Win32_System_PasswordManagement": [ + "Win32_System" + ], + "Win32_System_Performance": [ + "Win32_System" + ], + "Win32_System_Performance_HardwareCounterProfiling": [ + "Win32_System_Performance" + ], + "Win32_System_Pipes": [ + "Win32_System" + ], + "Win32_System_Power": [ + "Win32_System" + ], + "Win32_System_ProcessStatus": [ + "Win32_System" + ], + "Win32_System_Recovery": [ + "Win32_System" + ], + "Win32_System_Registry": [ + "Win32_System" + ], + "Win32_System_RemoteDesktop": [ + "Win32_System" + ], + "Win32_System_RemoteManagement": [ + "Win32_System" + ], + "Win32_System_RestartManager": [ + "Win32_System" + ], + "Win32_System_Restore": [ + "Win32_System" + ], + "Win32_System_Rpc": [ + "Win32_System" + ], + "Win32_System_Search": [ + "Win32_System" + ], + "Win32_System_Search_Common": [ + "Win32_System_Search" + ], + "Win32_System_SecurityCenter": [ + "Win32_System" + ], + "Win32_System_Services": [ + "Win32_System" + ], + "Win32_System_SetupAndMigration": [ + "Win32_System" + ], + "Win32_System_Shutdown": [ + "Win32_System" + ], + "Win32_System_StationsAndDesktops": [ + "Win32_System" + ], + "Win32_System_SubsystemForLinux": [ + "Win32_System" + ], + "Win32_System_SystemInformation": [ + "Win32_System" + ], + "Win32_System_SystemServices": [ + "Win32_System" + ], + "Win32_System_Threading": [ + "Win32_System" + ], + "Win32_System_Time": [ + "Win32_System" + ], + "Win32_System_TpmBaseServices": [ + "Win32_System" + ], + "Win32_System_UserAccessLogging": [ + "Win32_System" + ], + "Win32_System_Variant": [ + "Win32_System" + ], + "Win32_System_VirtualDosMachines": [ + "Win32_System" + ], + "Win32_System_WindowsProgramming": [ + "Win32_System" + ], + "Win32_System_Wmi": [ + "Win32_System" + ], + "Win32_UI": [ + "Win32" + ], + "Win32_UI_Accessibility": [ + "Win32_UI" + ], + "Win32_UI_ColorSystem": [ + "Win32_UI" + ], + "Win32_UI_Controls": [ + "Win32_UI" + ], + "Win32_UI_Controls_Dialogs": [ + "Win32_UI_Controls" + ], + "Win32_UI_HiDpi": [ + "Win32_UI" + ], + "Win32_UI_Input": [ + "Win32_UI" + ], + "Win32_UI_Input_Ime": [ + "Win32_UI_Input" + ], + "Win32_UI_Input_KeyboardAndMouse": [ + "Win32_UI_Input" + ], + "Win32_UI_Input_Pointer": [ + "Win32_UI_Input" + ], + "Win32_UI_Input_Touch": [ + "Win32_UI_Input" + ], + "Win32_UI_Input_XboxController": [ + "Win32_UI_Input" + ], + "Win32_UI_InteractionContext": [ + "Win32_UI" + ], + "Win32_UI_Magnification": [ + "Win32_UI" + ], + "Win32_UI_Shell": [ + "Win32_UI" + ], + "Win32_UI_Shell_Common": [ + "Win32_UI_Shell" + ], + "Win32_UI_Shell_PropertiesSystem": [ + "Win32_UI_Shell" + ], + "Win32_UI_TabletPC": [ + "Win32_UI" + ], + "Win32_UI_TextServices": [ + "Win32_UI" + ], + "Win32_UI_WindowsAndMessaging": [ + "Win32_UI" + ], + "Win32_Web": [ + "Win32" + ], + "Win32_Web_InternetExplorer": [ + "Win32_Web" + ], + "default": [], + "docs": [] + }, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#windows-sys@0.59.0", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows-sys-0.59.0/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "all-features": true, + "default-target": "x86_64-pc-windows-msvc", + "targets": [] + } + } + }, + "name": "windows-sys", + "publish": null, + "readme": "readme.md", + "repository": "https://github.com/microsoft/windows-rs", + "rust_version": "1.60", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": false, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "windows_sys", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows-sys-0.59.0/src/lib.rs", + "test": false + } + ], + "version": "0.59.0" + }, + { + "authors": [ + "Microsoft" + ], + "categories": [], + "default_run": null, + "dependencies": [ + { + "features": [], + "kind": null, + "name": "windows_aarch64_gnullvm", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.52.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "aarch64-pc-windows-gnullvm", + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "windows_x86_64_msvc", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.52.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(any(target_arch = \"x86_64\", target_arch = \"arm64ec\"), target_env = \"msvc\", not(windows_raw_dylib)))", + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "windows_aarch64_msvc", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.52.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(target_arch = \"aarch64\", target_env = \"msvc\", not(windows_raw_dylib)))", + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "windows_i686_gnu", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.52.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(target_arch = \"x86\", target_env = \"gnu\", not(target_abi = \"llvm\"), not(windows_raw_dylib)))", + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "windows_i686_msvc", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.52.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(target_arch = \"x86\", target_env = \"msvc\", not(windows_raw_dylib)))", + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "windows_x86_64_gnu", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.52.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "cfg(all(target_arch = \"x86_64\", target_env = \"gnu\", not(target_abi = \"llvm\"), not(windows_raw_dylib)))", + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "windows_i686_gnullvm", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.52.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "i686-pc-windows-gnullvm", + "uses_default_features": true + }, + { + "features": [], + "kind": null, + "name": "windows_x86_64_gnullvm", + "optional": false, + "registry": null, + "rename": null, + "req": "^0.52.6", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "target": "x86_64-pc-windows-gnullvm", + "uses_default_features": true + } + ], + "description": "Import libs for Windows", + "documentation": null, + "edition": "2021", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#windows-targets@0.52.6", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows-targets-0.52.6/Cargo.toml", + "metadata": null, + "name": "windows-targets", + "publish": null, + "readme": "readme.md", + "repository": "https://github.com/microsoft/windows-rs", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "windows_targets", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows-targets-0.52.6/src/lib.rs", + "test": true + } + ], + "version": "0.52.6" + }, + { + "authors": [ + "Microsoft" + ], + "categories": [], + "default_run": null, + "dependencies": [], + "description": "Import lib for Windows", + "documentation": null, + "edition": "2021", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_aarch64_gnullvm@0.52.6", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_aarch64_gnullvm-0.52.6/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "default-target": "x86_64-pc-windows-msvc", + "targets": [] + } + } + }, + "name": "windows_aarch64_gnullvm", + "publish": null, + "readme": null, + "repository": "https://github.com/microsoft/windows-rs", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "windows_aarch64_gnullvm", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_aarch64_gnullvm-0.52.6/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_aarch64_gnullvm-0.52.6/build.rs", + "test": false + } + ], + "version": "0.52.6" + }, + { + "authors": [ + "Microsoft" + ], + "categories": [], + "default_run": null, + "dependencies": [], + "description": "Import lib for Windows", + "documentation": null, + "edition": "2021", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_aarch64_msvc@0.52.6", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_aarch64_msvc-0.52.6/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "default-target": "x86_64-pc-windows-msvc", + "targets": [] + } + } + }, + "name": "windows_aarch64_msvc", + "publish": null, + "readme": null, + "repository": "https://github.com/microsoft/windows-rs", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "windows_aarch64_msvc", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_aarch64_msvc-0.52.6/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_aarch64_msvc-0.52.6/build.rs", + "test": false + } + ], + "version": "0.52.6" + }, + { + "authors": [ + "Microsoft" + ], + "categories": [], + "default_run": null, + "dependencies": [], + "description": "Import lib for Windows", + "documentation": null, + "edition": "2021", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_i686_gnu@0.52.6", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_i686_gnu-0.52.6/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "default-target": "x86_64-pc-windows-msvc", + "targets": [] + } + } + }, + "name": "windows_i686_gnu", + "publish": null, + "readme": null, + "repository": "https://github.com/microsoft/windows-rs", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "windows_i686_gnu", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_i686_gnu-0.52.6/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_i686_gnu-0.52.6/build.rs", + "test": false + } + ], + "version": "0.52.6" + }, + { + "authors": [ + "Microsoft" + ], + "categories": [], + "default_run": null, + "dependencies": [], + "description": "Import lib for Windows", + "documentation": null, + "edition": "2021", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_i686_gnullvm@0.52.6", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_i686_gnullvm-0.52.6/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "default-target": "x86_64-pc-windows-msvc", + "targets": [] + } + } + }, + "name": "windows_i686_gnullvm", + "publish": null, + "readme": null, + "repository": "https://github.com/microsoft/windows-rs", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "windows_i686_gnullvm", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_i686_gnullvm-0.52.6/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_i686_gnullvm-0.52.6/build.rs", + "test": false + } + ], + "version": "0.52.6" + }, + { + "authors": [ + "Microsoft" + ], + "categories": [], + "default_run": null, + "dependencies": [], + "description": "Import lib for Windows", + "documentation": null, + "edition": "2021", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_i686_msvc@0.52.6", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_i686_msvc-0.52.6/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "default-target": "x86_64-pc-windows-msvc", + "targets": [] + } + } + }, + "name": "windows_i686_msvc", + "publish": null, + "readme": null, + "repository": "https://github.com/microsoft/windows-rs", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "windows_i686_msvc", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_i686_msvc-0.52.6/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_i686_msvc-0.52.6/build.rs", + "test": false + } + ], + "version": "0.52.6" + }, + { + "authors": [ + "Microsoft" + ], + "categories": [], + "default_run": null, + "dependencies": [], + "description": "Import lib for Windows", + "documentation": null, + "edition": "2021", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_gnu@0.52.6", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_x86_64_gnu-0.52.6/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "default-target": "x86_64-pc-windows-msvc", + "targets": [] + } + } + }, + "name": "windows_x86_64_gnu", + "publish": null, + "readme": null, + "repository": "https://github.com/microsoft/windows-rs", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "windows_x86_64_gnu", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_x86_64_gnu-0.52.6/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_x86_64_gnu-0.52.6/build.rs", + "test": false + } + ], + "version": "0.52.6" + }, + { + "authors": [ + "Microsoft" + ], + "categories": [], + "default_run": null, + "dependencies": [], + "description": "Import lib for Windows", + "documentation": null, + "edition": "2021", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_gnullvm@0.52.6", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_x86_64_gnullvm-0.52.6/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "default-target": "x86_64-pc-windows-msvc", + "targets": [] + } + } + }, + "name": "windows_x86_64_gnullvm", + "publish": null, + "readme": null, + "repository": "https://github.com/microsoft/windows-rs", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "windows_x86_64_gnullvm", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_x86_64_gnullvm-0.52.6/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_x86_64_gnullvm-0.52.6/build.rs", + "test": false + } + ], + "version": "0.52.6" + }, + { + "authors": [ + "Microsoft" + ], + "categories": [], + "default_run": null, + "dependencies": [], + "description": "Import lib for Windows", + "documentation": null, + "edition": "2021", + "features": {}, + "homepage": null, + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_msvc@0.52.6", + "keywords": [], + "license": "MIT OR Apache-2.0", + "license_file": null, + "links": null, + "manifest_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_x86_64_msvc-0.52.6/Cargo.toml", + "metadata": { + "docs": { + "rs": { + "default-target": "x86_64-pc-windows-msvc", + "targets": [] + } + } + }, + "name": "windows_x86_64_msvc", + "publish": null, + "readme": null, + "repository": "https://github.com/microsoft/windows-rs", + "rust_version": "1.56", + "source": "registry+https://github.com/rust-lang/crates.io-index", + "targets": [ + { + "crate_types": [ + "lib" + ], + "doc": true, + "doctest": true, + "edition": "2021", + "kind": [ + "lib" + ], + "name": "windows_x86_64_msvc", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_x86_64_msvc-0.52.6/src/lib.rs", + "test": true + }, + { + "crate_types": [ + "bin" + ], + "doc": false, + "doctest": false, + "edition": "2021", + "kind": [ + "custom-build" + ], + "name": "build-script-build", + "src_path": "{CARGO_HOME}/registry/src/index.crates.io-6f17d22bba15001f/windows_x86_64_msvc-0.52.6/build.rs", + "test": false + } + ], + "version": "0.52.6" + } + ], + "resolve": { + "nodes": [ + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.4" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "memchr", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.4" + } + ], + "features": [ + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#aho-corasick@1.1.3" + }, + { + "dependencies": [], + "deps": [], + "features": [ + "default", + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#anyhow@1.0.87" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#autocfg@1.3.0" + }, + { + "dependencies": [], + "deps": [], + "features": [ + "alloc", + "default", + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#base64@0.21.7" + }, + { + "dependencies": [], + "deps": [], + "features": [ + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#bitflags@2.6.0" + }, + { + "dependencies": [], + "deps": [], + "features": [ + "default", + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#bytes@1.7.1" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.0" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#num-traits@0.2.19" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "num_traits", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#num-traits@0.2.19" + } + ], + "features": [ + "alloc" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#chrono@0.4.38" + }, + { + "dependencies": [], + "deps": [], + "features": [ + "use_std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#either@1.13.0" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#equivalent@1.0.1" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#libc@0.2.158", + "registry+https://github.com/rust-lang/crates.io-index#windows-sys@0.52.0" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": "cfg(unix)" + }, + { + "kind": null, + "target": "cfg(target_os = \"hermit\")" + }, + { + "kind": null, + "target": "cfg(target_os = \"wasi\")" + } + ], + "name": "libc", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#libc@0.2.158" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "cfg(windows)" + } + ], + "name": "windows_sys", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#windows-sys@0.52.0" + } + ], + "features": [ + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#errno@0.3.9" + }, + { + "dependencies": [], + "deps": [], + "features": [ + "alloc", + "default", + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#fastrand@2.1.1" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#fixedbitset@0.4.2" + }, + { + "dependencies": [], + "deps": [], + "features": [ + "raw" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.14.5" + }, + { + "dependencies": [], + "deps": [], + "features": [ + "default" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#heck@0.4.1" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#pbjson-types@0.6.0" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "pbjson_types", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#pbjson-types@0.6.0" + } + ], + "features": [], + "id": "path+file://{TEMP_DIR}/host_specific_build_deps#0.0.0" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#equivalent@1.0.1", + "registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.14.5" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "equivalent", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#equivalent@1.0.1" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "hashbrown", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#hashbrown@0.14.5" + } + ], + "features": [ + "default", + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#indexmap@2.5.0" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#either@1.13.0" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "either", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#either@1.13.0" + } + ], + "features": [ + "default", + "use_alloc", + "use_std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#itertools@0.11.0" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#either@1.13.0" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "either", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#either@1.13.0" + } + ], + "features": [ + "use_alloc" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#itertools@0.12.1" + }, + { + "dependencies": [], + "deps": [], + "features": [ + "extra_traits", + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#libc@0.2.158" + }, + { + "dependencies": [], + "deps": [], + "features": [ + "elf", + "errno", + "general", + "ioctl", + "no_std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#linux-raw-sys@0.4.14" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#log@0.4.22" + }, + { + "dependencies": [], + "deps": [], + "features": [ + "alloc", + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.4" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#multimap@0.10.0" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#autocfg@1.3.0" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": "build", + "target": null + } + ], + "name": "autocfg", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#autocfg@1.3.0" + } + ], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#num-traits@0.2.19" + }, + { + "dependencies": [], + "deps": [], + "features": [ + "alloc", + "default", + "race", + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#once_cell@1.19.0" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#base64@0.21.7", + "registry+https://github.com/rust-lang/crates.io-index#serde@1.0.210" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "base64", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#base64@0.21.7" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "serde", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#serde@1.0.210" + } + ], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#pbjson@0.6.0" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#heck@0.4.1", + "registry+https://github.com/rust-lang/crates.io-index#itertools@0.11.0", + "registry+https://github.com/rust-lang/crates.io-index#prost@0.12.6", + "registry+https://github.com/rust-lang/crates.io-index#prost-types@0.12.6" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "heck", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#heck@0.4.1" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "itertools", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#itertools@0.11.0" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "prost", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#prost@0.12.6" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "prost_types", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#prost-types@0.12.6" + } + ], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#pbjson-build@0.6.2" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#bytes@1.7.1", + "registry+https://github.com/rust-lang/crates.io-index#chrono@0.4.38", + "registry+https://github.com/rust-lang/crates.io-index#pbjson@0.6.0", + "registry+https://github.com/rust-lang/crates.io-index#pbjson-build@0.6.2", + "registry+https://github.com/rust-lang/crates.io-index#prost@0.12.6", + "registry+https://github.com/rust-lang/crates.io-index#prost-build@0.12.6", + "registry+https://github.com/rust-lang/crates.io-index#serde@1.0.210" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "bytes", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#bytes@1.7.1" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "chrono", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#chrono@0.4.38" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "pbjson", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#pbjson@0.6.0" + }, + { + "dep_kinds": [ + { + "kind": "build", + "target": null + } + ], + "name": "pbjson_build", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#pbjson-build@0.6.2" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "prost", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#prost@0.12.6" + }, + { + "dep_kinds": [ + { + "kind": "build", + "target": null + } + ], + "name": "prost_build", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#prost-build@0.12.6" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "serde", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#serde@1.0.210" + } + ], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#pbjson-types@0.6.0" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#fixedbitset@0.4.2", + "registry+https://github.com/rust-lang/crates.io-index#indexmap@2.5.0" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "fixedbitset", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#fixedbitset@0.4.2" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "indexmap", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#indexmap@2.5.0" + } + ], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#petgraph@0.6.5" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.86", + "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.77" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "proc_macro2", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.86" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "syn", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.77" + } + ], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#prettyplease@0.2.22" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.12" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "unicode_ident", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.12" + } + ], + "features": [ + "default", + "proc-macro" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.86" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#bytes@1.7.1", + "registry+https://github.com/rust-lang/crates.io-index#prost-derive@0.12.6" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "bytes", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#bytes@1.7.1" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "prost_derive", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#prost-derive@0.12.6" + } + ], + "features": [ + "default", + "derive", + "prost-derive", + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#prost@0.12.6" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#bytes@1.7.1", + "registry+https://github.com/rust-lang/crates.io-index#heck@0.4.1", + "registry+https://github.com/rust-lang/crates.io-index#itertools@0.12.1", + "registry+https://github.com/rust-lang/crates.io-index#log@0.4.22", + "registry+https://github.com/rust-lang/crates.io-index#multimap@0.10.0", + "registry+https://github.com/rust-lang/crates.io-index#once_cell@1.19.0", + "registry+https://github.com/rust-lang/crates.io-index#petgraph@0.6.5", + "registry+https://github.com/rust-lang/crates.io-index#prettyplease@0.2.22", + "registry+https://github.com/rust-lang/crates.io-index#prost@0.12.6", + "registry+https://github.com/rust-lang/crates.io-index#prost-types@0.12.6", + "registry+https://github.com/rust-lang/crates.io-index#regex@1.10.6", + "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.77", + "registry+https://github.com/rust-lang/crates.io-index#tempfile@3.12.0" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "bytes", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#bytes@1.7.1" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "heck", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#heck@0.4.1" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "itertools", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#itertools@0.12.1" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "log", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#log@0.4.22" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "multimap", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#multimap@0.10.0" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "once_cell", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#once_cell@1.19.0" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "petgraph", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#petgraph@0.6.5" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "prettyplease", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#prettyplease@0.2.22" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "prost", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#prost@0.12.6" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "prost_types", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#prost-types@0.12.6" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "regex", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#regex@1.10.6" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "syn", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.77" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "tempfile", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#tempfile@3.12.0" + } + ], + "features": [ + "default", + "format" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#prost-build@0.12.6" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#anyhow@1.0.87", + "registry+https://github.com/rust-lang/crates.io-index#itertools@0.12.1", + "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.86", + "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.37", + "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.77" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "anyhow", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#anyhow@1.0.87" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "itertools", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#itertools@0.12.1" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "proc_macro2", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.86" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "quote", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.37" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "syn", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.77" + } + ], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#prost-derive@0.12.6" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#prost@0.12.6" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "prost", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#prost@0.12.6" + } + ], + "features": [ + "default", + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#prost-types@0.12.6" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.86" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "proc_macro2", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.86" + } + ], + "features": [ + "default", + "proc-macro" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.37" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#aho-corasick@1.1.3", + "registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.4", + "registry+https://github.com/rust-lang/crates.io-index#regex-automata@0.4.7", + "registry+https://github.com/rust-lang/crates.io-index#regex-syntax@0.8.4" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "aho_corasick", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#aho-corasick@1.1.3" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "memchr", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.4" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "regex_automata", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#regex-automata@0.4.7" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "regex_syntax", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#regex-syntax@0.8.4" + } + ], + "features": [ + "std", + "unicode-bool" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#regex@1.10.6" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#aho-corasick@1.1.3", + "registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.4", + "registry+https://github.com/rust-lang/crates.io-index#regex-syntax@0.8.4" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "aho_corasick", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#aho-corasick@1.1.3" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "memchr", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#memchr@2.7.4" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "regex_syntax", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#regex-syntax@0.8.4" + } + ], + "features": [ + "alloc", + "meta", + "nfa-pikevm", + "nfa-thompson", + "std", + "syntax", + "unicode-bool" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#regex-automata@0.4.7" + }, + { + "dependencies": [], + "deps": [], + "features": [ + "std", + "unicode-bool" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#regex-syntax@0.8.4" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#bitflags@2.6.0", + "registry+https://github.com/rust-lang/crates.io-index#errno@0.3.9", + "registry+https://github.com/rust-lang/crates.io-index#libc@0.2.158", + "registry+https://github.com/rust-lang/crates.io-index#linux-raw-sys@0.4.14", + "registry+https://github.com/rust-lang/crates.io-index#windows-sys@0.52.0" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "bitflags", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#bitflags@2.6.0" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"riscv64\", all(rustix_use_experimental_asm, target_arch = \"powerpc64\"), all(rustix_use_experimental_asm, target_arch = \"mips\"), all(rustix_use_experimental_asm, target_arch = \"mips32r6\"), all(rustix_use_experimental_asm, target_arch = \"mips64\"), all(rustix_use_experimental_asm, target_arch = \"mips64r6\"), target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"))))" + }, + { + "kind": null, + "target": "cfg(all(not(windows), any(rustix_use_libc, miri, not(all(target_os = \"linux\", target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"riscv64\", all(rustix_use_experimental_asm, target_arch = \"powerpc64\"), all(rustix_use_experimental_asm, target_arch = \"mips\"), all(rustix_use_experimental_asm, target_arch = \"mips32r6\"), all(rustix_use_experimental_asm, target_arch = \"mips64\"), all(rustix_use_experimental_asm, target_arch = \"mips64r6\"), target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\")))))))" + }, + { + "kind": null, + "target": "cfg(windows)" + } + ], + "name": "libc_errno", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#errno@0.3.9" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"riscv64\", all(rustix_use_experimental_asm, target_arch = \"powerpc64\"), all(rustix_use_experimental_asm, target_arch = \"mips\"), all(rustix_use_experimental_asm, target_arch = \"mips32r6\"), all(rustix_use_experimental_asm, target_arch = \"mips64\"), all(rustix_use_experimental_asm, target_arch = \"mips64r6\"), target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"))))" + }, + { + "kind": null, + "target": "cfg(all(not(windows), any(rustix_use_libc, miri, not(all(target_os = \"linux\", target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"riscv64\", all(rustix_use_experimental_asm, target_arch = \"powerpc64\"), all(rustix_use_experimental_asm, target_arch = \"mips\"), all(rustix_use_experimental_asm, target_arch = \"mips32r6\"), all(rustix_use_experimental_asm, target_arch = \"mips64\"), all(rustix_use_experimental_asm, target_arch = \"mips64r6\"), target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\")))))))" + } + ], + "name": "libc", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#libc@0.2.158" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "cfg(all(not(rustix_use_libc), not(miri), target_os = \"linux\", target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"riscv64\", all(rustix_use_experimental_asm, target_arch = \"powerpc64\"), all(rustix_use_experimental_asm, target_arch = \"mips\"), all(rustix_use_experimental_asm, target_arch = \"mips32r6\"), all(rustix_use_experimental_asm, target_arch = \"mips64\"), all(rustix_use_experimental_asm, target_arch = \"mips64r6\"), target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\"))))" + }, + { + "kind": null, + "target": "cfg(all(any(target_os = \"android\", target_os = \"linux\"), any(rustix_use_libc, miri, not(all(target_os = \"linux\", target_endian = \"little\", any(target_arch = \"arm\", all(target_arch = \"aarch64\", target_pointer_width = \"64\"), target_arch = \"riscv64\", all(rustix_use_experimental_asm, target_arch = \"powerpc64\"), all(rustix_use_experimental_asm, target_arch = \"mips\"), all(rustix_use_experimental_asm, target_arch = \"mips32r6\"), all(rustix_use_experimental_asm, target_arch = \"mips64\"), all(rustix_use_experimental_asm, target_arch = \"mips64r6\"), target_arch = \"x86\", all(target_arch = \"x86_64\", target_pointer_width = \"64\")))))))" + } + ], + "name": "linux_raw_sys", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#linux-raw-sys@0.4.14" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "cfg(windows)" + } + ], + "name": "windows_sys", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#windows-sys@0.52.0" + } + ], + "features": [ + "alloc", + "default", + "fs", + "libc-extra-traits", + "std", + "use-libc-auxv" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#rustix@0.38.36" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#serde_derive@1.0.210" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + }, + { + "kind": null, + "target": "cfg(any())" + } + ], + "name": "serde_derive", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#serde_derive@1.0.210" + } + ], + "features": [ + "default", + "derive", + "serde_derive", + "std" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#serde@1.0.210" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.86", + "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.37", + "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.77" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "proc_macro2", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.86" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "quote", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.37" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "syn", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.77" + } + ], + "features": [ + "default" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#serde_derive@1.0.210" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.86", + "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.37", + "registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.12" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "proc_macro2", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#proc-macro2@1.0.86" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "quote", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#quote@1.0.37" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "unicode_ident", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.12" + } + ], + "features": [ + "clone-impls", + "default", + "derive", + "extra-traits", + "full", + "parsing", + "printing", + "proc-macro" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#syn@2.0.77" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.0", + "registry+https://github.com/rust-lang/crates.io-index#fastrand@2.1.1", + "registry+https://github.com/rust-lang/crates.io-index#once_cell@1.19.0", + "registry+https://github.com/rust-lang/crates.io-index#rustix@0.38.36", + "registry+https://github.com/rust-lang/crates.io-index#windows-sys@0.59.0" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "cfg_if", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#cfg-if@1.0.0" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "fastrand", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#fastrand@2.1.1" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "once_cell", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#once_cell@1.19.0" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "cfg(any(unix, target_os = \"wasi\"))" + } + ], + "name": "rustix", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#rustix@0.38.36" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "cfg(windows)" + } + ], + "name": "windows_sys", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#windows-sys@0.59.0" + } + ], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#tempfile@3.12.0" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#unicode-ident@1.0.12" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#windows-targets@0.52.6" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "windows_targets", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#windows-targets@0.52.6" + } + ], + "features": [ + "Win32", + "Win32_Foundation", + "Win32_NetworkManagement", + "Win32_NetworkManagement_IpHelper", + "Win32_Networking", + "Win32_Networking_WinSock", + "Win32_System", + "Win32_System_Diagnostics", + "Win32_System_Diagnostics_Debug", + "Win32_System_Threading", + "default" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#windows-sys@0.52.0" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#windows-targets@0.52.6" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": null + } + ], + "name": "windows_targets", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#windows-targets@0.52.6" + } + ], + "features": [ + "Win32", + "Win32_Foundation", + "Win32_Storage", + "Win32_Storage_FileSystem", + "default" + ], + "id": "registry+https://github.com/rust-lang/crates.io-index#windows-sys@0.59.0" + }, + { + "dependencies": [ + "registry+https://github.com/rust-lang/crates.io-index#windows_aarch64_gnullvm@0.52.6", + "registry+https://github.com/rust-lang/crates.io-index#windows_aarch64_msvc@0.52.6", + "registry+https://github.com/rust-lang/crates.io-index#windows_i686_gnu@0.52.6", + "registry+https://github.com/rust-lang/crates.io-index#windows_i686_gnullvm@0.52.6", + "registry+https://github.com/rust-lang/crates.io-index#windows_i686_msvc@0.52.6", + "registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_gnu@0.52.6", + "registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_gnullvm@0.52.6", + "registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_msvc@0.52.6" + ], + "deps": [ + { + "dep_kinds": [ + { + "kind": null, + "target": "aarch64-pc-windows-gnullvm" + } + ], + "name": "windows_aarch64_gnullvm", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#windows_aarch64_gnullvm@0.52.6" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "cfg(all(target_arch = \"aarch64\", target_env = \"msvc\", not(windows_raw_dylib)))" + } + ], + "name": "windows_aarch64_msvc", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#windows_aarch64_msvc@0.52.6" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "cfg(all(target_arch = \"x86\", target_env = \"gnu\", not(target_abi = \"llvm\"), not(windows_raw_dylib)))" + } + ], + "name": "windows_i686_gnu", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#windows_i686_gnu@0.52.6" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "i686-pc-windows-gnullvm" + } + ], + "name": "windows_i686_gnullvm", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#windows_i686_gnullvm@0.52.6" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "cfg(all(target_arch = \"x86\", target_env = \"msvc\", not(windows_raw_dylib)))" + } + ], + "name": "windows_i686_msvc", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#windows_i686_msvc@0.52.6" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "cfg(all(target_arch = \"x86_64\", target_env = \"gnu\", not(target_abi = \"llvm\"), not(windows_raw_dylib)))" + } + ], + "name": "windows_x86_64_gnu", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_gnu@0.52.6" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "x86_64-pc-windows-gnullvm" + } + ], + "name": "windows_x86_64_gnullvm", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_gnullvm@0.52.6" + }, + { + "dep_kinds": [ + { + "kind": null, + "target": "cfg(all(any(target_arch = \"x86_64\", target_arch = \"arm64ec\"), target_env = \"msvc\", not(windows_raw_dylib)))" + } + ], + "name": "windows_x86_64_msvc", + "pkg": "registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_msvc@0.52.6" + } + ], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#windows-targets@0.52.6" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_aarch64_gnullvm@0.52.6" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_aarch64_msvc@0.52.6" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_i686_gnu@0.52.6" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_i686_gnullvm@0.52.6" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_i686_msvc@0.52.6" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_gnu@0.52.6" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_gnullvm@0.52.6" + }, + { + "dependencies": [], + "deps": [], + "features": [], + "id": "registry+https://github.com/rust-lang/crates.io-index#windows_x86_64_msvc@0.52.6" + } + ], + "root": "path+file://{TEMP_DIR}/host_specific_build_deps#0.0.0" + }, + "target_directory": "{TEMP_DIR}/host_specific_build_deps/target", + "version": 1, + "workspace_default_members": [ + "path+file://{TEMP_DIR}/host_specific_build_deps#0.0.0" + ], + "workspace_members": [ + "path+file://{TEMP_DIR}/host_specific_build_deps#0.0.0" + ], + "workspace_root": "{TEMP_DIR}/host_specific_build_deps" +} diff --git a/crate_universe/tests/cargo_integration_test.rs b/crate_universe/tests/cargo_integration_test.rs index 5631839b7b..c2103850ee 100644 --- a/crate_universe/tests/cargo_integration_test.rs +++ b/crate_universe/tests/cargo_integration_test.rs @@ -4,14 +4,15 @@ extern crate cargo_bazel; extern crate serde_json; extern crate tempfile; -use anyhow::{ensure, Context, Result}; -use cargo_bazel::cli::{splice, SpliceOptions}; -use serde_json::{json, Value}; use std::collections::HashMap; use std::env; use std::fs; use std::path::PathBuf; +use anyhow::{ensure, Context, Result}; +use cargo_bazel::cli::{splice, SpliceOptions}; +use serde_json::{json, Value}; + fn should_skip_test() -> bool { // All test cases require network access to build pull crate metadata // so that we can actually run `cargo tree`. However, RBE (and perhaps @@ -26,14 +27,16 @@ fn should_skip_test() -> bool { } } -fn setup_cargo_env() -> Result<(PathBuf, PathBuf)> { - let cargo = std::fs::canonicalize(PathBuf::from( - env::var("CARGO").context("CARGO environment variable must be set.")?, - )) +fn setup_cargo_env(rfiles: &runfiles::Runfiles) -> Result<(PathBuf, PathBuf)> { + let cargo = runfiles::rlocation!( + rfiles, + env::var("CARGO").context("CARGO environment variable must be set.")? + ) .unwrap(); - let rustc = std::fs::canonicalize(PathBuf::from( - env::var("RUSTC").context("RUSTC environment variable must be set.")?, - )) + let rustc = runfiles::rlocation!( + rfiles, + env::var("RUSTC").context("RUSTC environment variable must be set.")? + ) .unwrap(); ensure!(cargo.exists()); ensure!(rustc.exists()); @@ -63,11 +66,11 @@ fn setup_cargo_env() -> Result<(PathBuf, PathBuf)> { } fn run(repository_name: &str, manifests: HashMap, lockfile: &str) -> Value { - let (cargo, rustc) = setup_cargo_env().unwrap(); - let scratch = tempfile::tempdir().unwrap(); let runfiles = runfiles::Runfiles::create().unwrap(); + let (cargo, rustc) = setup_cargo_env(&runfiles).unwrap(); + let splicing_manifest = scratch.path().join("splicing_manifest.json"); fs::write( &splicing_manifest, @@ -397,6 +400,8 @@ fn resolver_2_deps() { return; } + cargo_bazel::cli::init_logging("Splice", true); + let r = runfiles::Runfiles::create().unwrap(); let metadata = run( "resolver_2_deps_test", @@ -513,3 +518,94 @@ fn resolver_2_deps() { metadata["metadata"]["cargo-bazel"]["tree_metadata"]["iana-time-zone 0.1.60"], ); } + +#[test] +fn host_specific_build_deps() { + if should_skip_test() { + eprintln!("Skipping!"); + return; + } + + let r = runfiles::Runfiles::create().unwrap(); + let metadata = run( + "host_specific_build_deps", + HashMap::from([( + runfiles::rlocation!( + r, + "rules_rust/crate_universe/test_data/metadata/host_specific_build_deps/Cargo.toml" + ) + .unwrap() + .to_string_lossy() + .to_string(), + "//:test_input".to_string(), + )]), + "rules_rust/crate_universe/test_data/metadata/host_specific_build_deps/Cargo.lock", + ); + + assert_eq!( + json!({ + "common": { + "deps": [ + "bitflags 2.6.0", + ], + "features": [ + "alloc", + "default", + "fs", + "libc-extra-traits", + "std", + "use-libc-auxv", + ], + }, + // Note that there is no `wasm32-unknown-unknown` or `x86_64-pc-windows-msvc` entry + // since these platforms do not depend on `rustix`. The chain breaks due to the + // conditions here: https://github.com/Stebalien/tempfile/blob/v3.11.0/Cargo.toml#L25-L33 + "selects": { + "x86_64-apple-darwin": { + "deps": [ + "errno 0.3.9", + "libc 0.2.158", + ], + }, + "x86_64-unknown-linux-gnu": { + "deps": [ + "linux-raw-sys 0.4.14", + ], + }, + }, + }), + metadata["metadata"]["cargo-bazel"]["tree_metadata"]["rustix 0.38.36"], + ); + + assert_eq!( + json!({ + "common": { + "deps": [ + "cfg-if 1.0.0", + "fastrand 2.1.1", + "once_cell 1.19.0", + ], + }, + // Note that windows does not contain `rustix` and instead `windows-sys`. + // This shows correct detection of exec platform constraints. + "selects": { + "x86_64-apple-darwin": { + "deps": [ + "rustix 0.38.36", + ], + }, + "x86_64-pc-windows-msvc": { + "deps": [ + "windows-sys 0.59.0", + ], + }, + "x86_64-unknown-linux-gnu": { + "deps": [ + "rustix 0.38.36", + ], + }, + }, + }), + metadata["metadata"]["cargo-bazel"]["tree_metadata"]["tempfile 3.12.0"], + ); +} diff --git a/examples/crate_universe/complicated_dependencies/cargo-bazel-lock.json b/examples/crate_universe/complicated_dependencies/cargo-bazel-lock.json index 5dfff7d776..1b8de4fbc9 100644 --- a/examples/crate_universe/complicated_dependencies/cargo-bazel-lock.json +++ b/examples/crate_universe/complicated_dependencies/cargo-bazel-lock.json @@ -1,5 +1,5 @@ { - "checksum": "00a3a71b3bac0df6fd4b94a93bd822e981273474ee64cf1dd23c6a8e7c40bafa", + "checksum": "d8d7787f457eaad0ffd61ec7adc235234a873c09420a7b6ad73269b5faae6163", "crates": { "aho-corasick 1.1.3": { "name": "aho-corasick", @@ -2113,6 +2113,21 @@ "compile_data_glob": [ "**" ], + "crate_features": { + "common": [ + "errhandlingapi", + "fileapi", + "handleapi", + "minwinbase", + "minwindef", + "processthreadsapi", + "synchapi", + "winbase", + "winerror", + "winnt" + ], + "selects": {} + }, "deps": { "common": [ { diff --git a/examples/crate_universe/multi_package/cargo-bazel-lock.json b/examples/crate_universe/multi_package/cargo-bazel-lock.json index a5480fee96..f85d817a4d 100644 --- a/examples/crate_universe/multi_package/cargo-bazel-lock.json +++ b/examples/crate_universe/multi_package/cargo-bazel-lock.json @@ -1,5 +1,5 @@ { - "checksum": "4ac3327ed0666dc99d18c84f3c69533a329fee5f6ca5747925073d4fc83eaf48", + "checksum": "ecca70d9bc02caad3c17fa54f9260d8b235140b9442a3060e45ed77a3894c462", "crates": { "aho-corasick 0.7.20": { "name": "aho-corasick", @@ -5766,105 +5766,10 @@ "**" ], "crate_features": { - "common": [], - "selects": { - "aarch64-apple-darwin": [ - "std" - ], - "aarch64-apple-ios": [ - "std" - ], - "aarch64-apple-ios-sim": [ - "std" - ], - "aarch64-fuchsia": [ - "std" - ], - "aarch64-linux-android": [ - "std" - ], - "aarch64-pc-windows-msvc": [ - "std" - ], - "aarch64-unknown-linux-gnu": [ - "std" - ], - "aarch64-unknown-nixos-gnu": [ - "std" - ], - "aarch64-unknown-nto-qnx710": [ - "std" - ], - "arm-unknown-linux-gnueabi": [ - "std" - ], - "armv7-linux-androideabi": [ - "std" - ], - "armv7-unknown-linux-gnueabi": [ - "std" - ], - "i686-apple-darwin": [ - "std" - ], - "i686-linux-android": [ - "std" - ], - "i686-pc-windows-msvc": [ - "std" - ], - "i686-unknown-freebsd": [ - "std" - ], - "i686-unknown-linux-gnu": [ - "std" - ], - "powerpc-unknown-linux-gnu": [ - "std" - ], - "riscv32imc-unknown-none-elf": [ - "std" - ], - "riscv64gc-unknown-none-elf": [ - "std" - ], - "s390x-unknown-linux-gnu": [ - "std" - ], - "thumbv7em-none-eabi": [ - "std" - ], - "thumbv8m.main-none-eabi": [ - "std" - ], - "x86_64-apple-darwin": [ - "std" - ], - "x86_64-apple-ios": [ - "std" - ], - "x86_64-fuchsia": [ - "std" - ], - "x86_64-linux-android": [ - "std" - ], - "x86_64-pc-windows-msvc": [ - "std" - ], - "x86_64-unknown-freebsd": [ - "std" - ], - "x86_64-unknown-linux-gnu": [ - "std" - ], - "x86_64-unknown-nixos-gnu": [ - "std" - ], - "x86_64-unknown-none": [ - "std" - ] - } + "common": [ + "std" + ], + "selects": {} }, "deps": { "common": [ @@ -13017,15 +12922,10 @@ "**" ], "crate_features": { - "common": [], - "selects": { - "wasm32-unknown-unknown": [ - "spans" - ], - "wasm32-wasi": [ - "spans" - ] - } + "common": [ + "spans" + ], + "selects": {} }, "deps": { "common": [ @@ -13163,15 +13063,10 @@ "**" ], "crate_features": { - "common": [], - "selects": { - "wasm32-unknown-unknown": [ - "spans" - ], - "wasm32-wasi": [ - "spans" - ] - } + "common": [ + "spans" + ], + "selects": {} }, "deps": { "common": [ @@ -13226,15 +13121,10 @@ "**" ], "crate_features": { - "common": [], - "selects": { - "wasm32-unknown-unknown": [ - "spans" - ], - "wasm32-wasi": [ - "spans" - ] - } + "common": [ + "spans" + ], + "selects": {} }, "deps": { "common": [ diff --git a/examples/crate_universe/vendor_external/crates/BUILD.proc-macro2-1.0.36.bazel b/examples/crate_universe/vendor_external/crates/BUILD.proc-macro2-1.0.36.bazel index e27971c09b..7ef279c5d4 100644 --- a/examples/crate_universe/vendor_external/crates/BUILD.proc-macro2-1.0.36.bazel +++ b/examples/crate_universe/vendor_external/crates/BUILD.proc-macro2-1.0.36.bazel @@ -30,10 +30,66 @@ rust_library( ], ), crate_features = [ - "default", - "proc-macro", "span-locations", - ], + ] + select({ + "@rules_rust//rust/platform:aarch64-apple-darwin": [ + "default", # aarch64-apple-darwin + "proc-macro", # aarch64-apple-darwin + ], + "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ + "default", # aarch64-pc-windows-msvc + "proc-macro", # aarch64-pc-windows-msvc + ], + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ + "default", # aarch64-unknown-linux-gnu + "proc-macro", # aarch64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ + "default", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + "proc-macro", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + ], + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ + "default", # arm-unknown-linux-gnueabi + "proc-macro", # arm-unknown-linux-gnueabi + ], + "@rules_rust//rust/platform:i686-pc-windows-msvc": [ + "default", # i686-pc-windows-msvc + "proc-macro", # i686-pc-windows-msvc + ], + "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ + "default", # i686-unknown-linux-gnu + "proc-macro", # i686-unknown-linux-gnu + ], + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ + "default", # powerpc-unknown-linux-gnu + "proc-macro", # powerpc-unknown-linux-gnu + ], + "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ + "default", # s390x-unknown-linux-gnu + "proc-macro", # s390x-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-apple-darwin": [ + "default", # x86_64-apple-darwin + "proc-macro", # x86_64-apple-darwin + ], + "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ + "default", # x86_64-pc-windows-msvc + "proc-macro", # x86_64-pc-windows-msvc + ], + "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ + "default", # x86_64-unknown-freebsd + "proc-macro", # x86_64-unknown-freebsd + ], + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ + "default", # x86_64-unknown-linux-gnu + "proc-macro", # x86_64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ + "default", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + "proc-macro", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + ], + "//conditions:default": [], + }), crate_root = "src/lib.rs", edition = "2018", rustc_flags = [ @@ -109,10 +165,66 @@ cargo_build_script( ], ), crate_features = [ - "default", - "proc-macro", "span-locations", - ], + ] + select({ + "@rules_rust//rust/platform:aarch64-apple-darwin": [ + "default", # aarch64-apple-darwin + "proc-macro", # aarch64-apple-darwin + ], + "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ + "default", # aarch64-pc-windows-msvc + "proc-macro", # aarch64-pc-windows-msvc + ], + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ + "default", # aarch64-unknown-linux-gnu + "proc-macro", # aarch64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ + "default", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + "proc-macro", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + ], + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ + "default", # arm-unknown-linux-gnueabi + "proc-macro", # arm-unknown-linux-gnueabi + ], + "@rules_rust//rust/platform:i686-pc-windows-msvc": [ + "default", # i686-pc-windows-msvc + "proc-macro", # i686-pc-windows-msvc + ], + "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ + "default", # i686-unknown-linux-gnu + "proc-macro", # i686-unknown-linux-gnu + ], + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ + "default", # powerpc-unknown-linux-gnu + "proc-macro", # powerpc-unknown-linux-gnu + ], + "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ + "default", # s390x-unknown-linux-gnu + "proc-macro", # s390x-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-apple-darwin": [ + "default", # x86_64-apple-darwin + "proc-macro", # x86_64-apple-darwin + ], + "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ + "default", # x86_64-pc-windows-msvc + "proc-macro", # x86_64-pc-windows-msvc + ], + "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ + "default", # x86_64-unknown-freebsd + "proc-macro", # x86_64-unknown-freebsd + ], + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ + "default", # x86_64-unknown-linux-gnu + "proc-macro", # x86_64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ + "default", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + "proc-macro", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + ], + "//conditions:default": [], + }), crate_name = "build_script_build", crate_root = "build.rs", data = glob( diff --git a/examples/crate_universe/vendor_external/crates/BUILD.quote-1.0.15.bazel b/examples/crate_universe/vendor_external/crates/BUILD.quote-1.0.15.bazel index 50d43904f5..8aa466e141 100644 --- a/examples/crate_universe/vendor_external/crates/BUILD.quote-1.0.15.bazel +++ b/examples/crate_universe/vendor_external/crates/BUILD.quote-1.0.15.bazel @@ -28,10 +28,65 @@ rust_library( "WORKSPACE.bazel", ], ), - crate_features = [ - "default", - "proc-macro", - ], + crate_features = select({ + "@rules_rust//rust/platform:aarch64-apple-darwin": [ + "default", # aarch64-apple-darwin + "proc-macro", # aarch64-apple-darwin + ], + "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ + "default", # aarch64-pc-windows-msvc + "proc-macro", # aarch64-pc-windows-msvc + ], + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ + "default", # aarch64-unknown-linux-gnu + "proc-macro", # aarch64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ + "default", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + "proc-macro", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + ], + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ + "default", # arm-unknown-linux-gnueabi + "proc-macro", # arm-unknown-linux-gnueabi + ], + "@rules_rust//rust/platform:i686-pc-windows-msvc": [ + "default", # i686-pc-windows-msvc + "proc-macro", # i686-pc-windows-msvc + ], + "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ + "default", # i686-unknown-linux-gnu + "proc-macro", # i686-unknown-linux-gnu + ], + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ + "default", # powerpc-unknown-linux-gnu + "proc-macro", # powerpc-unknown-linux-gnu + ], + "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ + "default", # s390x-unknown-linux-gnu + "proc-macro", # s390x-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-apple-darwin": [ + "default", # x86_64-apple-darwin + "proc-macro", # x86_64-apple-darwin + ], + "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ + "default", # x86_64-pc-windows-msvc + "proc-macro", # x86_64-pc-windows-msvc + ], + "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ + "default", # x86_64-unknown-freebsd + "proc-macro", # x86_64-unknown-freebsd + ], + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ + "default", # x86_64-unknown-linux-gnu + "proc-macro", # x86_64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ + "default", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + "proc-macro", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + ], + "//conditions:default": [], + }), crate_root = "src/lib.rs", edition = "2018", rustc_flags = [ diff --git a/examples/crate_universe/vendor_external/crates/BUILD.syn-1.0.86.bazel b/examples/crate_universe/vendor_external/crates/BUILD.syn-1.0.86.bazel index 8d2e866723..9f181d22fb 100644 --- a/examples/crate_universe/vendor_external/crates/BUILD.syn-1.0.86.bazel +++ b/examples/crate_universe/vendor_external/crates/BUILD.syn-1.0.86.bazel @@ -30,15 +30,97 @@ rust_library( ], ), crate_features = [ - "clone-impls", - "default", - "derive", "full", "parsing", "printing", - "proc-macro", "quote", - ], + ] + select({ + "@rules_rust//rust/platform:aarch64-apple-darwin": [ + "clone-impls", # aarch64-apple-darwin + "default", # aarch64-apple-darwin + "derive", # aarch64-apple-darwin + "proc-macro", # aarch64-apple-darwin + ], + "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ + "clone-impls", # aarch64-pc-windows-msvc + "default", # aarch64-pc-windows-msvc + "derive", # aarch64-pc-windows-msvc + "proc-macro", # aarch64-pc-windows-msvc + ], + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ + "clone-impls", # aarch64-unknown-linux-gnu + "default", # aarch64-unknown-linux-gnu + "derive", # aarch64-unknown-linux-gnu + "proc-macro", # aarch64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ + "clone-impls", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + "default", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + "derive", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + "proc-macro", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + ], + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ + "clone-impls", # arm-unknown-linux-gnueabi + "default", # arm-unknown-linux-gnueabi + "derive", # arm-unknown-linux-gnueabi + "proc-macro", # arm-unknown-linux-gnueabi + ], + "@rules_rust//rust/platform:i686-pc-windows-msvc": [ + "clone-impls", # i686-pc-windows-msvc + "default", # i686-pc-windows-msvc + "derive", # i686-pc-windows-msvc + "proc-macro", # i686-pc-windows-msvc + ], + "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ + "clone-impls", # i686-unknown-linux-gnu + "default", # i686-unknown-linux-gnu + "derive", # i686-unknown-linux-gnu + "proc-macro", # i686-unknown-linux-gnu + ], + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ + "clone-impls", # powerpc-unknown-linux-gnu + "default", # powerpc-unknown-linux-gnu + "derive", # powerpc-unknown-linux-gnu + "proc-macro", # powerpc-unknown-linux-gnu + ], + "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ + "clone-impls", # s390x-unknown-linux-gnu + "default", # s390x-unknown-linux-gnu + "derive", # s390x-unknown-linux-gnu + "proc-macro", # s390x-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-apple-darwin": [ + "clone-impls", # x86_64-apple-darwin + "default", # x86_64-apple-darwin + "derive", # x86_64-apple-darwin + "proc-macro", # x86_64-apple-darwin + ], + "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ + "clone-impls", # x86_64-pc-windows-msvc + "default", # x86_64-pc-windows-msvc + "derive", # x86_64-pc-windows-msvc + "proc-macro", # x86_64-pc-windows-msvc + ], + "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ + "clone-impls", # x86_64-unknown-freebsd + "default", # x86_64-unknown-freebsd + "derive", # x86_64-unknown-freebsd + "proc-macro", # x86_64-unknown-freebsd + ], + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ + "clone-impls", # x86_64-unknown-linux-gnu + "default", # x86_64-unknown-linux-gnu + "derive", # x86_64-unknown-linux-gnu + "proc-macro", # x86_64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ + "clone-impls", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + "default", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + "derive", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + "proc-macro", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + ], + "//conditions:default": [], + }), crate_root = "src/lib.rs", edition = "2018", rustc_flags = [ @@ -116,15 +198,97 @@ cargo_build_script( ], ), crate_features = [ - "clone-impls", - "default", - "derive", "full", "parsing", "printing", - "proc-macro", "quote", - ], + ] + select({ + "@rules_rust//rust/platform:aarch64-apple-darwin": [ + "clone-impls", # aarch64-apple-darwin + "default", # aarch64-apple-darwin + "derive", # aarch64-apple-darwin + "proc-macro", # aarch64-apple-darwin + ], + "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ + "clone-impls", # aarch64-pc-windows-msvc + "default", # aarch64-pc-windows-msvc + "derive", # aarch64-pc-windows-msvc + "proc-macro", # aarch64-pc-windows-msvc + ], + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ + "clone-impls", # aarch64-unknown-linux-gnu + "default", # aarch64-unknown-linux-gnu + "derive", # aarch64-unknown-linux-gnu + "proc-macro", # aarch64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ + "clone-impls", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + "default", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + "derive", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + "proc-macro", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + ], + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ + "clone-impls", # arm-unknown-linux-gnueabi + "default", # arm-unknown-linux-gnueabi + "derive", # arm-unknown-linux-gnueabi + "proc-macro", # arm-unknown-linux-gnueabi + ], + "@rules_rust//rust/platform:i686-pc-windows-msvc": [ + "clone-impls", # i686-pc-windows-msvc + "default", # i686-pc-windows-msvc + "derive", # i686-pc-windows-msvc + "proc-macro", # i686-pc-windows-msvc + ], + "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ + "clone-impls", # i686-unknown-linux-gnu + "default", # i686-unknown-linux-gnu + "derive", # i686-unknown-linux-gnu + "proc-macro", # i686-unknown-linux-gnu + ], + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ + "clone-impls", # powerpc-unknown-linux-gnu + "default", # powerpc-unknown-linux-gnu + "derive", # powerpc-unknown-linux-gnu + "proc-macro", # powerpc-unknown-linux-gnu + ], + "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ + "clone-impls", # s390x-unknown-linux-gnu + "default", # s390x-unknown-linux-gnu + "derive", # s390x-unknown-linux-gnu + "proc-macro", # s390x-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-apple-darwin": [ + "clone-impls", # x86_64-apple-darwin + "default", # x86_64-apple-darwin + "derive", # x86_64-apple-darwin + "proc-macro", # x86_64-apple-darwin + ], + "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ + "clone-impls", # x86_64-pc-windows-msvc + "default", # x86_64-pc-windows-msvc + "derive", # x86_64-pc-windows-msvc + "proc-macro", # x86_64-pc-windows-msvc + ], + "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ + "clone-impls", # x86_64-unknown-freebsd + "default", # x86_64-unknown-freebsd + "derive", # x86_64-unknown-freebsd + "proc-macro", # x86_64-unknown-freebsd + ], + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ + "clone-impls", # x86_64-unknown-linux-gnu + "default", # x86_64-unknown-linux-gnu + "derive", # x86_64-unknown-linux-gnu + "proc-macro", # x86_64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ + "clone-impls", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + "default", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + "derive", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + "proc-macro", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + ], + "//conditions:default": [], + }), crate_name = "build_script_build", crate_root = "build.rs", data = glob( diff --git a/examples/crate_universe/vendor_local_manifests/crates/proc-macro2-1.0.86/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/proc-macro2-1.0.86/BUILD.bazel index 8dbe8cc957..d9052179c4 100644 --- a/examples/crate_universe/vendor_local_manifests/crates/proc-macro2-1.0.86/BUILD.bazel +++ b/examples/crate_universe/vendor_local_manifests/crates/proc-macro2-1.0.86/BUILD.bazel @@ -85,7 +85,7 @@ rust_library( version = "1.0.86", deps = [ "//vendor_local_manifests/crates/proc-macro2-1.0.86:build_script_build", - "//vendor_local_manifests/crates/unicode-ident-1.0.12:unicode_ident", + "//vendor_local_manifests/crates/unicode-ident-1.0.13:unicode_ident", ], ) diff --git a/examples/crate_universe/vendor_local_manifests/crates/redox_syscall-0.5.3/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/redox_syscall-0.5.4/BUILD.bazel similarity index 98% rename from examples/crate_universe/vendor_local_manifests/crates/redox_syscall-0.5.3/BUILD.bazel rename to examples/crate_universe/vendor_local_manifests/crates/redox_syscall-0.5.4/BUILD.bazel index 20c60eec51..75ca28f0fa 100644 --- a/examples/crate_universe/vendor_local_manifests/crates/redox_syscall-0.5.3/BUILD.bazel +++ b/examples/crate_universe/vendor_local_manifests/crates/redox_syscall-0.5.4/BUILD.bazel @@ -29,7 +29,7 @@ rust_library( ], ), crate_root = "src/lib.rs", - edition = "2018", + edition = "2021", rustc_flags = [ "--cap-lints=allow", ], @@ -77,7 +77,7 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.5.3", + version = "0.5.4", deps = [ "//vendor_local_manifests/crates/bitflags-2.6.0:bitflags", ], diff --git a/examples/crate_universe/vendor_local_manifests/crates/rustix-0.38.36/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/rustix-0.38.37/BUILD.bazel similarity index 99% rename from examples/crate_universe/vendor_local_manifests/crates/rustix-0.38.36/BUILD.bazel rename to examples/crate_universe/vendor_local_manifests/crates/rustix-0.38.37/BUILD.bazel index 9faf67d8e4..5a1f2654ae 100644 --- a/examples/crate_universe/vendor_local_manifests/crates/rustix-0.38.36/BUILD.bazel +++ b/examples/crate_universe/vendor_local_manifests/crates/rustix-0.38.37/BUILD.bazel @@ -170,10 +170,10 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.38.36", + version = "0.38.37", deps = [ "//vendor_local_manifests/crates/bitflags-2.6.0:bitflags", - "//vendor_local_manifests/crates/rustix-0.38.36:build_script_build", + "//vendor_local_manifests/crates/rustix-0.38.37:build_script_build", ] + select({ "@rules_rust//rust/platform:aarch64-apple-darwin": [ "//vendor_local_manifests/crates/errno-0.3.9:errno", # aarch64-apple-darwin, cfg(all(not(windows), any(rustix_use_libc, miri, not(all(target_os = "linux", target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "riscv64", all(rustix_use_experimental_asm, target_arch = "powerpc64"), all(rustix_use_experimental_asm, target_arch = "mips"), all(rustix_use_experimental_asm, target_arch = "mips32r6"), all(rustix_use_experimental_asm, target_arch = "mips64"), all(rustix_use_experimental_asm, target_arch = "mips64r6"), target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"))))))) @@ -366,7 +366,7 @@ cargo_build_script( "noclippy", "norustfmt", ], - version = "0.38.36", + version = "0.38.37", visibility = ["//visibility:private"], ) diff --git a/examples/crate_universe/vendor_local_manifests/crates/syn-2.0.77/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/syn-2.0.77/BUILD.bazel index 89e5f0b692..f59d70a84d 100644 --- a/examples/crate_universe/vendor_local_manifests/crates/syn-2.0.77/BUILD.bazel +++ b/examples/crate_universe/vendor_local_manifests/crates/syn-2.0.77/BUILD.bazel @@ -91,6 +91,6 @@ rust_library( deps = [ "//vendor_local_manifests/crates/proc-macro2-1.0.86:proc_macro2", "//vendor_local_manifests/crates/quote-1.0.37:quote", - "//vendor_local_manifests/crates/unicode-ident-1.0.12:unicode_ident", + "//vendor_local_manifests/crates/unicode-ident-1.0.13:unicode_ident", ], ) diff --git a/examples/crate_universe/vendor_local_manifests/crates/tempfile-3.12.0/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/tempfile-3.12.0/BUILD.bazel index d60aa37418..672bddbfaa 100644 --- a/examples/crate_universe/vendor_local_manifests/crates/tempfile-3.12.0/BUILD.bazel +++ b/examples/crate_universe/vendor_local_manifests/crates/tempfile-3.12.0/BUILD.bazel @@ -84,88 +84,88 @@ rust_library( "//vendor_local_manifests/crates/once_cell-1.19.0:once_cell", ] + select({ "@rules_rust//rust/platform:aarch64-apple-darwin": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-apple-ios": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-apple-ios-sim": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-fuchsia": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-linux-android": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ "//vendor_local_manifests/crates/windows-sys-0.59.0:windows_sys", # cfg(windows) ], "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-unknown-nto-qnx710": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:armv7-linux-androideabi": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:i686-apple-darwin": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:i686-linux-android": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:i686-pc-windows-msvc": [ "//vendor_local_manifests/crates/windows-sys-0.59.0:windows_sys", # cfg(windows) ], "@rules_rust//rust/platform:i686-unknown-freebsd": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:wasm32-wasi": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-apple-darwin": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-apple-ios": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-fuchsia": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-linux-android": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ "//vendor_local_manifests/crates/windows-sys-0.59.0:windows_sys", # cfg(windows) ], "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ - "//vendor_local_manifests/crates/rustix-0.38.36:rustix", # cfg(any(unix, target_os = "wasi")) + "//vendor_local_manifests/crates/rustix-0.38.37:rustix", # cfg(any(unix, target_os = "wasi")) ], "//conditions:default": [], }), diff --git a/examples/crate_universe/vendor_local_manifests/crates/unicode-ident-1.0.12/BUILD.bazel b/examples/crate_universe/vendor_local_manifests/crates/unicode-ident-1.0.13/BUILD.bazel similarity index 99% rename from examples/crate_universe/vendor_local_manifests/crates/unicode-ident-1.0.12/BUILD.bazel rename to examples/crate_universe/vendor_local_manifests/crates/unicode-ident-1.0.13/BUILD.bazel index f363225fa6..3528685e2e 100644 --- a/examples/crate_universe/vendor_local_manifests/crates/unicode-ident-1.0.12/BUILD.bazel +++ b/examples/crate_universe/vendor_local_manifests/crates/unicode-ident-1.0.13/BUILD.bazel @@ -77,5 +77,5 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "1.0.12", + version = "1.0.13", ) diff --git a/examples/crate_universe/vendor_local_pkgs/crates/proc-macro2-1.0.86/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/proc-macro2-1.0.86/BUILD.bazel index 58814eb085..5cff94d3a7 100644 --- a/examples/crate_universe/vendor_local_pkgs/crates/proc-macro2-1.0.86/BUILD.bazel +++ b/examples/crate_universe/vendor_local_pkgs/crates/proc-macro2-1.0.86/BUILD.bazel @@ -85,7 +85,7 @@ rust_library( version = "1.0.86", deps = [ "//vendor_local_pkgs/crates/proc-macro2-1.0.86:build_script_build", - "//vendor_local_pkgs/crates/unicode-ident-1.0.12:unicode_ident", + "//vendor_local_pkgs/crates/unicode-ident-1.0.13:unicode_ident", ], ) diff --git a/examples/crate_universe/vendor_local_pkgs/crates/redox_syscall-0.5.3/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/redox_syscall-0.5.4/BUILD.bazel similarity index 98% rename from examples/crate_universe/vendor_local_pkgs/crates/redox_syscall-0.5.3/BUILD.bazel rename to examples/crate_universe/vendor_local_pkgs/crates/redox_syscall-0.5.4/BUILD.bazel index 8bbfd6ee3e..056eda28fa 100644 --- a/examples/crate_universe/vendor_local_pkgs/crates/redox_syscall-0.5.3/BUILD.bazel +++ b/examples/crate_universe/vendor_local_pkgs/crates/redox_syscall-0.5.4/BUILD.bazel @@ -29,7 +29,7 @@ rust_library( ], ), crate_root = "src/lib.rs", - edition = "2018", + edition = "2021", rustc_flags = [ "--cap-lints=allow", ], @@ -77,7 +77,7 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.5.3", + version = "0.5.4", deps = [ "//vendor_local_pkgs/crates/bitflags-2.6.0:bitflags", ], diff --git a/examples/crate_universe/vendor_local_pkgs/crates/syn-2.0.77/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/syn-2.0.77/BUILD.bazel index 934e4ba18b..5bec859940 100644 --- a/examples/crate_universe/vendor_local_pkgs/crates/syn-2.0.77/BUILD.bazel +++ b/examples/crate_universe/vendor_local_pkgs/crates/syn-2.0.77/BUILD.bazel @@ -92,6 +92,6 @@ rust_library( deps = [ "//vendor_local_pkgs/crates/proc-macro2-1.0.86:proc_macro2", "//vendor_local_pkgs/crates/quote-1.0.37:quote", - "//vendor_local_pkgs/crates/unicode-ident-1.0.12:unicode_ident", + "//vendor_local_pkgs/crates/unicode-ident-1.0.13:unicode_ident", ], ) diff --git a/examples/crate_universe/vendor_local_pkgs/crates/unicode-ident-1.0.12/BUILD.bazel b/examples/crate_universe/vendor_local_pkgs/crates/unicode-ident-1.0.13/BUILD.bazel similarity index 99% rename from examples/crate_universe/vendor_local_pkgs/crates/unicode-ident-1.0.12/BUILD.bazel rename to examples/crate_universe/vendor_local_pkgs/crates/unicode-ident-1.0.13/BUILD.bazel index 71b876d0e9..c2b254c6b1 100644 --- a/examples/crate_universe/vendor_local_pkgs/crates/unicode-ident-1.0.12/BUILD.bazel +++ b/examples/crate_universe/vendor_local_pkgs/crates/unicode-ident-1.0.13/BUILD.bazel @@ -77,5 +77,5 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "1.0.12", + version = "1.0.13", ) diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.proc-macro2-1.0.86.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.proc-macro2-1.0.86.bazel index b88eabe2cd..ee9a26b5c3 100644 --- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.proc-macro2-1.0.86.bazel +++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.proc-macro2-1.0.86.bazel @@ -85,7 +85,7 @@ rust_library( version = "1.0.86", deps = [ "@cvm__proc-macro2-1.0.86//:build_script_build", - "@cvm__unicode-ident-1.0.12//:unicode_ident", + "@cvm__unicode-ident-1.0.13//:unicode_ident", ], ) diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.redox_syscall-0.5.3.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.redox_syscall-0.5.4.bazel similarity index 98% rename from examples/crate_universe/vendor_remote_manifests/crates/BUILD.redox_syscall-0.5.3.bazel rename to examples/crate_universe/vendor_remote_manifests/crates/BUILD.redox_syscall-0.5.4.bazel index e7101ece20..f400084811 100644 --- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.redox_syscall-0.5.3.bazel +++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.redox_syscall-0.5.4.bazel @@ -29,7 +29,7 @@ rust_library( ], ), crate_root = "src/lib.rs", - edition = "2018", + edition = "2021", rustc_flags = [ "--cap-lints=allow", ], @@ -77,7 +77,7 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.5.3", + version = "0.5.4", deps = [ "@cvm__bitflags-2.6.0//:bitflags", ], diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.rustix-0.38.36.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.rustix-0.38.37.bazel similarity index 99% rename from examples/crate_universe/vendor_remote_manifests/crates/BUILD.rustix-0.38.36.bazel rename to examples/crate_universe/vendor_remote_manifests/crates/BUILD.rustix-0.38.37.bazel index 97baceaa9c..399c6a5d6e 100644 --- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.rustix-0.38.36.bazel +++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.rustix-0.38.37.bazel @@ -170,10 +170,10 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.38.36", + version = "0.38.37", deps = [ "@cvm__bitflags-2.6.0//:bitflags", - "@cvm__rustix-0.38.36//:build_script_build", + "@cvm__rustix-0.38.37//:build_script_build", ] + select({ "@rules_rust//rust/platform:aarch64-apple-darwin": [ "@cvm__errno-0.3.9//:errno", # aarch64-apple-darwin, cfg(all(not(windows), any(rustix_use_libc, miri, not(all(target_os = "linux", target_endian = "little", any(target_arch = "arm", all(target_arch = "aarch64", target_pointer_width = "64"), target_arch = "riscv64", all(rustix_use_experimental_asm, target_arch = "powerpc64"), all(rustix_use_experimental_asm, target_arch = "mips"), all(rustix_use_experimental_asm, target_arch = "mips32r6"), all(rustix_use_experimental_asm, target_arch = "mips64"), all(rustix_use_experimental_asm, target_arch = "mips64r6"), target_arch = "x86", all(target_arch = "x86_64", target_pointer_width = "64"))))))) @@ -366,7 +366,7 @@ cargo_build_script( "noclippy", "norustfmt", ], - version = "0.38.36", + version = "0.38.37", visibility = ["//visibility:private"], ) diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.syn-2.0.77.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.syn-2.0.77.bazel index a65a047008..cae610e355 100644 --- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.syn-2.0.77.bazel +++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.syn-2.0.77.bazel @@ -91,6 +91,6 @@ rust_library( deps = [ "@cvm__proc-macro2-1.0.86//:proc_macro2", "@cvm__quote-1.0.37//:quote", - "@cvm__unicode-ident-1.0.12//:unicode_ident", + "@cvm__unicode-ident-1.0.13//:unicode_ident", ], ) diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tempfile-3.12.0.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tempfile-3.12.0.bazel index 214c3bb38a..7e0c2389ea 100644 --- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tempfile-3.12.0.bazel +++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.tempfile-3.12.0.bazel @@ -84,88 +84,88 @@ rust_library( "@cvm__once_cell-1.19.0//:once_cell", ] + select({ "@rules_rust//rust/platform:aarch64-apple-darwin": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-apple-ios": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-apple-ios-sim": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-fuchsia": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-linux-android": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ "@cvm__windows-sys-0.59.0//:windows_sys", # cfg(windows) ], "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:aarch64-unknown-nto-qnx710": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:armv7-linux-androideabi": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:i686-apple-darwin": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:i686-linux-android": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:i686-pc-windows-msvc": [ "@cvm__windows-sys-0.59.0//:windows_sys", # cfg(windows) ], "@rules_rust//rust/platform:i686-unknown-freebsd": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:wasm32-wasi": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-apple-darwin": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-apple-ios": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-fuchsia": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-linux-android": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ "@cvm__windows-sys-0.59.0//:windows_sys", # cfg(windows) ], "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ - "@cvm__rustix-0.38.36//:rustix", # cfg(any(unix, target_os = "wasi")) + "@cvm__rustix-0.38.37//:rustix", # cfg(any(unix, target_os = "wasi")) ], "//conditions:default": [], }), diff --git a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.unicode-ident-1.0.12.bazel b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.unicode-ident-1.0.13.bazel similarity index 99% rename from examples/crate_universe/vendor_remote_manifests/crates/BUILD.unicode-ident-1.0.12.bazel rename to examples/crate_universe/vendor_remote_manifests/crates/BUILD.unicode-ident-1.0.13.bazel index 13e52483c8..9bd6ab0e95 100644 --- a/examples/crate_universe/vendor_remote_manifests/crates/BUILD.unicode-ident-1.0.12.bazel +++ b/examples/crate_universe/vendor_remote_manifests/crates/BUILD.unicode-ident-1.0.13.bazel @@ -77,5 +77,5 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "1.0.12", + version = "1.0.13", ) diff --git a/examples/crate_universe/vendor_remote_manifests/crates/defs.bzl b/examples/crate_universe/vendor_remote_manifests/crates/defs.bzl index 020102d9f4..89da38eb04 100644 --- a/examples/crate_universe/vendor_remote_manifests/crates/defs.bzl +++ b/examples/crate_universe/vendor_remote_manifests/crates/defs.bzl @@ -701,12 +701,12 @@ def crate_repositories(): maybe( http_archive, - name = "cvm__redox_syscall-0.5.3", - sha256 = "2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4", + name = "cvm__redox_syscall-0.5.4", + sha256 = "0884ad60e090bf1345b93da0a5de8923c93884cd03f40dfcfddd3b4bee661853", type = "tar.gz", - urls = ["https://static.crates.io/crates/redox_syscall/0.5.3/download"], - strip_prefix = "redox_syscall-0.5.3", - build_file = Label("@examples//vendor_remote_manifests/crates:BUILD.redox_syscall-0.5.3.bazel"), + urls = ["https://static.crates.io/crates/redox_syscall/0.5.4/download"], + strip_prefix = "redox_syscall-0.5.4", + build_file = Label("@examples//vendor_remote_manifests/crates:BUILD.redox_syscall-0.5.4.bazel"), ) maybe( @@ -721,12 +721,12 @@ def crate_repositories(): maybe( http_archive, - name = "cvm__rustix-0.38.36", - sha256 = "3f55e80d50763938498dd5ebb18647174e0c76dc38c5505294bb224624f30f36", + name = "cvm__rustix-0.38.37", + sha256 = "8acb788b847c24f28525660c4d7758620a7210875711f79e7f663cc152726811", type = "tar.gz", - urls = ["https://static.crates.io/crates/rustix/0.38.36/download"], - strip_prefix = "rustix-0.38.36", - build_file = Label("@examples//vendor_remote_manifests/crates:BUILD.rustix-0.38.36.bazel"), + urls = ["https://static.crates.io/crates/rustix/0.38.37/download"], + strip_prefix = "rustix-0.38.37", + build_file = Label("@examples//vendor_remote_manifests/crates:BUILD.rustix-0.38.37.bazel"), ) maybe( @@ -831,12 +831,12 @@ def crate_repositories(): maybe( http_archive, - name = "cvm__unicode-ident-1.0.12", - sha256 = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b", + name = "cvm__unicode-ident-1.0.13", + sha256 = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe", type = "tar.gz", - urls = ["https://static.crates.io/crates/unicode-ident/1.0.12/download"], - strip_prefix = "unicode-ident-1.0.12", - build_file = Label("@examples//vendor_remote_manifests/crates:BUILD.unicode-ident-1.0.12.bazel"), + urls = ["https://static.crates.io/crates/unicode-ident/1.0.13/download"], + strip_prefix = "unicode-ident-1.0.13", + build_file = Label("@examples//vendor_remote_manifests/crates:BUILD.unicode-ident-1.0.13.bazel"), ) maybe( diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.proc-macro2-1.0.86.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.proc-macro2-1.0.86.bazel index da25b77c2a..1650f89a35 100644 --- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.proc-macro2-1.0.86.bazel +++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.proc-macro2-1.0.86.bazel @@ -85,7 +85,7 @@ rust_library( version = "1.0.86", deps = [ "@crates_vendor_pkgs__proc-macro2-1.0.86//:build_script_build", - "@crates_vendor_pkgs__unicode-ident-1.0.12//:unicode_ident", + "@crates_vendor_pkgs__unicode-ident-1.0.13//:unicode_ident", ], ) diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.redox_syscall-0.5.3.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.redox_syscall-0.5.4.bazel similarity index 98% rename from examples/crate_universe/vendor_remote_pkgs/crates/BUILD.redox_syscall-0.5.3.bazel rename to examples/crate_universe/vendor_remote_pkgs/crates/BUILD.redox_syscall-0.5.4.bazel index 69fc5796bf..d8ed7632e9 100644 --- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.redox_syscall-0.5.3.bazel +++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.redox_syscall-0.5.4.bazel @@ -29,7 +29,7 @@ rust_library( ], ), crate_root = "src/lib.rs", - edition = "2018", + edition = "2021", rustc_flags = [ "--cap-lints=allow", ], @@ -77,7 +77,7 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "0.5.3", + version = "0.5.4", deps = [ "@crates_vendor_pkgs__bitflags-2.6.0//:bitflags", ], diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.syn-2.0.77.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.syn-2.0.77.bazel index 52c4412936..17cd5dc3d6 100644 --- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.syn-2.0.77.bazel +++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.syn-2.0.77.bazel @@ -92,6 +92,6 @@ rust_library( deps = [ "@crates_vendor_pkgs__proc-macro2-1.0.86//:proc_macro2", "@crates_vendor_pkgs__quote-1.0.37//:quote", - "@crates_vendor_pkgs__unicode-ident-1.0.12//:unicode_ident", + "@crates_vendor_pkgs__unicode-ident-1.0.13//:unicode_ident", ], ) diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.unicode-ident-1.0.12.bazel b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.unicode-ident-1.0.13.bazel similarity index 99% rename from examples/crate_universe/vendor_remote_pkgs/crates/BUILD.unicode-ident-1.0.12.bazel rename to examples/crate_universe/vendor_remote_pkgs/crates/BUILD.unicode-ident-1.0.13.bazel index f14a3a0063..6ec9fb224d 100644 --- a/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.unicode-ident-1.0.12.bazel +++ b/examples/crate_universe/vendor_remote_pkgs/crates/BUILD.unicode-ident-1.0.13.bazel @@ -77,5 +77,5 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "1.0.12", + version = "1.0.13", ) diff --git a/examples/crate_universe/vendor_remote_pkgs/crates/defs.bzl b/examples/crate_universe/vendor_remote_pkgs/crates/defs.bzl index a4595aef3f..49ec2168b8 100644 --- a/examples/crate_universe/vendor_remote_pkgs/crates/defs.bzl +++ b/examples/crate_universe/vendor_remote_pkgs/crates/defs.bzl @@ -962,12 +962,12 @@ def crate_repositories(): maybe( http_archive, - name = "crates_vendor_pkgs__redox_syscall-0.5.3", - sha256 = "2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4", + name = "crates_vendor_pkgs__redox_syscall-0.5.4", + sha256 = "0884ad60e090bf1345b93da0a5de8923c93884cd03f40dfcfddd3b4bee661853", type = "tar.gz", - urls = ["https://static.crates.io/crates/redox_syscall/0.5.3/download"], - strip_prefix = "redox_syscall-0.5.3", - build_file = Label("@examples//vendor_remote_pkgs/crates:BUILD.redox_syscall-0.5.3.bazel"), + urls = ["https://static.crates.io/crates/redox_syscall/0.5.4/download"], + strip_prefix = "redox_syscall-0.5.4", + build_file = Label("@examples//vendor_remote_pkgs/crates:BUILD.redox_syscall-0.5.4.bazel"), ) maybe( @@ -1262,12 +1262,12 @@ def crate_repositories(): maybe( http_archive, - name = "crates_vendor_pkgs__unicode-ident-1.0.12", - sha256 = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b", + name = "crates_vendor_pkgs__unicode-ident-1.0.13", + sha256 = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe", type = "tar.gz", - urls = ["https://static.crates.io/crates/unicode-ident/1.0.12/download"], - strip_prefix = "unicode-ident-1.0.12", - build_file = Label("@examples//vendor_remote_pkgs/crates:BUILD.unicode-ident-1.0.12.bazel"), + urls = ["https://static.crates.io/crates/unicode-ident/1.0.13/download"], + strip_prefix = "unicode-ident-1.0.13", + build_file = Label("@examples//vendor_remote_pkgs/crates:BUILD.unicode-ident-1.0.13.bazel"), ) maybe( diff --git a/examples/musl_cross_compiling/Cargo.Bazel.lock.json b/examples/musl_cross_compiling/Cargo.Bazel.lock.json index 331cb9c1cd..84ab3bcb28 100644 --- a/examples/musl_cross_compiling/Cargo.Bazel.lock.json +++ b/examples/musl_cross_compiling/Cargo.Bazel.lock.json @@ -1,5 +1,5 @@ { - "checksum": "7a3e15ae6c6ff1b94459b9ca9a6cdb80d505b162bd011987c891898706874c30", + "checksum": "328a66662ffb1483bfc989e31cdd52cc3e489fc707eb53ed5fdff0eed38eb4fb", "crates": { "aes 0.8.4": { "name": "aes", @@ -5821,10 +5821,52 @@ ], "crate_features": { "common": [ - "default", "proc-macro" ], - "selects": {} + "selects": { + "aarch64-apple-darwin": [ + "default" + ], + "aarch64-pc-windows-msvc": [ + "default" + ], + "aarch64-unknown-linux-gnu": [ + "default" + ], + "aarch64-unknown-nixos-gnu": [ + "default" + ], + "arm-unknown-linux-gnueabi": [ + "default" + ], + "i686-pc-windows-msvc": [ + "default" + ], + "i686-unknown-linux-gnu": [ + "default" + ], + "powerpc-unknown-linux-gnu": [ + "default" + ], + "s390x-unknown-linux-gnu": [ + "default" + ], + "x86_64-apple-darwin": [ + "default" + ], + "x86_64-pc-windows-msvc": [ + "default" + ], + "x86_64-unknown-freebsd": [ + "default" + ], + "x86_64-unknown-linux-gnu": [ + "default" + ], + "x86_64-unknown-nixos-gnu": [ + "default" + ] + } }, "deps": { "common": [ @@ -5888,10 +5930,52 @@ ], "crate_features": { "common": [ - "default", "proc-macro" ], - "selects": {} + "selects": { + "aarch64-apple-darwin": [ + "default" + ], + "aarch64-pc-windows-msvc": [ + "default" + ], + "aarch64-unknown-linux-gnu": [ + "default" + ], + "aarch64-unknown-nixos-gnu": [ + "default" + ], + "arm-unknown-linux-gnueabi": [ + "default" + ], + "i686-pc-windows-msvc": [ + "default" + ], + "i686-unknown-linux-gnu": [ + "default" + ], + "powerpc-unknown-linux-gnu": [ + "default" + ], + "s390x-unknown-linux-gnu": [ + "default" + ], + "x86_64-apple-darwin": [ + "default" + ], + "x86_64-pc-windows-msvc": [ + "default" + ], + "x86_64-unknown-freebsd": [ + "default" + ], + "x86_64-unknown-linux-gnu": [ + "default" + ], + "x86_64-unknown-nixos-gnu": [ + "default" + ] + } }, "deps": { "common": [ @@ -6885,42 +6969,10 @@ "**" ], "crate_features": { - "common": [], - "selects": { - "aarch64-unknown-linux-gnu": [ - "default" - ], - "aarch64-unknown-nixos-gnu": [ - "default" - ], - "arm-unknown-linux-gnueabi": [ - "default" - ], - "armv7-unknown-linux-gnueabi": [ - "default" - ], - "i686-unknown-freebsd": [ - "default" - ], - "i686-unknown-linux-gnu": [ - "default" - ], - "powerpc-unknown-linux-gnu": [ - "default" - ], - "s390x-unknown-linux-gnu": [ - "default" - ], - "x86_64-unknown-freebsd": [ - "default" - ], - "x86_64-unknown-linux-gnu": [ - "default" - ], - "x86_64-unknown-nixos-gnu": [ - "default" - ] - } + "common": [ + "default" + ], + "selects": {} }, "deps": { "common": [ @@ -7453,16 +7505,97 @@ "clone-impls", "default", "derive", - "extra-traits", - "fold", - "full", "parsing", "printing", "proc-macro", - "quote", - "visit" + "quote" ], - "selects": {} + "selects": { + "aarch64-apple-darwin": [ + "extra-traits", + "fold", + "full", + "visit" + ], + "aarch64-pc-windows-msvc": [ + "extra-traits", + "fold", + "full", + "visit" + ], + "aarch64-unknown-linux-gnu": [ + "extra-traits", + "fold", + "full", + "visit" + ], + "aarch64-unknown-nixos-gnu": [ + "extra-traits", + "fold", + "full", + "visit" + ], + "arm-unknown-linux-gnueabi": [ + "extra-traits", + "fold", + "full", + "visit" + ], + "i686-pc-windows-msvc": [ + "extra-traits", + "fold", + "full", + "visit" + ], + "i686-unknown-linux-gnu": [ + "extra-traits", + "fold", + "full", + "visit" + ], + "powerpc-unknown-linux-gnu": [ + "extra-traits", + "fold", + "full", + "visit" + ], + "s390x-unknown-linux-gnu": [ + "extra-traits", + "fold", + "full", + "visit" + ], + "x86_64-apple-darwin": [ + "extra-traits", + "fold", + "full", + "visit" + ], + "x86_64-pc-windows-msvc": [ + "extra-traits", + "fold", + "full", + "visit" + ], + "x86_64-unknown-freebsd": [ + "extra-traits", + "fold", + "full", + "visit" + ], + "x86_64-unknown-linux-gnu": [ + "extra-traits", + "fold", + "full", + "visit" + ], + "x86_64-unknown-nixos-gnu": [ + "extra-traits", + "fold", + "full", + "visit" + ] + } }, "deps": { "common": [ diff --git a/proto/prost/private/3rdparty/crates/BUILD.either-1.13.0.bazel b/proto/prost/private/3rdparty/crates/BUILD.either-1.13.0.bazel index 51f48208d7..dff01cc918 100644 --- a/proto/prost/private/3rdparty/crates/BUILD.either-1.13.0.bazel +++ b/proto/prost/private/3rdparty/crates/BUILD.either-1.13.0.bazel @@ -28,9 +28,51 @@ rust_library( "WORKSPACE.bazel", ], ), - crate_features = [ - "use_std", - ], + crate_features = select({ + "@rules_rust//rust/platform:aarch64-apple-darwin": [ + "use_std", # aarch64-apple-darwin + ], + "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ + "use_std", # aarch64-pc-windows-msvc + ], + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ + "use_std", # aarch64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ + "use_std", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + ], + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ + "use_std", # arm-unknown-linux-gnueabi + ], + "@rules_rust//rust/platform:i686-pc-windows-msvc": [ + "use_std", # i686-pc-windows-msvc + ], + "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ + "use_std", # i686-unknown-linux-gnu + ], + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ + "use_std", # powerpc-unknown-linux-gnu + ], + "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ + "use_std", # s390x-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-apple-darwin": [ + "use_std", # x86_64-apple-darwin + ], + "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ + "use_std", # x86_64-pc-windows-msvc + ], + "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ + "use_std", # x86_64-unknown-freebsd + ], + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ + "use_std", # x86_64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ + "use_std", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + ], + "//conditions:default": [], + }), crate_root = "src/lib.rs", edition = "2018", rustc_flags = [ diff --git a/proto/prost/private/3rdparty/crates/BUILD.itertools-0.13.0.bazel b/proto/prost/private/3rdparty/crates/BUILD.itertools-0.13.0.bazel index 574a9cc213..590e453a70 100644 --- a/proto/prost/private/3rdparty/crates/BUILD.itertools-0.13.0.bazel +++ b/proto/prost/private/3rdparty/crates/BUILD.itertools-0.13.0.bazel @@ -29,10 +29,66 @@ rust_library( ], ), crate_features = [ - "default", "use_alloc", - "use_std", - ], + ] + select({ + "@rules_rust//rust/platform:aarch64-apple-darwin": [ + "default", # aarch64-apple-darwin + "use_std", # aarch64-apple-darwin + ], + "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ + "default", # aarch64-pc-windows-msvc + "use_std", # aarch64-pc-windows-msvc + ], + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ + "default", # aarch64-unknown-linux-gnu + "use_std", # aarch64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ + "default", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + "use_std", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + ], + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ + "default", # arm-unknown-linux-gnueabi + "use_std", # arm-unknown-linux-gnueabi + ], + "@rules_rust//rust/platform:i686-pc-windows-msvc": [ + "default", # i686-pc-windows-msvc + "use_std", # i686-pc-windows-msvc + ], + "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ + "default", # i686-unknown-linux-gnu + "use_std", # i686-unknown-linux-gnu + ], + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ + "default", # powerpc-unknown-linux-gnu + "use_std", # powerpc-unknown-linux-gnu + ], + "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ + "default", # s390x-unknown-linux-gnu + "use_std", # s390x-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-apple-darwin": [ + "default", # x86_64-apple-darwin + "use_std", # x86_64-apple-darwin + ], + "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ + "default", # x86_64-pc-windows-msvc + "use_std", # x86_64-pc-windows-msvc + ], + "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ + "default", # x86_64-unknown-freebsd + "use_std", # x86_64-unknown-freebsd + ], + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ + "default", # x86_64-unknown-linux-gnu + "use_std", # x86_64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ + "default", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + "use_std", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + ], + "//conditions:default": [], + }), crate_root = "src/lib.rs", edition = "2018", rustc_flags = [ diff --git a/proto/prost/private/3rdparty/crates/BUILD.syn-2.0.76.bazel b/proto/prost/private/3rdparty/crates/BUILD.syn-2.0.76.bazel index a71a59bd2e..58f9a3454d 100644 --- a/proto/prost/private/3rdparty/crates/BUILD.syn-2.0.76.bazel +++ b/proto/prost/private/3rdparty/crates/BUILD.syn-2.0.76.bazel @@ -32,13 +32,69 @@ rust_library( "clone-impls", "default", "derive", - "extra-traits", "full", "parsing", "printing", "proc-macro", - "visit-mut", - ], + ] + select({ + "@rules_rust//rust/platform:aarch64-apple-darwin": [ + "extra-traits", # aarch64-apple-darwin + "visit-mut", # aarch64-apple-darwin + ], + "@rules_rust//rust/platform:aarch64-pc-windows-msvc": [ + "extra-traits", # aarch64-pc-windows-msvc + "visit-mut", # aarch64-pc-windows-msvc + ], + "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ + "extra-traits", # aarch64-unknown-linux-gnu + "visit-mut", # aarch64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ + "extra-traits", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + "visit-mut", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu + ], + "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ + "extra-traits", # arm-unknown-linux-gnueabi + "visit-mut", # arm-unknown-linux-gnueabi + ], + "@rules_rust//rust/platform:i686-pc-windows-msvc": [ + "extra-traits", # i686-pc-windows-msvc + "visit-mut", # i686-pc-windows-msvc + ], + "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ + "extra-traits", # i686-unknown-linux-gnu + "visit-mut", # i686-unknown-linux-gnu + ], + "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ + "extra-traits", # powerpc-unknown-linux-gnu + "visit-mut", # powerpc-unknown-linux-gnu + ], + "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ + "extra-traits", # s390x-unknown-linux-gnu + "visit-mut", # s390x-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-apple-darwin": [ + "extra-traits", # x86_64-apple-darwin + "visit-mut", # x86_64-apple-darwin + ], + "@rules_rust//rust/platform:x86_64-pc-windows-msvc": [ + "extra-traits", # x86_64-pc-windows-msvc + "visit-mut", # x86_64-pc-windows-msvc + ], + "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ + "extra-traits", # x86_64-unknown-freebsd + "visit-mut", # x86_64-unknown-freebsd + ], + "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ + "extra-traits", # x86_64-unknown-linux-gnu + "visit-mut", # x86_64-unknown-linux-gnu + ], + "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ + "extra-traits", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + "visit-mut", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu + ], + "//conditions:default": [], + }), crate_root = "src/lib.rs", edition = "2021", rustc_flags = [ diff --git a/test/3rdparty/crates/BUILD.proc-macro2-1.0.86.bazel b/test/3rdparty/crates/BUILD.proc-macro2-1.0.86.bazel index 87596b77c7..cb65367a92 100644 --- a/test/3rdparty/crates/BUILD.proc-macro2-1.0.86.bazel +++ b/test/3rdparty/crates/BUILD.proc-macro2-1.0.86.bazel @@ -84,7 +84,7 @@ rust_library( version = "1.0.86", deps = [ "@t3p__proc-macro2-1.0.86//:build_script_build", - "@t3p__unicode-ident-1.0.12//:unicode_ident", + "@t3p__unicode-ident-1.0.13//:unicode_ident", ], ) diff --git a/test/3rdparty/crates/BUILD.syn-2.0.77.bazel b/test/3rdparty/crates/BUILD.syn-2.0.77.bazel index a68562cbc3..705e52c47a 100644 --- a/test/3rdparty/crates/BUILD.syn-2.0.77.bazel +++ b/test/3rdparty/crates/BUILD.syn-2.0.77.bazel @@ -88,6 +88,6 @@ rust_library( deps = [ "@t3p__proc-macro2-1.0.86//:proc_macro2", "@t3p__quote-1.0.37//:quote", - "@t3p__unicode-ident-1.0.12//:unicode_ident", + "@t3p__unicode-ident-1.0.13//:unicode_ident", ], ) diff --git a/test/3rdparty/crates/BUILD.unicode-ident-1.0.12.bazel b/test/3rdparty/crates/BUILD.unicode-ident-1.0.13.bazel similarity index 99% rename from test/3rdparty/crates/BUILD.unicode-ident-1.0.12.bazel rename to test/3rdparty/crates/BUILD.unicode-ident-1.0.13.bazel index ea68afde81..40e6370d5e 100644 --- a/test/3rdparty/crates/BUILD.unicode-ident-1.0.12.bazel +++ b/test/3rdparty/crates/BUILD.unicode-ident-1.0.13.bazel @@ -77,5 +77,5 @@ rust_library( "@rules_rust//rust/platform:x86_64-unknown-none": [], "//conditions:default": ["@platforms//:incompatible"], }), - version = "1.0.12", + version = "1.0.13", ) diff --git a/test/3rdparty/crates/defs.bzl b/test/3rdparty/crates/defs.bzl index 28dc1cc764..44842ef466 100644 --- a/test/3rdparty/crates/defs.bzl +++ b/test/3rdparty/crates/defs.bzl @@ -495,12 +495,12 @@ def crate_repositories(): maybe( http_archive, - name = "t3p__unicode-ident-1.0.12", - sha256 = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b", + name = "t3p__unicode-ident-1.0.13", + sha256 = "e91b56cd4cadaeb79bbf1a5645f6b4f8dc5bde8834ad5894a8db35fda9efa1fe", type = "tar.gz", - urls = ["https://static.crates.io/crates/unicode-ident/1.0.12/download"], - strip_prefix = "unicode-ident-1.0.12", - build_file = Label("@rules_rust//test/3rdparty/crates:BUILD.unicode-ident-1.0.12.bazel"), + urls = ["https://static.crates.io/crates/unicode-ident/1.0.13/download"], + strip_prefix = "unicode-ident-1.0.13", + build_file = Label("@rules_rust//test/3rdparty/crates:BUILD.unicode-ident-1.0.13.bazel"), ) return [ diff --git a/wasm_bindgen/3rdparty/crates/BUILD.libc-0.2.150.bazel b/wasm_bindgen/3rdparty/crates/BUILD.libc-0.2.150.bazel index 5723658408..07ef102cec 100644 --- a/wasm_bindgen/3rdparty/crates/BUILD.libc-0.2.150.bazel +++ b/wasm_bindgen/3rdparty/crates/BUILD.libc-0.2.150.bazel @@ -29,155 +29,84 @@ rust_library( "WORKSPACE.bazel", ], ), - crate_features = select({ + crate_features = [ + "default", + "std", + ] + select({ "@rules_rust//rust/platform:aarch64-apple-darwin": [ - "default", # aarch64-apple-darwin "extra_traits", # aarch64-apple-darwin - "std", # aarch64-apple-darwin ], "@rules_rust//rust/platform:aarch64-apple-ios": [ - "default", # aarch64-apple-ios "extra_traits", # aarch64-apple-ios - "std", # aarch64-apple-ios ], "@rules_rust//rust/platform:aarch64-apple-ios-sim": [ - "default", # aarch64-apple-ios-sim "extra_traits", # aarch64-apple-ios-sim - "std", # aarch64-apple-ios-sim ], "@rules_rust//rust/platform:aarch64-fuchsia": [ - "default", # aarch64-fuchsia "extra_traits", # aarch64-fuchsia - "std", # aarch64-fuchsia ], "@rules_rust//rust/platform:aarch64-linux-android": [ - "default", # aarch64-linux-android "extra_traits", # aarch64-linux-android - "std", # aarch64-linux-android ], "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ - "default", # aarch64-unknown-linux-gnu "extra_traits", # aarch64-unknown-linux-gnu - "std", # aarch64-unknown-linux-gnu ], "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ - "default", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu "extra_traits", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu - "std", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu ], "@rules_rust//rust/platform:aarch64-unknown-nto-qnx710": [ - "default", # aarch64-unknown-nto-qnx710 "extra_traits", # aarch64-unknown-nto-qnx710 - "std", # aarch64-unknown-nto-qnx710 ], "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ - "default", # arm-unknown-linux-gnueabi "extra_traits", # arm-unknown-linux-gnueabi - "std", # arm-unknown-linux-gnueabi ], "@rules_rust//rust/platform:armv7-linux-androideabi": [ - "default", # armv7-linux-androideabi "extra_traits", # armv7-linux-androideabi - "std", # armv7-linux-androideabi ], "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [ - "default", # armv7-unknown-linux-gnueabi "extra_traits", # armv7-unknown-linux-gnueabi - "std", # armv7-unknown-linux-gnueabi ], "@rules_rust//rust/platform:i686-apple-darwin": [ - "default", # i686-apple-darwin "extra_traits", # i686-apple-darwin - "std", # i686-apple-darwin ], "@rules_rust//rust/platform:i686-linux-android": [ - "default", # i686-linux-android "extra_traits", # i686-linux-android - "std", # i686-linux-android ], "@rules_rust//rust/platform:i686-unknown-freebsd": [ - "default", # i686-unknown-freebsd "extra_traits", # i686-unknown-freebsd - "std", # i686-unknown-freebsd ], "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ - "default", # i686-unknown-linux-gnu "extra_traits", # i686-unknown-linux-gnu - "std", # i686-unknown-linux-gnu ], "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ - "default", # powerpc-unknown-linux-gnu "extra_traits", # powerpc-unknown-linux-gnu - "std", # powerpc-unknown-linux-gnu - ], - "@rules_rust//rust/platform:riscv32imc-unknown-none-elf": [ - "default", # riscv32imc-unknown-none-elf - "std", # riscv32imc-unknown-none-elf - ], - "@rules_rust//rust/platform:riscv64gc-unknown-none-elf": [ - "default", # riscv64gc-unknown-none-elf - "std", # riscv64gc-unknown-none-elf ], "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ - "default", # s390x-unknown-linux-gnu "extra_traits", # s390x-unknown-linux-gnu - "std", # s390x-unknown-linux-gnu - ], - "@rules_rust//rust/platform:thumbv7em-none-eabi": [ - "default", # thumbv7em-none-eabi - "std", # thumbv7em-none-eabi - ], - "@rules_rust//rust/platform:thumbv8m.main-none-eabi": [ - "default", # thumbv8m.main-none-eabi - "std", # thumbv8m.main-none-eabi - ], - "@rules_rust//rust/platform:wasm32-unknown-unknown": [ - "default", # wasm32-unknown-unknown - "std", # wasm32-unknown-unknown ], "@rules_rust//rust/platform:wasm32-wasi": [ - "default", # wasm32-wasi "extra_traits", # wasm32-wasi - "std", # wasm32-wasi ], "@rules_rust//rust/platform:x86_64-apple-darwin": [ - "default", # x86_64-apple-darwin "extra_traits", # x86_64-apple-darwin - "std", # x86_64-apple-darwin ], "@rules_rust//rust/platform:x86_64-apple-ios": [ - "default", # x86_64-apple-ios "extra_traits", # x86_64-apple-ios - "std", # x86_64-apple-ios ], "@rules_rust//rust/platform:x86_64-fuchsia": [ - "default", # x86_64-fuchsia "extra_traits", # x86_64-fuchsia - "std", # x86_64-fuchsia ], "@rules_rust//rust/platform:x86_64-linux-android": [ - "default", # x86_64-linux-android "extra_traits", # x86_64-linux-android - "std", # x86_64-linux-android ], "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ - "default", # x86_64-unknown-freebsd "extra_traits", # x86_64-unknown-freebsd - "std", # x86_64-unknown-freebsd ], "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ - "default", # x86_64-unknown-linux-gnu "extra_traits", # x86_64-unknown-linux-gnu - "std", # x86_64-unknown-linux-gnu ], "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ - "default", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu "extra_traits", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu - "std", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu - ], - "@rules_rust//rust/platform:x86_64-unknown-none": [ - "default", # x86_64-unknown-none - "std", # x86_64-unknown-none ], "//conditions:default": [], }), @@ -254,155 +183,84 @@ cargo_build_script( "WORKSPACE.bazel", ], ), - crate_features = select({ + crate_features = [ + "default", + "std", + ] + select({ "@rules_rust//rust/platform:aarch64-apple-darwin": [ - "default", # aarch64-apple-darwin "extra_traits", # aarch64-apple-darwin - "std", # aarch64-apple-darwin ], "@rules_rust//rust/platform:aarch64-apple-ios": [ - "default", # aarch64-apple-ios "extra_traits", # aarch64-apple-ios - "std", # aarch64-apple-ios ], "@rules_rust//rust/platform:aarch64-apple-ios-sim": [ - "default", # aarch64-apple-ios-sim "extra_traits", # aarch64-apple-ios-sim - "std", # aarch64-apple-ios-sim ], "@rules_rust//rust/platform:aarch64-fuchsia": [ - "default", # aarch64-fuchsia "extra_traits", # aarch64-fuchsia - "std", # aarch64-fuchsia ], "@rules_rust//rust/platform:aarch64-linux-android": [ - "default", # aarch64-linux-android "extra_traits", # aarch64-linux-android - "std", # aarch64-linux-android ], "@rules_rust//rust/platform:aarch64-unknown-linux-gnu": [ - "default", # aarch64-unknown-linux-gnu "extra_traits", # aarch64-unknown-linux-gnu - "std", # aarch64-unknown-linux-gnu ], "@rules_rust//rust/platform:aarch64-unknown-nixos-gnu": [ - "default", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu "extra_traits", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu - "std", # aarch64-unknown-linux-gnu, aarch64-unknown-nixos-gnu ], "@rules_rust//rust/platform:aarch64-unknown-nto-qnx710": [ - "default", # aarch64-unknown-nto-qnx710 "extra_traits", # aarch64-unknown-nto-qnx710 - "std", # aarch64-unknown-nto-qnx710 ], "@rules_rust//rust/platform:arm-unknown-linux-gnueabi": [ - "default", # arm-unknown-linux-gnueabi "extra_traits", # arm-unknown-linux-gnueabi - "std", # arm-unknown-linux-gnueabi ], "@rules_rust//rust/platform:armv7-linux-androideabi": [ - "default", # armv7-linux-androideabi "extra_traits", # armv7-linux-androideabi - "std", # armv7-linux-androideabi ], "@rules_rust//rust/platform:armv7-unknown-linux-gnueabi": [ - "default", # armv7-unknown-linux-gnueabi "extra_traits", # armv7-unknown-linux-gnueabi - "std", # armv7-unknown-linux-gnueabi ], "@rules_rust//rust/platform:i686-apple-darwin": [ - "default", # i686-apple-darwin "extra_traits", # i686-apple-darwin - "std", # i686-apple-darwin ], "@rules_rust//rust/platform:i686-linux-android": [ - "default", # i686-linux-android "extra_traits", # i686-linux-android - "std", # i686-linux-android ], "@rules_rust//rust/platform:i686-unknown-freebsd": [ - "default", # i686-unknown-freebsd "extra_traits", # i686-unknown-freebsd - "std", # i686-unknown-freebsd ], "@rules_rust//rust/platform:i686-unknown-linux-gnu": [ - "default", # i686-unknown-linux-gnu "extra_traits", # i686-unknown-linux-gnu - "std", # i686-unknown-linux-gnu ], "@rules_rust//rust/platform:powerpc-unknown-linux-gnu": [ - "default", # powerpc-unknown-linux-gnu "extra_traits", # powerpc-unknown-linux-gnu - "std", # powerpc-unknown-linux-gnu - ], - "@rules_rust//rust/platform:riscv32imc-unknown-none-elf": [ - "default", # riscv32imc-unknown-none-elf - "std", # riscv32imc-unknown-none-elf - ], - "@rules_rust//rust/platform:riscv64gc-unknown-none-elf": [ - "default", # riscv64gc-unknown-none-elf - "std", # riscv64gc-unknown-none-elf ], "@rules_rust//rust/platform:s390x-unknown-linux-gnu": [ - "default", # s390x-unknown-linux-gnu "extra_traits", # s390x-unknown-linux-gnu - "std", # s390x-unknown-linux-gnu - ], - "@rules_rust//rust/platform:thumbv7em-none-eabi": [ - "default", # thumbv7em-none-eabi - "std", # thumbv7em-none-eabi - ], - "@rules_rust//rust/platform:thumbv8m.main-none-eabi": [ - "default", # thumbv8m.main-none-eabi - "std", # thumbv8m.main-none-eabi - ], - "@rules_rust//rust/platform:wasm32-unknown-unknown": [ - "default", # wasm32-unknown-unknown - "std", # wasm32-unknown-unknown ], "@rules_rust//rust/platform:wasm32-wasi": [ - "default", # wasm32-wasi "extra_traits", # wasm32-wasi - "std", # wasm32-wasi ], "@rules_rust//rust/platform:x86_64-apple-darwin": [ - "default", # x86_64-apple-darwin "extra_traits", # x86_64-apple-darwin - "std", # x86_64-apple-darwin ], "@rules_rust//rust/platform:x86_64-apple-ios": [ - "default", # x86_64-apple-ios "extra_traits", # x86_64-apple-ios - "std", # x86_64-apple-ios ], "@rules_rust//rust/platform:x86_64-fuchsia": [ - "default", # x86_64-fuchsia "extra_traits", # x86_64-fuchsia - "std", # x86_64-fuchsia ], "@rules_rust//rust/platform:x86_64-linux-android": [ - "default", # x86_64-linux-android "extra_traits", # x86_64-linux-android - "std", # x86_64-linux-android ], "@rules_rust//rust/platform:x86_64-unknown-freebsd": [ - "default", # x86_64-unknown-freebsd "extra_traits", # x86_64-unknown-freebsd - "std", # x86_64-unknown-freebsd ], "@rules_rust//rust/platform:x86_64-unknown-linux-gnu": [ - "default", # x86_64-unknown-linux-gnu "extra_traits", # x86_64-unknown-linux-gnu - "std", # x86_64-unknown-linux-gnu ], "@rules_rust//rust/platform:x86_64-unknown-nixos-gnu": [ - "default", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu "extra_traits", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu - "std", # x86_64-unknown-linux-gnu, x86_64-unknown-nixos-gnu - ], - "@rules_rust//rust/platform:x86_64-unknown-none": [ - "default", # x86_64-unknown-none - "std", # x86_64-unknown-none ], "//conditions:default": [], }),