Browse Source

Cross-compile the ASP.NET Core hosts to support ASP.NET Core 2.x on .NET Framework/.NET Core 2.1

pull/820/head
Kévin Chalet 7 years ago
parent
commit
edf371fd9e
  1. 20
      eng/Versions.props
  2. 5
      global.json
  3. 2
      samples/Mvc.Client/Mvc.Client.csproj
  4. 4
      samples/Mvc.Server/Mvc.Server.csproj
  5. 2
      src/OpenIddict.AspNetCore/OpenIddict.AspNetCore.csproj
  6. 14
      src/OpenIddict.Server.AspNetCore/OpenIddict.Server.AspNetCore.csproj
  7. 6
      src/OpenIddict.Server.AspNetCore/OpenIddictServerAspNetCoreHandlers.Authentication.cs
  8. 6
      src/OpenIddict.Server.AspNetCore/OpenIddictServerAspNetCoreHandlers.Session.cs
  9. 8
      src/OpenIddict.Validation.AspNetCore/OpenIddict.Validation.AspNetCore.csproj
  10. 4
      src/OpenIddict.Validation.SystemNetHttp/OpenIddict.Validation.SystemNetHttp.csproj
  11. 12
      src/OpenIddict.Validation.SystemNetHttp/OpenIddictValidationSystemNetHttpConfiguration.cs
  12. 4
      test/OpenIddict.Abstractions.Tests/OpenIddict.Abstractions.Tests.csproj
  13. 4
      test/OpenIddict.Core.Tests/OpenIddict.Core.Tests.csproj
  14. 4
      test/OpenIddict.MongoDb.Tests/OpenIddict.MongoDb.Tests.csproj
  15. 4
      test/OpenIddict.NHibernate.Tests/OpenIddict.NHibernate.Tests.csproj

20
eng/Versions.props

@ -6,13 +6,29 @@
</PropertyGroup>
<PropertyGroup>
<AspNetCoreVersion>3.0.0</AspNetCoreVersion>
<AspNetCoreVersion Condition=" '$(TargetFramework)' == 'net461' Or
'$(TargetFramework)' == 'net472' Or
'$(TargetFramework)' == 'netstandard2.0' Or
'$(TargetFramework)' == 'netcoreapp2.1' ">2.1.0</AspNetCoreVersion>
<AspNetCoreVersion Condition=" '$(TargetFramework)' == 'netstandard2.1' Or
'$(TargetFramework)' == 'netcoreapp3.0' ">3.0.0</AspNetCoreVersion>
</PropertyGroup>
<PropertyGroup>
<ExtensionsVersion Condition=" '$(TargetFramework)' == 'net461' Or
'$(TargetFramework)' == 'net472' Or
'$(TargetFramework)' == 'netcoreapp2.1' Or
'$(TargetFramework)' == 'netstandard2.0' ">2.1.0</ExtensionsVersion>
<ExtensionsVersion Condition=" '$(TargetFramework)' == 'netstandard2.1' Or
'$(TargetFramework)' == 'netcoreapp3.0' ">3.0.0</ExtensionsVersion>
</PropertyGroup>
<PropertyGroup>
<BclAsyncInterfacesVersion>1.0.0</BclAsyncInterfacesVersion>
<BouncyCastleVersion>1.8.5</BouncyCastleVersion>
<DataAnnotationsVersion>4.4.0</DataAnnotationsVersion>
<EntityFrameworkVersion>6.3.0</EntityFrameworkVersion>
<EntityFrameworkCoreVersion>3.0.0</EntityFrameworkCoreVersion>
<ExtensionsVersion>3.0.0</ExtensionsVersion>
<JetBrainsVersion>2019.1.3</JetBrainsVersion>
<JsonNetVersion>12.0.2</JsonNetVersion>
<JsonNetBsonVersion>1.0.2</JsonNetBsonVersion>

5
global.json

