Skip to content

docs: explain what mapping.txt is and how to retrace a release crash #193

Closed

Description

@compot-dev

docs/testing.md has only a short note on mapping.txt (#183). Explain it properly:

  • What it is: R8 renames classes, fields and methods in release builds (com.openipc.decoder.DecodePlanner → a.u, capacity → a) and keeps line numbers only through the map. A crash from a release reads like at a.u.a(SourceFile:12) until it is retraced.
  • What is in the file: the R8 version, min_api and pg_map_id (a hash that ties it to one build) in the header, then original -> obfuscated for every class, field and method with line ranges, including library classes. It holds no secrets (the code is open), and devices don't need it.
  • Which file to use: the mapping of the same build. That is decoder-v2-mapping.txt in latest for the current build, or for an older build the …-mapping artifact of the CI run of that commit (find the run by the hash shown under Exit or in /stats.json; artifacts expire after the repository's retention period). This depends on Releases: keep only latest and test pre-releases, no per-version releases #194.
  • How: retrace, with an example, before and after.

Activity

  1. added 3 commits that reference this issue on Oct 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions