0.7.0
0.7
is a fairly minimal "cleanup" release, landing a collection of small breaking changes that collectively improve various ergonomic issues in gdbstub
's API.
The breaking changes introduced in 0.7
are generally trivial to fix, and I wager that porting from 0.6
to 0.7
shouldn't take more than ~10 minutes, at most.
As always, check out the transition guide for a rundown of key breaking changes to watch out for.
Cheers!
Breaking API Changes
stub::GdbStubError
is now an opaquestruct
with a handful of methods to extract user-defined context (as opposed to being anenum
that directly exposed all error internals to the user).- This change will enable future versions of
gdbstub
to fearlessly improve error messages and infrastructure without making semver breaking changes. See #112 for more.
- This change will enable future versions of
common::Signal
is not longer anenum
, and is instead astruct
with a singlepub u8
field + a collection of associated constants.- As a result, yet another instance of
unsafe
could be removed from the codebase!
- As a result, yet another instance of
Arch
API:- Entirely removed
single_step_behavior
. See #132 for details and rationale
- Entirely removed
Target
APIs:SingleThreadBase
/MultiThreadBase
read_addrs
now returns ausize
instead of a()
, allowing implementations to report cases where only a subset of memory could be read. #115 (geigerzaehler)
HostIo
Internal Improvements
- Reformatted codebase with nightly rustfmt using
imports_granularity = "Item"