Parse iOS Assets.car into per-asset images

Open
#1,429 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
5/5
Estimated time
Over a week
Newbie friendliness
35/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Active
Tech stack
ios, macos, rust, typescript

Research direction

Start in packages/cli/src/commands/build/upload.ts around the documented Assets.car limitation. Compare the current upload flow with commit 591f1bba and the legacy Rust CLI's CoreUI-based path, including its Apple Silicon constraint. Done means iOS Assets.car uploads expose per-asset images for preprod size analysis without breaking supported upload platforms.

Written by the indexing model from the issue text.

Description

jared

build upload currently skips iOS Assets.car asset-catalog parsing, so the server only sees the raw .car instead of a per-image breakdown. That gap is called out as a ship-blocker for preprod size analysis.

Current behavior

  • Docs in packages/cli/src/commands/build/upload.ts state: "iOS Assets.car asset catalogs are not parsed into per-asset images."
  • Commit 591f1bba intentionally diverged from the legacy Rust CLI: it skipped .car parsing (which used native macOS CoreUI / apple_catalog_parsing) so iOS upload could ship on all platforms without an Apple Silicon gate.
  • Legacy sentry-cli gated iOS upload to Apple Silicon because that CoreUI path required it; customers typically build + upload from macOS CI runners.

Gap

  • Without per-asset catalog expansion, preprod size analysis cannot break down iOS asset catalogs the way the legacy path did.

Raised by Trevor Elkins.

Requested by bete.

--

View Junior Session [Sentry]

Dominant language
TypeScript
Stars
121
Forks
14
Avg merge
22h 3m
Merged PRs (30d)
94

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from getsentry/cli

All issues in getsentry/cli

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.