Replies: 9 comments 18 replies
-
This is something we've been considering for programming languages as well. These may need to be treated as separate packages rather than the same package. |
Beta Was this translation helpful? Give feedback.
-
I'm going to convert this to a discussion for now. |
Beta Was this translation helpful? Give feedback.
-
Java is an example where it would be useful to treat each major version as separate packages rather than the same package. The current Java LTS is Java 11, but the latest Java release is Java 15 (soon to be 16). I installed AdoptOpenJDK with winget to get Java 11 but each time I check to see if my programs are outdated it tells me the latest version is AdoptOpenJDK 15.x even if AdoptOpenJDK 11.x got a recent security update. It is also possible that people who want to use an LTS release of some type of software or programming language may want to update to the newest LTS when it becomes available. It may be worth having an LTS package that will update people from the previous LTS to the newest. |
Beta Was this translation helpful? Give feedback.
-
Python is an example where minor versions also matter: 3.8 vs. 3.9. Could be something like: if you |
Beta Was this translation helpful? Give feedback.
-
Any update on this? I have multiple versions of python, and it is annoying to not be able to update them. |
Beta Was this translation helpful? Give feedback.
-
Sorry to necropost, but has any resolution been reached for this? I can't use winget upgrade --all, because it will always screw up my .NET desktop runtimes (I have 3,5,6,7 installed, and it will variously try to mix and match major versions in uncomfortable and unexpected ways). Trying to winget install Microsoft.DotNet.Runtime.6 while Microsoft.DotNet.Runtime.7 is installed fails similarly. |
Beta Was this translation helpful? Give feedback.
-
Similar to the Python scenario, I am trying to install multiple versions of R. However, a newer version uninstalls the previous, even if I specify different install locations like such.
I even tried the
But then I found
|
Beta Was this translation helpful? Give feedback.
-
I was able to install multiple python versions using @jaredlander suggestion of I need Python 3.9 and Python 3.11, so the command I used was: and:
|
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
Brief description of your issue
winget is not able to handle the situation where there are multiple versions of the same package installed, based on name. An example of this in action are .NET runtimes, where you often have multiple major versions installed side-by-side.
Steps to reproduce
winget upgrade --all
Expected behavior
Ideally, I expect .NET Core Runtime 3 to be considered separate from .NET Core Runtime 5. When winget checks for upgrades, it should only look for upgrades relating to that major version.
Actual behavior
winget is seeing both .NET Core Runtime 3 (version 3.1.11.29516 on my computer) and .NET Core Runtime 5 (version 5.0.3.29723 on my computer) and reporting that an upgrade to version 5.0.4.29817 is available for both runtimes.
winget upgrade
:winget upgrade --all
:Environment
Beta Was this translation helpful? Give feedback.
All reactions