Skip to content

Conversation

@romtsn
Copy link
Member

@romtsn romtsn commented Dec 23, 2025

Part of #40

Unsure if we actually have to handle such weird inputs, but I guess we better be on the safe side and parse those correctly.

R8 Retrace Test Coverage

  • Inlining (13 tests) - inline frames, line numbers, source files, rewriteFrame rules
  • Ambiguous Methods (21 tests) - multiple methods → same obfuscated name, alternatives
  • Outlines (4 tests) - outline callsites, nested outlines, inline-in-outline
  • Synthetic/Lambda (3 tests) - lambda methods, synthetic bridges
  • Source File Edge Cases (7 tests) - colons, unicode, multiple dots, synthesized names
  • Line Number Handling (10 tests) - spans, preambles, invalid ranges, missing lines
  • Exception Handling (6 tests) - obfuscated exceptions, suppressed, circular refs
  • Method Overloading (4 tests) - overloads with/without ranges
  • Special Formats (4 tests) - Java 9+ modules, logcat format, auto-detect

@romtsn romtsn requested a review from loewenheim December 23, 2025 16:14

This note documents, **one-by-one**, what still needs fixing in the crate (not in the fixtures) to make the remaining tests pass.

## 1) `test_colon_in_file_name_stacktrace`
Copy link
Member Author

Choose a reason for hiding this comment

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

needs fixing

- In `parse_frame`, split `file:line` using the **last** colon (`rsplit_once(':')`) so file names can contain `:` (Windows paths and this fixture).
- Treat an empty or non-numeric suffix after the last colon as “no line info” (line `0`) instead of rejecting the frame.

## 2) `test_file_name_extension_stacktrace`
Copy link
Member Author

Choose a reason for hiding this comment

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

skip this

- remap it,
- emit with the same prefix.

## 3) `test_class_with_dash_stacktrace`
Copy link
Member Author

Choose a reason for hiding this comment

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

skip this

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.

2 participants