-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Unable to disambiguate package Microsoft.VC++2013Redist-x64 #1413
Comments
I was able to update by running, for example, |
I don't see why @denelon has marked this as
When I enter And note that the package with the GUID isn't even mentioned in |
I misunderstood the original report. This is probably a duplicate of another Issue, but I will keep this open for now until we have a chance to triage all open bugs again to confirm. We already have support in the 1.1 schema for this scenario, but the client side implementation is still in progress. |
Here another example why I think there is definitely something wrong with Note that PowerToys is detected as an upgrade but none of the 5(!) @denelon Could you consider changing the title of this issue and make it more general? It is not just for VC++ runtime libraries.
|
@ffes PowerToys is a known issue. The installer is an MSI inside of an EXE. When we see the manifest telling us the installer is EXE, we stop trying to upgrade an MSI. We've already made changes to the schema to support this specific kind of a scenario, it's just a matter of finishing the work on the client and validating before we get that feature out in a preview build. For some context, "--exact" is looking for a case sensitive match where the other default behaviors are looking for a case insensitive substring match. |
I have the same issue with R. Is there any workaround?
|
We met with the VC++ redistributable team. We're working together to help alleviate the confusion here. There are a few scenarios we need to consider. Between 2005 and 2013 Visual Studio editions, a different version is installed "side by side". One of the things we need to do is check to see if a "newer" version is installed when multiple installed versions are present, so we don't try to perform an upgrade on the "older" version (when it is a "side by side" install). Another area we're looking at is the product code for the installers that is currently the same across architectures. |
Worth pointing out this happens with When I do a package list: PS C:\Windows\System32> winget list | findstr -i dotnet
Microsoft .NET SDK Microsoft.dotnet 5.2.921.52710 winget
Microsoft Windows Desktop Runtime - 3 (x64) Microsoft.dotnetRuntime.3-x64 3.1.22.30721 winget
Microsoft .NET SDK Microsoft.dotnet 6.1.121.56904 winget There are two versions of dotnet here, I'm not sure why. The only one I want is v6. OR, if both should be present, it shouldn't appear when I do PS C:\Windows\System32> winget upgrade
Name Id Version Available Source
-------------------------------------------------------------------------
Microsoft .NET SDK Microsoft.dotnet 5.2.921.52710 6.1.121.56904 winget
Oracle VM VirtualBox Oracle.VirtualBox 6.1.26 6.1.30 winget
2 upgrades available. And when doing |
@rcdailey the VC++ issue was the first report for the problem(s). We're looking for a solution to the class of problems pointed out here. This seems to happen when the Windows Package Manager is unable to disambiguate more than one entry in Apps & Features as they correlate to different architectures (and possibly other properties). There are some other scenarios that manifest the same way in terms of ambiguity. Since this was the first report, we're trying to capture the impact by marking others as a duplicate of this one to increase the 👍 count to help prioritize. |
I presume this belongs here too?
|
I have the opposite problem: There are NO installed packages found when trying to upgrade despite an update for it being found in the first place. I am not sure these are the same bugs.
|
I assume this is the error mentioned above:
|
For me the resolution was to go into Control & Panel -> Programs and uninstall every version of problematic 'Microsoft Visual C++ YYYY Redistributable' package ... I had 4 versions and 3 seemed like broken references to non-existing installations. After cleaning that mess, upgrade works. |
Indeed, the mess can be impressive: I've cleaned that up on all my PCs, now will monitor if further upgrades will work as expected. |
@alkampfergit this issue is quite old and was full of different classes of errors. I believe the original issue you reported was due to the situation identified by @PudottaPommin. @sba923 Have you encountered any more trouble after removing the "extra" entries? We've made several improvements in WinGet 1.4 related to matching and the upgrade scenario with packages that are installed side-by-side. |
@alkampfergit this issue has been automatically marked as stale because it has been marked as requiring author feedback but has not had any activity for 7 days. It will be closed if no further activity occurs within 7 days of this comment. |
To solve the problem, you can use an install on behalf of the upgrade, thus solving your problem instead of it |
Brief description of your issue
I'm trying to update package Microsoft.VC++2013Redist-x64 because it cannot disambiguate between the package and a weird package with a guid
Steps to reproduce
Install an old version Microsoft.VC++2013Redist-x64 I'm not aware of the exact sequence of package to install.
Expected behavior
I want to be able to choose the exact package with the --id or --exact.
Actual behavior
I'm not able to update package Microsoft.VC++2013Redist-x64 because it continues to tells me that it is ambiguous with another package identified by a weird guid, as for the previous image.
Environment
The text was updated successfully, but these errors were encountered: