Merge package installations

Oct 22, 2010 at 10:26 AM
Edited Oct 22, 2010 at 10:30 AM

If I understand well how package installation works, 2 different packages will install locally into 2 different folders (based on the name and the version of the respective packages)

But what if I want to split a large package into several dependent parts?

For example:

  • a package A containing core functionalities of my library.
  • a package B which depends on A, extends it with more tooling and optional capabilities but requires to be installed in the same folder as A. (i.e. B is a sort of plugin for A)

Would it be possible make B install in the same local folder as A (or in a relative folder)?

Oct 22, 2010 at 10:32 AM

You're correct about where packages are placed on disk, and it isn't configurable. 

What kind of package do you have that requires the dependent packages to be in the same folder? 

Oct 22, 2010 at 10:54 AM
Edited Oct 22, 2010 at 11:30 AM

Actually, I'm part of the Gallio/MbUnit OSS project. The full Gallio bundle is composed of a core system with dozens of additional optional plugins and extensions: test runners (Icarus, Echo, PoSh-snapin, etc.), test adapters (for NUnit, MbUnit, MSTest, xUnit, etc.), plugins for 3rd party s/w (R#, VS2008, VS2010, TypeMock, AutoCAD, etc.) and other utilities. Plugins and extensions are resolved at runtime. They share the same parent folder.

What we would like is to be able to provide granular packages. So that if a user just wants to run MbUnit tests from TestDriven.Net for example (supposing that TD.Net is already installed), she could select the packages Gallio.MbUnit and Gallio.TDNet (which depend on Gallio.Core). And the contents of the 3 packages would be installed (=merged) in the same local folder (\lib\Gallio-x.y.z\) similarly to what she could do manually by downloading the zip version of the bundle.

It could represent roughly 15-20 complementary packages built on the top of Gallio.Core.

Does it make sense? Not sure if i'm not out of the scope of NuPack ;)

Oct 22, 2010 at 11:25 AM
This discussion has been copied to a work item. Click here to go to the work item and continue the discussion.