-
Notifications
You must be signed in to change notification settings - Fork 110
Centralize dependency diagnostics in ValidateDependencies
action
#675
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
base: main
Are you sure you want to change the base?
Centralize dependency diagnostics in ValidateDependencies
action
#675
Conversation
Instead of emitting diagnostics directly, individual tasks emit .dependencies files which are read by a per-target action which aggregates them. This avoids duplication of diagnostics across tasks. rdar://156174696
@swift-ci please test |
contents: ByteString( | ||
JSONEncoder(outputFormatting: .sortedKeys).encode(validationInfo) | ||
) | ||
) |
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'm a bit ambivalent on whether the validation action should just be directly consuming the trace files. It seems right for the Clang action to know about the implementation details here, but on the other hand it does seem a tiny bit wasteful to just process these files into other files?
@@ -493,7 +494,7 @@ fileprivate struct DependencyValidationTests: CoreBasedTests { | |||
TestStandardTarget( | |||
"CoreFoo", type: .framework, | |||
buildPhases: [ | |||
TestSourcesBuildPhase(["CoreFoo.m"]), | |||
TestSourcesBuildPhase(["CoreFoo.m", "CoreBar.m"]), |
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.
This makes it so that the test would see duplicate diagnostics in the old implementation which this PR then fixes.
@swift-ci please test |
Linux jobs are failing with
|
Also same issue on Windows (TIL on Windows, the testing output uses |
The toolchains in CI are currently breaking this test.
@swift-ci please test |
From the cmake job:
I guess I need to update the configs for that. |
@swift-ci please test |
Instead of emitting diagnostics directly, individual tasks emit .dependencies files which are read by a per-target action which aggregates them. This avoids duplication of diagnostics across tasks.
rdar://156174696