-
Notifications
You must be signed in to change notification settings - Fork 1.4k
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
deprecate LinuxMain.swift #3053
Conversation
@abertelrud @neonichu looking for feedback on approach. note the following TODOs listed ^^ |
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.
Great stuff, overall LGTM. 👍
On a somewhat related note, I really wish SwiftPM truly supported the newly-introduced |
Haha I'd just started doing this on Friday! I'll take a look at the PR |
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.
LGTM!
@tomerd one thing that's just popped into my head - currently if you run |
LGTM, but as mentioned inline, we have to be careful about changing the testability behavior. SwiftPM itself started relying on it, so other packages might have, too. |
a1c8cea
to
c16c62c
Compare
bd30771
to
1127a39
Compare
@swift-ci please smoke test |
1127a39
to
cb8cc2a
Compare
@swift-ci please smoke test |
Linux error looks related:
|
@swift-ci please smoke test |
Oh, there's an explicit |
yes, but I think we should have better backwards compatibility story for such use cases...added one |
motivation: Swift 5.1 introduced the --enable-test-discovery flag which instructs SwiftPM to discover tests instead of relying on a test manifest file named LinuxMain.swift. This functionality has been pretty well adopted and we are making it the default changes: * deprecate --enable-test-discovery flag * deprecate --generate-linuxmain flag * automatically detect tests on non-darwin platforms * support "XCTMain.swift", "LinuxMain.swift" as escape hatch when test discovery is not appropriate. This files take priority. * `package init` no longet generate LinuxMain.swift * add and adjust tests rdar://problem/64197288 rdar://problem/59534310 rdar://problem/62895076
0b3e891
to
5716ee4
Compare
@swift-ci please smoke test |
5716ee4
to
156d877
Compare
@swift-ci please smoke test |
@abertelrud @neonichu this is ready for final review and merging |
LGTM, thanks 👍 |
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.
Looks good to me as well. Thanks!
motivation: Swift 5.1 introduced the --enable-test-discovery flag which instructs SwiftPM to discover tests instead of relying on a test manifest file named LinuxMain.swift. This functionality has been pretty well adopted and we are making it the default changes: * deprecate --enable-test-discovery flag * deprecate --generate-linuxmain flag * automatically detect tests on non-darwin platforms * support "XCTMain.swift", "LinuxMain.swift" as escape hatch when test discovery is not appropriate. This files take priority. * `package init` no longet generate LinuxMain.swift * add and adjust tests rdar://problem/64197288 rdar://problem/59534310 rdar://problem/62895076
motivation: Swift 5.1 introduced the --enable-test-discovery flag which instructs SwiftPM to discover tests instead of relying on a test manifest file named LinuxMain.swift. This functionality has been pretty well adopted and we are making it the default
changes:
package init
no longer generates LinuxMain.swiftTODO
- [ ] Make formal proposal before merging