microsoft / vcpkg

C++ Library Manager for Windows, Linux, and MacOS
MIT License
22.86k stars 6.3k forks source link

[vcpkg upgrade] Running `vcpkg upgrade` on Windows will also trigger upgrades for linux triplets #3453

Open alexkaratarakis opened 6 years ago

alexkaratarakis commented 6 years ago

If you have a vcpkg instance that has both windows and linux triplets, then vcpkg upgrade will try to upgrade all the triplets.

So, if you run vcpkg upgrade from windows, it will uninstall ports installed on the linux triplet and then fail to reinstall them.

MikeGitb commented 5 years ago

This is extremely annoying and makes sharing a vcpkg instance between WSL and regular windows almost useless.

I think the most straight forward fix would be to add a triplet option to vcpkg upgrade, such that only packages from aparticular triplet would be updated.

Another, more general solution would be to allow regular/globbing expressions when specifying the packages to update. E.g. vcpkg upgrade .*:x64-linux

JackBoosY commented 4 years ago

This issue hasn’t been updated in a year; if it is still an issue, please reopen this issue.

MikeGitb commented 4 years ago

Yes, this is still a problem. Please re-open and address or mark as "Won't Fix".

tekert commented 2 years ago

This is still a problem, i just wiped >100 libs trying to upgrade, this should be a simple fix, just check for tripplets and dont upgrade/delete them from another os.