DarthFubuMVC/ripple — pull request #265 by andreasohlund (2014-01-16 11:54:13+00:00)
Title: Added support for source only nuget packages

This is still a WIP but I want some feedback if you guys think this is heading in the right directions. This change is somewhat inspired by http://nikcodes.com/2013/10/23/packaging-source-code-with-nuget/

#Background

We rely on source only packages to share of acceptance testing suite btw repos. We also plan to make more use of source only nugets as they start to appear on nuget. (we hate binary deps!!).

# What this change do

1. Looks for source packages (packages ending with .Sources or -CodeOnly)
2. Looks for projects referencing them
3. Extracts the files in /content into {Project}/App_Packages/{Name of nuget without .Sources|-CodeOnly}

# Question

One of the snags we have is that since we ripple restore as part of the build using https://github.com/Particular/RippleRestoreTask and the fact that we wildcard include the files (https://github.com/Particular/NServiceBus.SqlServer/blob/develop/src/NServiceBus.SqlServer.AcceptanceTests/NServiceBus.SqlServer.AcceptanceTests.csproj#L69) we can't get VS to pickup the files on the first build. Instead we have to close the solution and open it again. Does any one have any ideas on how to force a project reload if the the give source package is restored?

# Side note
Since we have a few nugets on or CI (by mistake) that has the same id but with different casing I had to change this:

https://github.com/Particular/ripple/compare/source-only-packages?expand=1#diff-c7640d9074d8c77317f6b761a3ef2bf7R91

Thoughts?