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"