Releases: Netflix/bpftop
v0.7.1
Highlights
-
Updated
tracing-subscriberto version 0.3.20 to address CVE-2025-58160. -
The BPF iterator program that tracks which process loaded each BPF program now fails gracefully instead of preventing bpftop from starting. This improves compatibility with kernels not compiled with CONFIG_KALLSYMS_ALL, where the required bpf_prog_fops symbol may be unavailable. While process tracking is a nice-to-have feature, bpftop now continues to function without it, displaying all BPF statistics except process information. Details: #162
-
Dependencies will now only be updated to unblock features, fix bugs, or address security vulnerabilities. Several dependencies were rolled back, making bpftop easier to package for distributions like Fedora.
-
Added CLAUDE.md to support LLM-assisted development. AI contributions are welcome!
What's Changed
- Bump tracing-subscriber from 0.3.19 to 0.3.20 by @dependabot[bot] in #159
- Loosen libbpf dependency version requirements by @jfernandez in #160
- Loosen dependency version requirements for improved packaging compati… by @jfernandez in #161
- Add comprehensive GitHub Copilot instructions for bpftop development by @Copilot in #165
- Update README.md with comprehensive feature documentation and journalctl logging instructions by @Copilot in #168
- dependabot: limit cargo updates to security patche by @jfernandez in #170
- Bump actions/checkout from 4.1.1 to 5.0.0 by @dependabot[bot] in #174
- Bump actions/upload-artifact from 4.3.3 to 4.6.2 by @dependabot[bot] in #175
- Bump actions/download-artifact from 4.1.7 to 5.0.0 by @dependabot[bot] in #173
- Bump ncipollo/release-action from 1.14.0 to 1.18.0 by @dependabot[bot] in #171
- Bump actions/cache from 4.2.3 to 4.2.4 by @dependabot[bot] in #172
- Make pid_iter BPF program loading non-fatal by @jfernandez in #166
- Use semver-compatible version constraints instead of open-ended ranges by @jfernandez in #176
New Contributors
- @Copilot made their first contribution in #165
Full Changelog: v0.7.0...v0.7.1
v0.7.0
New Feature
Customizable refresh rate: Added -d/--delay option to set screen refresh rate in seconds. Thanks to @tanelpoder for this contribution!
Improvements
- Build system: Generate BPF skeleton in OUT_DIR for better build isolation (commit 2f2de39)
- Code quality: Fixed clippy warnings for cleaner code (commit 47fa0c3)
- CI/CD: Updated GitHub Actions to use non-deprecated runners (commit c47c216)
- Development: Added CLAUDE.md for improved AI-assisted development (commit 9d86325)
Dependency Updates
- Updated libbpf-rs from 0.24.8 to 0.25.0
- Updated libbpf-sys from 1.5.0+v1.5.0 to 1.6.1+v1.6.1
- Updated libbpf-cargo from 0.24.8 to 0.25.0
- Updated tui-input from 0.11.1 to 0.14.0
- Updated clap from 4.5.28 to 4.5.45
- Updated nix from 0.29.0 to 0.30.1
- Updated circular-buffer from 1.0.0 to 1.1.0
- Updated anyhow from 1.0.95 to 1.0.99
New Contributors
- @tanelpoder made their first contribution in #138
Full Changelog: v0.6.0...v0.7.0
v0.6.0
What's Changed
This release updates all dependencies to their latest release versions, including libbpf-rs and ratatui. We've also added a couple of UX improvements.
New Features
Scrollbar for tabular view
Thanks to @m12t, the tabular view now displays a scrollbar when the list of BPF programs exceeds the terminal window height. This enhancement makes it clear that additional programs exist beyond those currently visible.
New CLI Options
bpftop now supports the --help and --version flags. Previously, it wasn't possible to check the version information.
Changes
- Bump libbpf-sys from 1.4.2+v1.4.2 to 1.4.3+v1.4.5 by @dependabot in #74
- Update crossterm and tui-input to latest versions by @jfernandez in #76
- Update ratatui to 0.28.0 by @jfernandez in #77
- Bump tui-input from 0.10.0 to 0.10.1 by @dependabot in #88
- Bump ratatui from 0.28.0 to 0.28.1 by @dependabot in #86
- Update libbpf-rs and libbpf-cargo to 0.24.2 by @jfernandez in #84
- Bump anyhow from 1.0.86 to 1.0.87 by @dependabot in #89
- Bump anyhow from 1.0.87 to 1.0.89 by @dependabot in #90
- Bump circular-buffer from 0.1.7 to 0.1.9 by @dependabot in #94
- Bump procfs from 0.16.0 to 0.17.0 by @dependabot in #97
- Bump libbpf-rs from 0.24.4 to 0.24.5 by @dependabot in #95
- Bump libbpf-cargo from 0.24.4 to 0.24.5 by @dependabot in #93
- Bump libbpf-cargo from 0.24.5 to 0.24.6 by @dependabot in #98
- Bump libbpf-rs from 0.24.5 to 0.24.6 by @dependabot in #99
- Bump anyhow from 1.0.89 to 1.0.90 by @dependabot in #101
- Bump anyhow from 1.0.90 to 1.0.93 by @dependabot in #108
- Bump libbpf-rs from 0.24.6 to 0.24.8 by @dependabot in #107
- Bump tui-input from 0.10.1 to 0.11.0 by @dependabot in #103
- Update Nix installation instructions (24.05 -> 24.11) by @lu1a in #114
- Bump tracing-journald from 0.3.0 to 0.3.1 by @dependabot in #111
- Bump tracing from 0.1.40 to 0.1.41 by @dependabot in #110
- Bump libbpf-cargo from 0.24.6 to 0.24.8 by @dependabot in #109
- Bump libbpf-sys from 1.4.5+v1.4.5 to 1.5.0+v1.5.0 by @dependabot in #106
- Update circular-buffer dependency to 1.0.0 by @musicinmybrain in #115
- Bump ratatui from 0.28.1 to 0.29.0 by @dependabot in #100
- Add --version and --help flags by @jfernandez in #116
- Bump anyhow from 1.0.93 to 1.0.95 by @dependabot in #117
- Bump tracing-subscriber from 0.3.18 to 0.3.19 by @dependabot in #119
- Bump tui-input from 0.11.0 to 0.11.1 by @dependabot in #118
- Bump clap from 4.5.27 to 4.5.28 by @dependabot in #120
- Add scrollbar to tabular view by @m12t in #121
- Release 0.6.0 by @jfernandez in #122
New Contributors
- @lu1a made their first contribution in #114
- @musicinmybrain made their first contribution in #115
- @m12t made their first contribution in #121
Full Changelog: v0.5.2...v0.6.0
v0.5.2
What's Changed
bpftop no longer has a hard dependency on systemd/journald. Previously the program would fail to start if systemd was not running.
- Do not error out if journald is not available by @jfernandez in #52
- Update pid_iter.skel.rs after libbpf update by @jfernandez in #70
- Use cloned_from() instead of clone() in app.rs by @jfernandez in #71
Dependency updates
- Bump ratatui from 0.26.2 to 0.26.3 by @dependabot in #51
- Bump anyhow from 1.0.83 to 1.0.86 by @dependabot in #50
- Bump libbpf-cargo from 0.23.1 to 0.23.2 by @dependabot in #59
- Bump libbpf-rs from 0.23.1 to 0.23.2 by @dependabot in #58
- Bump nix from 0.28.0 to 0.29.0 by @dependabot in #56
- Bump libbpf-sys from 1.4.1+v1.4.0 to 1.4.2+v1.4.2 by @dependabot in #57
- Bump libbpf-rs from 0.23.2 to 0.23.3 by @dependabot in #65
- Bump libbpf-cargo from 0.23.2 to 0.23.3 by @dependabot in #64
- Bump ratatui from 0.26.3 to 0.27.0 by @dependabot in #66
- Bump tui-input from 0.8.0 to 0.9.0 by @dependabot in #67
CI/CD
- Remove Fedora RPM build logic by @jfernandez in #73
- Use cross-rs to build binaries in CI by @jfernandez in #61
- Separate building artifacts from publishing them by @jfernandez in #62
- Use cache action to avoid cross double install by @jfernandez in #63
- Add Fedora install instructions by @jfernandez in #68
- Add support for building RPM packages by @jfernandez in #49
Full Changelog: v0.5.1...v0.5.2
v0.5.1
What's Changed
- Default sort order to
Total CPU %descending by @jfernandez in #45 - Correctly restore terminal contents when exiting bpftop and cleanup correctly after panic by @jfernandez in #42
- Update pid_iter.skel.rs after libbpf-cargo update by @jfernandez in #46
- Update getuid root check by @loshz in #47
Dependency Updates
- Bump libbpf-cargo from 0.23.0 to 0.23.1 by @dependabot in #43
- Bump libbpf-rs from 0.23.0 to 0.23.1 by @dependabot in #44
Other
- Update instructions for installing on Arch Linux by @orhun in #40
- chore(ci): run build and release on 20.04 by @dnwe in #48
New Contributors
- @orhun made their first contribution in #40
- @loshz made their first contribution in #47
- @dnwe made their first contribution in #48
Full Changelog: v0.5.0...v0.5.1
v0.5.0
New Feature
This version of bpftop introduces a feature to display processes that reference BPF programs. The process name and PID will be displayed in the info box when a BPF program is selected.
To achieve this, bpftop loads its own BPF iterator program, which will also be displayed in the program list.
What's Changed
- Add systemd journal logger via tracing crate by @jfernandez in #36
- List processes (PID and comm) holding references to a BPF program by @jfernandez in #37
Dependency Updates
- Bump libbpf-sys from 1.4.0+v1.4.0 to 1.4.1+v1.4.0 by @dependabot in #39
- Bump anyhow from 1.0.82 to 1.0.83 by @dependabot in #38
Full Changelog: v0.4.2...v0.5.0
v0.4.2
What's Changed
- Add panic hook to disable BPF stats and restore terminal on panic by @jfernandez in #33
- Do not disable stats via procfs if already enabled by @jfernandez in #34
Dependency Updates
- Bump ratatui from 0.26.1 to 0.26.2 by @dependabot in #32
- Bump anyhow from 1.0.81 to 1.0.82 by @dependabot in #31
Full Changelog: v0.4.1...v0.4.2
v0.4.1
Fixes
- Correctly display graphs when sorting is enabled by @jfernandez in #30
- Fixes occasional freeze under load due to mutex deadlock. Closes #17
Dependency Updates
- Bump libbpf-sys from 1.3.0+v1.3.0 to 1.4.0+v1.4.0 by @dependabot in #27
- Bump mio from 0.8.10 to 0.8.11 by @dependabot in #28
- Bump libbpf-rs from 0.22.1 to 0.23.0 by @dependabot in #29
Full Changelog: v0.4.0...v0.4.1
v0.4.0
New Features
- Added column sorting feature for tabular view by @tyrone-wu in #26
Dependency Updates
- Bump circular-buffer from 0.1.6 to 0.1.7 by @dependabot in #23
- Bump anyhow from 1.0.80 to 1.0.81 by @dependabot in #24
Full Changelog: v0.3.0...v0.4.0
v0.3.0
What's Changed
- Added support for Linux kernels older than 5.8 - by @zf1575192187 in #21
- Added the ability to filter BPF programs by name or type - by @tyrone-wu in #22
New Contributors
- @zf1575192187 made their first contribution in #21
- @tyrone-wu made their first contribution in #22
Full Changelog: v0.2.3...v0.3.0


