diff --git a/build.cake b/build.cake
index 41dc263c96..a11e3d97a6 100644
--- a/build.cake
+++ b/build.cake
@@ -274,14 +274,17 @@ var FrameworkFiles = new FilePath[]
"mock-assembly.dll",
"mock-assembly.exe",
"nunit.framework.dll",
+ "nunit.framework.pdb",
"nunit.framework.xml",
"nunit.framework.tests.dll",
"nunit.testdata.dll",
"nunitlite.dll",
+ "nunitlite.pdb",
"nunitlite.tests.exe",
"nunitlite.tests.dll",
"slow-nunit-tests.dll",
"nunitlite-runner.exe",
+ "nunitlite-runner.pdb",
"nunitlite-runner.dll",
"Microsoft.Threading.Tasks.dll",
"Microsoft.Threading.Tasks.Extensions.Desktop.dll",
@@ -341,13 +344,35 @@ Task("PackageFramework")
{
Version = packageVersion,
BasePath = CurrentImageDir,
- OutputDirectory = PACKAGE_DIR
+ OutputDirectory = PACKAGE_DIR,
+ Symbols = true
};
NuGetPack("nuget/framework/nunit.nuspec", settings);
NuGetPack("nuget/nunitlite/nunitlite.nuspec", settings);
});
+Task("PackageFrameworkSnupkg")
+ .Description("Creates NuGet snupkg source packages of the framework")
+ .IsDependentOn("CreateImage")
+ .Does(() =>
+ {
+ CreateDirectory(PACKAGE_DIR);
+
+ var settings = new NuGetPackSettings
+ {
+ Version = packageVersion,
+ BasePath = CurrentImageDir,
+ OutputDirectory = PACKAGE_DIR,
+ Symbols = true,
+ // snupkg is not yet supported by Cake, https://github.com/cake-build/cake/issues/2362
+ ArgumentCustomization = args => args.Append("-SymbolPackageFormat snupkg")
+ };
+
+ NuGetPack("nuget/framework/nunit.snupkg.nuspec", settings);
+ NuGetPack("nuget/nunitlite/nunitlite.snupkg.nuspec", settings);
+ });
+
Task("PackageZip")
.Description("Creates a ZIP file of the framework")
.IsDependentOn("CreateImage")
@@ -385,6 +410,7 @@ Task("SignPackages")
.Description("Signs the NuGet packages")
.IsDependentOn("InstallSigningTool")
.IsDependentOn("PackageFramework")
+ .IsDependentOn("PackageFrameworkSnupkg")
.Does(() =>
{
// Get the secret.
@@ -404,7 +430,7 @@ Task("SignPackages")
var settings = File("./signclient.json");
// Get the files to sign.
- var files = GetFiles(string.Concat(PACKAGE_DIR, "*.nupkg"));
+ var files = GetFiles(string.Concat(PACKAGE_DIR, "*.*nupkg"));
foreach(var file in files)
{
@@ -441,6 +467,7 @@ Task("UploadArtifacts")
.Does(() =>
{
UploadArtifacts(PACKAGE_DIR, "*.nupkg");
+ UploadArtifacts(PACKAGE_DIR, "*.snupkg");
UploadArtifacts(PACKAGE_DIR, "*.zip");
});
@@ -615,6 +642,7 @@ Task("Package")
.Description("Packages all versions of the framework")
.IsDependentOn("CheckForError")
.IsDependentOn("PackageFramework")
+ .IsDependentOn("PackageFrameworkSnupkg")
.IsDependentOn("PackageZip");
Task("Appveyor")
diff --git a/nuget/framework/nunit.snupkg.nuspec b/nuget/framework/nunit.snupkg.nuspec
new file mode 100644
index 0000000000..8486619540
--- /dev/null
+++ b/nuget/framework/nunit.snupkg.nuspec
@@ -0,0 +1,38 @@
+
+
+
+ NUnit
+ NUnit
+ $version$
+
+
+
+ Charlie Poole, Rob Prouse
+ Charlie Poole, Rob Prouse
+ MIT
+ https://nunit.org
+
+ false
+ Symbols for debugging into the NUnit Framework assemblies.
+ en-US
+ Copyright (c) 2021 Charlie Poole, Rob Prouse
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/nuget/nunitlite/nunitlite.snupkg.nuspec b/nuget/nunitlite/nunitlite.snupkg.nuspec
new file mode 100644
index 0000000000..780767861d
--- /dev/null
+++ b/nuget/nunitlite/nunitlite.snupkg.nuspec
@@ -0,0 +1,55 @@
+
+
+
+ NUnitLite
+ NUnitLite
+ $version$
+
+
+
+ Charlie Poole, Rob Prouse
+ Charlie Poole, Rob Prouse
+ MIT
+ https://nunit.org
+
+ en-US
+ false
+ Symbols for debugging into the NUnitLite assemblies.
+ Copyright (c) 2021 Charlie Poole, Rob Prouse
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/nunit.sln b/nunit.sln
index 316525fd0f..ed0563572c 100644
--- a/nunit.sln
+++ b/nunit.sln
@@ -44,12 +44,14 @@ EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "framework", "framework", "{CE68713C-2E19-43E8-9333-6ED817110D52}"
ProjectSection(SolutionItems) = preProject
nuget\framework\nunit.nuspec = nuget\framework\nunit.nuspec
+ nuget\framework\nunit.snupkg.nuspec = nuget\framework\nunit.snupkg.nuspec
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "nunitlite", "nunitlite", "{8D43A220-7FE8-4214-BBB4-08568B88C7AA}"
ProjectSection(SolutionItems) = preProject
nuget\nunitlite\install.ps1 = nuget\nunitlite\install.ps1
nuget\nunitlite\nunitlite.nuspec = nuget\nunitlite\nunitlite.nuspec
+ nuget\nunitlite\nunitlite.snupkg.nuspec = nuget\nunitlite\nunitlite.snupkg.nuspec
nuget\nunitlite\Program.cs = nuget\nunitlite\Program.cs
nuget\nunitlite\Program.vb = nuget\nunitlite\Program.vb
EndProjectSection
diff --git a/src/NUnitFramework/Directory.Build.props b/src/NUnitFramework/Directory.Build.props
index a9e9c16629..3c3b1d190f 100644
--- a/src/NUnitFramework/Directory.Build.props
+++ b/src/NUnitFramework/Directory.Build.props
@@ -29,12 +29,14 @@
false
- embedded
+ portable
true
- true
+ snupkg
+ true
+