4 releases (2 breaking)
0.3.1 | Feb 17, 2024 |
---|---|
0.3.0 | Feb 17, 2024 |
0.2.0 | Feb 17, 2024 |
0.1.0 | Feb 16, 2024 |
0.0.0 |
|
#4 in #human-friendly
21 downloads per month
Used in meow-editor
15KB
305 lines
panic
Panic messages for humans. Handles panics by calling
std::panic::set_hook
to make errors nice for humans. This is a fork of the original human-panic crate.
Custom message usage
use panic::setup_panic;
fn main() {
setup_panic! {
name: "Panic Wrapper",
short_name: "panic",
version: env!("CARGO_PKG_VERSION"),
repository: "https://github.com/exact-labs/panic",
messages: {
colors: (Color::Red, Color::White, Color::Green),
head: "Well, this is embarrassing. %(name) v%(version) had a problem and crashed. \nTo help us diagnose the problem you can send us a crash report\n",
body: "We have generated a report file at \"%(file_path)\". \nSubmit an issue or email with the subject of \"%(name) v%(version) crash report\" and include the report as an attachment at %(repository).\n",
footer: "We take privacy seriously, and do not perform any automated error collection. \nIn order to improve the software, we rely on people to submit reports. Thank you!"
}
};
println!("A normal log message");
panic!("OMG EVERYTHING IS ON FIRE!!!");
}
It only displays a human-friendly panic message in release mode unless feature only-release
is disabled:
Dependencies
~5–13MB
~173K SLoC