OldSquirrelForWindows icon indicating copy to clipboard operation
OldSquirrelForWindows copied to clipboard

New-Release doesn't find project dependencies

Open flagbug opened this issue 10 years ago • 10 comments

I have a solution with multiple projects, each with a .nuspec file and BuildPackage enabled. The main project has a dependency on the other two projects and I specified them as dependency in the .nuspec of the main project as described here

When creating a New-Release, I get the following error:

CreateReleasePackage.exe : 
At C:\Users\Dennis\Dropbox\Projects\Espera\Espera\packages\Shimmer.0.7.4\tools\commands.psm1:70 char:26
+         $releaseOutput = & $createReleasePackageExe -o $ReleasesDir -p $packageD ...
+                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:String) [], RemoteException
    + FullyQualifiedErrorId : NativeCommandError

Unexpected exception occurred creating package:

System.Exception: Couldn't find file for package in C:\Users\Dennis\Dropbox\Projects\Espera\Espera\packages: Espera.Core
   at Shimmer.Core.ReleasePackage.<>c__DisplayClass1c.<findAllDependentPackages>b__19(PackageDependency dependency)
   at System.Linq
.Enumerable.<SelectManyIterator>d__14`2.MoveNext()
   at System.Linq.Buffer`1..ctor(IEnumerable`1 source)
   at System.Linq.Enumerable.ToArray[TSource](IEnumerable`1 source)
   at Shimmer.Core.ReleasePackage.findAllDependentPackages(IPackage package, String packagesRootDir, HashSet`1 packageCache, FrameworkName frameworkName)
   at Shimmer.Core.ReleasePackage.CreateReleasePackage(String outputFile, String packagesRootDir, Func`2 releaseNotesProcessor)
   at CreateReleasePackage.Program.Main(String[] args)

Seems like CreateReleasePackage.exe looks for the project dependencies in the packages directory, but the built .nupgk files are still in their build output folders

flagbug avatar Dec 07 '13 16:12 flagbug

Did you ever resolve this?

ses4j avatar Feb 04 '14 01:02 ses4j

@ses4j Nope, that's just not possible at the moment

flagbug avatar Feb 04 '14 01:02 flagbug

So what can you do to get the project dependencies outputs in the right place?

ses4j avatar Feb 04 '14 14:02 ses4j

Does this mean it is not yet possible to use Squirrel with a solution that has more than one project? Even though it is fully documented?

dchaib avatar Feb 12 '14 18:02 dchaib

It is possible if you manually copy the resulting .nupkg files of the projects into the releases folder

flagbug avatar Feb 12 '14 18:02 flagbug

I must have done something wrong then, because I tried what you said and I still have the same error as the one you mentioned at the beginning.

dchaib avatar Feb 12 '14 18:02 dchaib

I have tried to put ExternalProject-0.5.0-beta-full.nupkg in

  • the Releases folder
  • the packages folder
  • a new packages\ExternalProject folder

It never worked...

dchaib avatar Feb 12 '14 18:02 dchaib

Ah yes, I meant The packages folder...don't understand why it doesn't work for you though

flagbug avatar Feb 12 '14 18:02 flagbug

Try to delete the '-full' from the filename

flagbug avatar Feb 12 '14 18:02 flagbug

I just managed to make it work by removing "-full" and also changing "-" into ".". In conclusion, I use this file: packages\ExternalProject\ExternalProject.0.5.0-beta.nupkg instead of: packages\ExternalProject\ExternalProject-0.5.0-beta-full.nupkg. Thanks for your help!

dchaib avatar Feb 12 '14 19:02 dchaib