diff --git a/Directory.Build.props b/Directory.Build.props
new file mode 100644
index 0000000..34788c8
--- /dev/null
+++ b/Directory.Build.props
@@ -0,0 +1,16 @@
+
+
+ $(Version)
+
+ Weingartner Maschinenbau GmbH
+ https://github.com/Weingartner/Migrations.Json.Net
+ https://github.com/Weingartner/Migrations.Json.Net
+ git
+ MIT
+ true
+ Assists in migrating serialized JSON.Net objects
+ Weingartner Maschinenbau GmbH
+ json migration
+
+
+
\ No newline at end of file
diff --git a/Weingartner.Json.Migration.Roslyn/Weingartner.Json.Migration.Roslyn.csproj b/Weingartner.Json.Migration.Roslyn/Weingartner.Json.Migration.Roslyn.csproj
index 03f4925..ec6c8b3 100644
--- a/Weingartner.Json.Migration.Roslyn/Weingartner.Json.Migration.Roslyn.csproj
+++ b/Weingartner.Json.Migration.Roslyn/Weingartner.Json.Migration.Roslyn.csproj
@@ -1,20 +1,40 @@
netstandard2.0
- Weingartner.Json.Migration.Roslyn
false
- analyzers\dotnet\cs
+
all
+
+
+
+
+
+
+ Weingartner.Json.Migration.Analyzer
+
+ analyzers\dotnet\cs
+ $(TargetsForTfmSpecificContentInPackage);_AddAnalyzersToOutput
+
+
+
+ 1701;1702;NU5128
+
+
+
+
+
+
+
+
-
-
+
diff --git a/Weingartner.Json.Migration.sln b/Weingartner.Json.Migration.sln
index 897044a..bdecf5d 100644
--- a/Weingartner.Json.Migration.sln
+++ b/Weingartner.Json.Migration.sln
@@ -1,7 +1,7 @@
Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio Version 16
-VisualStudioVersion = 16.0.30011.22
+# Visual Studio Version 17
+VisualStudioVersion = 17.1.32228.430
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Weingartner.Json.Migration.Roslyn_Vsix.Vsix", "Weingartner.Json.Migration.Roslyn.Vsix\Weingartner.Json.Migration.Roslyn_Vsix.Vsix.csproj", "{CD62CCCF-6F3C-43BF-BAEC-226012EA651E}"
EndProject
@@ -11,9 +11,8 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Weingartner.Json.Migration.
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{F53CBCC1-FBB0-462C-8935-0B853362A8AD}"
ProjectSection(SolutionItems) = preProject
- base.nuspec = base.nuspec
scripts\build.fsx = scripts\build.fsx
- nuget-build.ps1 = nuget-build.ps1
+ Directory.Build.props = Directory.Build.props
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Weingartner.Json.Migration.Roslyn.Spec", "Weingartner.Json.Migration.Roslyn.Spec\Weingartner.Json.Migration.Roslyn.Spec.csproj", "{34BF0AB4-8C34-4876-A2E3-20FAA72BD74A}"
@@ -25,7 +24,6 @@ EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
Weingartner.Migration.Common.Shared\Weingartner.Migration.Common.Shared.projitems*{567ecd20-eb97-4a30-a5b2-0889d1609491}*SharedItemsImports = 5
- Weingartner.Migration.Common.Shared\Weingartner.Migration.Common.Shared.projitems*{630bac68-a278-4bce-abf1-6c864b141aa0}*SharedItemsImports = 5
Weingartner.Migration.Common.Shared\Weingartner.Migration.Common.Shared.projitems*{d1ebb04a-a30b-43a6-a1a7-945bcfdf8ef0}*SharedItemsImports = 13
EndGlobalSection
GlobalSection(SolutionConfigurationPlatforms) = preSolution
diff --git a/Weingartner.Json.Migration/Weingartner.Json.Migration.csproj b/Weingartner.Json.Migration/Weingartner.Json.Migration.csproj
index fb9e4c7..d844deb 100644
--- a/Weingartner.Json.Migration/Weingartner.Json.Migration.csproj
+++ b/Weingartner.Json.Migration/Weingartner.Json.Migration.csproj
@@ -4,7 +4,6 @@
netstandard2.0
Weingartner.Json.Migration
Weingartner.Json.Migration
- Weingartner.Json.Migration
@@ -13,4 +12,11 @@
+
+ Weingartner.Json.Migration
+ true
+ snupkg
+
+
+
diff --git a/base.nuspec b/base.nuspec
deleted file mode 100644
index bd9dd59..0000000
--- a/base.nuspec
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
- @project@
- @build.number@
- @authors@
- @authors@
- @summary@
- https://github.com/Weingartner/Migrations.Json.Net/blob/master/LICENSE
- https://github.com/Weingartner/Migrations.Json.Net
- true
- @description@
- @releaseNotes@
- Weingartner Maschinenbau GmbH
- json migration
- @dependencies@
- @references@
-
- @files@
-
diff --git a/nuget.exe b/nuget.exe
deleted file mode 100644
index ec1309c..0000000
Binary files a/nuget.exe and /dev/null differ
diff --git a/scripts/build.fsx b/scripts/build.fsx
index 9f27548..5752753 100644
--- a/scripts/build.fsx
+++ b/scripts/build.fsx
@@ -20,9 +20,11 @@ Target.initEnvironment()
// Properties
let baseDir = (__SOURCE_DIRECTORY__ @@ "..") |> Path.GetFullPath
-let buildOutputPath = @".\bin\Release"
+let buildOutputs = !! @"**\bin"
let artifactPath = baseDir @@ "artifacts"
let slnPath = baseDir @@ "Weingartner.Json.Migration.sln"
+let migrationProject = baseDir @@ "Weingartner.Json.Migration" @@ "Weingartner.Json.Migration.csproj"
+let analyzerProject = baseDir @@ "Weingartner.Json.Migration.Roslyn" @@ "Weingartner.Json.Migration.Roslyn.csproj"
let gitVersion = Fake.Tools.GitVersion.generateProperties(id)
@@ -40,7 +42,6 @@ let msbuild target = (
"BuildParallel", "True"
"BuildProjectReferences", "True"
"DebugSymbols", "True"
- "OutputPath", buildOutputPath
"Version", gitVersion.AssemblySemVer
]
NodeReuse = false
@@ -51,7 +52,8 @@ let msbuild target = (
// Targets
Target.create "Clean" (fun _ ->
Trace.trace "########################################### clean outputdir ###########################################"
- Fake.IO.Shell.cleanDir buildOutputPath
+ buildOutputs |> Seq.iter Trace.trace
+ Fake.IO.Shell.cleanDirs buildOutputs
Fake.IO.Shell.cleanDir artifactPath
)
@@ -73,64 +75,43 @@ Target.create "RunTests" (fun _ ->
|> Seq.iter (fun dir -> dotnet "test" dir)
)
-Target.create "PackNugetMigration" (fun _ ->
+let packMSBuildParams = {
+ MSBuild.CliArguments.Create() with
+ ToolsVersion = (Some "Current")
+ Properties =
+ [
+ "Configuration", "Release"
+ "Version", gitVersion.SemVer
+ ]
+ NodeReuse = false
+}
- let workingDir = @".\Weingartner.Json.Migration" @@ buildOutputPath
- NuGet.NuGetPack (fun p -> {
- p with
- Authors = ["Weingartner Maschinenbau GmbH"]
- Project = "Weingartner.Json.Migration"
- Description = "Assists in migrating serialized JSON.Net objects"
- OutputPath = artifactPath
- DependenciesByFramework = [
- { FrameworkVersion = "netstandard2.0"
- Dependencies = [
- "Newtonsoft.Json", "13.0.1"
- ]}
- ]
- Files = [ ("Weingartner*.dll", Some("lib/netstandard2.0"), None )]
- Summary = "Assists in migrating serialized JSON.Net objects"
- Version = gitVersion.SemVer
- WorkingDir = workingDir
- Publish = false
- })
- "./base.nuspec"
+Target.create "PackNugetMigration" (fun _ ->
+ DotNet.pack (fun defaults -> {
+ defaults with
+ OutputPath = Some artifactPath
+ MSBuildParams = packMSBuildParams
+ NoRestore = true
+ NoBuild = true
+ })
+ migrationProject
)
Target.create "PackNugetAnalyzer" (fun _ ->
-
- let workingDir = @".\Weingartner.Json.Migration.Roslyn" @@ buildOutputPath
-
- NuGet.NuGetPack (fun p -> {
- p with
- Authors = ["Weingartner Maschinenbau GMBH"]
- Project = "Weingartner.Json.Migration.Analyzer"
- Description = "Assists in migrating serialized JSON.Net objects"
- OutputPath = artifactPath
- DependenciesByFramework = [
- { FrameworkVersion = "netstandard2.0"
- Dependencies = [
- "Weingartner.Json.Migration", gitVersion.SemVer
- "Newtonsoft.Json", "13.0.1"
- ]}
- ]
- Summary = "Assists in migrating serialized JSON.Net objects"
- Version = gitVersion.SemVer
- WorkingDir = workingDir
- Files = [
- ( "Weingartner.Json.Migration.Roslyn.dll", Some "analyzers/dotnet/cs", Some "**/Microsoft.*;**/System.*")
- ( "tools/**/*.*", None, None)
- ]
- Publish = false
- })
- "./base.nuspec"
+ DotNet.pack (fun defaults -> {
+ defaults with
+ OutputPath = Some artifactPath
+ MSBuildParams = packMSBuildParams
+ NoRestore = true
+ NoBuild = true
+ })
+ analyzerProject
)
Target.create "Default" (fun _ ->
Trace.trace "Finished"
)
-
// Dependencies
"Clean"
==> "BuildSolution"