Skip to content

feat(symbols): add Flutter (Dart AOT) symbol upload (--type flutter)#756

Open
abelonogov-ld wants to merge 10 commits into
mainfrom
andrey/flutter-symbols
Open

feat(symbols): add Flutter (Dart AOT) symbol upload (--type flutter)#756
abelonogov-ld wants to merge 10 commits into
mainfrom
andrey/flutter-symbols

Conversation

@abelonogov-ld

Copy link
Copy Markdown
Contributor

Summary

  • Add ldcli symbols upload --type flutter (aliases: dart). Parses Flutter ELF app.<arch>.symbols files with the Go stdlib debug/elf + debug/dwarf, extracts the Dart build id from .note.gnu.build-id and the DWARF debug info, and compiles them into the compact .dartmap symbol map (reusing the dsymmap codec from the Apple work, already on main).
  • Uploads to both lanes: Symbols Id (keyed by build id) and Version (version + platform). Also wires Flutter into symbols generate for local .dartmap output.

Test plan

  • go test ./internal/symbols/flutter/... ./cmd/symbols/...
  • ldcli symbols upload --type flutter --path <split-debug-info dir> and verify maps land in both lanes

Pairs with the backend Flutter enhancer (observability#1500) and Flutter SDK (observability-sdk#691) PRs.

Made with Cursor

abelonogov-ld and others added 7 commits July 21, 2026 19:16
Rename the symbol-map package/format from ldsm to dsymmap (magic DSMP),
append the .dsymmap extension to the apple upload key, and accept
apple/ios/dsym aliases for the --type flag.

Co-authored-by: Cursor <cursoragent@cursor.com>
Parse Flutter ELF app.<arch>.symbols files (debug/elf + debug/dwarf), extract
the Dart build id (.note.gnu.build-id) and DWARF, and compile them into the
compact .dartmap symbol map (dsymmap codec). Upload to the Symbols Id lane
(keyed by build id) and the Version lane (version + platform), and support
local generation via `symbols generate`.

Co-authored-by: Cursor <cursoragent@cursor.com>
Parse Flutter ELF app.<arch>.symbols files (debug/elf + debug/dwarf), extract
the Dart build id (.note.gnu.build-id) and DWARF, and compile them into the
compact .dartmap symbol map (dsymmap codec). Upload to the Symbols Id lane
(keyed by build id) and the Version lane (version + platform), and support
local generation via `symbols generate`.

Co-authored-by: Cursor <cursoragent@cursor.com>
…y/ldcli into andrey/flutter-symbols

* 'andrey/flutter-symbols' of ssh://github.com/launchdarkly/ldcli:
  feat(symbols): add Flutter (Dart AOT) symbol upload (--type flutter)
  panic fix
  fix demagling
  refactor(symbols): rename ldsm to dsymmap + apple type aliases
  apple dsym ingest
@abelonogov-ld
abelonogov-ld requested a review from Vadman97 July 24, 2026 01:22
Comment thread cmd/symbols/flutter_upload.go Outdated

@cursor cursor Bot left a comment

Copy link
Copy Markdown

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 using default effort and found 1 potential issue.

Fix All in Cursor

❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, have a team admin enable autofix in the Cursor dashboard.

Reviewed by Cursor Bugbot for commit a0abe1b. Configure here.

Comment thread internal/symbols/flutter/elf.go
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.

1 participant