Skip to content

msvc: add support for Y-, YI, Zf flags#2663

Merged
sylvestre merged 1 commit into
mozilla:mainfrom
AJIOB:msvc-zf-support
Apr 7, 2026
Merged

msvc: add support for Y-, YI, Zf flags#2663
sylvestre merged 1 commit into
mozilla:mainfrom
AJIOB:msvc-zf-support

Conversation

@AJIOB
Copy link
Copy Markdown
Contributor

@AJIOB AJIOB commented Apr 2, 2026

Fixes #2662

@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented Apr 2, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 73.39%. Comparing base (f5edaf1) to head (abb7ed5).

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #2663   +/-   ##
=======================================
  Coverage   73.38%   73.39%           
=======================================
  Files          68       68           
  Lines       37340    37348    +8     
=======================================
+ Hits        27402    27410    +8     
  Misses       9938     9938           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@sylvestre sylvestre merged commit 619c72c into mozilla:main Apr 7, 2026
51 checks passed
@AJIOB AJIOB deleted the msvc-zf-support branch April 7, 2026 07:08
eleboucher pushed a commit to eleboucher/towonel that referenced this pull request May 22, 2026
….0) (#40)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [mozilla/sccache](https://github.com/mozilla/sccache) | minor | `0.14.0` → `0.15.0` |

---

### Release Notes

<details>
<summary>mozilla/sccache (mozilla/sccache)</summary>

### [`v0.15.0`](https://github.com/mozilla/sccache/releases/tag/v0.15.0)

[Compare Source](mozilla/sccache@v0.14.0...v0.15.0)

##### sccache 0.15.0

##### Summary

sccache 0.15.0 brings several notable improvements:

- **Multi-tier caching**: New support for layered caches with fallback and automatic backfilling between tiers ([#&#8203;2581](mozilla/sccache#2581)).
- **C++20 modules**: Initial (partial) support for compiling C++20 modules ([#&#8203;2516](mozilla/sccache#2516)).
- **Expanded MSVC support**: New flags handled including `d1nodatetime`, `await:strict` ([#&#8203;2617](mozilla/sccache#2617)), `Y-`, `YI`, `Zf` ([#&#8203;2663](mozilla/sccache#2663)), and the default `.pdb` extension for `/Fd` ([#&#8203;2621](mozilla/sccache#2621)).
- **New platforms**: loongarch64 support ([#&#8203;2669](mozilla/sccache#2669)) and `crt-static` for riscv64 musl targets ([#&#8203;2683](mozilla/sccache#2683)).
- **ccache interop**: Avoid double-caching when ccache is also installed in `PATH` ([#&#8203;2524](mozilla/sccache#2524)).
- **Cargo integration**: `CARGO_ENCODED_RUSTFLAGS` is now excluded from the env var hash to prevent spurious cache misses ([#&#8203;2651](mozilla/sccache#2651)), and dep-info handling correctly skips directories ([#&#8203;2676](mozilla/sccache#2676)).
- **Distribution**: cargo-binstall metadata for prebuilt binary installation ([#&#8203;2647](mozilla/sccache#2647)).
- **Reliability fixes**: GCS initialization ([#&#8203;2637](mozilla/sccache#2637)), Windows `Win32_Security` feature ([#&#8203;2627](mozilla/sccache#2627)), and retries for dist docker image builds ([#&#8203;2677](mozilla/sccache#2677)).

This release also includes a large round of clippy-driven cleanups and several CI fixes. Welcome to 7 new contributors!

##### Features

- Avoid double-caching when ccache is installed in PATH by [@&#8203;avikivity](https://github.com/avikivity) in [#&#8203;2524](mozilla/sccache#2524)
- partial c++20 module support by [@&#8203;TroyKomodo](https://github.com/TroyKomodo) in [#&#8203;2516](mozilla/sccache#2516)
- Add support for `d1nodatetime` & `await:strict` MSVC flags by [@&#8203;AJIOB](https://github.com/AJIOB) in [#&#8203;2617](mozilla/sccache#2617)
- msvc: Append the default .pdb extension for the /Fd argument by [@&#8203;ikolomiko](https://github.com/ikolomiko) in [#&#8203;2621](mozilla/sccache#2621)
- msvc: add support for Y-, YI, Zf flags by [@&#8203;AJIOB](https://github.com/AJIOB) in [#&#8203;2663](mozilla/sccache#2663)
- Implement multiple tiers caching with fallback and backfilling by [@&#8203;Felixoid](https://github.com/Felixoid) in [#&#8203;2581](mozilla/sccache#2581)
- feat: Add loongarch64 support by [@&#8203;wojiushixiaobai](https://github.com/wojiushixiaobai) in [#&#8203;2669](mozilla/sccache#2669)
- Add cargo-binstall metadata for prebuilt binary installation by [@&#8203;sylvestre](https://github.com/sylvestre) in [#&#8203;2647](mozilla/sccache#2647)

##### Fixes

- fix: add Win32\_Security feature to windows-sys dependency by [@&#8203;JulienCote](https://github.com/JulienCote) in [#&#8203;2627](mozilla/sccache#2627)
- Fix GCS initialization by [@&#8203;msuozzo](https://github.com/msuozzo) in [#&#8203;2637](mozilla/sccache#2637)
- fix: exclude `CARGO_ENCODED_RUSTFLAGS` from env var hash by [@&#8203;weihanglo](https://github.com/weihanglo) in [#&#8203;2651](mozilla/sccache#2651)
- fix: handle directories in dep-info source file hashing by [@&#8203;mmastrac](https://github.com/mmastrac) in [#&#8203;2676](mozilla/sccache#2676)

##### CI

- Revert "actions: add security audit workflow" by [@&#8203;sylvestre](https://github.com/sylvestre) in [#&#8203;2603](mozilla/sccache#2603)
- ci: fix artifact\_failure action when target dir does not exist by [@&#8203;sylvestre](https://github.com/sylvestre) in [#&#8203;2635](mozilla/sccache#2635)
- ci: set crt-static for riscv64 musl targets by [@&#8203;wojiushixiaobai](https://github.com/wojiushixiaobai) in [#&#8203;2683](mozilla/sccache#2683)
- Add retry for dists docker image build by [@&#8203;Felixoid](https://github.com/Felixoid) in [#&#8203;2677](mozilla/sccache#2677)

##### Clippy & cleanup

- clippy: fix cloned\_ref\_to\_slice\_refs lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2602](mozilla/sccache#2602)
- clippy: fix semicolon\_if\_nothing\_returned lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2601](mozilla/sccache#2601)
- clippy: fix cloned\_instead\_of\_copied lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2605](mozilla/sccache#2605)
- clippy: fix explicit\_into\_iter\_loop lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2616](mozilla/sccache#2616)
- clippy: fix unnecessary\_semicolon lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2615](mozilla/sccache#2615)
- clippy: fix manual\_string\_new lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2609](mozilla/sccache#2609)
- clippy: fix ptr\_as\_ptr lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2611](mozilla/sccache#2611)
- clippy: fix ref\_option lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2608](mozilla/sccache#2608)
- clippy: fix from\_iter\_instead\_of\_collect lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2614](mozilla/sccache#2614)
- Move PreprocessorCacheModeConfig to src/config.rs by [@&#8203;xis19](https://github.com/xis19) in [#&#8203;2604](mozilla/sccache#2604)
- Remove benchmark normalize\_win\_path\_utf8 by [@&#8203;sylvestre](https://github.com/sylvestre) in [#&#8203;2634](mozilla/sccache#2634)
- Move cmake-modules to integration tests by [@&#8203;Felixoid](https://github.com/Felixoid) in [#&#8203;2649](mozilla/sccache#2649)

##### Docs

- docs(Rust.md): Add caveats from README by [@&#8203;TheJanzap](https://github.com/TheJanzap) in [#&#8203;2684](mozilla/sccache#2684)

##### Dependencies

- chore: switch thirtyfour\_sync to thirtyfour by [@&#8203;tottoto](https://github.com/tottoto) in [#&#8203;2613](mozilla/sccache#2613)
- build(deps): bump actions/upload-artifact from 4 to 7 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2632](mozilla/sccache#2632)
- build(deps): bump actions/download-artifact from 5 to 8 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2631](mozilla/sccache#2631)
- chore(deps): update rust crate quinn-proto to v0.11.14 by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2645](mozilla/sccache#2645)

##### New Contributors

- [@&#8203;ikolomiko](https://github.com/ikolomiko) made their first contribution in [#&#8203;2621](mozilla/sccache#2621)
- [@&#8203;JulienCote](https://github.com/JulienCote) made their first contribution in [#&#8203;2627](mozilla/sccache#2627)
- [@&#8203;msuozzo](https://github.com/msuozzo) made their first contribution in [#&#8203;2637](mozilla/sccache#2637)
- [@&#8203;weihanglo](https://github.com/weihanglo) made their first contribution in [#&#8203;2651](mozilla/sccache#2651)
- [@&#8203;wojiushixiaobai](https://github.com/wojiushixiaobai) made their first contribution in [#&#8203;2669](mozilla/sccache#2669)
- [@&#8203;TheJanzap](https://github.com/TheJanzap) made their first contribution in [#&#8203;2684](mozilla/sccache#2684)
- [@&#8203;mmastrac](https://github.com/mmastrac) made their first contribution in [#&#8203;2676](mozilla/sccache#2676)

**Full Changelog**: <mozilla/sccache@v0.14.0...v0.15.0>

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMDEuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEwMS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZS9naXRodWItcmVsZWFzZSIsInR5cGUvbWlub3IiXX0=-->

Reviewed-on: https://git.erwanleboucher.dev/eleboucher/towonel/pulls/40
eleboucher pushed a commit to eleboucher/towonel that referenced this pull request May 22, 2026
….0) (#40)

This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [mozilla/sccache](https://github.com/mozilla/sccache) | minor | `0.14.0` → `0.15.0` |

---

### Release Notes

<details>
<summary>mozilla/sccache (mozilla/sccache)</summary>

### [`v0.15.0`](https://github.com/mozilla/sccache/releases/tag/v0.15.0)

[Compare Source](mozilla/sccache@v0.14.0...v0.15.0)

##### sccache 0.15.0

##### Summary

sccache 0.15.0 brings several notable improvements:

- **Multi-tier caching**: New support for layered caches with fallback and automatic backfilling between tiers ([#&#8203;2581](mozilla/sccache#2581)).
- **C++20 modules**: Initial (partial) support for compiling C++20 modules ([#&#8203;2516](mozilla/sccache#2516)).
- **Expanded MSVC support**: New flags handled including `d1nodatetime`, `await:strict` ([#&#8203;2617](mozilla/sccache#2617)), `Y-`, `YI`, `Zf` ([#&#8203;2663](mozilla/sccache#2663)), and the default `.pdb` extension for `/Fd` ([#&#8203;2621](mozilla/sccache#2621)).
- **New platforms**: loongarch64 support ([#&#8203;2669](mozilla/sccache#2669)) and `crt-static` for riscv64 musl targets ([#&#8203;2683](mozilla/sccache#2683)).
- **ccache interop**: Avoid double-caching when ccache is also installed in `PATH` ([#&#8203;2524](mozilla/sccache#2524)).
- **Cargo integration**: `CARGO_ENCODED_RUSTFLAGS` is now excluded from the env var hash to prevent spurious cache misses ([#&#8203;2651](mozilla/sccache#2651)), and dep-info handling correctly skips directories ([#&#8203;2676](mozilla/sccache#2676)).
- **Distribution**: cargo-binstall metadata for prebuilt binary installation ([#&#8203;2647](mozilla/sccache#2647)).
- **Reliability fixes**: GCS initialization ([#&#8203;2637](mozilla/sccache#2637)), Windows `Win32_Security` feature ([#&#8203;2627](mozilla/sccache#2627)), and retries for dist docker image builds ([#&#8203;2677](mozilla/sccache#2677)).

This release also includes a large round of clippy-driven cleanups and several CI fixes. Welcome to 7 new contributors!

##### Features

- Avoid double-caching when ccache is installed in PATH by [@&#8203;avikivity](https://github.com/avikivity) in [#&#8203;2524](mozilla/sccache#2524)
- partial c++20 module support by [@&#8203;TroyKomodo](https://github.com/TroyKomodo) in [#&#8203;2516](mozilla/sccache#2516)
- Add support for `d1nodatetime` & `await:strict` MSVC flags by [@&#8203;AJIOB](https://github.com/AJIOB) in [#&#8203;2617](mozilla/sccache#2617)
- msvc: Append the default .pdb extension for the /Fd argument by [@&#8203;ikolomiko](https://github.com/ikolomiko) in [#&#8203;2621](mozilla/sccache#2621)
- msvc: add support for Y-, YI, Zf flags by [@&#8203;AJIOB](https://github.com/AJIOB) in [#&#8203;2663](mozilla/sccache#2663)
- Implement multiple tiers caching with fallback and backfilling by [@&#8203;Felixoid](https://github.com/Felixoid) in [#&#8203;2581](mozilla/sccache#2581)
- feat: Add loongarch64 support by [@&#8203;wojiushixiaobai](https://github.com/wojiushixiaobai) in [#&#8203;2669](mozilla/sccache#2669)
- Add cargo-binstall metadata for prebuilt binary installation by [@&#8203;sylvestre](https://github.com/sylvestre) in [#&#8203;2647](mozilla/sccache#2647)

##### Fixes

- fix: add Win32\_Security feature to windows-sys dependency by [@&#8203;JulienCote](https://github.com/JulienCote) in [#&#8203;2627](mozilla/sccache#2627)
- Fix GCS initialization by [@&#8203;msuozzo](https://github.com/msuozzo) in [#&#8203;2637](mozilla/sccache#2637)
- fix: exclude `CARGO_ENCODED_RUSTFLAGS` from env var hash by [@&#8203;weihanglo](https://github.com/weihanglo) in [#&#8203;2651](mozilla/sccache#2651)
- fix: handle directories in dep-info source file hashing by [@&#8203;mmastrac](https://github.com/mmastrac) in [#&#8203;2676](mozilla/sccache#2676)

##### CI

- Revert "actions: add security audit workflow" by [@&#8203;sylvestre](https://github.com/sylvestre) in [#&#8203;2603](mozilla/sccache#2603)
- ci: fix artifact\_failure action when target dir does not exist by [@&#8203;sylvestre](https://github.com/sylvestre) in [#&#8203;2635](mozilla/sccache#2635)
- ci: set crt-static for riscv64 musl targets by [@&#8203;wojiushixiaobai](https://github.com/wojiushixiaobai) in [#&#8203;2683](mozilla/sccache#2683)
- Add retry for dists docker image build by [@&#8203;Felixoid](https://github.com/Felixoid) in [#&#8203;2677](mozilla/sccache#2677)

##### Clippy & cleanup

- clippy: fix cloned\_ref\_to\_slice\_refs lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2602](mozilla/sccache#2602)
- clippy: fix semicolon\_if\_nothing\_returned lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2601](mozilla/sccache#2601)
- clippy: fix cloned\_instead\_of\_copied lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2605](mozilla/sccache#2605)
- clippy: fix explicit\_into\_iter\_loop lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2616](mozilla/sccache#2616)
- clippy: fix unnecessary\_semicolon lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2615](mozilla/sccache#2615)
- clippy: fix manual\_string\_new lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2609](mozilla/sccache#2609)
- clippy: fix ptr\_as\_ptr lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2611](mozilla/sccache#2611)
- clippy: fix ref\_option lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2608](mozilla/sccache#2608)
- clippy: fix from\_iter\_instead\_of\_collect lint by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2614](mozilla/sccache#2614)
- Move PreprocessorCacheModeConfig to src/config.rs by [@&#8203;xis19](https://github.com/xis19) in [#&#8203;2604](mozilla/sccache#2604)
- Remove benchmark normalize\_win\_path\_utf8 by [@&#8203;sylvestre](https://github.com/sylvestre) in [#&#8203;2634](mozilla/sccache#2634)
- Move cmake-modules to integration tests by [@&#8203;Felixoid](https://github.com/Felixoid) in [#&#8203;2649](mozilla/sccache#2649)

##### Docs

- docs(Rust.md): Add caveats from README by [@&#8203;TheJanzap](https://github.com/TheJanzap) in [#&#8203;2684](mozilla/sccache#2684)

##### Dependencies

- chore: switch thirtyfour\_sync to thirtyfour by [@&#8203;tottoto](https://github.com/tottoto) in [#&#8203;2613](mozilla/sccache#2613)
- build(deps): bump actions/upload-artifact from 4 to 7 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2632](mozilla/sccache#2632)
- build(deps): bump actions/download-artifact from 5 to 8 by [@&#8203;dependabot](https://github.com/dependabot)\[bot] in [#&#8203;2631](mozilla/sccache#2631)
- chore(deps): update rust crate quinn-proto to v0.11.14 by [@&#8203;xtqqczze](https://github.com/xtqqczze) in [#&#8203;2645](mozilla/sccache#2645)

##### New Contributors

- [@&#8203;ikolomiko](https://github.com/ikolomiko) made their first contribution in [#&#8203;2621](mozilla/sccache#2621)
- [@&#8203;JulienCote](https://github.com/JulienCote) made their first contribution in [#&#8203;2627](mozilla/sccache#2627)
- [@&#8203;msuozzo](https://github.com/msuozzo) made their first contribution in [#&#8203;2637](mozilla/sccache#2637)
- [@&#8203;weihanglo](https://github.com/weihanglo) made their first contribution in [#&#8203;2651](mozilla/sccache#2651)
- [@&#8203;wojiushixiaobai](https://github.com/wojiushixiaobai) made their first contribution in [#&#8203;2669](mozilla/sccache#2669)
- [@&#8203;TheJanzap](https://github.com/TheJanzap) made their first contribution in [#&#8203;2684](mozilla/sccache#2684)
- [@&#8203;mmastrac](https://github.com/mmastrac) made their first contribution in [#&#8203;2676](mozilla/sccache#2676)

**Full Changelog**: <mozilla/sccache@v0.14.0...v0.15.0>

</details>

---

### Configuration

📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update again.

---

 - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box

---

This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xMDEuMSIsInVwZGF0ZWRJblZlciI6IjQzLjEwMS4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJyZW5vdmF0ZS9naXRodWItcmVsZWFzZSIsInR5cGUvbWlub3IiXX0=-->

Reviewed-on: https://git.erwanleboucher.dev/eleboucher/towonel/pulls/40
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.

When running msbuild with /Zf it breaks the compile with incorrect message "multiple input files detected" (even when using /Z7)

3 participants