Skip to content

fix: recognize Icon Composer .icon file type - #1162

Open
jsj wants to merge 1 commit into
tuist:mainfrom
jsj:jsj/icon-composer-file-type
Open

fix: recognize Icon Composer .icon file type#1162
jsj wants to merge 1 commit into
tuist:mainfrom
jsj:jsj/icon-composer-file-type

Conversation

@jsj

@jsj jsj commented Jul 30, 2026

Copy link
Copy Markdown

Short description 📝

This change recognizes Xcode 26 Icon Composer .icon bundles during file-reference generation.

Solution 📦

Xcode maps the icon extension to folder.iconcomposer.icon.

XcodeProj did not contain this mapping. Thus, Tuist-generated projects created PBXFileReference entries without a lastKnownFileType value for AppIcon.icon.

Local Xcode inferred the file type. Xcode Cloud did not infer the file type. It treated the bundle as a plain folder.

As a result, actool received only Assets.xcassets. It did not find AppIcon.

This change adds the missing mapping to Xcode.filetype(extension:).

Implementation 👩‍💻👨‍💻

  • This change maps .icon to folder.iconcomposer.icon.
  • A regression test covers this mapping.
  • swift test --filter XcodeTests passes.
  • The affected project archives and exports an IPA locally with this mapping.
  • Xcode Cloud now includes AppIcon.icon in the asset-compiler inputs.
  • The project team handles a separate resource-ownership error in that repository.

@dosubot dosubot Bot added the size:XS This PR changes 0-9 lines, ignoring generated files. label Jul 30, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

size:XS This PR changes 0-9 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant