Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: programming086/XcodeGen
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: master
Choose a base ref
...
head repository: yonaskolb/XcodeGen
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 2 commits
  • 6 files changed
  • 3 contributors

Commits on Apr 14, 2026

  1. Fix synced folder issues: configFiles duplicate, group insertion, and…

    … directory-level membershipExceptions (yonaskolb#1607)
    
    * Fix configFiles creating duplicate group inside synced folder
    
    When configFiles reference paths inside a synced folder source,
    getContainedFileReference() created a separate PBXGroup hierarchy
    that duplicated the PBXFileSystemSynchronizedRootGroup already
    managing those files.
    
    Skip group creation in getContainedFileReference when the file
    path falls inside an existing synced folder root.
    
    Fixes the same class of issue as yonaskolb#1602, but for configFiles
    rather than target sources.
    
    * Fix synced folder group duplication and directory-level membershipExceptions
    
    - Prevent rootGroups insertion for paths inside synced folders,
      avoiding duplicate PBXGroup alongside PBXFileSystemSynchronizedRootGroup
    - Recurse into non-included directories in findExceptions to list
      individual file paths instead of directory names, since Xcode does
      not recursively exclude directory contents from membershipExceptions
    
    Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
    
    * Update test: expect individual file paths instead of directory names in exceptions
    
    Xcode does not recursively exclude directory contents from
    membershipExceptions, so the correct behavior is to list individual
    files rather than directory names.
    
    Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
    
    * Use basePath instead of project.basePath for synced folder checks
    
    When XcodeGen is run with --project-directory, the computed basePath
    property accounts for the different output location. Using project.basePath
    would resolve paths incorrectly in that scenario.
    
    Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
    
    ---------
    
    Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
    AlexNsbmr and claude authored Apr 14, 2026
    Configuration menu
    Copy the full SHA
    df251b2 View commit details
    Browse the repository at this point in the history
  2. Update to 2.45.4

    yonaskolb committed Apr 14, 2026
    Configuration menu
    Copy the full SHA
    8d3d347 View commit details
    Browse the repository at this point in the history
Loading