Skip to content

[5.7] Clean up the code and some of the API of compiling plugins, and improve persistence of cached compiler outputs (#4290 & #4299) #4309

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

Merged
merged 2 commits into from
Apr 19, 2022

Conversation

abertelrud
Copy link
Contributor

@abertelrud abertelrud commented Apr 19, 2022

This is the 5.7 nomination of #4290 and the follow-on Windows fix #4299. Those PRs contain the details.

Summary

Provide more information to clients of libSwiftPM even when a compiled plugin doesn't have to be recompiled because nothing has changed since the last time it was. Also make the API a bit cleaner.

…ve persistence of cached compiler outputs (swiftlang#4290)

Clients now get the command line and compiler output even in the case of failure, and also when the plugin doesn't have to be recompiled because nothing changed (previously this information was lost).  This is done by serializing a proper struct to JSON rather than just storing the hexadecimal representation of the configuration hash.

Callers also have control over the name of the temporary directory to represent the plugin, rather than always having it be the last path component of the sources directory.

(cherry picked from commit 09d77a7)
@abertelrud abertelrud self-assigned this Apr 19, 2022
@abertelrud
Copy link
Contributor Author

@swift-ci please smoke test

@abertelrud abertelrud changed the title [5.7] Clean up the code and some of the API of compiling plugins, and improve persistence of cached compiler outputs (#4290) [5.7] Clean up the code and some of the API of compiling plugins, and improve persistence of cached compiler outputs (#4290 & #4299) Apr 19, 2022
@tomerd tomerd added the 5.7 label Apr 19, 2022
@abertelrud abertelrud merged commit b92e0e9 into swiftlang:release/5.7 Apr 19, 2022
@abertelrud abertelrud deleted the eng/09d77a7+f9f74f1-5.7 branch April 19, 2022 21:00
Sign up for free to 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.

2 participants