Support Symbol NuGet Package #224

Closed
kentcb opened this Issue Mar 26, 2013 · 6 comments

3 participants

@kentcb

The current NuGet packages are somewhat non-standard and onerous to use. I suggest a symbol package be created for RxUI. This will ensure anyone consuming RxUI via NuGet can very easily step into RxUI code.

@paulcbetts
ReactiveUI member

@kentcb Ah, I didn't realize that symbol packages could be created via the .nuspec, I thought you had to create them from a csproj file, which doesn't work with ReactiveUI

@paulcbetts
ReactiveUI member

@kentcb Do you want to contribute this? Here's how I would do it:

  1. Create source directories in the NuGet template folders for source folders, something like NuGet\ReactiveUI-Core\src\ReactiveUI, NuGet\ReactiveUI-Xaml\src\ReactiveUI.Routing, etc...
  2. In MakeRelease.ps1, add a section that goes through looking for src\* directory names, then copying the source tree in. This is actually pretty easy using Robocopy, something like robocopy .\NuGet\ReactiveUI-Core\src\ReactiveUI .\ReactiveUI *.cs /S
  3. At the very end, add another line to actually create the Symbols package.
@kentcb

@xpaulbettsx Sure thing - I'll get to it after Easter.

@jlaanstra
ReactiveUI member

I would suggest adding /min:1 to the robocopy command to exclude the 0 byte temporary .cs files visual studio creates in the obj directory.

@kentcb

@jlaanstra: Actually, the obj directory will be excluded in its entirety.

@jlaanstra
ReactiveUI member

You have to be careful with excluding the obj directory as there can be .cs files in there that must be part of the symbols package. This is for example happening with .xaml files. For now ReactiveUI doesn't include any .xaml files, but it is still something to watch out for.

Since you need to adapt the MakeRelease.ps1 file this could be combined with adapting MakeRelease.ps1 to build a portable library and put it in the supported folders, which is tracked as a task in #217.

Let me know if you need help with this!

@paulcbetts paulcbetts closed this Apr 9, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment