summaryrefslogtreecommitdiff
path: root/cli/main.rs
diff options
context:
space:
mode:
Diffstat (limited to 'cli/main.rs')
-rw-r--r--cli/main.rs28
1 files changed, 17 insertions, 11 deletions
diff --git a/cli/main.rs b/cli/main.rs
index 04daff670..20d2cb6bf 100644
--- a/cli/main.rs
+++ b/cli/main.rs
@@ -350,18 +350,17 @@ fn setup_panic_hook() {
eprintln!("Args: {:?}", env::args().collect::<Vec<_>>());
eprintln!();
orig_hook(panic_info);
- std::process::exit(1);
+ deno_runtime::exit(1);
}));
}
-#[allow(clippy::print_stderr)]
fn exit_with_message(message: &str, code: i32) -> ! {
- eprintln!(
+ log::error!(
"{}: {}",
colors::red_bold("error"),
message.trim_start_matches("error: ")
);
- std::process::exit(code);
+ deno_runtime::exit(code);
}
fn exit_for_error(error: AnyError) -> ! {
@@ -380,13 +379,12 @@ fn exit_for_error(error: AnyError) -> ! {
exit_with_message(&error_string, error_code);
}
-#[allow(clippy::print_stderr)]
pub(crate) fn unstable_exit_cb(feature: &str, api_name: &str) {
- eprintln!(
+ log::error!(
"Unstable API '{api_name}'. The `--unstable-{}` flag must be provided.",
feature
);
- std::process::exit(70);
+ deno_runtime::exit(70);
}
pub fn main() {
@@ -419,7 +417,7 @@ pub fn main() {
drop(profiler);
match result {
- Ok(exit_code) => std::process::exit(exit_code),
+ Ok(exit_code) => deno_runtime::exit(exit_code),
Err(err) => exit_for_error(err),
}
}
@@ -433,12 +431,21 @@ fn resolve_flags_and_init(
if err.kind() == clap::error::ErrorKind::DisplayVersion =>
{
// Ignore results to avoid BrokenPipe errors.
+ util::logger::init(None);
let _ = err.print();
- std::process::exit(0);
+ deno_runtime::exit(0);
+ }
+ Err(err) => {
+ util::logger::init(None);
+ exit_for_error(AnyError::from(err))
}
- Err(err) => exit_for_error(AnyError::from(err)),
};
+ if let Some(otel_config) = flags.otel_config() {
+ deno_runtime::ops::otel::init(otel_config)?;
+ }
+ util::logger::init(flags.log_level);
+
// TODO(bartlomieju): remove in Deno v2.5 and hard error then.
if flags.unstable_config.legacy_flag_enabled {
log::warn!(
@@ -467,7 +474,6 @@ fn resolve_flags_and_init(
deno_core::JsRuntime::init_platform(
None, /* import assertions enabled */ false,
);
- util::logger::init(flags.log_level);
Ok(flags)
}