* Fix nearpc command disassembly instruction count
* Add -r parameter to nearpc to set number of previous instructions to show
* Add -t argument to nearpc
* docs
* Remove old comments
* Fix function parameter type for dev docs check
* Correct number of instructions to pull from cache
* Fix if condition edge case
* Rebase and fix typos
* Support system Zig in addition to the one bundled in a Python package
Add support for locating the Zig executable with the following precedence:
1. ziglang module - if installed, use bundled Zig.
2. zig in PATH - fallback to system installation.
On Arch Linux we don't package the ziglang Python package. This change makes it
possible for pwndbg to use the Zig executable from our zig0.14 package [0].
[0]: https://archlinux.org/packages/extra/x86_64/zig0.14/
Disclaimer: Authored with assistance from Claude Code.
* Fail if found Zig has unsupported version
Only version 0.14.1 works, 0.15+ doesn't
* Address PR comments
- Increase version check timeout from 1s to 15s (necessary on MacOS).
- Cache get_zig_executable() result.
- Only check version of system Zig. Python packaged one is locked.
* added kmemtrace class
* added ret trace handler
* added lldb ret trace handler
* making the output more colourful
* added the actual command
* storing output
* temp suspend ctx output
* tracing with mutex
* add option to only trace relevant allocations and frees
* cleaned up
* renaming
* docs
* format
* refactored + addressing comments
* ida integration fixups
* handle connection breaks cleanly
* bring binja up to speed
* make the ports not collide, and more random
* final fixups
* final final
* typo fix
* add highlighting to ida
* added options to specify the num of lines to disass and heuristics for map/prog_idr
* partial recovery for structs relevant to bpf
* added kbpf command
* added array offset recovery
* added verbose option
* added disass support
* refactored
* added flags
* docs
* typos
* Fix NO_COLOR environment variable support
Implement proper NO_COLOR support by adding a nocolor function and
configuration trigger that dynamically replaces the colorize function's
behavior when colors are disabled. This approach avoids performance
overhead by modifying function behavior at runtime rather than adding
conditional checks to each colorize call.
Fixes#3142
* fixes
* Manually propagate register values across instructions while disassembling, allowing better annotations when emulation is unavailable
* Add comment
* More comments
* Comment
* Comment fix
* Local variable change
* Print register writes in instruction debug print
* Clear register set when encountering branch with undetermined result
* Update tests
* lint
* Fix dbg tests
* Update dev docs related to reasoning about process state
* klookup
* using lief to create a blank elf and add symbols to it
* added lief in dependencies
* doc
* fixed add_symbol_file
* changes to tuple
* fix tests
* fix compiler warnings
* fix div by 0 issue
* removed redundant bracket