Skip to content

Conversation

@owenv
Copy link
Collaborator

It turns out that SwiftPM will allow a package to have targets/products whose names only differ in case (and this is somewhat common in real packages), which could cause TARGET_TEMP_DIR collisions and build failures on case-insensitive filesystems like APFS on macOS. Introduce a TARGET_NAME_DISCRIMINANT which is used to differentiate these only when the collision exists.

Notably this isn't enough to solve the issue of colliding products in every case, but it's a necessary prerequisite.

Closes https://github.com/MobileNativeFoundation/XCLogParser.git

@owenv
Copy link
CollaboratorAuthor

@swift-ci test

Copy link
Collaborator

@jakepetroulesjakepetroules left a comment

Choose a reason for hiding this comment

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

Case insensitive filesystems were a mistake. :)

@owenv
Copy link
CollaboratorAuthor

@swift-ci test

@owenvowenv merged commit f4a8141 into swiftlang:mainDec 16, 2025
94 of 95 checks passed
@daveinglis
Copy link
Contributor

FYI, I believe this made our paths longer which now are causing some test failures in swiftPM...

@daveinglis
Copy link
Contributor

daveinglis commented Dec 17, 2025

Note, swiftlang/swift-package-manager#9268 should fix it (using withKnownIssue) so hopefully we can get this in soon

Sign up for freeto join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants

@owenv@daveinglis@jakepetroules