Summary
- Samples are now sent individually rather than aggregated in the kernel, which in some cases it lead to stack quality issues. This will also allow to send per sample data such as timestamp and cpu core which will be used in future features
- Fixes on how the base address is calculated, improving unwinding success for other linkers and loaders
- Zig 🦎 is now fully supported (All the gory details in #264)
- Many other bug-fixes and smaller features
List of changes (excluding version bumps)
- Improve rate-limiting efficacy of new code regions events by @javierhonduco in #216
- docs: Update README.md with features by @javierhonduco in #221
- Improve error handling for critical BPF map ops by @javierhonduco in #217
- ci: Show nix version by @javierhonduco in #236
- Do not keep a reference to executables by @javierhonduco in #237
- Remove partially written BPF mappings on errors by @javierhonduco in #238
- Update Cargo hash by @patnebe in #222
- [Refactor] Create RawSample struct by @patnebe in #219
- Add uspace aggregation component by @patnebe in #242
- Refactor stack + key into new struct by @patnebe in #241
- Update elfutils to v0.193 by @javierhonduco in #248
- Stack storage rework by @patnebe in #245
- native-unwinder: Remove unused constants by @javierhonduco in #252
- [Trivial] Rename stack_key to stack_sample_header by @patnebe in #253
- Update Nix and fix new lints by @javierhonduco in #249
- object: Only keep executable load segments by @javierhonduco in #260
- capabilities: Detect support for variable size inner maps by @javierhonduco in #261
- build: Expose static C++ musl binary by @javierhonduco in #268
- sym: Fetch filename and line number if available by @javierhonduco in #267
- build: Update Nix by @javierhonduco in #271
- Fix load address calculation by @javierhonduco in #272
- Fully support Zig by @javierhonduco in #269
- Add support for
*($rsp + offset) + valueDWARF expressions by @javierhonduco in #273 - Add an option to flamegraph to show file and line number by @javierhonduco in #274
- Skip digest checks when reading unwind info by @javierhonduco in #275
- Show unwinding success percentage by @javierhonduco in #276
Full Changelog: v0.2.0...v0.3.0