Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Filter out empty auxiliary groups #6142

Merged
merged 1 commit into from
Apr 2, 2024
Merged

Filter out empty auxiliary groups #6142

merged 1 commit into from
Apr 2, 2024

Commits on Apr 1, 2024

  1. Filter out empty auxiliary groups

    Partially resolves: #6141
    
    - #6057 introduced a `Cache` group to help distinguish cached artifacts from system libraries
    - This didn't account for cases where the cache or cloud features aren't in use thus causing an additional `Cache` group to appear in all generated projects
    - As a short term mitation we can filter out empty "auxiliary" groups at the end of the project generation steps
    - This includes groups Xcode doesn't have by default including the `Frameworks` group which it only adds if a system library dependency is added
    
    Notes:
    
    - The `Product` group isn't treated as an auxiliary group as Xcode always has this group in the generated `pbxproj`, the UI however hides it when empty
    - A longer term solution would be extend the project/target API to allow the cache mapper to add groups instead of `TuistGenerator` having awareness about the cache feature
    
    Test Plan:
    
    - Generate the fixture `ios_app_with_tests`
    - Verify the `Frameworks` and `Cache` groups are no longer present
    - Generate the fixture `ios_app_with_sdk`
    - Verify the `Frameworks` group is still present (as there are system library dependencies)
    - Verify the `Cache` group is no longer present
    kwridan committed Apr 1, 2024
    Configuration menu
    Copy the full SHA
    992ff6f View commit details
    Browse the repository at this point in the history