Skip to content

fix(mas): declare exempt encryption (skip App Store export-compliance prompt)#187

Open
oratis wants to merge 1 commit into
mainfrom
claude/mas-export-compliance
Open

fix(mas): declare exempt encryption (skip App Store export-compliance prompt)#187
oratis wants to merge 1 commit into
mainfrom
claude/mas-export-compliance

Conversation

@oratis

@oratis oratis commented Jun 20, 2026

Copy link
Copy Markdown
Owner

The first Mac App Store submission tripped the export-compliance flow: ASC showed "missing export compliance" on the build, and the France question routed to a heavyweight document upload (CCATS-style).

Markup's only cryptography is standard HTTPS/TLS (via reqwest rustls-tls), used solely to talk to GitHub — i.e. exempt encryption. The iOS app already declares this with ITSAppUsesNonExemptEncryption = NO; the Tauri Mac build didn't.

Fix (scripts/build-mas.sh, before signing):

  • Set ITSAppUsesNonExemptEncryption = false in the .app Info.plist → App Store auto-clears export compliance (no per-upload prompt, no France declaration).
  • Add optional MAS_BUILD_NUMBER to override CFBundleVersion (needed to re-upload the same marketing version with a higher build number).

Verified on a fresh universal build (1.0.1 build 2): flag present, still x86_64 + arm64, signed/sandboxed/profiled, codesign --verify passes. macOS-only; no effect on the direct DMG.

🤖 Generated with Claude Code

App Store export compliance flagged the MAS upload ("missing export compliance")
and the France branch demanded a CCATS-style document upload. Markup's only
crypto is standard HTTPS/TLS (rustls — exempt), so set
ITSAppUsesNonExemptEncryption=false in the MAS bundle's Info.plist before
signing: the App Store then auto-clears export compliance with no prompt and no
France docs, matching the iOS app.

Also add an optional MAS_BUILD_NUMBER env that overrides CFBundleVersion —
needed when re-uploading the same marketing version (the store requires a
strictly higher build number).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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