Skip to content

Commit bfdf76f

Browse files
authored
Merge branch 'main' into revert
2 parents 27198f9 + 53c3469 commit bfdf76f

File tree

9 files changed

+37
-340
lines changed

9 files changed

+37
-340
lines changed

crate_universe/src/cli.rs

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,15 @@ mod splice;
77
mod vendor;
88

99
use clap::Parser;
10-
use tracing::{Level, Subscriber};
10+
use tracing::Subscriber;
1111
use tracing_subscriber::fmt::format::{Format, Full};
1212
use tracing_subscriber::fmt::time::SystemTime;
1313
use tracing_subscriber::fmt::{FormatEvent, FormatFields};
1414
use tracing_subscriber::registry::LookupSpan;
1515
use tracing_subscriber::FmtSubscriber;
1616

17+
pub use tracing::Level as LogLevel;
18+
1719
pub use self::generate::GenerateOptions;
1820
pub use self::query::QueryOptions;
1921
pub use self::render::RenderOptions;
@@ -92,21 +94,17 @@ impl LoggingFormatEvent {
9294
}
9395

9496
/// Initialize logging for one of the cli options.
95-
pub fn init_logging(name: &str, verbose: bool) {
97+
pub fn init_logging(name: &str, level: LogLevel) {
9698
if !EXPECTED_LOGGER_NAMES.contains(&name) {
9799
panic!(
98100
"Unexpected logger name {}, use of one of {:?}",
99101
name, EXPECTED_LOGGER_NAMES
100102
);
101103
}
102104

103-
// a builder for `FmtSubscriber`.
104105
let subscriber = FmtSubscriber::builder()
105-
// all spans/events with a level higher than TRACE (e.g, debug, info, warn, etc.)
106-
// will be written to stdout.
107-
.with_max_level(if verbose { Level::DEBUG } else { Level::INFO })
106+
.with_max_level(level)
108107
.event_format(LoggingFormatEvent::new(name))
109-
// completes the builder.
110108
.finish();
111109

112110
tracing::subscriber::set_global_default(subscriber).expect("setting default subscriber failed");

crate_universe/src/main.rs

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,27 +6,36 @@ fn main() -> cli::Result<()> {
66
// Parse arguments
77
let opt = cli::parse_args();
88

9-
let verbose_logging = std::env::var("CARGO_BAZEL_DEBUG").is_ok();
9+
let level = match std::env::var("CARGO_BAZEL_DEBUG") {
10+
Ok(var) => {
11+
if var == "TRACE" {
12+
crate::cli::LogLevel::TRACE
13+
} else {
14+
crate::cli::LogLevel::DEBUG
15+
}
16+
}
17+
Err(_) => crate::cli::LogLevel::INFO,
18+
};
1019

1120
match opt {
1221
cli::Options::Generate(opt) => {
13-
cli::init_logging("Generate", verbose_logging);
22+
cli::init_logging("Generate", level);
1423
cli::generate(opt)
1524
}
1625
cli::Options::Splice(opt) => {
17-
cli::init_logging("Splice", verbose_logging);
26+
cli::init_logging("Splice", level);
1827
cli::splice(opt)
1928
}
2029
cli::Options::Query(opt) => {
21-
cli::init_logging("Query", verbose_logging);
30+
cli::init_logging("Query", level);
2231
cli::query(opt)
2332
}
2433
cli::Options::Vendor(opt) => {
25-
cli::init_logging("Vendor", verbose_logging);
34+
cli::init_logging("Vendor", level);
2635
cli::vendor(opt)
2736
}
2837
cli::Options::Render(opt) => {
29-
cli::init_logging("Render", verbose_logging);
38+
cli::init_logging("Render", level);
3039
cli::render(opt)
3140
}
3241
}

crate_universe/src/metadata/cargo_tree_resolver.rs

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ use anyhow::{anyhow, bail, Context, Result};
99
use camino::Utf8Path;
1010
use semver::Version;
1111
use serde::{Deserialize, Serialize};
12-
use tracing::debug;
12+
use tracing::{debug, trace};
1313
use url::Url;
1414

1515
use crate::config::CrateId;
@@ -137,6 +137,12 @@ impl TreeResolver {
137137
// number of processes (which can be +400 and hit operating system limitations).
138138
let mut target_triple_to_child = BTreeMap::<String, Child>::new();
139139

140+
debug!(
141+
"Spawning `cargo tree` processes for host `{}`: {}",
142+
host_triple,
143+
cargo_target_triples.keys().len(),
144+
);
145+
140146
for target_triple in cargo_target_triples.keys() {
141147
// We use `cargo tree` here because `cargo metadata` doesn't report
142148
// back target-specific features (enabled with `resolver = "2"`).
@@ -178,12 +184,6 @@ impl TreeResolver {
178184
target_triple_to_child.insert(target_triple.clone(), child);
179185
}
180186

181-
debug!(
182-
"Spawned `cargo tree` processes for host `{}`: {}",
183-
host_triple,
184-
target_triple_to_child.len(),
185-
);
186-
187187
for (target_triple, child) in target_triple_to_child.into_iter() {
188188
let output = child.wait_with_output().with_context(|| {
189189
format!(
@@ -194,11 +194,13 @@ impl TreeResolver {
194194
)
195195
})?;
196196
if !output.status.success() {
197-
eprintln!("{}", String::from_utf8_lossy(&output.stdout));
198-
eprintln!("{}", String::from_utf8_lossy(&output.stderr));
197+
tracing::error!("{}", String::from_utf8_lossy(&output.stdout));
198+
tracing::error!("{}", String::from_utf8_lossy(&output.stderr));
199199
bail!(format!("Failed to run cargo tree: {}", output.status))
200200
}
201201

202+
tracing::trace!("`cargo tree --target={}` completed.", target_triple);
203+
202204
// Replicate outputs for any de-duplicated platforms
203205
for host_plat in cargo_host_triples[host_triple].iter() {
204206
for target_plat in cargo_target_triples[&target_triple].iter() {
@@ -348,7 +350,7 @@ impl TreeResolver {
348350

349351
for (host_triple, target_streams) in deps_tree_streams.into_iter() {
350352
for (target_triple, stdout) in target_streams.into_iter() {
351-
debug!(
353+
trace!(
352354
"Parsing (host={}) `cargo tree --target {}` output:\n```\n{}\n```",
353355
host_triple,
354356
target_triple,

examples/nix_cross_compiling/MODULE.bazel

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ local_path_override(
1616

1717
bazel_dep(
1818
name = "rules_nixpkgs_core",
19-
version = "0.12.0",
19+
version = "0.13.0",
2020
)
2121
bazel_dep(
2222
name = "bazel_skylib",
@@ -26,6 +26,10 @@ bazel_dep(
2626
name = "rules_cc",
2727
version = "0.0.17",
2828
)
29+
bazel_dep(
30+
name = "platforms",
31+
version = "0.0.11",
32+
)
2933

3034
internal = use_extension("//bazel:nix_repositories.bzl", "internal_ext")
3135
use_repo(

extensions/bindgen/WORKSPACE.bazel

Lines changed: 0 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -1,60 +1 @@
11
workspace(name = "rules_rust_bindgen")
2-
3-
# Users of `rules_rust` will commonly be unable to load it
4-
# using a `local_repository`. Instead, to setup the rules,
5-
# please see https://bazelbuild.github.io/rules_rust/#setup
6-
local_repository(
7-
name = "rules_rust",
8-
path = "../..",
9-
)
10-
11-
load("@rules_rust//rust:repositories.bzl", "rules_rust_dependencies", "rust_register_toolchains")
12-
13-
rules_rust_dependencies()
14-
15-
rust_register_toolchains()
16-
17-
load("@rules_rust//crate_universe:repositories.bzl", "crate_universe_dependencies")
18-
19-
crate_universe_dependencies(bootstrap = True)
20-
21-
load("@rules_rust//tools/rust_analyzer:deps.bzl", "rust_analyzer_dependencies")
22-
23-
rust_analyzer_dependencies()
24-
25-
load("//:repositories.bzl", "rust_bindgen_dependencies", "rust_bindgen_register_toolchains")
26-
27-
rust_bindgen_dependencies()
28-
29-
rust_bindgen_register_toolchains()
30-
31-
load("//:transitive_repositories.bzl", "rust_bindgen_transitive_dependencies")
32-
33-
rust_bindgen_transitive_dependencies()
34-
35-
load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")
36-
37-
bazel_skylib_workspace()
38-
39-
# --- end stardoc
40-
41-
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
42-
43-
http_archive(
44-
name = "bazel_ci_rules",
45-
sha256 = "eca21884e6f66a88c358e580fd67a6b148d30ab57b1680f62a96c00f9bc6a07e",
46-
strip_prefix = "bazelci_rules-1.0.0",
47-
url = "https://github.com/bazelbuild/continuous-integration/releases/download/rules-1.0.0/bazelci_rules-1.0.0.tar.gz",
48-
)
49-
50-
# To run with RBE on Bazel CI, uncomment the following lines.
51-
#
52-
# load("@bazel_ci_rules//:rbe_repo.bzl", "rbe_preconfig")
53-
# rbe_preconfig(name = "buildkite_config", toolchain = "ubuntu2004-bazel-java11")
54-
55-
http_archive(
56-
name = "rules_testing",
57-
sha256 = "02c62574631876a4e3b02a1820cb51167bb9cdcdea2381b2fa9d9b8b11c407c4",
58-
strip_prefix = "rules_testing-0.6.0",
59-
url = "https://github.com/bazelbuild/rules_testing/releases/download/v0.6.0/rules_testing-v0.6.0.tar.gz",
60-
)

extensions/mdbook/WORKSPACE.bazel

Lines changed: 0 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,54 +1 @@
11
workspace(name = "rules_rust_mdbook")
2-
3-
load("//mdbook:repositories.bzl", "mdbook_register_toolchains", "rules_mdbook_dependencies")
4-
5-
rules_mdbook_dependencies()
6-
7-
mdbook_register_toolchains()
8-
9-
load("//mdbook:repositories_transitive.bzl", "rules_mdbook_transitive_deps")
10-
11-
rules_mdbook_transitive_deps()
12-
13-
# =============================================================================
14-
# Internal dependencies only
15-
# =============================================================================
16-
17-
load("@rules_rust//crate_universe:repositories.bzl", "crate_universe_dependencies")
18-
19-
crate_universe_dependencies()
20-
21-
load("@rules_rust//tools/rust_analyzer:deps.bzl", "rust_analyzer_dependencies")
22-
23-
rust_analyzer_dependencies()
24-
25-
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
26-
27-
http_archive(
28-
name = "io_bazel_stardoc",
29-
sha256 = "62bd2e60216b7a6fec3ac79341aa201e0956477e7c8f6ccc286f279ad1d96432",
30-
urls = [
31-
"https://mirror.bazel.build/github.com/bazelbuild/stardoc/releases/download/0.6.2/stardoc-0.6.2.tar.gz",
32-
"https://github.com/bazelbuild/stardoc/releases/download/0.6.2/stardoc-0.6.2.tar.gz",
33-
],
34-
)
35-
36-
load("@io_bazel_stardoc//:setup.bzl", "stardoc_repositories")
37-
38-
stardoc_repositories()
39-
40-
load("@rules_jvm_external//:repositories.bzl", "rules_jvm_external_deps")
41-
42-
rules_jvm_external_deps()
43-
44-
load("@rules_jvm_external//:setup.bzl", "rules_jvm_external_setup")
45-
46-
rules_jvm_external_setup()
47-
48-
load("@io_bazel_stardoc//:deps.bzl", "stardoc_external_deps")
49-
50-
stardoc_external_deps()
51-
52-
load("@stardoc_maven//:defs.bzl", stardoc_pinned_maven_install = "pinned_maven_install")
53-
54-
stardoc_pinned_maven_install()

extensions/prost/WORKSPACE.bazel

Lines changed: 0 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -1,76 +1 @@
11
workspace(name = "rules_rust_prost")
2-
3-
# Users of `rules_rust` will commonly be unable to load it
4-
# using a `local_repository`. Instead, to setup the rules,
5-
# please see https://bazelbuild.github.io/rules_rust/#setup
6-
local_repository(
7-
name = "rules_rust",
8-
path = "../..",
9-
)
10-
11-
load("@rules_rust//rust:repositories.bzl", "rules_rust_dependencies", "rust_register_toolchains")
12-
13-
rules_rust_dependencies()
14-
15-
rust_register_toolchains()
16-
17-
load("@rules_rust//crate_universe:repositories.bzl", "crate_universe_dependencies")
18-
19-
crate_universe_dependencies(bootstrap = True)
20-
21-
load("@rules_rust//tools/rust_analyzer:deps.bzl", "rust_analyzer_dependencies")
22-
23-
rust_analyzer_dependencies()
24-
25-
# buildifier: disable=bzl-visibility
26-
load("//private:repositories.bzl", "rust_prost_dependencies", "rust_prost_register_toolchains")
27-
28-
rust_prost_dependencies()
29-
30-
rust_prost_register_toolchains()
31-
32-
load("//:transitive_repositories.bzl", "rust_prost_transitive_repositories")
33-
34-
rust_prost_transitive_repositories()
35-
36-
# Needed by protobuf
37-
load("@rules_python//python:repositories.bzl", "py_repositories")
38-
39-
py_repositories()
40-
41-
# buildifier: disable=bzl-visibility
42-
load("//private/tests:deps.bzl", "prost_test_deps")
43-
44-
prost_test_deps()
45-
46-
# buildifier: disable=bzl-visibility
47-
load("//private/tests:deps_transitive.bzl", "prost_test_transitive_deps")
48-
49-
prost_test_transitive_deps()
50-
51-
load("@bazel_skylib//:workspace.bzl", "bazel_skylib_workspace")
52-
53-
bazel_skylib_workspace()
54-
55-
# --- end stardoc
56-
57-
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")
58-
59-
http_archive(
60-
name = "bazel_ci_rules",
61-
sha256 = "eca21884e6f66a88c358e580fd67a6b148d30ab57b1680f62a96c00f9bc6a07e",
62-
strip_prefix = "bazelci_rules-1.0.0",
63-
url = "https://github.com/bazelbuild/continuous-integration/releases/download/rules-1.0.0/bazelci_rules-1.0.0.tar.gz",
64-
)
65-
66-
# To run with RBE on Bazel CI, uncomment the following lines.
67-
#
68-
# load("@bazel_ci_rules//:rbe_repo.bzl", "rbe_preconfig")
69-
# rbe_preconfig(name = "buildkite_config", toolchain = "ubuntu2004-bazel-java11")
70-
71-
http_archive(
72-
name = "rules_testing",
73-
sha256 = "02c62574631876a4e3b02a1820cb51167bb9cdcdea2381b2fa9d9b8b11c407c4",
74-
strip_prefix = "rules_testing-0.6.0",
75-
url = "https://github.com/bazelbuild/rules_testing/releases/download/v0.6.0/rules_testing-v0.6.0.tar.gz",
76-
)

0 commit comments

Comments
 (0)