-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Replace SwiftDriverExecutor with SPMSwiftDriverExecutor #2946
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
Conversation
@swift-ci test |
@swift-ci please test self hosted |
1 similar comment
@swift-ci please test self hosted |
@swift-ci please smoke test |
|
||
try job.verifyInputsNotModified(since: recordedInputModificationDates, | ||
fileSystem: fileSystem) | ||
assert(!job.requiresInPlaceExecution, |
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.
I don't see how this can fail now, but it seems fragile. Should we throw an error here rather than crash, given the likelihood that someone can slip an argument through to the Swift driver that would cause in-place execution? Crashing SwiftPM seems unfortunate there.
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.
Good idea! I changed this to throw an error instead
SPM does not need or use the full functionality of SwiftDriverExecutor, which we're planning to move to a separate library so that the SwiftDriver planning lib no longer depends on LLBuild. Introduce a miinimal SPMSwiftDriverExecutor for the processes the integrated driver needs to launch during planning.
0fd6eca
to
2248570
Compare
@swift-ci smoke test |
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.
Thanks!
@DougGregor do you mind helping merge this when you have a chance? Thanks! |
SPM does not need or use the full functionality of SwiftDriverExecutor, which we're planning to move to a separate library so that the SwiftDriver planning library no longer depends on LLBuild. Introduce a minimal SPMSwiftDriverExecutor for the processes the integrated driver needs to launch during planning.