color-backtrace
Colorful panic backtraces
0.7.4
4.1M downloads/mo
#4960 most downloaded on crates.io
athre0z/color-backtrace
What this package is like to depend on
Last release 22 days ago
01 Aug 2026
Release timing varies
gaps range from 2 weeks to 2.3 years
Most releases are documented
notes for 16 of 20 stable releases
1 version withdrawn
withdrawn after publishing
7 years old
21 releases · first in 2019
4 releases in the last 12 months
see the full history below
Release timeline
21 releases · Apr 2019 to Aug 2026
2020
2021
2022
2023
2024
2025
2026
Releases
latest 21-
0.7.401 Aug 2026Release notes
Open source →- Restore
Frame::is_dependency_code, accidentally removed in v0.7.3- It now simply forwards to
default_is_dependency_frame
- It now simply forwards to
- Correct
rust-versionto 1.81- 1.81 has been the de-facto minimum since v0.7.1, which started using lint reasons; the manifest still claimed 1.70
- Restore
-
0.7.305 Apr 2026 withdrawnRelease notes
Open source →- Support custom dependency filtering functions
- New
BacktracePrinter::dependency_predicate,IsDependencyCallbackanddefault_is_dependency_frame
- New
- Yanked: also removed
Frame::is_dependency_code, breaking semver
- Support custom dependency filtering functions
-
0.7.228 Oct 2025 -
0.7.130 Aug 2025Release notes
Open source →Added
- Support for
NO_COLORandFORCE_COLORenvironment variables for controlling color output - New public function
default_color_choice()to get color choice based on environment variables and terminal detection
Changed
default_output_stream()now respectsNO_COLORandFORCE_COLORenvironment variables
- Support for
-
0.7.009 Feb 2025Release notes
Open source →- Add
Backtracetrait to abstract over backtrace implementation - Changed
Frame::iptypeusize->Option<usize> BacktracePrinter::print_tracenow takes&dyn Backtraceinstead of&backtrace::Backtrace- This may be API breaking when users use
default-features = falseso that&backtrace::Backtracedoesn't coerce to&dyn Backtrace
- This may be API breaking when users use
- Add experimental support for
std::backtrace::Backtrace- Enable via
{ default-features = false, features = ["use-btparse-crate"] }
- Enable via
- Removed previously deprecated
gimli-symbolizecrate feature
- Add
-
0.6.122 Oct 2023 -
0.6.030 Jul 2023Release notes
Open source →- Replace unmaintained
attycrate withstd::io::IsTerminal - Minimum supported Rust version raised to 1.70 (hence the bump to 0.6)
- Replace unmaintained
-
0.5.125 Apr 2021Release notes
Open source →- Add the ability to print module_name:offset, or address of frame
- Contributed by [@s1341], thanks!
- Add the ability to print module_name:offset, or address of frame
-
0.5.021 Nov 2020Release notes
Open source →- Add
__rust_begin_short_backtracefilter - Remove experimental failure support
- Add
-
0.4.219 May 2020Release notes
Open source →Added
CloneandDebugimpls forBacktracePrinterCOLORBT_SHOW_HIDDENenv variable, disabling frame filtering
-
0.4.108 May 2020Release notes
Open source →Fixed
- Use correct verbosity level for string formatting
- Fix off-by-one in frame hiding code
- Hides one additional post-panic frame
- Slightly improved doc
-
0.4.006 May 2020Release notes
Open source →Added
BacktracePrinter::format_trace_to_string- Ability to add custom frame filter callbacks
BacktracePrinter::add_frame_filterBacktracePrinter::clear_frame_filtersdefault_frame_filter- Thanks to [@yaahc] for helping out with this!
- Prefer
RUST_LIB_BACKTRACEenv var when determining the default verbosity to print non-panic backtraces- Also contributed by [@yaahc]
Changed
- Rename
Settings→BacktracePrinter - Move
print_backtrace→BacktracePrinter::print_trace - Move
print_panic_info→BacktracePrinter::print_panic_info - Move
color_backtrace::failure::print_backtrace→BacktracePrinter::print_failure_trace - The majority of old APIs have deprecated shims that forward calls to their new place to ease porting
- The
outsetting is no longer part of theBacktracePrinterand instead supplied as an argument to all functions that need it- The previous design forced
Sync + Send + 'staticconstraints on any output stream since they are required when registering the panic handler, but are unnecessary when printing to strings - As a bonus, all format and print functions no longer require
mutable access to the
BacktracePrinterinstance
- The previous design forced
-
0.3.012 Nov 2019Release notes
Open source →Added
- Custom
ColorSchemesupport - Forward backtrace-rs'
gimli-symbolizefeature, which is default enabled- This is done by adding
default-features = falseto theCargo.tomldependency entry forcolor-backtrace - Disabling it reduces transitive dependencies from ~50 → ~10
- However, you'll pay for it with inaccurate source info on macOS and Linux
- This is done by adding
Changed
- Replace
termcrate for colorful term printing withtermcolor- This crate is more actively maintained, has fewer deps and a better API
- This made adding color scheme support very easy
Settings::dim_function_hash_partwas replaced- Hash part color is now controlled via
ColorScheme
- Hash part color is now controlled via
Removed
Colorize,ColorizedStderrOutput,StreamOutput,PanicOutputStream- This functionality is now all provided by the
termcolorcrate termcoloris re-exported in the root ofcolor_backtrace
- This functionality is now all provided by the
- Lots of transitive dependencies!
- Custom
-
0.2.323 Aug 2019Release notes
Open source →Changed
- Added post panic frame rules for [failure]
- Updated
termdependency
-
0.2.229 Jun 2019Release notes
Open source →Added
- Experimental support for [failure] error backtraces
- Contributed by Jane Lusby ([@yaahc])
Changed
- Switch to [gimli] backend for backtraces on macOS and Linux
- Fixes backtraces when invoking an app outside of its build directory
- Expose
print_backtraceandprint_panic_infofunctions
- Experimental support for [failure] error backtraces
-
0.2.125 Jun 2019 -
0.2.022 Jun 2019Release notes
Open source →Added
- This changelog!
- Customization via settings
- Printing to streams other than stderr
Changed
- Improved {dependency code,post panic frame,runtime init} heuristics
- Changed default panic message to be more professional
- Relicensed from MIT to MIT/Apache-2.0 dual licensing
- Moved
get_verbosity→Verbosity::from_env - Fix readability on light terminal themes
- Fix deadlock when unwrapping an error while printing the panic
- Many internal tweaks
-
0.1.321 Apr 2019Nothing published for this version
-
0.1.220 Apr 2019Nothing published for this version
-
0.1.118 Apr 2019Nothing published for this version
-
0.1.018 Apr 2019Nothing published for this version