Permalink
Browse files

Adding new projects and solution for .NET Standard version of ODL.

Creating a new solution file for .NET Standard projects. Adding .NET
Standard versions of Microsoft.Spatial, Microsoft.OData.Edm,
Microsoft.OData.Core, and Microsoft.OData.Client. MSBuild doesn't
pre-process the dependency graph provided by the csproj files, so
explicitly spoonfeeding the chain in the Microsoft.Test.OData.DotNetStandard.sln
file.

Update build script to default to VS 2015 for .NET Standard,
removing NuGetPackage test project and deprecating
it, adding E2E .NET Standard project

Remove duplicate file: IEdmReferentialConstraint.cs.

Change version to 7.1.0

Note: "nuget restore" needs to be run manually on the new project
files for them to compile.
  • Loading branch information...
robward-ms committed Mar 28, 2017
1 parent a215f9e commit 6f746cd0cd9d62a5bc57e345a910a6f9d8d4dc1b
Showing with 6,405 additions and 1,587 deletions.
  1. +13 −9 .gitignore
  2. +3 −3 README.md
  3. +9 −22 build.ps1
  4. +0 −191 sln/Microsoft.Test.OData.DotNetCore.sln
  5. +193 −0 sln/Microsoft.Test.OData.DotNetStandard.sln
  6. +919 −0 src/Microsoft.OData.Client/Build.NetStandard/Microsoft.OData.Client.NetStandard.csproj
  7. +15 −0 src/Microsoft.OData.Client/Build.NetStandard/project.json
  8. +8 −4 src/Microsoft.OData.Client/Build.NuGet/Microsoft.OData.Client.Debug.nuspec
  9. +24 −12 src/Microsoft.OData.Client/Build.NuGet/Microsoft.OData.Client.Nightly.Release.nuspec
  10. +24 −12 src/Microsoft.OData.Client/Build.NuGet/Microsoft.OData.Client.Release.nuspec
  11. +1,749 −0 src/Microsoft.OData.Core/Build.NetStandard/Microsoft.OData.Core.NetStandard.csproj
  12. +10 −0 src/Microsoft.OData.Core/Build.NetStandard/project.json
  13. +8 −4 src/Microsoft.OData.Core/Build.NuGet/Microsoft.OData.Core.Debug.nuspec
  14. +24 −12 src/Microsoft.OData.Core/Build.NuGet/Microsoft.OData.Core.Nightly.Release.nuspec
  15. +24 −12 src/Microsoft.OData.Core/Build.NuGet/Microsoft.OData.Core.Release.nuspec
  16. +1,490 −0 src/Microsoft.OData.Edm/Build.NetStandard/Microsoft.OData.Edm.NetStandard.csproj
  17. +10 −0 src/Microsoft.OData.Edm/Build.NetStandard/project.json
  18. +8 −4 src/Microsoft.OData.Edm/Build.NuGet/Microsoft.OData.Edm.Debug.nuspec
  19. +24 −12 src/Microsoft.OData.Edm/Build.NuGet/Microsoft.OData.Edm.Nightly.Release.nuspec
  20. +24 −12 src/Microsoft.OData.Edm/Build.NuGet/Microsoft.OData.Edm.Release.nuspec
  21. +0 −26 src/Microsoft.OData.Edm/Csdl/Semantics/IEdmReferentialConstraint.cs
  22. +178 −0 src/Microsoft.Spatial/Build.NetStandard/Microsoft.Spatial.NetStandard.csproj
  23. +9 −0 src/Microsoft.Spatial/Build.NetStandard/project.json
  24. +8 −4 src/Microsoft.Spatial/Build.NuGet/Microsoft.Spatial.Debug.nuspec
  25. +24 −12 src/Microsoft.Spatial/Build.NuGet/Microsoft.Spatial.Nightly.Release.nuspec
  26. +24 −12 src/Microsoft.Spatial/Build.NuGet/Microsoft.Spatial.Release.nuspec
  27. +5 −9 test/DotNetCoreTests/Microsoft.OData.E2E.DotNetCore/Microsoft.OData.E2E.DotNetCore.xproj
  28. +11 −5 test/DotNetCoreTests/Microsoft.OData.E2E.DotNetCore/project.json
  29. +1,378 −992 test/DotNetCoreTests/Microsoft.OData.E2E.DotNetCore/project.lock.json
  30. +0 −74 test/DotNetCoreTests/Microsoft.Test.OData.NuGetPackages/Microsoft.Test.OData.NuGetPackages.csproj
  31. +0 −6 test/DotNetCoreTests/Microsoft.Test.OData.NuGetPackages/NuGet.Config
  32. +0 −30 ...tNetCoreTests/Microsoft.Test.OData.NuGetPackages/nuspecs/Microsoft.OData.Client.dotnetcore.nuspec
  33. +0 −27 ...DotNetCoreTests/Microsoft.Test.OData.NuGetPackages/nuspecs/Microsoft.OData.Core.dotnetcore.nuspec
  34. +0 −23 .../DotNetCoreTests/Microsoft.Test.OData.NuGetPackages/nuspecs/Microsoft.OData.Edm.dotnetcore.nuspec
  35. +0 −23 test/DotNetCoreTests/Microsoft.Test.OData.NuGetPackages/nuspecs/Microsoft.Spatial.dotnetcore.nuspec
  36. +0 −17 ...Tests/Microsoft.Test.OData.NuGetPackages/nuspecs/Microsoft.Test.OData.Framework.dotnetcore.nuspec
  37. +0 −17 ...oft.Test.OData.NuGetPackages/nuspecs/Microsoft.Test.OData.Services.TestServices.dotnetcore.nuspec
  38. +58 −0 .../EndToEndTests/Framework/Core/Build.NetStandard/Microsoft.Test.OData.Framework.NetStandard.csproj
  39. +9 −0 test/EndToEndTests/Framework/Core/Build.NetStandard/project.json
  40. +109 −0 ...ices/TestServices/Build.NetStandard/Microsoft.Test.OData.Services.TestServices.NetStandard.csproj
  41. +9 −0 test/EndToEndTests/Services/TestServices/Build.NetStandard/project.json
  42. +3 −0 tools/CustomMSBuild/Build.props
  43. +1 −1 tools/CustomMSBuild/Versioning.props
