From 118702c83ab83e62f87f4fd9a1fa7a48fceb7e4d Mon Sep 17 00:00:00 2001 From: Sofia R Date: Mon, 8 May 2023 20:19:53 -0300 Subject: [PATCH] feat: panic hook --- crates/kind-cli/src/main.rs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/crates/kind-cli/src/main.rs b/crates/kind-cli/src/main.rs index 04e5e96b..d45a9563 100644 --- a/crates/kind-cli/src/main.rs +++ b/crates/kind-cli/src/main.rs @@ -1,3 +1,5 @@ +#![feature(panic_info_message)] + use std::path::PathBuf; use std::time::Instant; use std::{fmt, io}; @@ -8,6 +10,7 @@ use kind_driver::session::Session; use kind_report::data::{Diagnostic, FileCache, Log, Severity}; use kind_report::RenderConfig; +use std::panic; use kind_driver as driver; @@ -354,6 +357,13 @@ pub fn run_cli(config: Cli) -> anyhow::Result<()> { } pub fn main() { + + panic::set_hook(Box::new(|e| { + println!("\n[Error]: internal compiler error '{:?}' at {}", e.message().unwrap(), e.location().unwrap()); + println!("Please submit a full report about this error at: https://github.com/HigherOrderCO/Kind/issues/new"); + println!("It would help us a lot :)\n"); + })); + match run_cli(Cli::parse()) { Ok(_) => std::process::exit(0), Err(_) => std::process::exit(1),