We need feedback on how well our NuGet layout provider works with Chocolatey.
You might find the strongbox-examples useful. Perhaps creating a similar example using Chocolatey would be helpful.
Chocolatey has issues installing, searching, and upgrading packages that have a hyphen/dash in their name from Strongbox. Many, quite possibly a majority of packages on Chocolatey.org have a hyphen in their name as it is the recommended way to deal with a space in the name of the software rather than say a dot.
Install requests from nuget.exe are similar to this, and work fine-
0.0.0.0:48080/storages/public/nuget-group/FindPackagesById()?id='testing-2'&semVerLevel=2.0.0
While install requests from chocolatey are formated like this-
0.0.0.0:48080/storages/public/nuget-group/Packages()?$filter=(tolower(Id)%20eq%20'testing-2')%20and%20IsLatestVersion
Both are trying to install a packaged named testing-2 which is on the server, nuget.exe seccessfully installs it, but chocolatey fails. Chocolatey works fine installing from strongbox with packages names that do not have a hyphen, such as testing.
I think the AQL included in Strongbox is not accepting the HTTP requests from Chocolatey as valid formating. If I try the chocolatey request in a web browser, it replies as such-
{"error":"AQL syntax error at [1:24], cause [token recognition error at: '-']\nAQL syntax error at [1:25], cause [extraneous input '2' expecting ''']"}
You might want to have a look at these classes:
It seems the grammar file needs some tweaking.
@sbespalov : Any suggestions?
@TheCakeIsNaOH : Thank you for your efforts in investigating this! Could you please provide a simple test case in Java, so that we could look into it?
Could you please provide a simple test case in Java, so that we could look into it?
Like as a separate application or as a code test in strongbox?
I would say more like a proper JUnit test case that tries the above. Have a look at the Nuget controller test, or the ones in the Nuget layout provider for more details.
@TheCakeIsNaOH , @anki2189 , @gretel, @steve-todorov ,
Are we okay to now close this?
Yes, we have tests for it now and it's included in the main pipeline.