[Commented On] D10189: rhg: Remove `rhg.fallback-executable=hg` default configuration
baymax (Baymax, Your Personal Patch-care Companion)
phabricator at mercurial-scm.org
Mon Mar 15 13:12:41 UTC 2021
baymax added a comment.
baymax updated this revision to Diff 26352.
✅ refresh by Heptapod after a successful CI run (🐙 💚)
REPOSITORY
rHG Mercurial
CHANGES SINCE LAST UPDATE
https://phab.mercurial-scm.org/D10189?vs=26303&id=26352
BRANCH
default
CHANGES SINCE LAST ACTION
https://phab.mercurial-scm.org/D10189/new/
REVISION DETAIL
https://phab.mercurial-scm.org/D10189
AFFECTED FILES
rust/rhg/src/main.rs
tests/test-rhg.t
CHANGE DETAILS
diff --git a/tests/test-rhg.t b/tests/test-rhg.t
--- a/tests/test-rhg.t
+++ b/tests/test-rhg.t
@@ -150,6 +150,14 @@
$ rhg cat original
original content
+ $ FALLBACK_EXE="$RHG_FALLBACK_EXECUTABLE"
+ $ unset RHG_FALLBACK_EXECUTABLE
+ $ rhg cat original
+ abort: 'rhg.on-unsupported=fallback' without 'rhg.fallback-executable' set.
+ [255]
+ $ RHG_FALLBACK_EXECUTABLE="$FALLBACK_EXE"
+ $ export RHG_FALLBACK_EXECUTABLE
+
$ rhg cat original --config rhg.fallback-executable=false
[1]
diff --git a/rust/rhg/src/main.rs b/rust/rhg/src/main.rs
--- a/rust/rhg/src/main.rs
+++ b/rust/rhg/src/main.rs
@@ -138,7 +138,7 @@
exit(
&initial_current_dir,
&ui,
- OnUnsupported::from_config(&non_repo_config),
+ OnUnsupported::from_config(&ui, &non_repo_config),
Err(CommandError::UnsupportedFeature {
message: format_bytes!(
b"URL-like --repository {}",
@@ -158,7 +158,7 @@
Err(error) => exit(
&initial_current_dir,
&ui,
- OnUnsupported::from_config(&non_repo_config),
+ OnUnsupported::from_config(&ui, &non_repo_config),
Err(error.into()),
),
};
@@ -168,6 +168,7 @@
} else {
&non_repo_config
};
+ let on_unsupported = OnUnsupported::from_config(&ui, config);
let result = main_with_result(
&process_start_time,
@@ -175,12 +176,7 @@
repo_result.as_ref(),
config,
);
- exit(
- &initial_current_dir,
- &ui,
- OnUnsupported::from_config(config),
- result,
- )
+ exit(&initial_current_dir, &ui, on_unsupported, result)
}
fn exit_code(result: &Result<(), CommandError>) -> i32 {
@@ -242,6 +238,14 @@
}
}
}
+ exit_no_fallback(ui, on_unsupported, result)
+}
+
+fn exit_no_fallback(
+ ui: &Ui,
+ on_unsupported: OnUnsupported,
+ result: Result<(), CommandError>,
+) -> ! {
match &result {
Ok(_) => {}
Err(CommandError::Unsuccessful) => {}
@@ -387,9 +391,8 @@
impl OnUnsupported {
const DEFAULT: Self = OnUnsupported::Abort;
- const DEFAULT_FALLBACK_EXECUTABLE: &'static [u8] = b"hg";
- fn from_config(config: &Config) -> Self {
+ fn from_config(ui: &Ui, config: &Config) -> Self {
match config
.get(b"rhg", b"on-unsupported")
.map(|value| value.to_ascii_lowercase())
@@ -400,7 +403,16 @@
Some(b"fallback") => OnUnsupported::Fallback {
executable: config
.get(b"rhg", b"fallback-executable")
- .unwrap_or(Self::DEFAULT_FALLBACK_EXECUTABLE)
+ .unwrap_or_else(|| {
+ exit_no_fallback(
+ ui,
+ Self::Abort,
+ Err(CommandError::abort(
+ "abort: 'rhg.on-unsupported=fallback' without \
+ 'rhg.fallback-executable' set."
+ )),
+ )
+ })
.to_owned(),
},
None => Self::DEFAULT,
To: SimonSapin, #hg-reviewers, marmoute
Cc: marmoute, mercurial-patches
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mercurial-scm.org/pipermail/mercurial-patches/attachments/20210315/9e3db520/attachment-0002.html>
More information about the Mercurial-patches
mailing list