Visual 2026 and 2022 using same ABI hashkey
### how it work for good
if I do a simple `vcpkg.exe install fmt` in "Visual Studio 2022 Developer Command Prompt v17.14.21"
I get this output
>fmt:x64-windows package ABI: e289dd426cd9661d1f4c95cb6702d3d0523441b326fd472479cd4b620dc2d829
if after that I do the same in "Visual Studio 2026 Developer Command Prompt v18.0.2"
I get this output
>The following packages are already installed:
> fmt:x64-windows@12.1.0
Most of the times it's OK and have no issue with it.
### The issue grpc
But with package like `grpc` the 2026 version link with `__std_find_first_of_trivial_pos_1` which is not available in 2022.
So it generate a link error when user use the binary version.
### Consequences
If a developer is first on visual 2026 (or insider) to compile we are generating a cache pollution that will block all our 2022 compilation (until we remove package from shared cache and dev machine)
### My dilemma
Not sure if this issue is caused/fixable by package only or if the choice of what is included in the hashkey computation should be altered to force recompilation between 2022 and 2026.
My first thought was this repo and not vcpkg/grpc but I maybe wrong so feel free to close it.
关闭于 2025-12-12 2 条评论