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
Exception when running on mono #1984
Comments
@borgdylan would provide some repro steps? |
I ran a simple restore from a project.json. In packages with more than one target framework I also get key duplication errors. Is Nuget really meant to replace DNX's package restore? |
What build are you using? Can you share the project.json file? |
I am using
leads to the exception. Other project,json files yield to nuget hanging. It seems to try fetching a package ad infinitum even if there is no hope. |
How are you executing the restore? Is the restore running on mono, or it is just restoring for mono/net451? Also what OS are you running on? |
I am running restore on mono for Linux x86 |
Would you give me the exact steps you are using to run this and the command on mono? |
|
Can you share your project,json? Also nuget.exe restore for dnx style project is NOT something we are testing or targeting like I mentioned in our other discussion. This would be something you either run from the .net CLI or from windows (at this point at least), |
My project.json has been been shared above. Also, the .NET CLI has switched to shelling to NuGet for restore. If NuGet is not ready for DNX style restore, then the .NET CLI should revert back to shelling to DNX for restore. My issues arise because of their change since teh "NuGet.CommandLine.XPlat" package exhibits the same exceptions when used with more than one target framework which is common for class libraries. |
The cli is a place where we are integrating nuget and will keep improving it. However it is not planned to support mono at the moment with the cli |
The packages do have dnx451 binaries and I think they should support mono since coreclr does not do normal x86 at the moment. That is why I ported the cli to run on mono. |
If only mono was working the same as desktop life would be beautiful. I'm open to taking pull requests on nuget for this if you want to support it, but I have no developers available to invest in this at the moment |
If the source can be built no problem under mono I could see what causes the issues for teh xplat cli dll and fix it. |
The first thing I would do is to add net451 as a target to NuGet.CommandLine.XPlat, to make building the .NET cli for mono easier (targets net451). See https://github.com/borgdylan/dotnet-cli for the code that I had working. |
@borgdylan what code are you executing here? NuGet.exe or NuGet.CommandLine.XPlat? |
I executed Nuget.exe. However for project.json stuff it would suffice to get either one working. |
Dylan will really help nail down the exact scenarios your are tackling. When you say the cli this means a completely different code base. When your use nuget.exe you need to specify what version, and what build. Can you help us by rewinding and missing our all the exact details? |
I was using Nuget.exe 3.4.0.517. |
And did you get the exception from the cli or nuget.exe ? |
Both |
If I am not mistaken the CLI detects mono and force one http request at any given time. I do not observe this in practice when I run with -p 1 and -v Debug. |
After hacking around with mono i.e. setting an env var that DNX used to set I arrive at an exception rather than a hang.
|
@yishaigalatzer I tried to build parts of teh nuget clients repo but I failed since the preprocess fails to build with "Microsoft.CodeAnalysis" not being available in the compile module source file. |
NuGet cannot be built with the CLI yet, only DNX.
What env var is that? |
I set |
I have cleared the cache, but still the exception persists. NuGet seems to be merging in runtimes from the same package for three times:
I do not think that is OK. |
Good News: Using |
Also for the record the winning command line is |
@borgdylan glad to hear you got it working. There were a lot of fixes that went into 566. FYI But adding the flag doesn't hurt of course. Are you still able to get the UTC time exception? I'd like to fix that also. |
That is due to bad packages made by Nuget.exe. the xmlns URL overriden in the nuspec should mention 2012/06 not 2011/08. |
I opened a specific bug here: #2020 |
Using the NuGet 3.4 beta packages on mono yields the exception:
Such exception hinders the real NuGet client from being used when implementing the dotnet-restore command of the dotnet cli.
The text was updated successfully, but these errors were encountered: