Browse Source

Add a .NET 8.0 TFM

pull/1914/head 5.0.0-preview2
Kévin Chalet 2 years ago
parent
commit
6636784754
  1. 7
      Directory.Build.props
  2. 6
      Directory.Build.targets
  3. 54
      Directory.Packages.props
  4. 15
      NuGet.config
  5. 2
      sandbox/OpenIddict.Sandbox.AspNetCore.Client/OpenIddict.Sandbox.AspNetCore.Client.csproj
  6. 2
      sandbox/OpenIddict.Sandbox.AspNetCore.Server/OpenIddict.Sandbox.AspNetCore.Server.csproj
  7. 2
      sandbox/OpenIddict.Sandbox.Console.Client/OpenIddict.Sandbox.Console.Client.csproj
  8. 2
      sandbox/OpenIddict.Sandbox.WinForms.Client/OpenIddict.Sandbox.WinForms.Client.csproj
  9. 2
      sandbox/OpenIddict.Sandbox.Wpf.Client/OpenIddict.Sandbox.Wpf.Client.csproj
  10. 1
      src/OpenIddict.AspNetCore/OpenIddict.AspNetCore.csproj
  11. 14
      src/OpenIddict.Client.AspNetCore/OpenIddictClientAspNetCoreHandler.cs
  12. 14
      src/OpenIddict.Server.AspNetCore/OpenIddictServerAspNetCoreHandler.cs
  13. 14
      src/OpenIddict.Validation.AspNetCore/OpenIddictValidationAspNetCoreHandler.cs
  14. 3
      src/OpenIddict/OpenIddict.csproj

7
Directory.Build.props

@ -43,13 +43,16 @@
</NetFrameworkTargetFrameworks> </NetFrameworkTargetFrameworks>
<NetCoreTargetFrameworks Condition=" '$(NetCoreTargetFrameworks)' == '' "> <NetCoreTargetFrameworks Condition=" '$(NetCoreTargetFrameworks)' == '' ">
net6.0; net6.0;
net7.0 net7.0;
net8.0
</NetCoreTargetFrameworks> </NetCoreTargetFrameworks>
<NetCoreWindowsTargetFrameworks Condition=" '$(NetCoreWindowsTargetFrameworks)' == '' "> <NetCoreWindowsTargetFrameworks Condition=" '$(NetCoreWindowsTargetFrameworks)' == '' ">
net6.0-windows7.0; net6.0-windows7.0;
net6.0-windows10.0.17763; net6.0-windows10.0.17763;
net7.0-windows7.0; net7.0-windows7.0;
net7.0-windows10.0.17763 net7.0-windows10.0.17763;
net8.0-windows7.0;
net8.0-windows10.0.17763
</NetCoreWindowsTargetFrameworks> </NetCoreWindowsTargetFrameworks>
<NetStandardTargetFrameworks Condition=" '$(NetStandardTargetFrameworks)' == '' "> <NetStandardTargetFrameworks Condition=" '$(NetStandardTargetFrameworks)' == '' ">
netstandard2.0; netstandard2.0;

6
Directory.Build.targets

@ -109,6 +109,12 @@
<DefineConstants>$(DefineConstants);SUPPORTS_AUTHENTICATION_HANDLER_SELECTION_FALLBACK</DefineConstants> <DefineConstants>$(DefineConstants);SUPPORTS_AUTHENTICATION_HANDLER_SELECTION_FALLBACK</DefineConstants>
</PropertyGroup> </PropertyGroup>
<PropertyGroup
Condition=" ('$(TargetFrameworkIdentifier)' == '.NETCoreApp' And $([MSBuild]::VersionGreaterThanOrEquals($(TargetFrameworkVersion), '8.0'))) ">
<DefineConstants>$(DefineConstants);SUPPORTS_IMMUTABLE_COLLECTIONS_MARSHAL</DefineConstants>
<DefineConstants>$(DefineConstants);SUPPORTS_TIME_PROVIDER</DefineConstants>
</PropertyGroup>
<PropertyGroup <PropertyGroup
Condition=" ('$(TargetFrameworkIdentifier)' == '.NETCoreApp' And $([MSBuild]::VersionLessThan($(TargetFrameworkVersion), '5.0'))) Or Condition=" ('$(TargetFrameworkIdentifier)' == '.NETCoreApp' And $([MSBuild]::VersionLessThan($(TargetFrameworkVersion), '5.0'))) Or

54
Directory.Packages.props

@ -296,17 +296,61 @@
<PackageVersion Include="Moq" Version="4.18.4" /> <PackageVersion Include="Moq" Version="4.18.4" />
<PackageVersion Include="System.Linq.Async" Version="6.0.1" /> <PackageVersion Include="System.Linq.Async" Version="6.0.1" />
<!--
Note: OpenIddict uses PolySharp to dynamically generate polyfills for types that are not available on
some of the targeted TFMs (e.g Index, Range or nullable attributes on .NET Framework/.NET Standard).
-->
<GlobalPackageReference Include="PolySharp" Condition=" '$(DisablePolySharp)' != 'true' " Version="1.13.1" />
</ItemGroup>
<!--
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
█████ ▀██ ██ ▄▄▄█▄▄ ▄▄███▀▄▄▀████ ▄▄ ██
█▀▀██ █ █ ██ ▄▄▄███ █████▀▄▄▀█▀▀█ ▀▄ ██
█▄▄██ ██▄ ██ ▀▀▀███ █████▄▀▀▄█▄▄█ ▀▀ ██
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
-->
<ItemGroup Label="Package versions for .NET 8.0"
Condition=" '$(TargetFrameworkIdentifier)' == '.NETCoreApp' And $([MSBuild]::VersionEquals($(TargetFrameworkVersion), '8.0')) ">
<PackageVersion Include="EntityFramework" Version="6.4.4" />
<PackageVersion Include="Microsoft.EntityFrameworkCore.Relational" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Caching.Abstractions" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Caching.Memory" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection.Abstractions" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Hosting.Abstractions" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Http.Polly" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Logging" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Options" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Primitives" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.WebEncoders" Version="8.0.0" />
<PackageVersion Include="Microsoft.IdentityModel.JsonWebTokens" Version="7.0.0" />
<PackageVersion Include="Microsoft.IdentityModel.Protocols" Version="7.0.0" />
<PackageVersion Include="Microsoft.IdentityModel.Tokens" Version="7.0.0" />
<PackageVersion Include="MongoDB.Bson" Version="2.20.0" />
<PackageVersion Include="MongoDB.Driver" Version="2.20.0" />
<PackageVersion Include="Quartz.Extensions.DependencyInjection" Version="3.5.0" />
<!--
Note: the following references are exclusively used in the test projects:
-->
<PackageVersion Include="AngleSharp" Version="0.17.1" />
<PackageVersion Include="MartinCostello.Logging.XUnit" Version="0.3.0" />
<PackageVersion Include="Microsoft.AspNetCore.TestHost" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.DependencyInjection" Version="8.0.0" />
<PackageVersion Include="Moq" Version="4.18.4" />
<PackageVersion Include="System.Linq.Async" Version="6.0.1" />
<!-- <!--
Note: the following references are exclusively used in the samples: Note: the following references are exclusively used in the samples:
--> -->
<PackageVersion Include="Dapplo.Microsoft.Extensions.Hosting.AppServices" Version="1.0.14" /> <PackageVersion Include="Dapplo.Microsoft.Extensions.Hosting.AppServices" Version="1.0.14" />
<PackageVersion Include="Dapplo.Microsoft.Extensions.Hosting.WinForms" Version="1.0.14" /> <PackageVersion Include="Dapplo.Microsoft.Extensions.Hosting.WinForms" Version="1.0.14" />
<PackageVersion Include="Dapplo.Microsoft.Extensions.Hosting.Wpf" Version="1.0.14" /> <PackageVersion Include="Dapplo.Microsoft.Extensions.Hosting.Wpf" Version="1.0.14" />
<PackageVersion Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="7.0.5" /> <PackageVersion Include="Microsoft.AspNetCore.Identity.EntityFrameworkCore" Version="8.0.0" />
<PackageVersion Include="Microsoft.EntityFrameworkCore.Sqlite" Version="7.0.5" /> <PackageVersion Include="Microsoft.EntityFrameworkCore.Sqlite" Version="8.0.0" />
<PackageVersion Include="Microsoft.EntityFrameworkCore.SqlServer" Version="7.0.5" /> <PackageVersion Include="Microsoft.Extensions.Hosting" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Hosting" Version="7.0.1" /> <PackageVersion Include="Microsoft.Extensions.Logging.Debug" Version="8.0.0" />
<PackageVersion Include="Microsoft.Extensions.Logging.Debug" Version="7.0.0" />
<PackageVersion Include="Quartz.Extensions.Hosting" Version="3.5.0" /> <PackageVersion Include="Quartz.Extensions.Hosting" Version="3.5.0" />
<PackageVersion Include="Spectre.Console" Version="0.46.0" /> <PackageVersion Include="Spectre.Console" Version="0.46.0" />

15
NuGet.config

@ -5,6 +5,9 @@
<add key="nuget" value="https://api.nuget.org/v3/index.json" /> <add key="nuget" value="https://api.nuget.org/v3/index.json" />
<add key="dotnet-eng" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json" /> <add key="dotnet-eng" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-eng/nuget/v3/index.json" />
<add key="dotnet-tools" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json" /> <add key="dotnet-tools" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json" />
<add key="dotnet7" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet7/nuget/v3/index.json" />
<add key="dotnet8" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet8/nuget/v3/index.json" />
<add key="dotnet9" value="https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet9/nuget/v3/index.json" />
</packageSources> </packageSources>
<packageSourceMapping> <packageSourceMapping>
@ -19,6 +22,18 @@
<packageSource key="dotnet-tools"> <packageSource key="dotnet-tools">
<package pattern="*" /> <package pattern="*" />
</packageSource> </packageSource>
<packageSource key="dotnet7">
<package pattern="*" />
</packageSource>
<packageSource key="dotnet8">
<package pattern="*" />
</packageSource>
<packageSource key="dotnet9">
<package pattern="*" />
</packageSource>
</packageSourceMapping> </packageSourceMapping>
</configuration> </configuration>

2
sandbox/OpenIddict.Sandbox.AspNetCore.Client/OpenIddict.Sandbox.AspNetCore.Client.csproj

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk.Web"> <Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup> <PropertyGroup>
<TargetFramework>net7.0</TargetFramework> <TargetFramework>net8.0</TargetFramework>
<IsShipping>false</IsShipping> <IsShipping>false</IsShipping>
<Nullable>disable</Nullable> <Nullable>disable</Nullable>
</PropertyGroup> </PropertyGroup>

2
sandbox/OpenIddict.Sandbox.AspNetCore.Server/OpenIddict.Sandbox.AspNetCore.Server.csproj

@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk.Web"> <Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup> <PropertyGroup>
<TargetFramework>net7.0</TargetFramework> <TargetFramework>net8.0</TargetFramework>
<IsShipping>false</IsShipping> <IsShipping>false</IsShipping>
<SignAssembly>false</SignAssembly> <SignAssembly>false</SignAssembly>
<TypeScriptEnabled>false</TypeScriptEnabled> <TypeScriptEnabled>false</TypeScriptEnabled>

2
sandbox/OpenIddict.Sandbox.Console.Client/OpenIddict.Sandbox.Console.Client.csproj

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<OutputType>Exe</OutputType> <OutputType>Exe</OutputType>
<TargetFrameworks>net48;net7.0</TargetFrameworks> <TargetFrameworks>net48;net8.0</TargetFrameworks>
<EnablePreviewFeatures>true</EnablePreviewFeatures> <EnablePreviewFeatures>true</EnablePreviewFeatures>
<IsShipping>false</IsShipping> <IsShipping>false</IsShipping>
<SignAssembly>false</SignAssembly> <SignAssembly>false</SignAssembly>

2
sandbox/OpenIddict.Sandbox.WinForms.Client/OpenIddict.Sandbox.WinForms.Client.csproj

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<OutputType>WinExe</OutputType> <OutputType>WinExe</OutputType>
<TargetFrameworks>net48;net7.0-windows7.0</TargetFrameworks> <TargetFrameworks>net48;net8.0-windows7.0</TargetFrameworks>
<EnablePreviewFeatures>true</EnablePreviewFeatures> <EnablePreviewFeatures>true</EnablePreviewFeatures>
<EnableWindowsTargeting>true</EnableWindowsTargeting> <EnableWindowsTargeting>true</EnableWindowsTargeting>
<UseWindowsForms>true</UseWindowsForms> <UseWindowsForms>true</UseWindowsForms>

2
sandbox/OpenIddict.Sandbox.Wpf.Client/OpenIddict.Sandbox.Wpf.Client.csproj

@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<OutputType>WinExe</OutputType> <OutputType>WinExe</OutputType>
<TargetFrameworks>net48;net7.0-windows10.0.17763</TargetFrameworks> <TargetFrameworks>net48;net8.0-windows10.0.17763</TargetFrameworks>
<EnablePreviewFeatures>true</EnablePreviewFeatures> <EnablePreviewFeatures>true</EnablePreviewFeatures>
<EnableWindowsTargeting>true</EnableWindowsTargeting> <EnableWindowsTargeting>true</EnableWindowsTargeting>
<UseWPF>true</UseWPF> <UseWPF>true</UseWPF>

1
src/OpenIddict.AspNetCore/OpenIddict.AspNetCore.csproj

@ -28,6 +28,7 @@
<None Include="_._" Pack="true" PackagePath="lib\net48\_._" /> <None Include="_._" Pack="true" PackagePath="lib\net48\_._" />
<None Include="_._" Pack="true" PackagePath="lib\net6.0\_._" /> <None Include="_._" Pack="true" PackagePath="lib\net6.0\_._" />
<None Include="_._" Pack="true" PackagePath="lib\net7.0\_._" /> <None Include="_._" Pack="true" PackagePath="lib\net7.0\_._" />
<None Include="_._" Pack="true" PackagePath="lib\net8.0\_._" />
</ItemGroup> </ItemGroup>
</Project> </Project>

14
src/OpenIddict.Client.AspNetCore/OpenIddictClientAspNetCoreHandler.cs

@ -30,6 +30,19 @@ public sealed class OpenIddictClientAspNetCoreHandler : AuthenticationHandler<Op
/// <summary> /// <summary>
/// Creates a new instance of the <see cref="OpenIddictClientAspNetCoreHandler"/> class. /// Creates a new instance of the <see cref="OpenIddictClientAspNetCoreHandler"/> class.
/// </summary> /// </summary>
#if SUPPORTS_TIME_PROVIDER
public OpenIddictClientAspNetCoreHandler(
IOpenIddictClientDispatcher dispatcher,
IOpenIddictClientFactory factory,
IOptionsMonitor<OpenIddictClientAspNetCoreOptions> options,
ILoggerFactory logger,
UrlEncoder encoder)
: base(options, logger, encoder)
{
_dispatcher = dispatcher ?? throw new ArgumentNullException(nameof(dispatcher));
_factory = factory ?? throw new ArgumentNullException(nameof(factory));
}
#else
public OpenIddictClientAspNetCoreHandler( public OpenIddictClientAspNetCoreHandler(
IOpenIddictClientDispatcher dispatcher, IOpenIddictClientDispatcher dispatcher,
IOpenIddictClientFactory factory, IOpenIddictClientFactory factory,
@ -42,6 +55,7 @@ public sealed class OpenIddictClientAspNetCoreHandler : AuthenticationHandler<Op
_dispatcher = dispatcher ?? throw new ArgumentNullException(nameof(dispatcher)); _dispatcher = dispatcher ?? throw new ArgumentNullException(nameof(dispatcher));
_factory = factory ?? throw new ArgumentNullException(nameof(factory)); _factory = factory ?? throw new ArgumentNullException(nameof(factory));
} }
#endif
/// <inheritdoc/> /// <inheritdoc/>
public async Task<bool> HandleRequestAsync() public async Task<bool> HandleRequestAsync()

14
src/OpenIddict.Server.AspNetCore/OpenIddictServerAspNetCoreHandler.cs

@ -30,6 +30,19 @@ public sealed class OpenIddictServerAspNetCoreHandler : AuthenticationHandler<Op
/// <summary> /// <summary>
/// Creates a new instance of the <see cref="OpenIddictServerAspNetCoreHandler"/> class. /// Creates a new instance of the <see cref="OpenIddictServerAspNetCoreHandler"/> class.
/// </summary> /// </summary>
#if SUPPORTS_TIME_PROVIDER
public OpenIddictServerAspNetCoreHandler(
IOpenIddictServerDispatcher dispatcher,
IOpenIddictServerFactory factory,
IOptionsMonitor<OpenIddictServerAspNetCoreOptions> options,
ILoggerFactory logger,
UrlEncoder encoder)
: base(options, logger, encoder)
{
_dispatcher = dispatcher ?? throw new ArgumentNullException(nameof(dispatcher));
_factory = factory ?? throw new ArgumentNullException(nameof(factory));
}
#else
public OpenIddictServerAspNetCoreHandler( public OpenIddictServerAspNetCoreHandler(
IOpenIddictServerDispatcher dispatcher, IOpenIddictServerDispatcher dispatcher,
IOpenIddictServerFactory factory, IOpenIddictServerFactory factory,
@ -42,6 +55,7 @@ public sealed class OpenIddictServerAspNetCoreHandler : AuthenticationHandler<Op
_dispatcher = dispatcher ?? throw new ArgumentNullException(nameof(dispatcher)); _dispatcher = dispatcher ?? throw new ArgumentNullException(nameof(dispatcher));
_factory = factory ?? throw new ArgumentNullException(nameof(factory)); _factory = factory ?? throw new ArgumentNullException(nameof(factory));
} }
#endif
/// <inheritdoc/> /// <inheritdoc/>
public async Task<bool> HandleRequestAsync() public async Task<bool> HandleRequestAsync()

14
src/OpenIddict.Validation.AspNetCore/OpenIddictValidationAspNetCoreHandler.cs

@ -27,6 +27,19 @@ public sealed class OpenIddictValidationAspNetCoreHandler : AuthenticationHandle
/// <summary> /// <summary>
/// Creates a new instance of the <see cref="OpenIddictValidationAspNetCoreHandler"/> class. /// Creates a new instance of the <see cref="OpenIddictValidationAspNetCoreHandler"/> class.
/// </summary> /// </summary>
#if SUPPORTS_TIME_PROVIDER
public OpenIddictValidationAspNetCoreHandler(
IOpenIddictValidationDispatcher dispatcher,
IOpenIddictValidationFactory factory,
IOptionsMonitor<OpenIddictValidationAspNetCoreOptions> options,
ILoggerFactory logger,
UrlEncoder encoder)
: base(options, logger, encoder)
{
_dispatcher = dispatcher ?? throw new ArgumentNullException(nameof(dispatcher));
_factory = factory ?? throw new ArgumentNullException(nameof(factory));
}
#else
public OpenIddictValidationAspNetCoreHandler( public OpenIddictValidationAspNetCoreHandler(
IOpenIddictValidationDispatcher dispatcher, IOpenIddictValidationDispatcher dispatcher,
IOpenIddictValidationFactory factory, IOpenIddictValidationFactory factory,
@ -39,6 +52,7 @@ public sealed class OpenIddictValidationAspNetCoreHandler : AuthenticationHandle
_dispatcher = dispatcher ?? throw new ArgumentNullException(nameof(dispatcher)); _dispatcher = dispatcher ?? throw new ArgumentNullException(nameof(dispatcher));
_factory = factory ?? throw new ArgumentNullException(nameof(factory)); _factory = factory ?? throw new ArgumentNullException(nameof(factory));
} }
#endif
/// <inheritdoc/> /// <inheritdoc/>
public async Task<bool> HandleRequestAsync() public async Task<bool> HandleRequestAsync()

3
src/OpenIddict/OpenIddict.csproj

@ -43,6 +43,9 @@ To use these features on ASP.NET Core or OWIN/Katana/ASP.NET 4.x, reference the
<None Include="_._" Pack="true" PackagePath="lib\net7.0\_._" /> <None Include="_._" Pack="true" PackagePath="lib\net7.0\_._" />
<None Include="_._" Pack="true" PackagePath="lib\net7.0-windows7.0\_._" /> <None Include="_._" Pack="true" PackagePath="lib\net7.0-windows7.0\_._" />
<None Include="_._" Pack="true" PackagePath="lib\net7.0-windows10.0.17763\_._" /> <None Include="_._" Pack="true" PackagePath="lib\net7.0-windows10.0.17763\_._" />
<None Include="_._" Pack="true" PackagePath="lib\net8.0\_._" />
<None Include="_._" Pack="true" PackagePath="lib\net8.0-windows7.0\_._" />
<None Include="_._" Pack="true" PackagePath="lib\net8.0-windows10.0.17763\_._" />
<None Include="_._" Pack="true" PackagePath="lib\netstandard2.0\_._" /> <None Include="_._" Pack="true" PackagePath="lib\netstandard2.0\_._" />
<None Include="_._" Pack="true" PackagePath="lib\netstandard2.1\_._" /> <None Include="_._" Pack="true" PackagePath="lib\netstandard2.1\_._" />
</ItemGroup> </ItemGroup>

Loading…
Cancel
Save