Skip to content

fix(proguard): Accept mapping files without line number ranges#1898

Merged
romtsn merged 7 commits into
masterfrom
rz/fix/no-line-mappings
Mar 10, 2026
Merged

fix(proguard): Accept mapping files without line number ranges#1898
romtsn merged 7 commits into
masterfrom
rz/fix/no-line-mappings

Conversation

@romtsn
Copy link
Copy Markdown
Member

@romtsn romtsn commented Mar 10, 2026

Summary

  • Remove has_line_info() check that rejected valid ProGuard mapping files lacking line number ranges
  • Remove the NoLineInfo error variant that was no longer needed
  • Add integration test verifying class/method deobfuscation works without line ranges

ProGuard/R8 mapping files without line number ranges are still useful for deobfuscating class and method names. Previously these were rejected as malformed.

Fixes getsentry/sentry-java#5143

Test plan

  • Integration test test_no_line_info_mapping covers the full service path
  • Existing tests continue to pass

🤖 Generated with Claude Code

ProGuard/R8 mapping files that contain only class and method name
mappings (no line number ranges) are valid and can still deobfuscate
stacktraces. Previously these were rejected with "doesn't contain any
line mappings", which prevented deobfuscation entirely.

Fixes getsentry/sentry-java#5143

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@romtsn romtsn requested a review from a team as a code owner March 10, 2026 14:31
Comment thread crates/symbolicator-proguard/src/symbolication.rs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Comment thread crates/symbolicator-proguard/src/symbolication.rs Outdated
…chable

Stale cached entries or unexpected malformed messages (e.g. decompression
errors) would panic via unreachable!(). All malformed proguard files are
invalid regardless of the specific error message.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Copy link
Copy Markdown

@cursor cursor Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.

Comment thread crates/symbolicator-proguard/src/service.rs
romtsn and others added 4 commits March 10, 2026 18:09
Mapping files without line info were previously cached as Malformed errors.
Bumping the cache version ensures those stale entries are invalidated and
the files get re-processed correctly.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…chable

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@romtsn romtsn merged commit 140305c into master Mar 10, 2026
24 checks passed
@romtsn romtsn deleted the rz/fix/no-line-mappings branch March 10, 2026 22:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support for Arxan deobfuscation

2 participants