summaryrefslogtreecommitdiff
path: root/cli
diff options
context:
space:
mode:
Diffstat (limited to 'cli')
-rw-r--r--cli/args/flags.rs30
-rw-r--r--cli/args/mod.rs2
-rw-r--r--cli/factory.rs6
-rw-r--r--cli/worker.rs12
4 files changed, 29 insertions, 21 deletions
diff --git a/cli/args/flags.rs b/cli/args/flags.rs
index de6358359..877b26de2 100644
--- a/cli/args/flags.rs
+++ b/cli/args/flags.rs
@@ -4042,18 +4042,23 @@ impl Iterator for UnstableArgsIter {
})
.help_heading(UNSTABLE_HEADING)
} else if self.idx > 3 {
- let (flag_name, help, _) =
- crate::UNSTABLE_GRANULAR_FLAGS.get(self.idx - 4)?;
- Arg::new(format!("unstable-{}", flag_name))
- .long(format!("unstable-{}", flag_name))
- .help(help)
+ let granular_flag = crate::UNSTABLE_GRANULAR_FLAGS.get(self.idx - 4)?;
+ Arg::new(format!("unstable-{}", granular_flag.name))
+ .long(format!("unstable-{}", granular_flag.name))
+ .help(granular_flag.help_text)
.action(ArgAction::SetTrue)
.hide(true)
.help_heading(UNSTABLE_HEADING)
// we don't render long help, so using it here as a sort of metadata
- .long_help(match self.cfg {
- UnstableArgsConfig::None | UnstableArgsConfig::ResolutionOnly => None,
- UnstableArgsConfig::ResolutionAndRuntime => Some("true"),
+ .long_help(if granular_flag.show_in_help {
+ match self.cfg {
+ UnstableArgsConfig::None | UnstableArgsConfig::ResolutionOnly => {
+ None
+ }
+ UnstableArgsConfig::ResolutionAndRuntime => Some("true"),
+ }
+ } else {
+ None
})
} else {
return None;
@@ -5405,9 +5410,12 @@ fn unstable_args_parse(
matches.get_flag("unstable-sloppy-imports");
if matches!(cfg, UnstableArgsConfig::ResolutionAndRuntime) {
- for (name, _, _) in crate::UNSTABLE_GRANULAR_FLAGS {
- if matches.get_flag(&format!("unstable-{}", name)) {
- flags.unstable_config.features.push(name.to_string());
+ for granular_flag in crate::UNSTABLE_GRANULAR_FLAGS {
+ if matches.get_flag(&format!("unstable-{}", granular_flag.name)) {
+ flags
+ .unstable_config
+ .features
+ .push(granular_flag.name.to_string());
}
}
}
diff --git a/cli/args/mod.rs b/cli/args/mod.rs
index 056dcb2af..a6b547fd7 100644
--- a/cli/args/mod.rs
+++ b/cli/args/mod.rs
@@ -1669,7 +1669,7 @@ impl CliOptions {
let mut all_valid_unstable_flags: Vec<&str> =
crate::UNSTABLE_GRANULAR_FLAGS
.iter()
- .map(|granular_flag| granular_flag.0)
+ .map(|granular_flag| granular_flag.name)
.collect();
let mut another_unstable_flags = Vec::from([
diff --git a/cli/factory.rs b/cli/factory.rs
index 224984643..1d1639815 100644
--- a/cli/factory.rs
+++ b/cli/factory.rs
@@ -723,9 +723,9 @@ impl CliFactory {
checker.warn_on_legacy_unstable();
}
let unstable_features = cli_options.unstable_features();
- for (flag_name, _, _) in crate::UNSTABLE_GRANULAR_FLAGS {
- if unstable_features.contains(&flag_name.to_string()) {
- checker.enable_feature(flag_name);
+ for granular_flag in crate::UNSTABLE_GRANULAR_FLAGS {
+ if unstable_features.contains(&granular_flag.name.to_string()) {
+ checker.enable_feature(granular_flag.name);
}
}
diff --git a/cli/worker.rs b/cli/worker.rs
index 09aa1aec4..31a88ae4e 100644
--- a/cli/worker.rs
+++ b/cli/worker.rs
@@ -573,9 +573,9 @@ impl CliMainWorkerFactory {
let feature_checker = shared.feature_checker.clone();
let mut unstable_features =
Vec::with_capacity(crate::UNSTABLE_GRANULAR_FLAGS.len());
- for (feature_name, _, id) in crate::UNSTABLE_GRANULAR_FLAGS {
- if feature_checker.check(feature_name) {
- unstable_features.push(*id);
+ for granular_flag in crate::UNSTABLE_GRANULAR_FLAGS {
+ if feature_checker.check(granular_flag.name) {
+ unstable_features.push(granular_flag.id);
}
}
@@ -771,9 +771,9 @@ fn create_web_worker_callback(
let feature_checker = shared.feature_checker.clone();
let mut unstable_features =
Vec::with_capacity(crate::UNSTABLE_GRANULAR_FLAGS.len());
- for (feature_name, _, id) in crate::UNSTABLE_GRANULAR_FLAGS {
- if feature_checker.check(feature_name) {
- unstable_features.push(*id);
+ for granular_flag in crate::UNSTABLE_GRANULAR_FLAGS {
+ if feature_checker.check(granular_flag.name) {
+ unstable_features.push(granular_flag.id);
}
}