|
5 | 5 |
|
6 | 6 |
|
7 | 7 |
|
| 8 | +## [4.19.0] - 2026-07-27 |
| 9 | + |
| 10 | +### <!-- 0 -->🚀 Features |
| 11 | +- Remove eager allocator discovery by @not-matthias |
| 12 | +- Attach allocator probes on demand via exec-mapping watcher by @not-matthias |
| 13 | +- Add exec-mapping watcher BPF prog and inode maps by @not-matthias |
| 14 | +- Add experimental --exclude-allocations setting by @not-matthias |
| 15 | + |
| 16 | +### <!-- 1 -->🐛 Bug Fixes |
| 17 | +- Join attach worker thread on drop, not only on finish() by @not-matthias in [#445](https://github.com/CodSpeedHQ/runner/pull/445) |
| 18 | +- Fail loud when a watcher mapping is unresolved on a live process by @not-matthias |
| 19 | +- Canonicalize map_files dirent name for low-address mappings by @not-matthias |
| 20 | +- Classify unprefixed jemalloc builds as jemalloc by @not-matthias |
| 21 | +- Fail closed when tracking_enabled lookup fails by @not-matthias |
| 22 | +- Lower zstd compression level to -5 to reduce serialization overhead by @not-matthias |
| 23 | +- Wire MemtrackWriter serializer through BufWriter to fix per-event zstd compression bottleneck by @not-matthias |
| 24 | + |
| 25 | +### <!-- 10 -->💼 Other |
| 26 | +- Let the tracker own the poller and drain on shutdown by @not-matthias |
| 27 | +- Return the underlying sink from MemtrackWriter::finish by @not-matthias |
| 28 | + |
| 29 | +### <!-- 2 -->🏗️ Refactor |
| 30 | +- Split monolithic eBPF C and Rust into domain files by @not-matthias |
| 31 | +- Split memtrack into module by @not-matthias |
| 32 | +- Attach uprobes at resolved file offsets instead of func_name by @not-matthias |
| 33 | +- Align cycle-estimation flag with experimental naming scheme by @not-matthias in [#425](https://github.com/CodSpeedHQ/runner/pull/425) |
| 34 | + |
| 35 | +### <!-- 3 -->📚 Documentation |
| 36 | +- Add crate AGENTS.md guide by @not-matthias in [#455](https://github.com/CodSpeedHQ/runner/pull/455) |
| 37 | +- Stop hardcoding MCP tool schemas in the optimize skill by @fargito in [#451](https://github.com/CodSpeedHQ/runner/pull/451) |
| 38 | + |
| 39 | +### <!-- 4 -->⚡ Performance |
| 40 | +- Drain ringbuf bursts eagerly and reserve poller cores by @not-matthias in [#436](https://github.com/CodSpeedHQ/runner/pull/436) |
| 41 | +- Grow the event ring buffer to 256 MiB by @not-matthias |
| 42 | +- Wake the ringbuf consumer only past a data watermark by @not-matthias |
| 43 | +- Pre-size and reuse the memtrack encode window buffer by @not-matthias |
| 44 | +- Replace drain/writer threads with the encode pipeline by @not-matthias |
| 45 | +- Add parallel zstd encode pipeline for artifact events by @not-matthias |
| 46 | +- Detach BPF links in parallel at teardown by @not-matthias in [#440](https://github.com/CodSpeedHQ/runner/pull/440) |
| 47 | +- Resolve allocator symbol offsets in parallel by @not-matthias |
| 48 | + |
| 49 | +### <!-- 6 -->🧪 Testing |
| 50 | +- Add dlopen/on-demand allocator tests + CI matrix by @not-matthias |
| 51 | +- Benchmark encode_events with a realistic allocation trace by @not-matthias |
| 52 | + |
| 53 | +### <!-- 7 -->⚙️ Internals |
| 54 | +- Lower on-demand attach log to debug by @not-matthias in [#462](https://github.com/CodSpeedHQ/runner/pull/462) |
| 55 | +- Install rust toolchain by explicit channel for older rustup by @not-matthias |
| 56 | +- Also run runner-shared benchmarks in walltime mode by @not-matthias |
| 57 | +- Dedup memtrack build deps into install-bpf-deps action by @not-matthias |
| 58 | + |
| 59 | + |
8 | 60 | ## [4.18.4] - 2026-07-09 |
9 | 61 |
|
10 | 62 | ### <!-- 10 -->💼 Other |
|
1348 | 1400 | - Add linting components to the toolchain by @art049 |
1349 | 1401 |
|
1350 | 1402 |
|
| 1403 | +[4.19.0]: https://github.com/CodSpeedHQ/runner/compare/v4.18.4..v4.19.0 |
1351 | 1404 | [4.18.4]: https://github.com/CodSpeedHQ/runner/compare/v4.18.3..v4.18.4 |
1352 | 1405 | [4.18.3]: https://github.com/CodSpeedHQ/runner/compare/v4.18.2..v4.18.3 |
1353 | 1406 | [4.18.2]: https://github.com/CodSpeedHQ/runner/compare/v4.18.1..v4.18.2 |
|
0 commit comments