Releases: jeremy-rifkin/cpptrace
Releases · jeremy-rifkin/cpptrace
Version 0.7.5
Version 0.7.4
Added:
- Added
<cpptrace/version.hpp>
header with version macros
Fixes:
- Bumped libdwarf to 0.11.0 which fixes a number of dwarf 5 debug fission issues
Other:
- Various improvements to internal testing setup
Version 0.7.3
Fixed:
- Fixed missing include affecting macos #183
- Fixed issue with cmake not using the ccache program found by
find_program
#184 - Fixed missing include and warnings affecting mingw #186
- Fixed issue with identifying inlined call frames when the
DW_TAG_inlined_subroutine
is under aDW_TAG_lexical_block
- Fixed a typo in the README
- Improved unittest support on various configurations
- Improved unittest robustness under LTO
- Fixed bug signal_demo in the event
fork()
fails
Added:
- Added color overload for
stacktrace_frame::to_string
- Added CMake
export()
definition for cpptrace as well as a definition for libdwarf which currently doesn't provide one
Changed:
- Updated documentation surrounding the signal safe API
Version 0.7.2
Version 0.7.1
Added
Fixed
- Computation of object address for safe object frames #169
- Nested microfmt in cpptrace's namespace due to an ODR problem with libassert jeremy-rifkin/libassert#103
- Compilation on iOS #167
- Compilation on old MSVC #165
- Dbghelp use on 32 bit #170
- Warning in brand new cmake due to
FetchContent_Populate
being deprecated #171
Other changes
- Bumped the buffer size for execinfo and CaptureStackBackTrace to 400 frames
- Switched to execinfo.h for unwinding on clang/apple clang on macos due to
_Unwind
not working with-fno-exceptions
#161
Version 0.7.0
Added
- Added
cpptrace::from_current_exception()
and associated exception handler macros to allow tracing of all exceptions,
even without cpptrace traced exception objects.
Fixes:
- Fixed issue with using
resolve_safe_object_frame
onsafe_object_frame
s with empty paths - Fixed handling of dwarf 4 rangelist base addresses when a
DW_AT_low_pc
is not present - Fixed use of
-g
with MSVC
Other changes:
- Bazel is now supported on linux (#153)
- More work on testing
- Some internal refactoring
Version 0.6.3
Added:
- Added a flag to disable inclusion of
<format>
by cpptrace.hpp and the definition of formatter specializations
Fixes:
- Fixed use after free during cleanup of split dwarf information #141
- Fixed an issue with TCO by clang on arm interfering with unwinding skip counts for internal methods
- Fixed issue with incorrect object addresses being reported on macos when debug maps are used
- Fixed issue with handling of split dwarf emitted by clang under dwarf4 mode
Other changes:
- Added note about signal-safe tracing requiring
_dl_find_object
to documentation and fixed errors in the signal-safe
tracing docs - Added more configurations to unittest ci setup
- Optimized unittest ci matrix setup
- Added options for zstd and libdwarf sources if FetchContent is being used to bring the dependencies in
- Optimized includes in cpptrace.hpp
Version 0.6.2
Fixes:
- Fix an issue with unwinding to collect stack traces during exception creation on arm #134
- Fix issue where
dladdr1
wasn't being used even when detected
Robustness:
- Setup more robust unit tests and added them to CI
Version 0.6.1
Fixes:
- Fix for detection of
dladdr1
and_dl_find_object
support
Version 0.6.0
New:
- Added a
cpptrace::system_error
utility - Added support for musl #128
- Added support for split dwarf / debug fission
Fixes:
- Fixed address formatting in stack traces
- Fixed frame pointer calculation for signal frames from libunwind #123
- Fixed dwarf_ranges handling of lowpc == pc causing erroneous symbol resolution
- Fixed implementation of the exception helper system/reference implementation's
lazy_trace_holder