@ -1,6 +1,9 @@
{
"tools": {
"dotnet": "3.0.100-preview8-013656"
"dotnet": "3.0.100-preview8-013656",
"runtimes": {
"aspnetcore": [ "2.1.13" ]
}
},
"msbuild-sdks": {

2
samples/Mvc.Client/Mvc.Client.csproj

@ -6,7 +6,7 @@
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Authentication.OpenIdConnect" Version="$(AspNetCoreVersion)" />
<PackageReference Include="Microsoft.AspNetCore.Authentication.OpenIdConnect" Version="3.0.0" />
</ItemGroup>
</Project>

4
samples/Mvc.Server/Mvc.Server.csproj

@ -16,8 +16,8 @@
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="$(AspNetCoreVersion)" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="$(EntityFrameworkCoreVersion)" />
<PackageReference Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="3.0.0" />
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="3.0.0" />
</ItemGroup>
</Project>

2
src/OpenIddict.AspNetCore/OpenIddict.AspNetCore.csproj

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp3.0</TargetFramework>
<TargetFrameworks>net461;netcoreapp2.1;netcoreapp3.0</TargetFrameworks>
<IncludeBuildOutput>false</IncludeBuildOutput>
<IncludeSymbols>false</IncludeSymbols>
</PropertyGroup>

14
src/OpenIddict.Server.AspNetCore/OpenIddict.Server.AspNetCore.csproj

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp3.0</TargetFramework>
<TargetFrameworks>net461;netcoreapp2.1;netcoreapp3.0</TargetFrameworks>
</PropertyGroup>
<PropertyGroup>
@ -9,10 +9,16 @@
<PackageTags>$(PackageTags);server;aspnetcore</PackageTags>
</PropertyGroup>
<ItemGroup>
<ItemGroup Condition=" '$(TargetFramework)' == 'netcoreapp3.0' ">
<FrameworkReference Include="Microsoft.AspNetCore.App" />
</ItemGroup>
<ItemGroup Condition=" '$(TargetFramework)' != 'netcoreapp3.0' ">
<PackageReference Include="Microsoft.AspNetCore.Authentication" Version="$(AspNetCoreVersion)" />
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.Abstractions" Version="$(AspNetCoreVersion)" />
<PackageReference Include="Microsoft.Extensions.Caching.Abstractions" Version="$(ExtensionsVersion)" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\OpenIddict.Server\OpenIddict.Server.csproj" />
</ItemGroup>
@ -22,4 +28,8 @@
<PackageReference Include="Newtonsoft.Json.Bson" Version="$(JsonNetBsonVersion)" />
</ItemGroup>
<PropertyGroup Condition=" '$(TargetFramework)' == 'netcoreapp3.0' ">
<DefineConstants>$(DefineConstants);SUPPORTS_STATIC_RANDOM_NUMBER_GENERATOR_METHODS</DefineConstants>
</PropertyGroup>
</Project>

6
src/OpenIddict.Server.AspNetCore/OpenIddictServerAspNetCoreHandlers.Authentication.cs

@ -207,7 +207,13 @@ namespace OpenIddict.Server.AspNetCore
// Generate a 256-bit request identifier using a crypto-secure random number generator.
var data = new byte[256 / 8];
#if SUPPORTS_STATIC_RANDOM_NUMBER_GENERATOR_METHODS
RandomNumberGenerator.Fill(data);
#else
using var generator = RandomNumberGenerator.Create();
generator.GetBytes(data);
#endif
context.Request.RequestId = Base64UrlEncoder.Encode(data);

6
src/OpenIddict.Server.AspNetCore/OpenIddictServerAspNetCoreHandlers.Session.cs

@ -205,7 +205,13 @@ namespace OpenIddict.Server.AspNetCore
// Generate a 256-bit request identifier using a crypto-secure random number generator.
var data = new byte[256 / 8];
#if SUPPORTS_STATIC_RANDOM_NUMBER_GENERATOR_METHODS
RandomNumberGenerator.Fill(data);
#else
using var generator = RandomNumberGenerator.Create();
generator.GetBytes(data);
#endif
context.Request.RequestId = Base64UrlEncoder.Encode(data);

8
src/OpenIddict.Validation.AspNetCore/OpenIddict.Validation.AspNetCore.csproj

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>netcoreapp3.0</TargetFramework>
<TargetFrameworks>net461;netcoreapp2.1;netcoreapp3.0</TargetFrameworks>
</PropertyGroup>
<PropertyGroup>
@ -9,10 +9,14 @@
<PackageTags>$(PackageTags);validation;aspnetcore</PackageTags>
</PropertyGroup>
<ItemGroup>
<ItemGroup Condition=" '$(TargetFramework)' == 'netcoreapp3.0' ">
<FrameworkReference Include="Microsoft.AspNetCore.App" />
</ItemGroup>
<ItemGroup Condition=" '$(TargetFramework)' != 'netcoreapp3.0' ">
<PackageReference Include="Microsoft.AspNetCore.Authentication" Version="$(AspNetCoreVersion)" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\OpenIddict.Validation\OpenIddict.Validation.csproj" />
</ItemGroup>

4
src/OpenIddict.Validation.SystemNetHttp/OpenIddict.Validation.SystemNetHttp.csproj

@ -20,4 +20,8 @@
<PackageReference Include="System.Linq.Async" Version="$(LinqAsyncVersion)" />
</ItemGroup>
<PropertyGroup Condition=" '$(TargetFramework)' != 'netstandard2.0' ">
<DefineConstants>$(DefineConstants);SUPPORTS_SERVICE_PROVIDER_IN_HTTP_MESSAGE_HANDLER_BUILDER</DefineConstants>
</PropertyGroup>
</Project>

12
src/OpenIddict.Validation.SystemNetHttp/OpenIddictValidationSystemNetHttpConfiguration.cs

@ -21,6 +21,13 @@ namespace OpenIddict.Validation.SystemNetHttp
public class OpenIddictValidationSystemNetHttpConfiguration : IConfigureOptions<OpenIddictValidationOptions>,
IConfigureNamedOptions<HttpClientFactoryOptions>
{
#if !SUPPORTS_SERVICE_PROVIDER_IN_HTTP_MESSAGE_HANDLER_BUILDER
private readonly IServiceProvider _serviceProvider;
public OpenIddictValidationSystemNetHttpConfiguration([NotNull] IServiceProvider serviceProvider)
=> _serviceProvider = serviceProvider;
#endif
public void Configure([NotNull] OpenIddictValidationOptions options)
{
if (options == null)
@ -61,8 +68,11 @@ namespace OpenIddict.Validation.SystemNetHttp
options.HttpMessageHandlerBuilderActions.Add(builder =>
{
#if SUPPORTS_SERVICE_PROVIDER_IN_HTTP_MESSAGE_HANDLER_BUILDER
var options = builder.Services.GetRequiredService<IOptionsMonitor<OpenIddictValidationSystemNetHttpOptions>>();
#else
var options = _serviceProvider.GetRequiredService<IOptionsMonitor<OpenIddictValidationSystemNetHttpOptions>>();
#endif
var policy = options.CurrentValue.HttpErrorPolicy;
if (policy != null)
{

4
test/OpenIddict.Abstractions.Tests/OpenIddict.Abstractions.Tests.csproj

@ -1,8 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netcoreapp3.0;net461</TargetFrameworks>
<TargetFrameworks Condition=" '$(OS)' != 'Windows_NT' ">netcoreapp3.0</TargetFrameworks>
<TargetFrameworks>netcoreapp2.1;netcoreapp3.0;net461</TargetFrameworks>
<TargetFrameworks Condition=" '$(OS)' != 'Windows_NT' ">netcoreapp2.1;netcoreapp3.0</TargetFrameworks>
</PropertyGroup>
<ItemGroup>

4
test/OpenIddict.Core.Tests/OpenIddict.Core.Tests.csproj

@ -1,8 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netcoreapp3.0;net461</TargetFrameworks>
<TargetFrameworks Condition=" '$(OS)' != 'Windows_NT' ">netcoreapp3.0</TargetFrameworks>
<TargetFrameworks>netcoreapp2.1;netcoreapp3.0;net461</TargetFrameworks>
<TargetFrameworks Condition=" '$(OS)' != 'Windows_NT' ">netcoreapp2.1;netcoreapp3.0</TargetFrameworks>
</PropertyGroup>
<ItemGroup>

4
test/OpenIddict.MongoDb.Tests/OpenIddict.MongoDb.Tests.csproj

@ -1,8 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netcoreapp3.0;net461</TargetFrameworks>
<TargetFrameworks Condition=" '$(OS)' != 'Windows_NT' ">netcoreapp3.0</TargetFrameworks>
<TargetFrameworks>netcoreapp2.1;netcoreapp3.0;net461</TargetFrameworks>
<TargetFrameworks Condition=" '$(OS)' != 'Windows_NT' ">netcoreapp2.1;netcoreapp3.0</TargetFrameworks>
<SignAssembly>false</SignAssembly>
<PublicSign>false</PublicSign>
</PropertyGroup>

4
test/OpenIddict.NHibernate.Tests/OpenIddict.NHibernate.Tests.csproj

@ -1,8 +1,8 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFrameworks>netcoreapp3.0;net461</TargetFrameworks>
<TargetFrameworks Condition=" '$(OS)' != 'Windows_NT' ">netcoreapp3.0</TargetFrameworks>
<TargetFrameworks>netcoreapp2.1;netcoreapp3.0;net461</TargetFrameworks>
<TargetFrameworks Condition=" '$(OS)' != 'Windows_NT' ">netcoreapp2.1;netcoreapp3.0</TargetFrameworks>
</PropertyGroup>
<ItemGroup>

Loading…
Cancel
Save