-
Notifications
You must be signed in to change notification settings - Fork 903
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
Nexus has deprecated some NuGet v2 optimizations that Chocolatey CLI uses #3506
Comments
I can confirm this issue. We are also running in to problems to install software with Nexus as a repository, since we updated to the new version of the repository. chocolatey cli version: 2.3.0 the workaroud metioned above is working
A fix for the chocolatey cli would be awesome. |
Chocolatey CLI is not 'broken', so there is nothing to fix. Nexus deprecated some features that Chocolatey CLI used. Disabling package optimizations works around the changes made. |
Recently ported my Nexus from 3.70.3 with an OrientDB, to an H2 DB, then the "latest" docker image. |
Is there any information on whether a new release of Chocolatey is planned that no longer relies on the deprecated parts of the NuGet v2 API? We are facing issues with our Nexus repository, which follows Microsoft's guidance on this matter. More information can be found in this link. According to Sonatype's documentation: The supported subset of the legacy NuGet v2 protocol in H2 and PostgreSQL environments is the same as that supported by Microsoft's NuGet Gallery, nuget.org. Use cases that rely on deprecated parts of the NuGet v2 API are not supported, including many common Chocolatey use cases and some custom OData queries. It seems likely that more NuGet repositories will adopt this approach, making the reliance on deprecated API parts increasingly problematic. While the workaround choco feature disable --name='usePackageRepositoryOptimizations' can mitigate the issue, it’s not ideal as it requires specific client-side settings. Would it be possible to get an update on this? |
Chocolatey CLI version 2.0.0 introduced NuGet v3 API support 18 months ago. Can you be more specific?
To be fair, it requires a single command to be run to disable the feature. If you are a Chocolatey for Business user you can make that change through a single Deployment Step. Open-source users can add the command to the method they used for deployment.
To be very clear, Chocolatey CLI does not rely on NuGet v2. It supports it. It will happily work with NuGet v3. Chocolatey CLI will continue to support NuGet v2 for some time as many community members and customers still rely on it, despite repository managers removing support. |
Issue SummaryWhen using a Nexus-hosted repository as a NuGet source, it should serve packages via either v2 or v3 protocols, depending on the URL configuration. However, inconsistencies are observed when performing different operations ( Steps to Reproduce
Observed Behavior
|
@pauby thanks in advance, Martijn. |
NOTE: This issue is a work in progress and will be updated as we have additional information and experiences from customers and community members.
In version 3.71.0 of Sonatype Nexus Repository, Sonatype deprecated some NuGet v2 optimizations that Chocolatey CLI uses:
As part of the deprecation, Nexus still advertises that it supports NuGet v2 search for it's NuGet v3 repository, which Chocolatey CLI will fall back to using and tries to optimize. This may lead to issues.
Sonatype Nexus Repository NuGet v3 Search Issues
If you are having issues during search of a NuGet v3 repository in Sonatype Nexus Repository, please disable
usePackageRepositoryOptimizations
by runningchoco feature disable --name='usePackageRepositoryOptimizations'
. This will stop Chocolatey CLI from optimizing queries to the NuGet v2 search endpoint, but may lead to more queries being made and therefore longer search times.Further Help
See the Sonatype Nexus Repository documentation:
Customer Support
If you are a customer with Support and Maintenance, and require further help, please reach out to the Chocolatey Support team. You will find the options available to you by running
choco support
from the command line.Community Support
If you are using the open-source edition of Chocolatey CLI, please reach out on our Community Hub.
Related Issues and Discussions
The text was updated successfully, but these errors were encountered: