Currently we are packaging the msbuild task in with the VS extension which results in a changing path every time the extension is updated, which causes errors for projects pointing to these assemblies. This is not a reasonable location for build dependencies.
Installing these same assets into an administrator protected location is also not acceptable. The solution is to use nuget to deliver per-project dependencies.
The nuget package should:
- Contain only these files:
- Add an <Import /> to the project the package was referenced by to the .targets file.
The VS Extension should:
- have a dependency on Nuget
- have a project template that already includes the metasharp nuget package referenced and imported.
- not have a command to add meta# to a project (users will use nuget to do this instead).
The "build deploy" command should:
- place the nuget package into /deploy/$(Version)/$(Configuration)/ alongside the vsix file.