View
@@ -8,6 +8,7 @@ obj/
*.user
*.vstemplate
!src/CodeGen/ODataT4CodeGenerator.vstemplate
*.lock.json
# TFS files
*.vspscc
@@ -17,28 +18,31 @@ sln/TestResults/
# VS2015 IDE generated files
sln/*.ide/
sln/.vs/
.vs/
# StyleCop files
StyleCop.Cache
# Localization files
src/Microsoft.OData.Edm/Microsoft.OData.Edm.xml
src/Microsoft.OData.Core/Microsoft.OData.Core.xml
src/Microsoft.Spatial/Microsoft.Spatial.xml
src/CodeGen/Microsoft.OData.Service.Design.T4.xml
src/Microsoft.OData.Client/Microsoft.OData.Client.txt
src/Microsoft.OData.Client/Microsoft.OData.Client.xml
test/FunctionalTests/Service/Microsoft.OData.Service.xml
src/Microsoft.OData.Edm/Build.Net35/Microsoft.OData.Edm.NetFX35.xml
src/Microsoft.OData.Client/*/Microsoft.OData.Client.txt
src/Microsoft.OData.Client/*/Microsoft.OData.Client.xml
src/Microsoft.OData.Core/Microsoft.OData.Core.xml
src/Microsoft.OData.Core/*/Microsoft.OData.Core.xml
src/Microsoft.OData.Core/Build.Net35/Microsoft.OData.Core.NetFX35.xml
src/Microsoft.OData.Edm/Microsoft.OData.Edm.xml
src/Microsoft.OData.Edm/*/Microsoft.OData.Edm.xml
src/Microsoft.OData.Edm/Build.Net35/Microsoft.OData.Edm.NetFX35.xml
src/Microsoft.Spatial/Microsoft.Spatial.xml
src/Microsoft.Spatial/*/Microsoft.Spatial.xml
src/Microsoft.Spatial/Build.Net35/Microsoft.Spatial.NetFX35.xml
src/Microsoft.OData.Client/Build.Portable/Microsoft.OData.Client.txt
src/Microsoft.OData.Client/Build.Portable/Microsoft.OData.Client.xml
src/CodeGen/Microsoft.OData.Service.Design.T4.xml
src/Web/GenExe/DataSvcUtil.xml
src/Web/ODataAdoNetProvider/DataFeedClient.35/Microsoft.Data.DataFeedClient.xml
src/Web/ODataAdoNetProvider/DataFeedClient.40/Microsoft.Data.DataFeedClient.xml
src/Web/Providers/EF6/Microsoft.OData.EntityFrameworkProvider.xml
test/FunctionalTests/Service/Microsoft.OData.Service.xml
test/FunctionalTests/Tools/Commander.Common/CsdlToWorkspaceGenerator.xml
test/FunctionalTests/Framework/AstoriaTestFramework.xml
View
@@ -16,8 +16,6 @@ For more information about OData, please refer to the following resources:
## 2. Project structure
The project currently has six branches: [ODataV4-6.x](https://github.com/OData/odata.net/tree/ODataV4-6.x), [ODataV4-7.x](https://github.com/OData/odata.net/tree/ODataV4-7.x), [master](https://github.com/OData/odata.net/tree/master), [gh-pages](https://github.com/OData/odata.net/tree/gh-pages), [ODATAV3](https://github.com/OData/odata.net/tree/ODATAV3), and [WCFDSV4](https://github.com/OData/odata.net/tree/WCFDSV4).
**ODataV4-6.x branch**
The ODataV4-6.x branch includes the .NET libraries for OData V4 only that are now most actively iterated and maintained by the OData team, it has newest OData lib 6.x release code base. It has the following libraries:
@@ -30,7 +28,9 @@ For these libraries, we accept bug reports and pull requests. The corresponding
**ODataV4-7.x branch**
The ODataV4-7.x branch includes the .NET libraries for OData V4 only that are in development now. It is evolved from ODataV4-6.x with kinds of improvements, new features and so on. It is in-compatible with ODataV4-6.x release and will become the master branch after it is released. It has same libraries as ODataV4-6.x branch.
The ODataV4-7.x builds upon the [ODataV4-6.x branch](https://github.com/OData/odata.net/tree/ODataV4-6.x) and produces both [PCL (Portable Class Libraries) Profile111](https://msdn.microsoft.com/library/gg597391.aspx) and [.NET Standard 1.1](https://docs.microsoft.com/en-us/dotnet/articles/standard/library) libraries. Following ODataV4-6.x, this branch implements new features with the same libraries and will become the master branch after release.
While Visual Studio 2017 has been released, this branch currently compiles against Visual Studio 2015 due to internal migrations to Visual Studio 2017--rest assured, the desire to move to the new product is highly visible. With that said, this branch utilizes `project.json` files for its `.csproj` files, there is a change in the build process for those who are unfamiliar. Please either 1) run `nuget restore Microsoft.Test.OData.DotNetStandard.sln` in the commandline of the `odata.net/sln` directory, or 2) enable automatic package restore via Visual Studio to build them (in VS2015, go to `Tools->NuGet Package Manager->Package Manager Settings`. Enable "Allow NuGet to download missing packages".). More info regarding the command can be found [here](https://docs.microsoft.com/en-us/nuget/consume-packages/package-restore).
For these libraries, we accept feature requirements, but we do not accept bug reports and pull requests before first release is ready.
View
@@ -44,22 +44,14 @@ $env:ENLISTMENT_ROOT = Split-Path -Parent $MyInvocation.MyCommand.Definition
$ENLISTMENT_ROOT = Split-Path -Parent $MyInvocation.MyCommand.Definition
$LOGDIR = $ENLISTMENT_ROOT + "\bin"
# Default to use Visual Studio 2013.
$MSBUILD = $PROGRAMFILESX86 + "\MSBuild\12.0\Bin\MSBuild.exe"
$VSTEST = $PROGRAMFILESX86 + "\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe"
$FXCOPDIR = $PROGRAMFILESX86 + "\Microsoft Visual Studio 12.0\Team Tools\Static Analysis Tools\FxCop"
# Default to use Visual Studio 2015 since the upgrade to .Net Core.
$VS14MSBUILD=$PROGRAMFILESX86 + "\MSBuild\14.0\Bin\MSBuild.exe"
$MSBUILD = $VS14MSBUILD
$VSTEST = $PROGRAMFILESX86 + "\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe"
$FXCOPDIR = $PROGRAMFILESX86 + "\Microsoft Visual Studio 14.0\Team Tools\Static Analysis Tools\FxCop"
$SN = $PROGRAMFILESX86 + "\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\sn.exe"
$SNx64 = $PROGRAMFILESX86 + "\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1 Tools\x64\sn.exe"
# Fall back to Visual Studio 2015.
$VS14MSBUILD=$PROGRAMFILESX86 + "\MSBuild\14.0\Bin\MSBuild.exe"
if (!(Test-Path $MSBUILD) -or !(Test-Path $VSTEST) -or !(Test-Path $FXCOPDIR))
{
$MSBUILD = $VS14MSBUILD
$VSTEST = $PROGRAMFILESX86 + "\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe"
$FXCOPDIR = $PROGRAMFILESX86 + "\Microsoft Visual Studio 14.0\Team Tools\Static Analysis Tools\FxCop"
}
$FXCOP = $FXCOPDIR + "\FxCopCmd.exe"
$BUILDLOG = $LOGDIR + "\msbuild.log"
$TESTLOG = $LOGDIR + "\mstest.log"
@@ -263,11 +255,6 @@ Function RunBuild ($sln, $vsToolVersion)
$slnpath = $ENLISTMENT_ROOT + "\sln\$sln"
$Conf = "/p:Configuration=" + "$Configuration"
if($vsToolVersion -eq '14.0')
{
$MSBUILD=$VS14MSBUILD
}
& $MSBUILD $slnpath /t:$Build /m /nr:false /fl "/p:Platform=Any CPU" $Conf /p:Desktop=true `
/flp:LogFile=$LOGDIR/msbuild.log /flp:Verbosity=Normal 1>$null 2>$null
if($LASTEXITCODE -eq 0)
@@ -460,10 +447,10 @@ Function BuildProcess
RunBuild ('Microsoft.Test.OData.Tests.Client.Portable.WindowsStore.sln')
RunBuild ('Microsoft.OData.CodeGen.sln')
RunBuild ('Microsoft.OData.E2E.sln')
if(Test-Path $VS14MSBUILD)
{
RunBuild -sln 'Microsoft.Test.OData.DotNetCore.sln' -vsToolVersion '14.0'
}
# Requires VS2015 (14.0) ($MSBUILD = $VS14MSBUILD)
RunBuild -sln 'Microsoft.Test.OData.DotNetStandard.sln' -vsToolVersion '14.0'
Write-Host "Build Done" -ForegroundColor $Success
$script:BUILD_END_TIME = Get-Date
}
Oops, something went wrong.

0 comments on commit 6f746cd

Please sign in to comment.