Skip to content

Determine NuSpec template Sdk Plan #16

@chcosta

Description

@chcosta
Member
src/Microsoft.DotNet.Build.Tasks.Feed/Microsoft.DotNet.Build.Tasks.Feed.nuspec 
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?> 
+<package> 

weshaggard 4 hours ago
Given we are an SDK based project why do we need to manually create the nuspec?

chcosta 3 hours ago
I'm not aware of any reason that we need to. I slightly prefer the nuspec just because it's easier to read, makes it feel like I have more control, and creates a separation between the build / packaging. That's probably just me not used to the new standard. I can move this into the project.

chcosta an hour ago
It actually seems to be a bit of a pain (taking more time that I would have hoped) to get the lock file assemblies to be included in the package build outputs. I'll play around with it a bit more but likely end up filing an issue to follow up on this.

natemcmaster 42 minutes ago
I'm okay with using nuspec. I've hit the same issues and discussed them before with NuGet. It's not on their list of priorities. See NuGet/Home#5063, NuGet/Home#6321. Using nuspec is easier IMO.

weshaggard 34 minutes ago
Given there are issues with the default generated nuspec's from SDK projects for tool package I can live with a nuspec. Thanks for trying to use the shipping tools.

weshaggard 32 minutes ago
I wonder if for this repo we should try to use a nuspec template of sorts and write a simple target to fill it the blanks from the project properties. That isn't an issue for one tool package but when we get more it will help avoid duplication and inconsistencies.

natemcmaster 28 minutes ago
Might work. I've been down this road before. IIRC the nuspec pack step in NuGet is pretty fragile. You must keep the NuspecPropertiesmsbuild prop and the nuspec substitutions closely aligned. If you have empty properties in MSBuild, or unused substitutions, pack will fail. In aspnet, we worked around by just implementing our own PackNuspec task. Would love to contribute it back to NuGet, but haven't found the time.

Creating a nuspec template sdk might be useful for creating our task packages.

Activity

chcosta

chcosta commented on Feb 22, 2018

@chcosta
MemberAuthor

Alternatively, and I think preferred, we can use sdk project properties + a custom sdk target to make this work. That would eliminate the need for a nuspec.

The custom sdk target would need to dynamically modify buildpackageoutputs to include lock file assemblies. Unfortunately we can't statically define these but a custom target should work.

changed the title [-]NuSpec template Sdk[/-] [+]Determ NuSpec template Sdk Plan[/+] on Mar 5, 2018
changed the title [-]Determ NuSpec template Sdk Plan[/-] [+]Determine NuSpec template Sdk Plan[/+] on Mar 5, 2018
markwilkie

markwilkie commented on Mar 20, 2018

@markwilkie
Member

Add to post initial release epic

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

    Development

    Participants

    @tmat@markwilkie@chcosta

    Issue actions

      Determine NuSpec template Sdk Plan · Issue #16 · dotnet/arcade