Feb 20, 2011 at 6:18 AM
Edited Feb 20, 2011 at 6:19 AM
I'm making a small change in v1.2 in how nuget commands intepret the ProjectName parameter. This is to fix this bug (http://nuget.codeplex.com/workitem/21).
First of all, a new concept. Every VS project will have a simple name and unique name.
- Simple name: the project name as displayed in the Solution explorer. This is how we specify a project today in 1.1. As explained in the bug description, using simple names will fail in case two projects beloging to different solution folders share the same
- Unique name (a.k.a fully-qualified name): this is the full path from solution root to the project including solution folders.
For example, for a solution with this structure:
The first ProjectA: simple name is ProjectA, unique name is
ProjectB: simple name is ProjectB, unique name is Folder1\ProjectB
The second ProjectA: simple name is ProjectA, unique name is
ProjectA. In this case, simple name and unique name are the same.
So, in any case, you can always use the unique name to specify a project. That will always work.
On the other hand, if there is no ambiguity (i.e. no two projects with the same simple name), you can use simple name. Otherwise, you have to specify the unique name.
In the example above, you can refer to ProjectB either with simple name or unique name. Both of these will work:
install-package elmah -projectName 'ProjectB'
install-package elmah -projectName 'Folder1\ProjectB'
For the ProjectA inside Folder2, you have to use the unique name:
install-package elmah -projectName 'Folder1\Folder2\ProjectA'
And finllay for the ProjectA at the solution root, since both names are the same, you only have one choice:
install-package elmah -projectName 'ProjectA'
Questions or suggestions?