From cc6d99aa60ac8fffb80e87747dfc276cfb8ebb1f Mon Sep 17 00:00:00 2001 From: James Newton-King Date: Mon, 13 Feb 2017 23:46:43 +1300 Subject: [PATCH] Migrate project.json to csproj (#1212) --- Build/build.ps1 | 102 ++++--- Src/Newtonsoft.Json.Dotnet.sln | 34 --- Src/Newtonsoft.Json.Roslyn.sln | 54 ++++ .../Converters/VersionConverterTests.cs | 69 ++--- Src/Newtonsoft.Json.Tests/JsonConvertTest.cs | 23 +- .../JsonTextReaderTests/ReadAsyncTests.cs | 2 +- .../JsonTextReaderTests/ReadTests.cs | 2 +- .../Newtonsoft.Json.Tests.Dotnet.xproj | 18 -- .../Newtonsoft.Json.Tests.Roslyn.csproj | 99 +++++++ .../Properties/AssemblyInfo.cs | 8 +- .../Serialization/JsonSerializerTest.cs | 1 + Src/Newtonsoft.Json.Tests/TestFixtureBase.cs | 1 + .../DynamicReflectionDelegateFactoryTests.cs | 13 +- Src/Newtonsoft.Json.Tests/project.json | 108 ------- .../Newtonsoft.Json.Dotnet.xproj | 18 -- .../Newtonsoft.Json.Portable.csproj | 13 +- .../Newtonsoft.Json.Roslyn.csproj | 68 +++++ .../Properties/AssemblyInfo.cs | 4 +- Src/Newtonsoft.Json/project.json | 269 ------------------ Src/global.json | 5 +- 20 files changed, 347 insertions(+), 564 deletions(-) delete mode 100644 Src/Newtonsoft.Json.Dotnet.sln create mode 100644 Src/Newtonsoft.Json.Roslyn.sln delete mode 100644 Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Dotnet.xproj create mode 100644 Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Roslyn.csproj delete mode 100644 Src/Newtonsoft.Json.Tests/project.json delete mode 100644 Src/Newtonsoft.Json/Newtonsoft.Json.Dotnet.xproj create mode 100644 Src/Newtonsoft.Json/Newtonsoft.Json.Roslyn.csproj delete mode 100644 Src/Newtonsoft.Json/project.json diff --git a/Build/build.ps1 b/Build/build.ps1 index aae6265d..7967688d 100644 --- a/Build/build.ps1 +++ b/Build/build.ps1 @@ -1,8 +1,8 @@ properties { - $zipFileName = "Json90r2.zip" - $majorVersion = "9.0" - $majorWithReleaseVersion = "9.0.2" - $nugetPrerelease = "beta2" + $zipFileName = "Json100r1.zip" + $majorVersion = "10.0" + $majorWithReleaseVersion = "10.0.1" + $nugetPrerelease = "beta1" $version = GetVersion $majorWithReleaseVersion $packageId = "Newtonsoft.Json" $signAssemblies = $false @@ -11,7 +11,7 @@ $buildNuGet = $true $treatWarningsAsErrors = $false $workingName = if ($workingName) {$workingName} else {"Working"} - $netCliVersion = "1.0.0-preview2-003121" + $netCliVersion = "1.0.0-rc4-004771" $nugetUrl = "http://dist.nuget.org/win-x86-commandline/latest/nuget.exe" $baseDir = resolve-path .. @@ -24,14 +24,12 @@ $workingSourceDir = "$workingDir\Src" $nugetPath = "$buildDir\nuget.exe" $builds = @( - @{Name = "Newtonsoft.Json.Dotnet"; TestsName = "Newtonsoft.Json.Tests.Dotnet"; BuildFunction = "NetCliBuild"; TestsFunction = "NetCliTests"; FinalDir="netstandard1.0"; NuGetDir = "netstandard1.0"; Framework=$null}, - @{Name = "Newtonsoft.Json.Dotnet"; TestsName = "Newtonsoft.Json.Tests.Dotnet"; BuildFunction = "NetCliBuild"; TestsFunction = "NetCliTests"; FinalDir="netstandard1.1"; NuGetDir = "netstandard1.1"; Framework=$null}, - @{Name = "Newtonsoft.Json"; TestsName = "Newtonsoft.Json.Tests"; BuildFunction = "MSBuildBuild"; TestsFunction = "NUnitTests"; FinalDir="Net45"; NuGetDir = "net45"; Framework="net-4.0"}, - @{Name = "Newtonsoft.Json.Portable"; TestsName = "Newtonsoft.Json.Tests.Portable"; BuildFunction = "MSBuildBuild"; TestsFunction = "NUnitTests"; FinalDir="Portable"; NuGetDir = "portable-net45+wp80+win8+wpa81"; Framework="net-4.0"}, - @{Name = "Newtonsoft.Json.Portable40"; TestsName = "Newtonsoft.Json.Tests.Portable40"; BuildFunction = "MSBuildBuild"; TestsFunction = "NUnitTests"; FinalDir="Portable40"; NuGetDir = "portable-net40+sl5+wp80+win8+wpa81"; Framework="net-4.0"}, - @{Name = "Newtonsoft.Json.Net40"; TestsName = "Newtonsoft.Json.Tests.Net40"; BuildFunction = "MSBuildBuild"; TestsFunction = "NUnitTests"; FinalDir="Net40"; NuGetDir = "net40"; Framework="net-4.0"}, - @{Name = "Newtonsoft.Json.Net35"; TestsName = "Newtonsoft.Json.Tests.Net35"; BuildFunction = "MSBuildBuild"; TestsFunction = "NUnitTests"; FinalDir="Net35"; NuGetDir = "net35"; Framework="net-2.0"}, - @{Name = "Newtonsoft.Json.Net20"; TestsName = "Newtonsoft.Json.Tests.Net20"; BuildFunction = "MSBuildBuild"; TestsFunction = "NUnitTests"; FinalDir="Net20"; NuGetDir = "net20"; Framework="net-2.0"} + @{Name = "Newtonsoft.Json.Roslyn"; TestsName = "Newtonsoft.Json.Tests.Roslyn"; BuildFunction = "NetCliBuild"; TestsFunction = "NetCliTests"; NuGetDir = "netstandard1.0,netstandard1.1"; Framework=$null; Enabled=$true}, + @{Name = "Newtonsoft.Json"; TestsName = "Newtonsoft.Json.Tests"; BuildFunction = "MSBuildBuild"; TestsFunction = "NUnitTests"; NuGetDir = "net45"; Framework="net-4.0"; Enabled=$true}, + @{Name = "Newtonsoft.Json.Portable"; TestsName = "Newtonsoft.Json.Tests.Portable"; BuildFunction = "MSBuildBuild"; TestsFunction = "NUnitTests"; NuGetDir = "portable-net45+win8+wpa81+wp8"; Framework="net-4.0"; Enabled=$true}, + @{Name = "Newtonsoft.Json.Net40"; TestsName = "Newtonsoft.Json.Tests.Net40"; BuildFunction = "MSBuildBuild"; TestsFunction = "NUnitTests"; NuGetDir = "net40"; Framework="net-4.0"; Enabled=$true}, + @{Name = "Newtonsoft.Json.Net35"; TestsName = "Newtonsoft.Json.Tests.Net35"; BuildFunction = "MSBuildBuild"; TestsFunction = "NUnitTests"; NuGetDir = "net35"; Framework="net-2.0"; Enabled=$true}, + @{Name = "Newtonsoft.Json.Net20"; TestsName = "Newtonsoft.Json.Tests.Net20"; BuildFunction = "MSBuildBuild"; TestsFunction = "NUnitTests"; NuGetDir = "net20"; Framework="net-2.0"; Enabled=$true} ) } @@ -66,18 +64,21 @@ task Build -depends Clean { Write-Host Update-AssemblyInfoFiles $workingSourceDir ($majorVersion + '.0.0') $version - Update-Project $workingSourceDir\Newtonsoft.Json\project.json $signAssemblies - foreach ($build in $builds) { $name = $build.Name + $enabled = $build.Enabled if ($name -ne $null) { Write-Host -ForegroundColor Green "Building " $name Write-Host -ForegroundColor Green "Signed " $signAssemblies Write-Host -ForegroundColor Green "Key " $signKeyPath + Write-Host -ForegroundColor Green "Enabled " $enabled - & $build.BuildFunction $build + if ($enabled) + { + & $build.BuildFunction $build + } } } } @@ -87,9 +88,16 @@ task Package -depends Build { foreach ($build in $builds) { $name = $build.TestsName - $finalDir = $build.FinalDir - - robocopy "$workingSourceDir\Newtonsoft.Json\bin\Release\$finalDir" $workingDir\Package\Bin\$finalDir *.dll *.pdb *.xml /NFL /NDL /NJS /NC /NS /NP /XO /XF *.CodeAnalysisLog.xml | Out-Default + $finalDirs = $build.NuGetDir.Split(",") + $enabled = $build.Enabled + + if ($enabled) + { + foreach ($finalDir in $finalDirs) + { + robocopy "$workingSourceDir\Newtonsoft.Json\bin\Release\$finalDir" $workingDir\Package\Bin\$finalDir *.dll *.pdb *.xml /NFL /NDL /NJS /NC /NS /NP /XO /XF *.CodeAnalysisLog.xml | Out-Default + } + } } if ($buildNuGet) @@ -117,15 +125,14 @@ task Package -depends Build { foreach ($build in $builds) { - if ($build.NuGetDir) + if ($build.Enabled -and $build.NuGetDir) { $name = $build.TestsName - $finalDir = $build.FinalDir $frameworkDirs = $build.NuGetDir.Split(",") foreach ($frameworkDir in $frameworkDirs) { - robocopy "$workingSourceDir\Newtonsoft.Json\bin\Release\$finalDir" $workingDir\NuGet\lib\$frameworkDir *.dll *.pdb *.xml /NFL /NDL /NJS /NC /NS /NP /XO /XF *.CodeAnalysisLog.xml | Out-Default + robocopy "$workingSourceDir\Newtonsoft.Json\bin\Release\$frameworkDir" $workingDir\NuGet\lib\$frameworkDir *.dll *.pdb *.xml /NFL /NDL /NJS /NC /NS /NP /XO /XF *.CodeAnalysisLog.xml | Out-Default } } } @@ -137,18 +144,6 @@ task Package -depends Build { exec { & $nugetPath pack $nuspecPath -Symbols } - try - { - Set-Location "$workingSourceDir\Newtonsoft.Json" - - exec { dotnet --version | Out-Default } - exec { dotnet pack $workingSourceDir\Newtonsoft.Json\project.json -c Release | Out-Default } - } - finally - { - Set-Location $baseDir - } - move -Path .\*.nupkg -Destination $workingDir\NuGet } @@ -157,7 +152,7 @@ task Package -depends Build { if ($buildDocumentation) { $mainBuild = $builds | where { $_.Name -eq "Newtonsoft.Json" } | select -first 1 - $mainBuildFinalDir = $mainBuild.FinalDir + $mainBuildFinalDir = $mainBuild.NuGetDir $documentationSourcePath = "$workingDir\Package\Bin\$mainBuildFinalDir" $docOutputPath = "$workingDir\Documentation\" Write-Host -ForegroundColor Green "Building documentation from $documentationSourcePath" @@ -188,11 +183,9 @@ task Deploy -depends Package { # Run tests on deployed files task Test -depends Deploy { - Update-Project $workingSourceDir\Newtonsoft.Json\project.json $false - foreach ($build in $builds) { - if ($build.TestsFunction -ne $null) + if ($build.Enabled -and $build.TestsFunction -ne $null) { & $build.TestsFunction $build } @@ -202,7 +195,7 @@ task Test -depends Deploy { function MSBuildBuild($build) { $name = $build.Name - $finalDir = $build.FinalDir + $finalDir = $build.NuGetDir Write-Host Write-Host "Restoring $workingSourceDir\$name.sln" -ForegroundColor Green @@ -219,7 +212,8 @@ function MSBuildBuild($build) function EnsureNuGetExists() { - if (!(Test-Path $nugetPath)) { + if (!(Test-Path $nugetPath)) + { Write-Host "Couldn't find nuget.exe. Downloading from $nugetUrl to $nugetPath" (New-Object System.Net.WebClient).DownloadFile($nugetUrl, $nugetPath) } @@ -229,22 +223,27 @@ function NetCliBuild($build) { $name = $build.Name $framework = $build.NuGetDir - $projectPath = "$workingSourceDir\Newtonsoft.Json\project.json" + $projectPath = "$workingSourceDir\Newtonsoft.Json.Roslyn.sln" + $location = "$workingSourceDir\Newtonsoft.Json" + $additionalConstants = switch($signAssemblies) { $true { "SIGNED" } default { "" } } exec { .\Tools\Dotnet\dotnet-install.ps1 -Version $netCliVersion | Out-Default } try { - Set-Location "$workingSourceDir\Newtonsoft.Json" + Set-Location $location exec { dotnet --version | Out-Default } Write-Host -ForegroundColor Green "Restoring packages for $name" Write-Host - exec { dotnet restore $projectPath | Out-Default } - Write-Host -ForegroundColor Green "Building $projectPath $framework" - exec { dotnet build $projectPath -f $framework -c Release -o bin\Release\$framework | Out-Default } + exec { dotnet restore $projectPath "/p:DotnetOnly=true" } + + Write-Host -ForegroundColor Green "Building for $name" + Write-Host + + exec { dotnet build $projectPath "/p:DotnetOnly=true" "/p:Configuration=Release" "/p:AssemblyOriginatorKeyFile=$signKeyPath" "/p:SignAssembly=$signAssemblies" "/p:TreatWarningsAsErrors=$treatWarningsAsErrors" "/p:AdditionalConstants=$additionalConstants" } } finally { @@ -255,23 +254,22 @@ function NetCliBuild($build) function NetCliTests($build) { $name = $build.TestsName + $projectPath = "$workingSourceDir\Newtonsoft.Json.Tests\Newtonsoft.Json.Tests.Roslyn.csproj" + $location = "$workingSourceDir\Newtonsoft.Json.Tests" exec { .\Tools\Dotnet\dotnet-install.ps1 -Version $netCliVersion | Out-Default } try { - Set-Location "$workingSourceDir\Newtonsoft.Json.Tests" + Set-Location $location exec { dotnet --version | Out-Default } - Write-Host -ForegroundColor Green "Restoring packages for $name" - Write-Host - exec { dotnet restore "$workingSourceDir\Newtonsoft.Json.Tests\project.json" | Out-Default } - Write-Host -ForegroundColor Green "Ensuring test project builds for $name" Write-Host - exec { dotnet test "$workingSourceDir\Newtonsoft.Json.Tests\project.json" -f netcoreapp1.0 -c Release -parallel none | Out-Default } + exec { dotnet test $projectPath -f netcoreapp1.0 -c Release -l trx | Out-Default } + copy-item -Path "$location\TestResults\*.trx" -Destination $workingDir } finally { @@ -282,7 +280,7 @@ function NetCliTests($build) function NUnitTests($build) { $name = $build.TestsName - $finalDir = $build.FinalDir + $finalDir = $build.NuGetDir $framework = $build.Framework Write-Host -ForegroundColor Green "Copying test assembly $name to deployed directory" diff --git a/Src/Newtonsoft.Json.Dotnet.sln b/Src/Newtonsoft.Json.Dotnet.sln deleted file mode 100644 index 1e0211d5..00000000 --- a/Src/Newtonsoft.Json.Dotnet.sln +++ /dev/null @@ -1,34 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Visual Studio 14 -VisualStudioVersion = 14.0.23107.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{B520C700-7D45-4D82-BFB5-218FA68CF5CF}" - ProjectSection(SolutionItems) = preProject - global.json = global.json - NuGet.Config = NuGet.Config - EndProjectSection -EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Newtonsoft.Json.Dotnet", "Newtonsoft.Json\Newtonsoft.Json.Dotnet.xproj", "{779E052E-7218-4DA3-B419-FFB0F4C95081}" -EndProject -Project("{8BB2217D-0F2D-49D1-97BC-3654ED321F3B}") = "Newtonsoft.Json.Tests.Dotnet", "Newtonsoft.Json.Tests\Newtonsoft.Json.Tests.Dotnet.xproj", "{13E906AE-5A47-4354-8CAF-E63E8AC541ED}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Any CPU = Debug|Any CPU - Release|Any CPU = Release|Any CPU - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {779E052E-7218-4DA3-B419-FFB0F4C95081}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {779E052E-7218-4DA3-B419-FFB0F4C95081}.Debug|Any CPU.Build.0 = Debug|Any CPU - {779E052E-7218-4DA3-B419-FFB0F4C95081}.Release|Any CPU.ActiveCfg = Release|Any CPU - {779E052E-7218-4DA3-B419-FFB0F4C95081}.Release|Any CPU.Build.0 = Release|Any CPU - {13E906AE-5A47-4354-8CAF-E63E8AC541ED}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {13E906AE-5A47-4354-8CAF-E63E8AC541ED}.Debug|Any CPU.Build.0 = Debug|Any CPU - {13E906AE-5A47-4354-8CAF-E63E8AC541ED}.Release|Any CPU.ActiveCfg = Release|Any CPU - {13E906AE-5A47-4354-8CAF-E63E8AC541ED}.Release|Any CPU.Build.0 = Release|Any CPU - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/Src/Newtonsoft.Json.Roslyn.sln b/Src/Newtonsoft.Json.Roslyn.sln new file mode 100644 index 00000000..357026fa --- /dev/null +++ b/Src/Newtonsoft.Json.Roslyn.sln @@ -0,0 +1,54 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 15 +VisualStudioVersion = 15.0.26206.0 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{B520C700-7D45-4D82-BFB5-218FA68CF5CF}" + ProjectSection(SolutionItems) = preProject + global.json = global.json + NuGet.Config = NuGet.Config + EndProjectSection +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Newtonsoft.Json.Roslyn", "Newtonsoft.Json\Newtonsoft.Json.Roslyn.csproj", "{A97A4CB3-51AD-4605-BA9F-D6861E582C85}" +EndProject +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Newtonsoft.Json.Tests.Roslyn", "Newtonsoft.Json.Tests\Newtonsoft.Json.Tests.Roslyn.csproj", "{462EA9B9-8532-4330-9160-DF3450C70880}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Debug|x64 = Debug|x64 + Debug|x86 = Debug|x86 + Release|Any CPU = Release|Any CPU + Release|x64 = Release|x64 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|x64.ActiveCfg = Debug|x64 + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|x64.Build.0 = Debug|x64 + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|x86.ActiveCfg = Debug|x86 + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Debug|x86.Build.0 = Debug|x86 + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|Any CPU.Build.0 = Release|Any CPU + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|x64.ActiveCfg = Release|x64 + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|x64.Build.0 = Release|x64 + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|x86.ActiveCfg = Release|x86 + {A97A4CB3-51AD-4605-BA9F-D6861E582C85}.Release|x86.Build.0 = Release|x86 + {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|Any CPU.Build.0 = Debug|Any CPU + {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|x64.ActiveCfg = Debug|x64 + {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|x64.Build.0 = Debug|x64 + {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|x86.ActiveCfg = Debug|x86 + {462EA9B9-8532-4330-9160-DF3450C70880}.Debug|x86.Build.0 = Debug|x86 + {462EA9B9-8532-4330-9160-DF3450C70880}.Release|Any CPU.ActiveCfg = Release|Any CPU + {462EA9B9-8532-4330-9160-DF3450C70880}.Release|Any CPU.Build.0 = Release|Any CPU + {462EA9B9-8532-4330-9160-DF3450C70880}.Release|x64.ActiveCfg = Release|x64 + {462EA9B9-8532-4330-9160-DF3450C70880}.Release|x64.Build.0 = Release|x64 + {462EA9B9-8532-4330-9160-DF3450C70880}.Release|x86.ActiveCfg = Release|x86 + {462EA9B9-8532-4330-9160-DF3450C70880}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/Src/Newtonsoft.Json.Tests/Converters/VersionConverterTests.cs b/Src/Newtonsoft.Json.Tests/Converters/VersionConverterTests.cs index 8664d9ef..778d0826 100644 --- a/Src/Newtonsoft.Json.Tests/Converters/VersionConverterTests.cs +++ b/Src/Newtonsoft.Json.Tests/Converters/VersionConverterTests.cs @@ -59,60 +59,63 @@ namespace Newtonsoft.Json.Tests.Converters [TestFixture] public class VersionConverterTests : TestFixtureBase { - private void SerializeVersionClass(string version1, string version2) + internal static class VersionHelperClass { - VersionClass versionClass = new VersionClass(version1, version2); + internal static void SerializeVersionClass(string version1, string version2) + { + VersionClass versionClass = new VersionClass(version1, version2); - string json = JsonConvert.SerializeObject(versionClass, Formatting.Indented, new VersionConverter()); + string json = JsonConvert.SerializeObject(versionClass, Formatting.Indented, new VersionConverter()); - string expectedJson = string.Format(@"{{ + string expectedJson = string.Format(@"{{ ""StringProperty1"": ""StringProperty1"", ""Version1"": ""{0}"", ""Version2"": ""{1}"", ""StringProperty2"": ""StringProperty2"" }}", version1, version2); - StringAssert.AreEqual(expectedJson, json); + StringAssert.AreEqual(expectedJson, json); + } + + internal static void DeserializeVersionClass(string version1, string version2) + { + string json = string.Format(@"{{""StringProperty1"": ""StringProperty1"", ""Version1"": ""{0}"", ""Version2"": ""{1}"", ""StringProperty2"": ""StringProperty2""}}", version1, version2); + Version expectedVersion1 = new Version(version1); + Version expectedVersion2 = new Version(version2); + + VersionClass versionClass = JsonConvert.DeserializeObject(json, new VersionConverter()); + + Assert.AreEqual("StringProperty1", versionClass.StringProperty1); + Assert.AreEqual(expectedVersion1, versionClass.Version1); + Assert.AreEqual(expectedVersion2, versionClass.Version2); + Assert.AreEqual("StringProperty2", versionClass.StringProperty2); + } } [Test] public void SerializeVersionClass() { - SerializeVersionClass("1.0.0.0", "2.0.0.0"); - SerializeVersionClass("1.2.0.0", "2.3.0.0"); - SerializeVersionClass("1.2.3.0", "2.3.4.0"); - SerializeVersionClass("1.2.3.4", "2.3.4.5"); + VersionHelperClass.SerializeVersionClass("1.0.0.0", "2.0.0.0"); + VersionHelperClass.SerializeVersionClass("1.2.0.0", "2.3.0.0"); + VersionHelperClass.SerializeVersionClass("1.2.3.0", "2.3.4.0"); + VersionHelperClass.SerializeVersionClass("1.2.3.4", "2.3.4.5"); - SerializeVersionClass("1.2", "2.3"); - SerializeVersionClass("1.2.3", "2.3.4"); - SerializeVersionClass("1.2.3.4", "2.3.4.5"); - } - - private void DeserializeVersionClass(string version1, string version2) - { - string json = string.Format(@"{{""StringProperty1"": ""StringProperty1"", ""Version1"": ""{0}"", ""Version2"": ""{1}"", ""StringProperty2"": ""StringProperty2""}}", version1, version2); - Version expectedVersion1 = new Version(version1); - Version expectedVersion2 = new Version(version2); - - VersionClass versionClass = JsonConvert.DeserializeObject(json, new VersionConverter()); - - Assert.AreEqual("StringProperty1", versionClass.StringProperty1); - Assert.AreEqual(expectedVersion1, versionClass.Version1); - Assert.AreEqual(expectedVersion2, versionClass.Version2); - Assert.AreEqual("StringProperty2", versionClass.StringProperty2); + VersionHelperClass.SerializeVersionClass("1.2", "2.3"); + VersionHelperClass.SerializeVersionClass("1.2.3", "2.3.4"); + VersionHelperClass.SerializeVersionClass("1.2.3.4", "2.3.4.5"); } [Test] public void DeserializeVersionClass() { - DeserializeVersionClass("1.0.0.0", "2.0.0.0"); - DeserializeVersionClass("1.2.0.0", "2.3.0.0"); - DeserializeVersionClass("1.2.3.0", "2.3.4.0"); - DeserializeVersionClass("1.2.3.4", "2.3.4.5"); + VersionHelperClass.DeserializeVersionClass("1.0.0.0", "2.0.0.0"); + VersionHelperClass.DeserializeVersionClass("1.2.0.0", "2.3.0.0"); + VersionHelperClass.DeserializeVersionClass("1.2.3.0", "2.3.4.0"); + VersionHelperClass.DeserializeVersionClass("1.2.3.4", "2.3.4.5"); - DeserializeVersionClass("1.2", "2.3"); - DeserializeVersionClass("1.2.3", "2.3.4"); - DeserializeVersionClass("1.2.3.4", "2.3.4.5"); + VersionHelperClass.DeserializeVersionClass("1.2", "2.3"); + VersionHelperClass.DeserializeVersionClass("1.2.3", "2.3.4"); + VersionHelperClass.DeserializeVersionClass("1.2.3.4", "2.3.4.5"); } [Test] diff --git a/Src/Newtonsoft.Json.Tests/JsonConvertTest.cs b/Src/Newtonsoft.Json.Tests/JsonConvertTest.cs index 941c2aa9..06e5fe8a 100644 --- a/Src/Newtonsoft.Json.Tests/JsonConvertTest.cs +++ b/Src/Newtonsoft.Json.Tests/JsonConvertTest.cs @@ -885,9 +885,11 @@ namespace Newtonsoft.Json.Tests { Console.WriteLine(name); - DateTimeResult result = new DateTimeResult(); + DateTimeResult result = new DateTimeResult() + { + IsoDateRoundtrip = TestDateTimeFormat(value, DateFormatHandling.IsoDateFormat, DateTimeZoneHandling.RoundtripKind) + }; - result.IsoDateRoundtrip = TestDateTimeFormat(value, DateFormatHandling.IsoDateFormat, DateTimeZoneHandling.RoundtripKind); if (value is DateTime) { result.IsoDateLocal = TestDateTimeFormat(value, DateFormatHandling.IsoDateFormat, DateTimeZoneHandling.Local); @@ -1052,10 +1054,12 @@ namespace Newtonsoft.Json.Tests var now = DateTimeOffset.Now; var dict = new Dictionary { { "foo", now } }; - var settings = new JsonSerializerSettings(); - settings.DateFormatHandling = DateFormatHandling.IsoDateFormat; - settings.DateParseHandling = DateParseHandling.DateTimeOffset; - settings.DateTimeZoneHandling = DateTimeZoneHandling.RoundtripKind; + var settings = new JsonSerializerSettings() + { + DateFormatHandling = DateFormatHandling.IsoDateFormat, + DateParseHandling = DateParseHandling.DateTimeOffset, + DateTimeZoneHandling = DateTimeZoneHandling.RoundtripKind + }; var json = JsonConvert.SerializeObject(dict, settings); var newDict = new Dictionary(); @@ -1101,9 +1105,10 @@ namespace Newtonsoft.Json.Tests DateTime dt = DateTime.MaxValue; StringWriter sw = new StringWriter(); - JsonTextWriter writer = new JsonTextWriter(sw); - writer.DateFormatHandling = DateFormatHandling.MicrosoftDateFormat; - + JsonTextWriter writer = new JsonTextWriter(sw) + { + DateFormatHandling = DateFormatHandling.MicrosoftDateFormat + }; writer.WriteValue(dt); writer.Flush(); } diff --git a/Src/Newtonsoft.Json.Tests/JsonTextReaderTests/ReadAsyncTests.cs b/Src/Newtonsoft.Json.Tests/JsonTextReaderTests/ReadAsyncTests.cs index 6bdd831a..7674c0c5 100644 --- a/Src/Newtonsoft.Json.Tests/JsonTextReaderTests/ReadAsyncTests.cs +++ b/Src/Newtonsoft.Json.Tests/JsonTextReaderTests/ReadAsyncTests.cs @@ -1026,7 +1026,7 @@ namespace Newtonsoft.Json.Tests.JsonTextReaderTests #if !DNXCORE50 [Test] - [Ignore] + [Ignore("Probably not a Json.NET issue")] public async Task ReadFromNetworkStreamAsync() { const int port = 11999; diff --git a/Src/Newtonsoft.Json.Tests/JsonTextReaderTests/ReadTests.cs b/Src/Newtonsoft.Json.Tests/JsonTextReaderTests/ReadTests.cs index 916abbd6..5517c8ab 100644 --- a/Src/Newtonsoft.Json.Tests/JsonTextReaderTests/ReadTests.cs +++ b/Src/Newtonsoft.Json.Tests/JsonTextReaderTests/ReadTests.cs @@ -1043,7 +1043,7 @@ namespace Newtonsoft.Json.Tests.JsonTextReaderTests #if !DNXCORE50 [Test] - [Ignore] + [Ignore("Probably not a Json.NET issue")] public void ReadFromNetworkStream() { const int port = 11999; diff --git a/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Dotnet.xproj b/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Dotnet.xproj deleted file mode 100644 index e2efa374..00000000 --- a/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Dotnet.xproj +++ /dev/null @@ -1,18 +0,0 @@ - - - - 14.0 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - 13e906ae-5a47-4354-8caf-e63e8ac541ed - Newtonsoft.Json.Tests - ..\artifacts\obj\$(MSBuildProjectName) - .\bin\ - - - 2.0 - - - \ No newline at end of file diff --git a/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Roslyn.csproj b/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Roslyn.csproj new file mode 100644 index 00000000..47062c0f --- /dev/null +++ b/Src/Newtonsoft.Json.Tests/Newtonsoft.Json.Tests.Roslyn.csproj @@ -0,0 +1,99 @@ + + + + + + + + net45;net40;net35;net20;netcoreapp1.0 + netcoreapp1.0 + + 10.0.1 + James Newton-King + en-US + Copyright © James Newton-King 2008 + Newtonsoft.Json.Tests + false + + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + PreserveNewest + + + + + + + + + + + + + + + + + + + NET45;$(AdditionalConstants) + + + + + + + + + + + + + NET40;$(AdditionalConstants) + + + + + + + + + + + NET35;$(AdditionalConstants) + + + + + + NET20;$(AdditionalConstants) + + + + + + + + + + + + + NETSTANDARD1_1;DNXCORE50;PORTABLE;$(AdditionalConstants) + + \ No newline at end of file diff --git a/Src/Newtonsoft.Json.Tests/Properties/AssemblyInfo.cs b/Src/Newtonsoft.Json.Tests/Properties/AssemblyInfo.cs index c39c48bb..2ff59694 100644 --- a/Src/Newtonsoft.Json.Tests/Properties/AssemblyInfo.cs +++ b/Src/Newtonsoft.Json.Tests/Properties/AssemblyInfo.cs @@ -50,6 +50,10 @@ using System.Security; [assembly: AssemblyTitle("Json.NET Tests")] #endif +#if DNXCORE50 +[assembly: Xunit.CollectionBehavior(DisableTestParallelization = true)] +#endif + [assembly: AssemblyDescription("")] [assembly: AssemblyConfiguration("")] [assembly: AssemblyCompany("Newtonsoft")] @@ -78,5 +82,5 @@ using System.Security; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("7.0.0.0")] -[assembly: AssemblyFileVersion("7.0.2.18802")] \ No newline at end of file +[assembly: AssemblyVersion("10.0.0.0")] +[assembly: AssemblyFileVersion("10.0.0.0")] \ No newline at end of file diff --git a/Src/Newtonsoft.Json.Tests/Serialization/JsonSerializerTest.cs b/Src/Newtonsoft.Json.Tests/Serialization/JsonSerializerTest.cs index 38a31ca3..d88a7d86 100644 --- a/Src/Newtonsoft.Json.Tests/Serialization/JsonSerializerTest.cs +++ b/Src/Newtonsoft.Json.Tests/Serialization/JsonSerializerTest.cs @@ -82,6 +82,7 @@ using System.Dynamic; #endif #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; +using Action = Newtonsoft.Json.Serialization.Action; #else using System.Linq; #endif diff --git a/Src/Newtonsoft.Json.Tests/TestFixtureBase.cs b/Src/Newtonsoft.Json.Tests/TestFixtureBase.cs index 0de72507..cd137d1f 100644 --- a/Src/Newtonsoft.Json.Tests/TestFixtureBase.cs +++ b/Src/Newtonsoft.Json.Tests/TestFixtureBase.cs @@ -50,6 +50,7 @@ using System.Threading.Tasks; #endif #if NET20 using Newtonsoft.Json.Utilities.LinqBridge; +using Action = Newtonsoft.Json.Serialization.Action; #else using System.Linq; diff --git a/Src/Newtonsoft.Json.Tests/Utilities/DynamicReflectionDelegateFactoryTests.cs b/Src/Newtonsoft.Json.Tests/Utilities/DynamicReflectionDelegateFactoryTests.cs index 451de357..b3abbbce 100644 --- a/Src/Newtonsoft.Json.Tests/Utilities/DynamicReflectionDelegateFactoryTests.cs +++ b/Src/Newtonsoft.Json.Tests/Utilities/DynamicReflectionDelegateFactoryTests.cs @@ -43,7 +43,6 @@ using Newtonsoft.Json.Tests.Serialization; using Newtonsoft.Json.Utilities.LinqBridge; #else using System.Linq; - #endif namespace Newtonsoft.Json.Tests.Utilities @@ -101,7 +100,7 @@ namespace Newtonsoft.Json.Tests.Utilities Person p = new Person(); p.Name = "Hi"; - Func setter = DynamicReflectionDelegateFactory.Instance.CreateGet(typeof(Movie).GetProperty("Name")); + var setter = DynamicReflectionDelegateFactory.Instance.CreateGet(typeof(Movie).GetProperty("Name")); setter(p); }, "Unable to cast object of type 'Newtonsoft.Json.Tests.TestObjects.Organization.Person' to type 'Newtonsoft.Json.Tests.TestObjects.Movie'."); @@ -115,7 +114,7 @@ namespace Newtonsoft.Json.Tests.Utilities Person p = new Person(); Movie m = new Movie(); - Action setter = DynamicReflectionDelegateFactory.Instance.CreateSet(typeof(Movie).GetProperty("Name")); + var setter = DynamicReflectionDelegateFactory.Instance.CreateSet(typeof(Movie).GetProperty("Name")); setter(m, "Hi"); @@ -134,7 +133,7 @@ namespace Newtonsoft.Json.Tests.Utilities { object structTest = new StructTest(); - Action setter = DynamicReflectionDelegateFactory.Instance.CreateSet(typeof(StructTest).GetProperty("StringProperty")); + var setter = DynamicReflectionDelegateFactory.Instance.CreateSet(typeof(StructTest).GetProperty("StringProperty")); setter(structTest, "Hi"); @@ -151,7 +150,7 @@ namespace Newtonsoft.Json.Tests.Utilities { Movie m = new Movie(); - Action setter = DynamicReflectionDelegateFactory.Instance.CreateSet(typeof(Movie).GetProperty("Name")); + var setter = DynamicReflectionDelegateFactory.Instance.CreateSet(typeof(Movie).GetProperty("Name")); setter(m, new Version("1.1.1.1")); }, "Unable to cast object of type 'System.Version' to type 'System.String'."); @@ -194,11 +193,11 @@ namespace Newtonsoft.Json.Tests.Utilities [Test] public void ConstructorStruct() { - Func creator1 = DynamicReflectionDelegateFactory.Instance.CreateDefaultConstructor(typeof(MyStruct)); + var creator1 = DynamicReflectionDelegateFactory.Instance.CreateDefaultConstructor(typeof(MyStruct)); MyStruct myStruct1 = (MyStruct)creator1.Invoke(); Assert.AreEqual(0, myStruct1.IntProperty); - Func creator2 = DynamicReflectionDelegateFactory.Instance.CreateDefaultConstructor(typeof(MyStruct)); + var creator2 = DynamicReflectionDelegateFactory.Instance.CreateDefaultConstructor(typeof(MyStruct)); MyStruct myStruct2 = creator2.Invoke(); Assert.AreEqual(0, myStruct2.IntProperty); } diff --git a/Src/Newtonsoft.Json.Tests/project.json b/Src/Newtonsoft.Json.Tests/project.json deleted file mode 100644 index fbf2c3b6..00000000 --- a/Src/Newtonsoft.Json.Tests/project.json +++ /dev/null @@ -1,108 +0,0 @@ -{ - "version": "1.0.0-*", - "dependencies": { - "Newtonsoft.Json": { - "target": "project" - } - }, - "testRunner": "xunit", - "frameworks": { - /*"net45": { - "frameworkAssemblies": { - "System.Collections": "", - "System.ComponentModel.DataAnnotations": "", - "System.Data": "", - "System.Data.DataSetExtensions": "", - "System.Data.Entity": "", - "System.Data.Linq": "", - "System.Drawing": "", - "System.Numerics": "", - "System.Runtime": "", - "System.Runtime.Serialization": "", - "System.Web": "", - "System.Web.Extensions": "", - "System.Xml": "", - "System.Xml.Linq": "" - }, - "dependencies": { - "Autofac": "4.0.0-beta7-130", - "FSharp.Core": "4.0.0.1", - "NUnit": "2.6.4", - "System.Collections.Immutable": "1.1.37", - "System.Buffers": "4.0.0-rc2-23826" - } - }, - "net40": { - "frameworkAssemblies": { - "System.ComponentModel.DataAnnotations": "", - "System.Data": "", - "System.Data.DataSetExtensions": "", - "System.Data.Entity": "", - "System.Data.Linq": "", - "System.Drawing": "", - "System.Numerics": "", - "System.Runtime.Serialization": "", - "System.Web": "", - "System.Web.Extensions": "", - "System.Xml": "", - "System.Xml.Linq": "" - }, - "dependencies": { - "FSharp.Core": "4.0.0.1", - "NUnit": "2.6.4" - } - }, - "net35": { - "frameworkAssemblies": { - "System.ComponentModel.DataAnnotations": "", - "System.Core": "", - "System.Data": "", - "System.Data.DataSetExtensions": "", - "System.Data.Entity": "", - "System.Data.Linq": "", - "System.Drawing": "", - "System.Runtime.Serialization": "", - "System.Web": "", - "System.Web.Extensions": "", - "System.Xml": "", - "System.Xml.Linq": "" - }, - "dependencies": { - "NUnit": "2.6.4" - } - }, - "net20": { - "frameworkAssemblies": { - "System.Data": "", - "System.Drawing": "", - "System.Web": "", - "System.Xml": "" - }, - "dependencies": { - "NUnit": "2.6.4" - } - },*/ - "netcoreapp1.0": { - "buildOptions": { - "define": [ "NETSTANDARD1_1", "DNXCORE50", "PORTABLE" ] - }, - "dependencies": { - "Microsoft.NETCore.App": { - "type": "platform", - "version": "1.0.0" - }, - "System.Runtime.Serialization.Primitives": "4.1.1", - "System.Xml.XmlSerializer": "4.0.11", - "System.Runtime.Serialization.Json": "4.0.2", - "System.Runtime.Serialization.Xml": "4.1.1", - "System.ComponentModel.TypeConverter": "4.1.0", - "xunit": "2.1.0", - "dotnet-test-xunit": "2.2.0-preview2-build1029" - }, - "imports": [ - "dnxcore50", - "portable-net45+win8" - ] - } - } -} \ No newline at end of file diff --git a/Src/Newtonsoft.Json/Newtonsoft.Json.Dotnet.xproj b/Src/Newtonsoft.Json/Newtonsoft.Json.Dotnet.xproj deleted file mode 100644 index 07d8d0ba..00000000 --- a/Src/Newtonsoft.Json/Newtonsoft.Json.Dotnet.xproj +++ /dev/null @@ -1,18 +0,0 @@ - - - - 14.0 - $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) - - - - 779e052e-7218-4da3-b419-ffb0f4c95081 - Newtonsoft.Json - ..\artifacts\obj\$(MSBuildProjectName) - .\bin\ - - - 2.0 - - - \ No newline at end of file diff --git a/Src/Newtonsoft.Json/Newtonsoft.Json.Portable.csproj b/Src/Newtonsoft.Json/Newtonsoft.Json.Portable.csproj index 667b06e0..d568907e 100644 --- a/Src/Newtonsoft.Json/Newtonsoft.Json.Portable.csproj +++ b/Src/Newtonsoft.Json/Newtonsoft.Json.Portable.csproj @@ -19,8 +19,8 @@ true full false - bin\Debug\Portable\ - obj\Debug\Portable\ + bin\Debug\portable-net45+win8+wpa81+wp8\ + obj\Debug\portable-net45+win8+wpa81+wp8\ TRACE;DEBUG;CODE_ANALYSIS;$(DefineConstants);$(AdditionalConstants) prompt 4 @@ -30,11 +30,12 @@ pdbonly true - bin\Release\Portable\ - obj\Release\Portable\ - TRACE;CODE_ANALYSIS;$(DefineConstants);$(AdditionalConstants)prompt + bin\Release\portable-net45+win8+wpa81+wp8\ + obj\Release\portable-net45+win8+wpa81+wp8\ + TRACE;CODE_ANALYSIS;$(DefineConstants);$(AdditionalConstants) + prompt 4 - bin\Release\Portable\Newtonsoft.Json.xml + bin\Release\portable-net45+win8+wpa81+wp8\Newtonsoft.Json.xml true Newtonsoft.Json.ruleset diff --git a/Src/Newtonsoft.Json/Newtonsoft.Json.Roslyn.csproj b/Src/Newtonsoft.Json/Newtonsoft.Json.Roslyn.csproj new file mode 100644 index 00000000..339d5e6c --- /dev/null +++ b/Src/Newtonsoft.Json/Newtonsoft.Json.Roslyn.csproj @@ -0,0 +1,68 @@ + + + net45;net40;net35;net20;netstandard1.0;netstandard1.1;portable-net45+win8+wpa81+wp8 + netstandard1.0;netstandard1.1 + + 10.0.1 + beta1 + James Newton-King + Newtonsoft + Json.NET + Json.NET is a popular high-performance JSON framework for .NET + Copyright © James Newton-King 2008 + Json.NET is a popular high-performance JSON framework for .NET + en-US + Newtonsoft.Json + json + http://www.newtonsoft.com/content/images/nugeticon.png + http://www.newtonsoft.com/json + https://raw.github.com/JamesNK/Newtonsoft.Json/master/LICENSE.md + https://github.com/JamesNK/Newtonsoft.Json + git + true + Newtonsoft.Json + true + false + + + Json.NET + HAVE_ADO_NET;HAVE_APP_DOMAIN;HAVE_ASYNC;HAVE_BIG_INTEGER;HAVE_BINARY_SERIALIZATION;HAVE_CAS;HAVE_CHAR_TO_LOWER_WITH_CULTURE;HAVE_CHAR_TO_STRING_WITH_CULTURE;HAVE_COM_ATTRIBUTES;HAVE_COMPONENT_MODEL;HAVE_CONCURRENT_COLLECTIONS;HAVE_COVARIANT_GENERICS;HAVE_DATA_CONTRACTS;HAVE_DATE_TIME_OFFSET;HAVE_DB_NULL_TYPE_CODE;HAVE_DYNAMIC;HAVE_EMPTY_TYPES;HAVE_ENTITY_FRAMEWORK;HAVE_EXPRESSIONS;HAVE_FSHARP_TYPES;HAVE_FULL_REFLECTION;HAVE_GUID_TRY_PARSE;HAVE_HASH_SET;HAVE_ICLONEABLE;HAVE_ICONVERTIBLE;HAVE_IGNORE_DATA_MEMBER_ATTRIBUTE;HAVE_IMMUTABLE_COLLECTIONS;HAVE_INOTIFY_COLLECTION_CHANGED;HAVE_INOTIFY_PROPERTY_CHANGING;HAVE_ISET;HAVE_LINQ;HAVE_MEMORY_BARRIER;HAVE_METHOD_IMPL_ATTRIBUTE;HAVE_NON_SERIALIZED_ATTRIBUTE;HAVE_READ_ONLY_COLLECTIONS;HAVE_REFLECTION_EMIT;HAVE_SECURITY_SAFE_CRITICAL_ATTRIBUTE;HAVE_SERIALIZATION_BINDER_BIND_TO_NAME;HAVE_STREAM_READER_WRITER_CLOSE;HAVE_STRING_JOIN_WITH_ENUMERABLE;HAVE_TIME_SPAN_PARSE_WITH_CULTURE;HAVE_TIME_SPAN_TO_STRING_WITH_CULTURE;HAVE_TIME_ZONE_INFO;HAVE_TRACE_WRITER;HAVE_TYPE_DESCRIPTOR;HAVE_UNICODE_SURROGATE_DETECTION;HAVE_VARIANT_TYPE_PARAMETERS;HAVE_VERSION_TRY_PARSE;HAVE_XLINQ;HAVE_XML_DOCUMENT;$(AdditionalConstants) + + + NET40;HAVE_ADO_NET;HAVE_APP_DOMAIN;HAVE_BIG_INTEGER;HAVE_BINARY_SERIALIZATION;HAVE_CAS;HAVE_CHAR_TO_STRING_WITH_CULTURE;HAVE_CHAR_TO_LOWER_WITH_CULTURE;HAVE_COM_ATTRIBUTES;HAVE_COMPONENT_MODEL;HAVE_CONCURRENT_COLLECTIONS;HAVE_COVARIANT_GENERICS;HAVE_DATA_CONTRACTS;HAVE_DATE_TIME_OFFSET;HAVE_DB_NULL_TYPE_CODE;HAVE_DYNAMIC;HAVE_EMPTY_TYPES;HAVE_ENTITY_FRAMEWORK;HAVE_EXPRESSIONS;HAVE_FSHARP_TYPES;HAVE_FULL_REFLECTION;HAVE_GUID_TRY_PARSE;HAVE_HASH_SET;HAVE_ICLONEABLE;HAVE_ICONVERTIBLE;HAVE_IGNORE_DATA_MEMBER_ATTRIBUTE;HAVE_INOTIFY_COLLECTION_CHANGED;HAVE_INOTIFY_PROPERTY_CHANGING;HAVE_ISET;HAVE_LINQ;HAVE_MEMORY_BARRIER;HAVE_NON_SERIALIZED_ATTRIBUTE;HAVE_REFLECTION_EMIT;HAVE_SECURITY_SAFE_CRITICAL_ATTRIBUTE;HAVE_SERIALIZATION_BINDER_BIND_TO_NAME;HAVE_STREAM_READER_WRITER_CLOSE;HAVE_STRING_JOIN_WITH_ENUMERABLE;HAVE_TIME_SPAN_PARSE_WITH_CULTURE;HAVE_TIME_SPAN_TO_STRING_WITH_CULTURE;HAVE_TIME_ZONE_INFO;HAVE_TRACE_WRITER;HAVE_TYPE_DESCRIPTOR;HAVE_UNICODE_SURROGATE_DETECTION;HAVE_VARIANT_TYPE_PARAMETERS;HAVE_VERSION_TRY_PARSE;HAVE_XLINQ;HAVE_XML_DOCUMENT;$(AdditionalConstants) + + + NET35;HAVE_ADO_NET;HAVE_APP_DOMAIN;HAVE_BINARY_SERIALIZATION;HAVE_CAS;HAVE_CHAR_TO_STRING_WITH_CULTURE;HAVE_CHAR_TO_LOWER_WITH_CULTURE;HAVE_COM_ATTRIBUTES;HAVE_COMPONENT_MODEL;HAVE_DATA_CONTRACTS;HAVE_DATE_TIME_OFFSET;HAVE_DB_NULL_TYPE_CODE;HAVE_EMPTY_TYPES;HAVE_ENTITY_FRAMEWORK;HAVE_FULL_REFLECTION;HAVE_HASH_SET;HAVE_ICLONEABLE;HAVE_ICONVERTIBLE;HAVE_INOTIFY_PROPERTY_CHANGING;HAVE_LINQ;HAVE_MEMORY_BARRIER;HAVE_NON_SERIALIZED_ATTRIBUTE;HAVE_REFLECTION_EMIT;HAVE_STREAM_READER_WRITER_CLOSE;HAVE_TIME_ZONE_INFO;HAVE_TRACE_WRITER;HAVE_TYPE_DESCRIPTOR;HAVE_UNICODE_SURROGATE_DETECTION;HAVE_XLINQ;HAVE_XML_DOCUMENT;$(AdditionalConstants) + + + NET20;HAVE_ADO_NET;HAVE_APP_DOMAIN;HAVE_BINARY_SERIALIZATION;HAVE_CAS;HAVE_CHAR_TO_LOWER_WITH_CULTURE;HAVE_CHAR_TO_STRING_WITH_CULTURE;HAVE_COM_ATTRIBUTES;HAVE_COMPONENT_MODEL;HAVE_DB_NULL_TYPE_CODE;HAVE_EMPTY_TYPES;HAVE_FULL_REFLECTION;HAVE_ICLONEABLE;HAVE_ICONVERTIBLE;HAVE_MEMORY_BARRIER;HAVE_NON_SERIALIZED_ATTRIBUTE;HAVE_REFLECTION_EMIT;HAVE_STREAM_READER_WRITER_CLOSE;HAVE_TRACE_WRITER;HAVE_TYPE_DESCRIPTOR;HAVE_UNICODE_SURROGATE_DETECTION;HAVE_XML_DOCUMENT;$(AdditionalConstants) + + + + + + + + + Json.NET .NET Standard 1.0 + NETSTANDARD1_0;PORTABLE;HAVE_ASYNC;HAVE_COVARIANT_GENERICS;HAVE_DATA_CONTRACTS;HAVE_DATE_TIME_OFFSET;HAVE_DYNAMIC;HAVE_EXPRESSIONS;HAVE_FSHARP_TYPES;HAVE_GUID_TRY_PARSE;HAVE_HASH_SET;HAVE_IGNORE_DATA_MEMBER_ATTRIBUTE;HAVE_IMMUTABLE_COLLECTIONS;HAVE_INOTIFY_COLLECTION_CHANGED;HAVE_ISET;HAVE_LINQ;HAVE_METHOD_IMPL_ATTRIBUTE;HAVE_READ_ONLY_COLLECTIONS;HAVE_REFLECTION_BINDER;HAVE_SERIALIZATION_BINDER_BIND_TO_NAME;HAVE_STRING_JOIN_WITH_ENUMERABLE;HAVE_TIME_SPAN_PARSE_WITH_CULTURE;HAVE_TIME_SPAN_TO_STRING_WITH_CULTURE;HAVE_TIME_ZONE_INFO;HAVE_TYPE_DESCRIPTOR;HAVE_UNICODE_SURROGATE_DETECTION;HAVE_VARIANT_TYPE_PARAMETERS;HAVE_VERSION_TRY_PARSE;HAVE_XLINQ;$(AdditionalConstants) + + + + + + + + + Json.NET .NET Standard 1.1 + NETSTANDARD1_1;PORTABLE;HAVE_ASYNC;HAVE_BIG_INTEGER;HAVE_COVARIANT_GENERICS;HAVE_DATA_CONTRACTS;HAVE_DATE_TIME_OFFSET;HAVE_DYNAMIC;HAVE_EXPRESSIONS;HAVE_FSHARP_TYPES;HAVE_GUID_TRY_PARSE;HAVE_HASH_SET;HAVE_IGNORE_DATA_MEMBER_ATTRIBUTE;HAVE_IMMUTABLE_COLLECTIONS;HAVE_INOTIFY_COLLECTION_CHANGED;HAVE_ISET;HAVE_LINQ;HAVE_METHOD_IMPL_ATTRIBUTE;HAVE_READ_ONLY_COLLECTIONS;HAVE_REFLECTION_BINDER;HAVE_SERIALIZATION_BINDER_BIND_TO_NAME;HAVE_STRING_JOIN_WITH_ENUMERABLE;HAVE_TIME_SPAN_PARSE_WITH_CULTURE;HAVE_TIME_SPAN_TO_STRING_WITH_CULTURE;HAVE_TIME_ZONE_INFO;HAVE_TYPE_DESCRIPTOR;HAVE_UNICODE_SURROGATE_DETECTION;HAVE_VARIANT_TYPE_PARAMETERS;HAVE_VERSION_TRY_PARSE;HAVE_XLINQ;$(AdditionalConstants) + + + PORTABLE;HAVE_ASYNC;HAVE_COVARIANT_GENERICS;HAVE_DATA_CONTRACTS;HAVE_DATE_TIME_OFFSET;HAVE_DYNAMIC;HAVE_EXPRESSIONS;HAVE_FSHARP_TYPES;HAVE_GUID_TRY_PARSE;HAVE_IGNORE_DATA_MEMBER_ATTRIBUTE;HAVE_IMMUTABLE_COLLECTIONS;HAVE_ISET;HAVE_LINQ;HAVE_METHOD_IMPL_ATTRIBUTE;HAVE_READ_ONLY_COLLECTIONS;HAVE_REFLECTION_BINDER;HAVE_SERIALIZATION_BINDER_BIND_TO_NAME;HAVE_STRING_JOIN_WITH_ENUMERABLE;HAVE_TIME_SPAN_PARSE_WITH_CULTURE;HAVE_TIME_SPAN_TO_STRING_WITH_CULTURE;HAVE_TIME_ZONE_INFO;HAVE_VARIANT_TYPE_PARAMETERS;HAVE_VERSION_TRY_PARSE;HAVE_XLINQ;HAVE_INOTIFY_COLLECTION_CHANGED;$(AdditionalConstants) + .NETPortable + v4.5 + Profile259 + .NETPortable,Version=v0.0,Profile=Profile259 + $(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets + + \ No newline at end of file diff --git a/Src/Newtonsoft.Json/Properties/AssemblyInfo.cs b/Src/Newtonsoft.Json/Properties/AssemblyInfo.cs index c1749760..584096b5 100644 --- a/Src/Newtonsoft.Json/Properties/AssemblyInfo.cs +++ b/Src/Newtonsoft.Json/Properties/AssemblyInfo.cs @@ -96,6 +96,6 @@ using System.Security; // You can specify all the values or you can default the Revision and Build Numbers // by using the '*' as shown below: -[assembly: AssemblyVersion("7.0.0.0")] -[assembly: AssemblyFileVersion("7.0.2.18802")] +[assembly: AssemblyVersion("10.0.0.0")] +[assembly: AssemblyFileVersion("10.0.0.0")] [assembly: CLSCompliant(true)] \ No newline at end of file diff --git a/Src/Newtonsoft.Json/project.json b/Src/Newtonsoft.Json/project.json deleted file mode 100644 index d6c7defb..00000000 --- a/Src/Newtonsoft.Json/project.json +++ /dev/null @@ -1,269 +0,0 @@ -{ - "version": "1.0.0-*", - "title": "Json.NET", - "description": "Json.NET is a popular high-performance JSON framework for .NET", - "language": "en-US", - "authors": [ "James Newton-King" ], - "packOptions": { - "projectUrl": "http://www.newtonsoft.com/json", - "tags": [ "json" ], - "licenseUrl": "https://raw.github.com/JamesNK/Newtonsoft.Json/master/LICENSE.md", - "iconUrl": "http://www.newtonsoft.com/content/images/nugeticon.png", - "repository": { - "type": "git", - "url": "git://github.com/JamesNK/Newtonsoft.Json" - } - }, - "frameworks": { - "net45": { - "frameworkAssemblies": { - "System.Data": "", - "System.Numerics": "", - "System.Runtime.Serialization": "", - "System.Xml": "", - "System.Xml.Linq": "" - } - }, - "net40": { - "frameworkAssemblies": { - "System.Data": "", - "System.Numerics": "", - "System.Runtime.Serialization": "", - "System.Xml": "", - "System.Xml.Linq": "" - } - }, - "net35": { - "frameworkAssemblies": { - "System.Core": "", - "System.Data": "", - "System.Runtime.Serialization": "", - "System.Xml": "", - "System.Xml.Linq": "" - } - }, - "net20": { - "frameworkAssemblies": { - "System.Data": "", - "System.Xml": "" - } - }, - ".NETPortable,Version=v4.5,Profile=Profile259": { - "buildOptions": { - "define": [ - "PORTABLE", - "HAVE_ASYNC", - "HAVE_COVARIANT_GENERICS", - "HAVE_DATA_CONTRACTS", - "HAVE_DATE_TIME_OFFSET", - "HAVE_DYNAMIC", - "HAVE_EXPRESSIONS", - "HAVE_FSHARP_TYPES", - "HAVE_GUID_TRY_PARSE", - "HAVE_IGNORE_DATA_MEMBER_ATTRIBUTE", - "HAVE_IMMUTABLE_COLLECTIONS", - "HAVE_ISET", - "HAVE_LINQ", - "HAVE_METHOD_IMPL_ATTRIBUTE", - "HAVE_READ_ONLY_COLLECTIONS", - "HAVE_REFLECTION_BINDER", - "HAVE_SERIALIZATION_BINDER_BIND_TO_NAME", - "HAVE_STRING_JOIN_WITH_ENUMERABLE", - "HAVE_TIME_SPAN_PARSE_WITH_CULTURE", - "HAVE_TIME_SPAN_TO_STRING_WITH_CULTURE", - "HAVE_TIME_ZONE_INFO", - "HAVE_VARIANT_TYPE_PARAMETERS", - "HAVE_VERSION_TRY_PARSE", - "HAVE_XLINQ", - "HAVE_INOTIFY_COLLECTION_CHANGED" - ] - }, - "frameworkAssemblies": { - "Microsoft.CSharp": "", - "System": "", - "System.Collections": "", - "System.Core": "", - "System.Diagnostics.Debug": "", - "System.Dynamic.Runtime": "", - "System.Globalization": "", - "System.IO": "", - "System.Linq": "", - "System.Linq.Expressions": "", - "System.ObjectModel": "", - "System.Reflection": "", - "System.Reflection.Extensions": "", - "System.Resources.ResourceManager": "", - "System.Runtime": "", - "System.Runtime.Extensions": "", - "System.Runtime.Serialization": "", - "System.Runtime.Serialization.Primitives": "", - "System.Text.Encoding": "", - "System.Text.Encoding.Extensions": "", - "System.Text.RegularExpressions": "", - "System.Threading": "", - "System.Threading.Tasks": "", - "System.Xml": "", - "System.Xml.Linq": "", - "System.Xml.ReaderWriter": "", - "System.Xml.XDocument": "" - } - }, - ".NETPortable,Version=v4.0,Profile=Profile328": { - "buildOptions": { - "define": [ - "PORTABLE40", - "HAVE_CHAR_TO_LOWER_WITH_CULTURE", - "HAVE_DATA_CONTRACTS", - "HAVE_DATE_TIME_OFFSET", - "HAVE_DB_NULL_TYPE_CODE", - "HAVE_FSHARP_TYPES", - "HAVE_FULL_REFLECTION", - "HAVE_GUID_TRY_PARSE", - "HAVE_ICONVERTIBLE", - "HAVE_IGNORE_DATA_MEMBER_ATTRIBUTE", - "HAVE_IMMUTABLE_COLLECTIONS", - "HAVE_ISET", - "HAVE_LINQ", - "HAVE_MEMORY_BARRIER", - "HAVE_SECURITY_SAFE_CRITICAL_ATTRIBUTE", - "HAVE_SERIALIZATION_BINDER_BIND_TO_NAME", - "HAVE_STRING_JOIN_WITH_ENUMERABLE", - "HAVE_TIME_SPAN_PARSE_WITH_CULTURE", - "HAVE_TIME_SPAN_TO_STRING_WITH_CULTURE", - "HAVE_TIME_ZONE_INFO", - "HAVE_VARIANT_TYPE_PARAMETERS", - "HAVE_VERSION_TRY_PARSE" - ] - }, - "frameworkAssemblies": { - "mscorlib": "", - "System": "", - "System.Core": "", - "System.Runtime.Serialization": "", - "System.Xml": "" - } - }, - "netstandard1.0": { - "buildOptions": { - "define": [ - "NETSTANDARD1_0", - "PORTABLE", - "HAVE_ASYNC", - "HAVE_COVARIANT_GENERICS", - "HAVE_DATA_CONTRACTS", - "HAVE_DATE_TIME_OFFSET", - "HAVE_DYNAMIC", - "HAVE_EXPRESSIONS", - "HAVE_FSHARP_TYPES", - "HAVE_GUID_TRY_PARSE", - "HAVE_HASH_SET", - "HAVE_IGNORE_DATA_MEMBER_ATTRIBUTE", - "HAVE_IMMUTABLE_COLLECTIONS", - "HAVE_INOTIFY_COLLECTION_CHANGED", - "HAVE_ISET", - "HAVE_LINQ", - "HAVE_METHOD_IMPL_ATTRIBUTE", - "HAVE_READ_ONLY_COLLECTIONS", - "HAVE_REFLECTION_BINDER", - "HAVE_SERIALIZATION_BINDER_BIND_TO_NAME", - "HAVE_STRING_JOIN_WITH_ENUMERABLE", - "HAVE_TIME_SPAN_PARSE_WITH_CULTURE", - "HAVE_TIME_SPAN_TO_STRING_WITH_CULTURE", - "HAVE_TIME_ZONE_INFO", - "HAVE_TYPE_DESCRIPTOR", - "HAVE_UNICODE_SURROGATE_DETECTION", - "HAVE_VARIANT_TYPE_PARAMETERS", - "HAVE_VERSION_TRY_PARSE", - "HAVE_XLINQ" - ] - }, - "dependencies": { - "Microsoft.CSharp": "4.0.1", - "System.Collections": "4.0.11", - "System.ComponentModel.TypeConverter": "4.1.0", - "System.Diagnostics.Debug": "4.0.11", - "System.Dynamic.Runtime": "4.0.11", - "System.Globalization": "4.0.11", - "System.IO": "4.1.0", - "System.Linq": "4.1.0", - "System.Linq.Expressions": "4.1.0", - "System.ObjectModel": "4.0.12", - "System.Reflection": "4.1.0", - "System.Reflection.Extensions": "4.0.1", - "System.Resources.ResourceManager": "4.0.1", - "System.Runtime": "4.1.0", - "System.Runtime.Extensions": "4.1.0", - "System.Runtime.Serialization.Primitives": "4.1.1", - "System.Text.Encoding": "4.0.11", - "System.Text.Encoding.Extensions": "4.0.11", - "System.Text.RegularExpressions": "4.1.0", - "System.Threading": "4.0.11", - "System.Threading.Tasks": "4.0.11", - "System.Xml.ReaderWriter": "4.0.11", - "System.Xml.XDocument": "4.0.11" - } - }, - "netstandard1.1": { - "buildOptions": { - "define": [ - "NETSTANDARD1_1", - "PORTABLE", - "HAVE_ASYNC", - "HAVE_BIG_INTEGER", - "HAVE_COVARIANT_GENERICS", - "HAVE_DATA_CONTRACTS", - "HAVE_DATE_TIME_OFFSET", - "HAVE_DYNAMIC", - "HAVE_EXPRESSIONS", - "HAVE_FSHARP_TYPES", - "HAVE_GUID_TRY_PARSE", - "HAVE_HASH_SET", - "HAVE_IGNORE_DATA_MEMBER_ATTRIBUTE", - "HAVE_IMMUTABLE_COLLECTIONS", - "HAVE_INOTIFY_COLLECTION_CHANGED", - "HAVE_ISET", - "HAVE_LINQ", - "HAVE_METHOD_IMPL_ATTRIBUTE", - "HAVE_READ_ONLY_COLLECTIONS", - "HAVE_REFLECTION_BINDER", - "HAVE_SERIALIZATION_BINDER_BIND_TO_NAME", - "HAVE_STRING_JOIN_WITH_ENUMERABLE", - "HAVE_TIME_SPAN_PARSE_WITH_CULTURE", - "HAVE_TIME_SPAN_TO_STRING_WITH_CULTURE", - "HAVE_TIME_ZONE_INFO", - "HAVE_TYPE_DESCRIPTOR", - "HAVE_UNICODE_SURROGATE_DETECTION", - "HAVE_VARIANT_TYPE_PARAMETERS", - "HAVE_VERSION_TRY_PARSE", - "HAVE_XLINQ" - ] - }, - "dependencies": { - "Microsoft.CSharp": "4.0.1", - "System.Collections": "4.0.11", - "System.ComponentModel.TypeConverter": "4.1.0", - "System.Diagnostics.Debug": "4.0.11", - "System.Dynamic.Runtime": "4.0.11", - "System.Globalization": "4.0.11", - "System.IO": "4.1.0", - "System.Linq": "4.1.0", - "System.Linq.Expressions": "4.1.0", - "System.ObjectModel": "4.0.12", - "System.Reflection": "4.1.0", - "System.Reflection.Extensions": "4.0.1", - "System.Resources.ResourceManager": "4.0.1", - "System.Runtime": "4.1.0", - "System.Runtime.Extensions": "4.1.0", - "System.Runtime.Numerics": "4.0.1", - "System.Runtime.Serialization.Primitives": "4.1.1", - "System.Text.Encoding": "4.0.11", - "System.Text.Encoding.Extensions": "4.0.11", - "System.Text.RegularExpressions": "4.1.0", - "System.Threading": "4.0.11", - "System.Threading.Tasks": "4.0.11", - "System.Xml.ReaderWriter": "4.0.11", - "System.Xml.XDocument": "4.0.11" - } - } - } -} \ No newline at end of file diff --git a/Src/global.json b/Src/global.json index df950d42..0ddf69c7 100644 --- a/Src/global.json +++ b/Src/global.json @@ -1,6 +1,3 @@ { - "projects": [ "src" ], - "sdk": { - "version": "1.0.0-preview2-003121" - } + "projects": [ "src" ] } \ No newline at end of file