Nprove Plugin

Load Projects from the Team Foundation Explorer as you did with VS2008

Visual Studio 2010 desabled the feature that Visual Studio 2008 (and predecesors) had to automatically add a project to the current solution when clicking on it in the Team Source Control Explorer.

Nprove plugin adds this feature back to 2010, and additionally it allows the developer to load all projects in a given folder tree, filtering out the ones that do not match a configured criteria.

Automatically calculate the build order when using binary dependencies among loaded projects

Visual Studio does not allow to automatically use binary dependencies between loaded projects to calculate the build order, it only does this with project references.

In order to calculate the build order correctly among loaded projects all the references must be project-dependencies.

This approach is impractical when a system is built with hundreds of components. In that case there is no single solution file that can handle all projects and their project references.

When a developer incrementally needs to add new projects does not want to change the references back to project-dependencies, as other developer may not need it.

In that case, the whole system must be built using binary dependencies.

So, the projects do not have project references but binary references.

Visual Studio does not automatically account for these kind of dependencies, therefore the build order is not defined correctly leading to huge build times and waste of developer's time.

If you are a developer in a huge project and you have this problem, this plugin will help a lot.

Fix project dependencies by setting Copy Local and Specific Version to false to all loaded project dependencies

Linked with the above feature, when using binary references for your system being developed you may require a flexible deployment that garantees minimum impact on the next release of your system. 

In that case, you can help to mitigate this by ensuring all references in all projects do not try to copy their references to the final output directory. Or, that it will work fine with other versions of the component, developed and tested somewhere else.


Licensed under GNU Lesser General Public License (LGPL)

Last edited Dec 6, 2012 at 1:42 PM by JoseLuisMiguel, version 3