dep: Bump publicly exposed dependencies#976
Conversation
This is just the version bump part of #960. It also updates `scroll` to 0.13.0 to keep it in sync with `goblin`. This update requires a major bump because `goblin` types are publicly exported by `symbolic`.
| type DwarfInner<'a> = gimli::read::Dwarf<Slice<'a>>; | ||
|
|
||
| type Die<'d, 'u> = gimli::read::DebuggingInformationEntry<'u, 'u, Slice<'d>, usize>; | ||
| type Die<'d, 'u> = gimli::read::DebuggingInformationEntry<Slice<'d>, usize>; |
There was a problem hiding this comment.
| type Die<'d, 'u> = gimli::read::DebuggingInformationEntry<Slice<'d>, usize>; | |
| type Die<'d> = gimli::read::DebuggingInformationEntry<Slice<'d>, usize>; |
Seems like 'u is never used.
There was a problem hiding this comment.
TIL that you're allowed to have unused lifetime parameters in type aliases, but not type definitions (and unused type parameters aren't allowed in either).
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit a90289b. Configure here.
| // See a few more examples of broken ranges here: | ||
| // https://github.com/emscripten-core/emscripten/issues/15552 | ||
| Err(gimli::Error::InvalidAddressRange) => None, | ||
| Err(gimli::Error::InvalidCfiSetLoc(_)) => None, |
There was a problem hiding this comment.
Wrong error variant caught for broken range lists
High Severity
The error variant was changed from gimli::Error::InvalidAddressRange to gimli::Error::InvalidCfiSetLoc(_), but these are semantically unrelated. InvalidCfiSetLoc relates to Call Frame Information parsing, not address range validation. This catch clause exists to gracefully handle broken WASM debug files from emscripten with inverted ranges (begin > end), as the comment explains. Since range list iteration will never produce an InvalidCfiSetLoc error, this match arm is dead code and those broken files will now trigger unhandled errors instead of being silently skipped.
Reviewed by Cursor Bugbot for commit a90289b. Configure here.
| Err(gimli::Error::InvalidAddressRange) => None, | ||
| Err(gimli::Error::InvalidCfiSetLoc(_)) => None, |
There was a problem hiding this comment.
In 0.32, the InvalidAddressRange error variant is returned only in the evaluate function:
https://github.com/gimli-rs/gimli/blob/71720829ef6f61ea5b0d4e1b9315534d2c8b9264/src/read/cfi.rs#L2325-L2327
However, in 0.33, this variant is removed and InvalidCfiSetLoc is now returned at the same location:
https://github.com/gimli-rs/gimli/blob/8e70a8accfef4472dd09dbcd7cdbfdefe4803c6b/src/read/cfi.rs#L2369-L2371


This updates some dependencies which have a semver impact because some of their types are publicly exposed:
gimli: 0.32.3 -> 0.33.0goblin: 0.8.0 -> 0.10.5scroll: 0.12.0 -> 0.13.0uuid: 1.3.0 -> 1.23.0The
goblinpart of this is just the depedency bump and minor adjustment from #960, without the use of the new feature.