In our project, we group related targets together in folders. When using syncedFolder it is removing the folders structure and naming the folder for the full path.
Expected
Previously it would produce the following group structure. The full folder structure was preserved by adding Modules to the fileGroups.
Using syncedFolder it was expected that the project would have the same structure, the only change would be that Sources would change from the group to a folder.
Actual
It creates a folder with the name Modules/Example/Sources regardless of whether fileGroups is set or not.
When Modules is added to fileGroups, it also adds groups for Modules, Example, and Sources.
Steps to reproduce
#!/bin/bash
# Create a folder for the project
mkdir -p example-project
cd example-project
# Create the folder structure and sources
mkdir -p Modules/Example/Sources
touch Modules/Example/Sources/main.swift
# Create the project.yml file
cat > project.yml << 'EOF'
name: Example
targets:
example:
platform: iOS
type: framework
sources:
- path: "Modules/Example/Sources"
type: syncedFolder
fileGroups:
- Modules
EOF
xcodegen
In our project, we group related targets together in folders. When using
syncedFolderit is removing the folders structure and naming the folder for the full path.Expected
Previously it would produce the following group structure. The full folder structure was preserved by adding
Modulesto thefileGroups.Using
syncedFolderit was expected that the project would have the same structure, the only change would be thatSourceswould change from the group to a folder.Actual
It creates a folder with the name
Modules/Example/Sourcesregardless of whetherfileGroupsis set or not.When
Modulesis added tofileGroups, it also adds groups forModules,Example, andSources.Steps to reproduce