Skip to content

Conversation

@pepicrft
Copy link
Contributor

Targets' buildable folders support exceptions, which are a mechanism to:

  • Exclude files
  • Define configuration overrides (e.g. compiler flags)

This PR adds the data structure changes to add support for these features in our generated projects.

@pepicrft pepicrft requested a review from a team September 20, 2025 08:05
@pepicrft pepicrft self-assigned this Sep 20, 2025
@pepicrft pepicrft requested review from cschmatzler and fortmarek and removed request for a team September 20, 2025 08:05
@dosubot dosubot bot added size:M This PR changes 30-99 lines, ignoring generated files. enhancement New feature or request labels Sep 20, 2025
Copy link
Member

@fortmarek fortmarek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

@dosubot dosubot bot added the lgtm This PR has been approved by a maintainer label Sep 22, 2025
Copy link

@apps4everyone apps4everyone left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thx

/// - path: The absolute path to the buildable folder.
/// - exceptions: The set of exceptions (such as excluded files or custom compiler flags) for the folder.
/// - resolvedFiles: The list of files resolved from the folder, each file optionally having compiler flags.
public init(path: AbsolutePath, exceptions: BuildableFolderExceptions, resolvedFiles: [BuildableFolderFile]) {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe it's possible to have a default init (as right now) and a convenience one with the new params? or make them optional with fallback values in the init? This would not beak all projects

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is not an interface you directly interact with in your Project.swift manifests if that's what you're worried about

@pepicrft pepicrft merged commit 3e73da4 into main Sep 24, 2025
7 checks passed
@pepicrft pepicrft deleted the buildable-folder-exceptions branch September 24, 2025 11:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request lgtm This PR has been approved by a maintainer size:M This PR changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants