Repository navigation
chore(release): 0.8.0 - #77
Conversation
Directory input for --type elf, IL2CPP mapping validation, bounded-memory uploads and source-map handling, and four fixes found by the new broken-file tests. A minor bump: it adds a feature and deliberately changes a few exit codes (corrupt IL2CPP map 0 -> 11, missing ELF path 11 -> 10). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
There was a problem hiding this comment.
Release prep review of ea9c326 (0.7.13 → 0.8.0). Diff is Cargo.toml / Cargo.lock / CHANGELOG.md only; the shipping behavior is already on main (#70, #72–#76). Reviewed against those callers, the exit-code contract, bugsee-cli update's per-major pointer, and dist plan notes parsing — not the three-line bump in isolation.
Findings
No P0–P3 issues.
Checked and not reporting: empty [Unreleased] + ## [0.8.0] - 2026-10-07 is the same cargo-dist shape as 0.7.13; announcement_changelog is exactly the 0.8.0 section (not 0.7.13). Version is 0.8.0 in Cargo.toml, Cargo.lock, and cargo metadata. Notes cover every commit since v0.7.13, and the exit-code / scan / validation claims match the code (input_not_found for a missing path or empty directory, input_invalid for scan I/O and a corrupt IL2CPP map including dry-run, empty map still warns and succeeds, \x7fELF gate, nil LC_UUID skip, 1 MiB plist cap, nameless Podfile.lock line dropped). CI is green (test / e2e / clippy / fmt / dist plan on all platforms). v0.7.13 is already live on GitHub, npm, and cli/v0.x/version.txt, so this does not skip a published release. Not tagging here is correct.
0.8.0 is the right bump: a feature (ELF directories) plus deliberate exit-code changes. A 1.0.0 would also stop cli/v0.x/version.txt auto-update, which this project does not do inside a major — Gradle / iOS agents and bugsee-cli update will pick 0.8.0 up, which is the intended channel. Integrator floors still move after the tag, per CLAUDE.md.
Overall risk: Low
Merge recommendation: Approve
Most important issues to fix
None.
Positive observations
- Changelog is specific where integrators care (exit 10 vs 11, dry-run validation, mmap SIGBUS caveat for a live
merged_native_libstree). - Same release shape as #68, and
dist planalready producedannouncement_title: 0.8.0 - 2026-10-07.
Sent by Cursor Automation: Bugsee code review


Release prep, same shape as #68:
Cargo.toml+Cargo.lockversion andCHANGELOG.md([Unreleased]→[0.8.0] - 2026-10-07, with a fresh empty[Unreleased]). Nothing else.Why 0.8.0 (minor) rather than 0.7.14
It adds a feature and deliberately changes a few exit codes, which integrators branch on:
--type il2cpp-linemap: a corruptLineNumberMappings.jsonnow exits 11 (was 0, uploading garbage).--type elf: a missing path now exits 10 (was 11); a corrupt zip still aborts, now before anything uploads; a directory with no libraries exits 10; an I/O error scanning a directory exits 11.dsym/--type dsym/--type elfno longer report a nil-UUID Mach-O or a non-ELF file as a symbol.What ships (all already on
main: #70, #72–#76)--type elfaccepts directories (and multiple paths), keyed by GNU build-id (debug-files upload --type elf: accept a directory of .so files (walk recursively, key by GNU build-id) #69).upload build661 → 32 MB, ELF scan 564 → 36 MB, 89 MB source map inject 298 → 6 MB); source maps streamed with struson;sourcemaps injectedits bundles in place and refuses an unusable map before touching the bundle.After merge
Tagging
v0.8.0runsrelease.ymland chains the npm publish and the S3 mirror, which cannot be taken back, so I'm not tagging as part of this PR. Per CLAUDE.md the integrators' version floors move only after the release is published.🤖 Generated with Claude Code