-
Notifications
You must be signed in to change notification settings - Fork 419
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
Enable MemberImportVisibility check on all targets #2142
Conversation
.github/workflows/main.yml
Outdated
linux_6_0_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable" | ||
linux_nightly_6_0_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable" | ||
linux_nightly_main_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable" | ||
linux_6_0_arguments_override: "--explicit-target-dependency-import-check error -Xswiftc -require-explicit-sendable -Xswiftc -enable-upcoming-feature -Xswiftc MemberImportVisibility" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Any reason we can't just add this to our default settings in the manifest?
Line 48 in e390c85
let defaultSwiftSettings: [SwiftSetting] = [ |
f6d98dc
to
fe42d6f
Compare
Package.swift
Outdated
for target in package.targets { | ||
var settings = target.swiftSettings ?? [] | ||
settings.append(.enableUpcomingFeature("MemberImportVisibility")) | ||
target.swiftSettings = settings | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we just add this directly to the defaultSwiftSettings
above so that they're all in the same place.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The intention here is that many of the core Swift on Server repositories have a block of their package manifest which a common structure which can be easily be modified with a script. This block would be used to insert settings which we wish to apply across all repositories.
fe42d6f
to
8450297
Compare
8450297
to
0ecbb57
Compare
0b4cf0e
to
c1c96ac
Compare
c1c96ac
to
1012986
Compare
Enable MemberImportVisibility check on all targets. Use a standard string header and footer to bracket the new block for ease of updating in the future with scripts.