337 lines
9.3 KiB
Markdown
337 lines
9.3 KiB
Markdown
|
# `addr2line` Change Log
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.21.0 (2023/08/12)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* Updated `gimli`, `object`, and `fallible-iterator` dependencies.
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
* The minimum supported rust version is 1.65.0.
|
||
|
|
||
|
* Store boxed slices instead of `Vec` objects in `Context`.
|
||
|
[#278](https://github.com/gimli-rs/addr2line/pull/278)
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.20.0 (2023/04/15)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* The minimum supported rust version is 1.58.0.
|
||
|
|
||
|
* Changed `Context::find_frames` to return `LookupResult`.
|
||
|
Use `LookupResult::skip_all_loads` to obtain the result without loading split DWARF.
|
||
|
[#260](https://github.com/gimli-rs/addr2line/pull/260)
|
||
|
|
||
|
* Replaced `Context::find_dwarf_unit` with `Context::find_dwarf_and_unit`.
|
||
|
[#260](https://github.com/gimli-rs/addr2line/pull/260)
|
||
|
|
||
|
* Updated `object` dependency.
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
* Fix handling of file index 0 for DWARF 5.
|
||
|
[#264](https://github.com/gimli-rs/addr2line/pull/264)
|
||
|
|
||
|
### Added
|
||
|
|
||
|
* Added types and methods to support loading split DWARF:
|
||
|
`LookupResult`, `SplitDwarfLoad`, `SplitDwarfLoader`, `Context::preload_units`.
|
||
|
[#260](https://github.com/gimli-rs/addr2line/pull/260)
|
||
|
[#262](https://github.com/gimli-rs/addr2line/pull/262)
|
||
|
[#263](https://github.com/gimli-rs/addr2line/pull/263)
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.19.0 (2022/11/24)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* Updated `gimli` and `object` dependencies.
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.18.0 (2022/07/16)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* Updated `object` dependency.
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
* Fixed handling of relative path for `DW_AT_comp_dir`.
|
||
|
[#239](https://github.com/gimli-rs/addr2line/pull/239)
|
||
|
|
||
|
* Fixed handling of `DW_FORM_addrx` for DWARF 5 support.
|
||
|
[#243](https://github.com/gimli-rs/addr2line/pull/243)
|
||
|
|
||
|
* Fixed handling of units that are missing range information.
|
||
|
[#249](https://github.com/gimli-rs/addr2line/pull/249)
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.17.0 (2021/10/24)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* Updated `gimli` and `object` dependencies.
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
* Use `skip_attributes` to improve performance.
|
||
|
[#236](https://github.com/gimli-rs/addr2line/pull/236)
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.16.0 (2021/07/26)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* Updated `gimli` and `object` dependencies.
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.15.2 (2021/06/04)
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
* Allow `Context` to be `Send`.
|
||
|
[#219](https://github.com/gimli-rs/addr2line/pull/219)
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.15.1 (2021/05/02)
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
* Don't ignore aranges with address 0.
|
||
|
[#217](https://github.com/gimli-rs/addr2line/pull/217)
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.15.0 (2021/05/02)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* Updated `gimli` and `object` dependencies.
|
||
|
[#215](https://github.com/gimli-rs/addr2line/pull/215)
|
||
|
|
||
|
* Added `debug_aranges` parameter to `Context::from_sections`.
|
||
|
[#200](https://github.com/gimli-rs/addr2line/pull/200)
|
||
|
|
||
|
### Added
|
||
|
|
||
|
* Added `.debug_aranges` support.
|
||
|
[#200](https://github.com/gimli-rs/addr2line/pull/200)
|
||
|
|
||
|
* Added supplementary object file support.
|
||
|
[#208](https://github.com/gimli-rs/addr2line/pull/208)
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
* Fixed handling of Windows paths in locations.
|
||
|
[#209](https://github.com/gimli-rs/addr2line/pull/209)
|
||
|
|
||
|
* examples/addr2line: Flush stdout after each response.
|
||
|
[#210](https://github.com/gimli-rs/addr2line/pull/210)
|
||
|
|
||
|
* examples/addr2line: Avoid copying every section.
|
||
|
[#213](https://github.com/gimli-rs/addr2line/pull/213)
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.14.1 (2020/12/31)
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
* Fix location lookup for skeleton units.
|
||
|
[#201](https://github.com/gimli-rs/addr2line/pull/201)
|
||
|
|
||
|
### Added
|
||
|
|
||
|
* Added `Context::find_location_range`.
|
||
|
[#196](https://github.com/gimli-rs/addr2line/pull/196)
|
||
|
[#199](https://github.com/gimli-rs/addr2line/pull/199)
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.14.0 (2020/10/27)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* Updated `gimli` and `object` dependencies.
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
* Handle units that only have line information.
|
||
|
[#188](https://github.com/gimli-rs/addr2line/pull/188)
|
||
|
|
||
|
* Handle DWARF units with version <= 4 and no `DW_AT_name`.
|
||
|
[#191](https://github.com/gimli-rs/addr2line/pull/191)
|
||
|
|
||
|
* Fix handling of `DW_FORM_ref_addr`.
|
||
|
[#193](https://github.com/gimli-rs/addr2line/pull/193)
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.13.0 (2020/07/07)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* Updated `gimli` and `object` dependencies.
|
||
|
|
||
|
* Added `rustc-dep-of-std` feature.
|
||
|
[#166](https://github.com/gimli-rs/addr2line/pull/166)
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
* Improve performance by parsing function contents lazily.
|
||
|
[#178](https://github.com/gimli-rs/addr2line/pull/178)
|
||
|
|
||
|
* Don't skip `.debug_info` and `.debug_line` entries with a zero address.
|
||
|
[#182](https://github.com/gimli-rs/addr2line/pull/182)
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.12.2 (2020/06/21)
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
* Avoid linear search for `DW_FORM_ref_addr`.
|
||
|
[#175](https://github.com/gimli-rs/addr2line/pull/175)
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.12.1 (2020/05/19)
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
* Handle units with overlapping address ranges.
|
||
|
[#163](https://github.com/gimli-rs/addr2line/pull/163)
|
||
|
|
||
|
* Don't assert for functions with overlapping address ranges.
|
||
|
[#168](https://github.com/gimli-rs/addr2line/pull/168)
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.12.0 (2020/05/12)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* Updated `gimli` and `object` dependencies.
|
||
|
|
||
|
* Added more optional features: `smallvec` and `fallible-iterator`.
|
||
|
[#160](https://github.com/gimli-rs/addr2line/pull/160)
|
||
|
|
||
|
### Added
|
||
|
|
||
|
* Added `Context::dwarf` and `Context::find_dwarf_unit`.
|
||
|
[#159](https://github.com/gimli-rs/addr2line/pull/159)
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
* Removed `lazycell` dependency.
|
||
|
[#160](https://github.com/gimli-rs/addr2line/pull/160)
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.11.0 (2020/01/11)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* Updated `gimli` and `object` dependencies.
|
||
|
|
||
|
* [#130](https://github.com/gimli-rs/addr2line/pull/130)
|
||
|
Changed `Location::file` from `Option<String>` to `Option<&str>`.
|
||
|
This required adding lifetime parameters to `Location` and other structs that
|
||
|
contain it.
|
||
|
|
||
|
* [#152](https://github.com/gimli-rs/addr2line/pull/152)
|
||
|
Changed `Location::line` and `Location::column` from `Option<u64>`to `Option<u32>`.
|
||
|
|
||
|
* [#156](https://github.com/gimli-rs/addr2line/pull/156)
|
||
|
Deleted `alloc` feature, and fixed `no-std` builds with stable rust.
|
||
|
Removed default `Reader` parameter for `Context`, and added `ObjectContext` instead.
|
||
|
|
||
|
### Added
|
||
|
|
||
|
* [#134](https://github.com/gimli-rs/addr2line/pull/134)
|
||
|
Added `Context::from_dwarf`.
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
* [#133](https://github.com/gimli-rs/addr2line/pull/133)
|
||
|
Fixed handling of units that can't be parsed.
|
||
|
|
||
|
* [#155](https://github.com/gimli-rs/addr2line/pull/155)
|
||
|
Fixed `addr2line` output to match binutils.
|
||
|
|
||
|
* [#130](https://github.com/gimli-rs/addr2line/pull/130)
|
||
|
Improved `.debug_line` parsing performance.
|
||
|
|
||
|
* [#148](https://github.com/gimli-rs/addr2line/pull/148)
|
||
|
[#150](https://github.com/gimli-rs/addr2line/pull/150)
|
||
|
[#151](https://github.com/gimli-rs/addr2line/pull/151)
|
||
|
[#152](https://github.com/gimli-rs/addr2line/pull/152)
|
||
|
Improved `.debug_info` parsing performance.
|
||
|
|
||
|
* [#137](https://github.com/gimli-rs/addr2line/pull/137)
|
||
|
[#138](https://github.com/gimli-rs/addr2line/pull/138)
|
||
|
[#139](https://github.com/gimli-rs/addr2line/pull/139)
|
||
|
[#140](https://github.com/gimli-rs/addr2line/pull/140)
|
||
|
[#146](https://github.com/gimli-rs/addr2line/pull/146)
|
||
|
Improved benchmarks.
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.10.0 (2019/07/07)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* [#127](https://github.com/gimli-rs/addr2line/pull/127)
|
||
|
Update `gimli`.
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.9.0 (2019/05/02)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* [#121](https://github.com/gimli-rs/addr2line/pull/121)
|
||
|
Update `gimli`, `object`, and `fallible-iterator` dependencies.
|
||
|
|
||
|
### Added
|
||
|
|
||
|
* [#121](https://github.com/gimli-rs/addr2line/pull/121)
|
||
|
Reexport `gimli`, `object`, and `fallible-iterator`.
|
||
|
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
## 0.8.0 (2019/02/06)
|
||
|
|
||
|
### Breaking changes
|
||
|
|
||
|
* [#107](https://github.com/gimli-rs/addr2line/pull/107)
|
||
|
Update `object` dependency to 0.11. This is part of the public API.
|
||
|
|
||
|
### Added
|
||
|
|
||
|
* [#101](https://github.com/gimli-rs/addr2line/pull/101)
|
||
|
Add `object` feature (enabled by default). Disable this feature to remove
|
||
|
the `object` dependency and `Context::new` API.
|
||
|
|
||
|
* [#102](https://github.com/gimli-rs/addr2line/pull/102)
|
||
|
Add `std` (enabled by default) and `alloc` features.
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
* [#108](https://github.com/gimli-rs/addr2line/issues/108)
|
||
|
`demangle` no longer outputs the hash for rust symbols.
|
||
|
|
||
|
* [#109](https://github.com/gimli-rs/addr2line/issues/109)
|
||
|
Set default `R` for `Context<R>`.
|