Jeremy Rifkin
f16c36e0b6
Do a unit test without debug symbols
2025-01-28 00:48:38 -06:00
Jeremy Rifkin
b498dead92
Update readme badges
2025-01-28 00:42:50 -06:00
Jeremy Rifkin
6971f6a5ca
Remove mostly redundant build workflow and turn the test workflow into a general ci workflow
2025-01-28 00:31:01 -06:00
Jeremy Rifkin
247474389f
Allow cpptrace::detail::demangle to demangle strings that have non-identifier characters at the end
2025-01-27 23:57:05 -06:00
Jeremy Rifkin
dc0c683804
Remove elf::byteswap_if_needed's little endian parameter
2025-01-27 23:49:27 -06:00
Jeremy Rifkin
c5c785db89
Check that names passed to cpptrace::detail::demangle look like mangled names before passing to abi::__cxa_demangle
2025-01-27 23:48:13 -06:00
Jeremy Rifkin
a28cc3a3a0
Split up unittest jobs further
2025-01-27 23:36:38 -06:00
Jeremy Rifkin
08306c12a5
Implement symbol table lookup for mach-o and fix mingw build
2025-01-27 23:12:30 -06:00
Jeremy Rifkin
68c9d33e94
Use tried_to_load_header
2025-01-26 23:22:03 -06:00
Jeremy Rifkin
8edb419342
Implement elf symbol table parsing and fall back to the elf symbol table during symbol resolution
2025-01-26 23:07:33 -06:00
Jeremy Rifkin
dc118dcb6d
Move monostate
2025-01-26 23:03:42 -06:00
Jeremy Rifkin
7a1eb4d5bf
Add a Result<T> converting constructor
2025-01-26 20:29:13 -06:00
Jeremy Rifkin
6a9d2c5bbd
Fixes for C++11 / older gcc
2025-01-26 19:31:20 -06:00
Jeremy Rifkin
c9826616b5
Sendit support optional<T&> and Result<T&, E>
2025-01-26 19:18:47 -06:00
Jeremy Rifkin
293f4d1593
Export should_absorb_trace_exceptions to fix tests
2025-01-26 18:15:21 -06:00
Jeremy Rifkin
01ea4e9ea7
Update BUILD.bazel for test
2025-01-26 17:41:23 -06:00
Jeremy Rifkin
06732add17
Try to fix tests on CI
2025-01-26 17:34:02 -06:00
Jeremy Rifkin
78086d0267
Some more unit tests for test cases
2025-01-26 17:29:38 -06:00
Jeremy Rifkin
906784284f
Add unit tests for optional and result helper types
2025-01-26 16:02:34 -06:00
Jeremy Rifkin
b705afba69
Templated lambdas aren't a thing in C++11 :(
2025-01-26 14:52:31 -06:00
Jeremy Rifkin
76a21d266a
Refactor out optional and result
2025-01-26 13:30:54 -06:00
firesgc
1bcfcff021
Incompatible with JNI on Windows: use unique handle for SymInitialize #204 ( #206 )
...
WinDbg: Duplicate the process handle before using it in SymInitialize,
because other libraries may have already called SymInitialize for the
process
(https://learn.microsoft.com/en-us/windows/win32/debug/initializing-the-symbol-handler )
Fixes https://github.com/jeremy-rifkin/cpptrace/issues/204
---------
Co-authored-by: Jeremy <51220084+jeremy-rifkin@users.noreply.github.com>
2025-01-25 22:25:54 -06:00
Jeremy Rifkin
485d9a6f21
A little elf refactoring, separate out header loading
2025-01-24 20:16:46 -06:00
Jeremy Rifkin
d063784abc
Refactor elf_get_module_image_base, setup an elf class in preparation for more elf parsing
2025-01-23 00:12:31 -06:00
Jeremy Rifkin
6689d14c20
Bump to v0.7.5
2025-01-04 23:45:49 -06:00
Jeremy Rifkin
f42ed3500d
Use underscores in component names instead of hyphens due to cpack, resolves #203
2025-01-04 23:16:37 -06:00
Jeremy Rifkin
f35ef65ed6
Merge branch 'dev'
2025-01-04 22:57:40 -06:00
Jeremy Rifkin
0c40839009
Specify __cdecl for the terminate handler on MSVC, fixes #197
2024-12-30 23:07:15 -06:00
Jeremy Rifkin
d5a2043fd3
Set C++ standard for old compiler versions in check_support, fixes #200
2024-12-30 22:41:54 -06:00
Dominic Koepke
b127cfb176
Add missing typeinfo include ( #202 )
...
Hello,
as you know, I'm working on an integration of ``cpptrace`` into my own
mocking framework. I've an exhaustive build-workflow with various
compiler-configurations. One of these configs fails compiling due to
this error:
```src/platform/exception_type.hpp:19:39: error: member access into incomplete type 'const std::type_info'```
This happens to be the case, when ``clang-16`` with c++23 and `-stdlib=libc++` is used.
see: https://github.com/DNKpp/mimicpp/actions/runs/12549146490/job/34989686008 and
https://github.com/DNKpp/mimicpp/actions/runs/12549146490/job/34989688648
This fixes the issue.
2024-12-30 19:12:39 -06:00
Sergei Zimmerman
b23bc42df4
test(stacktrace): make CPPTRACE_FORCE_INLINE static ( #196 )
...
This fixes compilation error:
```
> error: inlining failed in call to 'always_inline' 'int stacktrace_inline_resolution_2(std::vector<int>&)': function body can be overwritten at link time
```
2024-12-23 12:21:30 -07:00
Jeremy Rifkin
5b3f2fb0b1
Bump to v0.7.4
2024-12-21 16:13:10 -06:00
Jeremy Rifkin
43b0ed1b21
Add version macros header
2024-12-21 15:41:13 -06:00
Jeremy Rifkin
27bbe75bd3
Re-enable some dwarf 5 test cases now that upstream issues are resolved ( #194 )
...
Re-enables test cases that were disabled due to
https://github.com/davea42/libdwarf-code/issues/259 and
https://github.com/davea42/libdwarf-code/issues/267
2024-12-05 19:11:42 -06:00
Jeremy Rifkin
fe97f8f0f0
Split CI matrix run over several runners
2024-12-04 23:44:37 -06:00
Jeremy Rifkin
cc497fb62b
Revert "Re-enable some dwarf 5 unit tests now that things are fixed upstream"
...
This reverts commit acddc383a4 .
2024-12-04 23:18:58 -06:00
Jeremy Rifkin
acddc383a4
Re-enable some dwarf 5 unit tests now that things are fixed upstream
2024-12-04 22:56:08 -06:00
Jeremy Rifkin
61d06d56d6
Oops
2024-12-03 23:56:10 -06:00
Jeremy Rifkin
4227fc4abe
Better microfmt implementation
2024-12-03 23:53:28 -06:00
Jeremy Rifkin
ddec65195d
Bump to libdwarf 0.11.1
2024-12-03 23:11:25 -06:00
Jeremy Rifkin
379a0fa594
Add a test main that disables cpptrace exception absorption
2024-11-20 23:29:29 -06:00
Jeremy Rifkin
4354eb21ea
Bump to v0.7.3
2024-11-15 17:42:37 -06:00
Jeremy Rifkin
6945c2167e
Change a return back to an _exit(1). It's not different functionally but I decided it's more clear.
2024-11-15 17:21:22 -06:00
Jeremy Rifkin
d43318aa92
Add cmake export set, fixes #189
2024-11-15 17:14:08 -06:00
Jeremy Rifkin
e10dbf431e
Add a color overload for stacktrace_frame::to_string, fixes #190
2024-11-14 23:54:52 -06:00
Jeremy Rifkin
8866d70a32
Fix bug in signal_demo and add error message on fork failure to signal tracing guide
2024-11-14 22:08:09 -06:00
Jeremy Rifkin
5a9a4f314d
Updating wording and docs arround the safe trace API
2024-11-14 22:07:32 -06:00
Jeremy Rifkin
88df27aa32
Disable a unittest config until a libdwarf bug is fixed
2024-11-14 21:38:49 -06:00
Jeremy Rifkin
bbae57bd22
Fix typo
2024-11-14 21:23:42 -06:00
Jeremy Rifkin
5c9f5150fb
Followup fixes
2024-11-11 22:41:58 -06:00