Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
146 changes: 146 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,152 @@

--------------------------------------------------------------------------------

## 0.33.0

Released 2026/01/24.

### Breaking changes

* Changed `read::DebuggingInformationEntry` to store attributes in a `Vec`.
This improves the performance for some uses, but may hurt performance for others.
In particular, `read::UnitHeader::entry` and `read::DebuggingInformationEntry::clone`
have an increased cost. Consider using `read::UnitHeader::entries_raw` instead of these.
[#841](https://github.com/gimli-rs/gimli/pull/841)

* Changed `read::DebuggingInformationEntry` attribute query methods to no longer return `Result`.
[#841](https://github.com/gimli-rs/gimli/pull/841)

* Changed `read::EntriesCursor::next_dfs` to no longer return the depth delta.
Use `read::DebuggingInformationEntry::depth` instead.
[#841](https://github.com/gimli-rs/gimli/pull/841)

* Changed `read::EntriesCursor::next_entry` to return a `bool`.
[#841](https://github.com/gimli-rs/gimli/pull/841)

* Deleted the unit lifetime from `read::DebuggingInformationEntry`, `read::EntriesRaw`,
`read::EntriesCursor`, and `read::EntriesTree`.
[#839](https://github.com/gimli-rs/gimli/pull/839)

* Changed `UnitSectionOffset` to a struct, and related API changes.
[#825](https://github.com/gimli-rs/gimli/pull/825)
[#851](https://github.com/gimli-rs/gimli/pull/851)

* Deleted unused `read::Error` variants, and modified other variants
to improve naming and include additional information.
[#865](https://github.com/gimli-rs/gimli/pull/865)

* Deleted `read::Error::description`.
[#865](https://github.com/gimli-rs/gimli/pull/865)

* Implemented `Iterator` for all types that implement `FallibleIterator`,
and removed `fallible-iterator` from the default features.
Most users should be able to switch to using `Iterator`.
Use of `FallibleIterator` may require disambiguation.
[#842](https://github.com/gimli-rs/gimli/pull/842)
[#853](https://github.com/gimli-rs/gimli/pull/853)

* Added `read::Operation::VariableValue` and `read::Operation::Uninitialized`.
[#787](https://github.com/gimli-rs/gimli/pull/787)
[#867](https://github.com/gimli-rs/gimli/pull/867)

* Added `read::AttributeValue::Data16` to replace use of `read::AttributeValue::Block`
for `DW_FORM_data16`.
[#797](https://github.com/gimli-rs/gimli/pull/797)

* Changed `sup` parameter to be optional for `read::DwarfSections::borrow_with_sup`.
[#801](https://github.com/gimli-rs/gimli/pull/801)

* Changed `Deref::Target` from `Unit<R>` to `&'a Unit<R>` for `read::UnitRef<'a, R>`.
[#811](https://github.com/gimli-rs/gimli/pull/811)

* Deleted deprecated items.
[#813](https://github.com/gimli-rs/gimli/pull/813)

* Renamed `write::Reference` to `write::DebugInfoRef`.
[#814](https://github.com/gimli-rs/gimli/pull/814)

* Deleted `write::UnitTable::from`, `write::LineProgram::from`, and `write::Expression::from`.
[#815](https://github.com/gimli-rs/gimli/pull/815)

* Removed `#[non_exhaustive]` from `read::RegisterRule`.
[#852](https://github.com/gimli-rs/gimli/pull/852)

* Added `debug_macinfo` and `debug_macro` to `read::DwarfPackageSections`
and `read::DwarfPackage`.
[#862](https://github.com/gimli-rs/gimli/pull/862)

* Added `debug_names` to `read::DwarfSections` and `read::Dwarf`.
[#847](https://github.com/gimli-rs/gimli/pull/847)

### Changed

* Increased minimum supported Rust version (MSRV) to 1.88.0.
[#812](https://github.com/gimli-rs/gimli/pull/812)
[#840](https://github.com/gimli-rs/gimli/pull/840)

* Optimised unsigned LEB128 reading.
[#795](https://github.com/gimli-rs/gimli/pull/795)

* Relaxed the encoding requirements for `write::LineProgram`.
[#800](https://github.com/gimli-rs/gimli/pull/800)

* Changed `write::LineProgram` to automatically start sequences.
[#745](https://github.com/gimli-rs/gimli/pull/745)

* Changed the `write` module to use FNV for hashes.
[#827](https://github.com/gimli-rs/gimli/pull/827)
[#830](https://github.com/gimli-rs/gimli/pull/830)

* Changed conversion to preserve `DW_FORM_implicit_value` and `DW_FORM_flag_present`.
[#834](https://github.com/gimli-rs/gimli/pull/834)

* Changed the `Debug` implementation for `read::RelocateReader`.
[#849](https://github.com/gimli-rs/gimli/pull/849)

* Changed `read::UnwindTableRow::register` to return `None` for default rules.
Changed `read::UnwindTableRow::registers` to omit default rules.
[#859](https://github.com/gimli-rs/gimli/pull/859)

* Improved support for writing attributes in older DWARF versions.
[#864](https://github.com/gimli-rs/gimli/pull/864)

* Optimised parsing for failure paths in `read::UnwindSection::cie_from_offset`
and `read::UnwindSection::partial_fde_from_offset`.
[#866](https://github.com/gimli-rs/gimli/pull/866)

### Added

* Added `RiscV::FP`, `RiscV::AFRC`, and vector registers.
[#802](https://github.com/gimli-rs/gimli/pull/802)
[#803](https://github.com/gimli-rs/gimli/pull/803)

* Added `write::Dwarf::convert` and related APIs.
[#745](https://github.com/gimli-rs/gimli/pull/745)
[#816](https://github.com/gimli-rs/gimli/pull/816)
[#817](https://github.com/gimli-rs/gimli/pull/817)
[#818](https://github.com/gimli-rs/gimli/pull/818)
[#819](https://github.com/gimli-rs/gimli/pull/819)
[#822](https://github.com/gimli-rs/gimli/pull/822)
[#823](https://github.com/gimli-rs/gimli/pull/823)
[#824](https://github.com/gimli-rs/gimli/pull/824)
[#826](https://github.com/gimli-rs/gimli/pull/826)
[#828](https://github.com/gimli-rs/gimli/pull/828)
[#829](https://github.com/gimli-rs/gimli/pull/829)

* Added `read::EntriesRaw::read_attribute_inline` and `read::EntriesRaw::read_attributes`.
[#838](https://github.com/gimli-rs/gimli/pull/838)

* Added `no_std` support for the `write` feature.
[#855](https://github.com/gimli-rs/gimli/pull/855)

* Added `read::DebugNames`.
[#847](https://github.com/gimli-rs/gimli/pull/847)

* Added `write::Expression::as_raw`.
[#863](https://github.com/gimli-rs/gimli/pull/863)

--------------------------------------------------------------------------------

## 0.32.3

Released 2025/09/13.
Expand Down
4 changes: 2 additions & 2 deletions Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "gimli"
version = "0.32.3"
version = "0.33.0"
categories = ["development-tools::debugging", "development-tools::profiling", "parser-implementations"]
description = "A library for reading and writing the DWARF debugging format."
documentation = "https://docs.rs/gimli"
Expand Down Expand Up @@ -32,7 +32,7 @@ core = { version = "1.0.0", optional = true, package = "rustc-std-workspace-core
alloc = { version = "1.0.0", optional = true, package = "rustc-std-workspace-alloc" }

[dev-dependencies]
criterion = "0.7.0"
criterion = "0.8.0"
test-assembler = "0.1.3"

[features]
Expand Down