Merge "Handle symlinks to license files in subdirectory" into main
diff --git a/tools/external_crates/crate_tool/src/main.rs b/tools/external_crates/crate_tool/src/main.rs
index 9a2e9ea..068004e 100644
--- a/tools/external_crates/crate_tool/src/main.rs
+++ b/tools/external_crates/crate_tool/src/main.rs
@@ -17,7 +17,7 @@
path::PathBuf,
};
-use anyhow::Result;
+use anyhow::{bail, Result};
use clap::{Args, Parser, Subcommand};
use crate_tool::{
default_repo_root, maybe_build_cargo_embargo, ManagedRepo, SemverCompatibilityRule,
@@ -166,6 +166,9 @@
Ok(if self.all {
managed_repo.all_crate_names()?.difference(&self.exclude).cloned().collect::<Vec<_>>()
} else {
+ if self.crates.is_empty() {
+ bail!("No crates specified");
+ }
self.crates.clone()
})
}
diff --git a/tools/external_crates/crate_tool/src/managed_repo.rs b/tools/external_crates/crate_tool/src/managed_repo.rs
index e672ef7..07f40da 100644
--- a/tools/external_crates/crate_tool/src/managed_repo.rs
+++ b/tools/external_crates/crate_tool/src/managed_repo.rs
@@ -51,7 +51,9 @@
// TODO: Store this as a data file in the monorepo.
static IMPORT_DENYLIST: LazyLock<BTreeSet<&str>> = LazyLock::new(|| {
BTreeSet::from([
- "instant", // Not maintained.
+ "instant", // Not maintained.
+ "bumpalo", // Unsound
+ "allocator-api2", // Unsound
// Uniffi crates.
// Per mmaurer: "considered too difficult to verify and stopped being used for the original use case".
"oneshot-uniffi",