Closed borgdylan closed 9 years ago
The lock file is being updated, but that exception can still concern people.
Looks like a duplicate of https://github.com/aspnet/dnx/issues/2192
/cc @troydai did the build pass yet?
Since that package is a compiler provider, anything that uses it is also failing to restore and failing to build since the dependency package is not building.
Sure but that's not relevant to the bug. The goal is to help us narrow down the problem by providing us to proper repro steps. I can't even reproduce the bug right now locally. Where is that package coming from?
Its local source code.
By some magic, deleting all of the package cache and restoring, the bug is gone.
@anurse @ChengTian Based on @troydai's changes I'm guessing that you can end up with a situation like this:
Old DNX before @troydai 's fix:
.dnx\packages\MyPackage\1.0.0\MyPackage.1.0.0.0.sha512
New DNX after @troydai's fix:
.dnx\packages\MyPackage\1.0.0\MyPackage.1.0.0.sha512
Notice the normalized version folder and the sha512 file. Since we changed the format, we need to make sure that we only use the folder if it is in the format we expect. This means that we need some extra logic to search for {id} + {normalized}. {extension} at dnu restore
time.
/cc @muratg This might be a large regression that we should look at ASAP.
Latest build on vNext is 12207, which should contain the change. The normalized version in file name is expected. I tested with FluentManager
the installed package.
The issue here seems to because the old DNX installed the package using pre-2192-change name, while after upgrading to new DNX the old package is recognized, but normalized name is used to look for name.
I can repo this. Here's a quick repo step: Create a project:
{
"dependencies": { "dylan.NET.K": "1.3.5" }
}
~/.dnx/dylan.NET.k/1.3.5.0/
[Error] Can't find the sha file under ~/.dnx/dylan.NET.k/1.3.5/
I'm looking at dnu restore
now to see where the existing packages is recognized. The normalized string should be used instead.
When publishing nupkgs are created with versions like 1.0.0.0
in yet the publish process looks for 1.0.0
.
@borgdylan yes. Thanks for reminding. It is tracked in https://github.com/aspnet/dnx/issues/2267. I'm working on a fix.
Thanks!
I'll close this issue, through. The dnu restore is fixed.
Yes the dnu restore is completely fixed.
As of the latest DNX, running
dnu restore
requires the nupkg for the current project to be in the package cache, something that looks pretty buggy.