BS 0.4 released!
After 8 months of development, version 0.4.0 is here - bringing Debug Adapter Protocol (DAP) support and significant performance improvements!
Key highlights:
- DAP Support: Integrate bs directly into VS Code via the new extension, with support for more DAP-compatible IDEs coming soon.
Special thanks to @hasali19 for contribution.
- Replaced external
libunwindwith a custom unwinder - now thebsbinary has no external dependencies.
Special thanks to @gvtret for contribution.
- Better performance: optimized for large binaries (e.g., debugging rustc) with reduced memory consumption and faster operation.
- Fixes & improvements: numerous stability enhancements and bug fixes for a smoother debugging experience.
Full changelog since version 0.3.0:
- Added
- dap: introduce DAP extension for VS Code
- dap: introduce DAP server
- debugger: add
GlobalContext - ui: new output for
backtracecommand (with source file and line) - debugger: add
--save-historyoption - debugger: new
DataCastDQE op - debugger: added support for rustc 1.87 - 1.92
- Changed
- build: remove libunwind-specific test target
- debugger: use string interner
- debugger: use ecx/ccx/pcx/etc naming for different contexts
- debugger: parse DIEs on demand rather than upfront to reduce initial memory load
- debugger: reduce memory consumption for debug information representation
- debugger: reduce memory consumption for symbol tables
- update
tui-realmandtui-realm-treeviewcomponents - add
PopIf::pop_if_single_el - update
chumskyto a stable version0.10.1 - debugger: now backtrace frames contains a source file and line
- Fixed
- debugger: panic when vecdeque have infinite capacity (bug in debug info)
- build: fail early at compile rather than runtime
- tui: fix panic when there is a thread with unknown first frame function in backtrace
- debugger: fix panic when when parse zero-length arrays
- debugger: enable LTO and codegen-units = 1 for release build
- Deprecated
- debugger: deprecate
libunwindsupport
- debugger: deprecate