Add support for caching target json specs for Rust compilation.#2269
Add support for caching target json specs for Rust compilation.#2269sylvestre merged 4 commits intomozilla:mainfrom
Conversation
|
Could you please add a test here to make sure we don't regress? |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #2269 +/- ##
==========================================
- Coverage 30.91% 0 -30.92%
==========================================
Files 53 0 -53
Lines 20112 0 -20112
Branches 9755 0 -9755
==========================================
- Hits 6217 0 -6217
+ Misses 7922 0 -7922
+ Partials 5973 0 -5973 ☔ View full report in Codecov by Sentry. |
|
Hey @sylvestre, thanks a lot for your quick response! I've checked the integration-tests.yml file you gave me, but it only contains a single test for each platform/compiler, not for individual flags of the Rust compiler. I'm willing to add a test for the newly supported flag, but I need a good example on how sccache currently does per-flag tests. |
|
see https://github.com/mozilla/sccache/blob/main/tests/system.rs for example |
bb88bf5 to
616dd8c
Compare
|
@sylvestre I've rebased to latest |
|
Bump |
|
sorry, i missed your comment. CI started! |
616dd8c to
91b7c1c
Compare
|
@sylvestre Thanks for getting back to this PR. However, I'm still seeing "2 workflows awaiting approval" in GitHub. |
|
done |
@sylvestre There is currently not a single test in that file which exercises the Rust compiler. This is only done in I hope we're able to merge the few lines of this PR without requiring an entirely new test framework for the Rust compiler first. |
@ColinFinck we have proper Rustc testing: See: |
91b7c1c to
7e96849
Compare
@sylvestre These are different files. I already had a look at them, but the first one just contains very high-level tests of running Which is why I added a test for |
This has been implemented in a backward-compatible way:
--targetarguments specifying target names are still passed as arguments just like before.--targetarguments specifying a json file path have previously not been cached at all. The json file is now hashed like other external file dependencies.Fixes #2174