Skip to content

[automated] Merge branch 'release/8.0' => 'main' #31660

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 26 additions & 26 deletions eng/Version.Details.xml
Original file line number Diff line number Diff line change
@@ -1,58 +1,58 @@
<?xml version="1.0" encoding="utf-8"?>
<Dependencies>
<ProductDependencies>
<Dependency Name="Microsoft.Extensions.Caching.Memory" Version="8.0.0-rc.2.23431.9">
<Dependency Name="Microsoft.Extensions.Caching.Memory" Version="8.0.0-rc.2.23456.8">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>3c48925a6c1ab31865b4438a6cb88242d1a8fe4d</Sha>
<Sha>1222f14d02818cfab597fa2a17c8664fe6cb39be</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0-rc.2.23431.9">
<Dependency Name="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0-rc.2.23456.8">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>3c48925a6c1ab31865b4438a6cb88242d1a8fe4d</Sha>
<Sha>1222f14d02818cfab597fa2a17c8664fe6cb39be</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.Configuration.Abstractions" Version="8.0.0-rc.2.23431.9">
<Dependency Name="Microsoft.Extensions.Configuration.Abstractions" Version="8.0.0-rc.2.23456.8">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>3c48925a6c1ab31865b4438a6cb88242d1a8fe4d</Sha>
<Sha>1222f14d02818cfab597fa2a17c8664fe6cb39be</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.Configuration.Json" Version="8.0.0-rc.2.23431.9">
<Dependency Name="Microsoft.Extensions.Configuration.Json" Version="8.0.0-rc.2.23456.8">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>3c48925a6c1ab31865b4438a6cb88242d1a8fe4d</Sha>
<Sha>1222f14d02818cfab597fa2a17c8664fe6cb39be</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.Configuration" Version="8.0.0-rc.2.23431.9">
<Dependency Name="Microsoft.Extensions.Configuration" Version="8.0.0-rc.2.23456.8">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>3c48925a6c1ab31865b4438a6cb88242d1a8fe4d</Sha>
<Sha>1222f14d02818cfab597fa2a17c8664fe6cb39be</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.DependencyInjection" Version="8.0.0-rc.2.23431.9">
<Dependency Name="Microsoft.Extensions.DependencyInjection" Version="8.0.0-rc.2.23456.8">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>3c48925a6c1ab31865b4438a6cb88242d1a8fe4d</Sha>
<Sha>1222f14d02818cfab597fa2a17c8664fe6cb39be</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.DependencyModel" Version="8.0.0-rc.2.23431.9">
<Dependency Name="Microsoft.Extensions.DependencyModel" Version="8.0.0-rc.2.23456.8">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>3c48925a6c1ab31865b4438a6cb88242d1a8fe4d</Sha>
<Sha>1222f14d02818cfab597fa2a17c8664fe6cb39be</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.HostFactoryResolver.Sources" Version="8.0.0-rc.2.23431.9">
<Dependency Name="Microsoft.Extensions.HostFactoryResolver.Sources" Version="8.0.0-rc.2.23456.8">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>3c48925a6c1ab31865b4438a6cb88242d1a8fe4d</Sha>
<Sha>1222f14d02818cfab597fa2a17c8664fe6cb39be</Sha>
</Dependency>
<Dependency Name="Microsoft.Extensions.Logging" Version="8.0.0-rc.2.23431.9">
<Dependency Name="Microsoft.Extensions.Logging" Version="8.0.0-rc.2.23456.8">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>3c48925a6c1ab31865b4438a6cb88242d1a8fe4d</Sha>
<Sha>1222f14d02818cfab597fa2a17c8664fe6cb39be</Sha>
</Dependency>
<Dependency Name="System.Text.Json" Version="8.0.0-rc.2.23431.9">
<Dependency Name="System.Text.Json" Version="8.0.0-rc.2.23456.8">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>3c48925a6c1ab31865b4438a6cb88242d1a8fe4d</Sha>
<Sha>1222f14d02818cfab597fa2a17c8664fe6cb39be</Sha>
</Dependency>
<Dependency Name="Microsoft.NETCore.App.Ref" Version="8.0.0-rc.2.23431.9">
<Dependency Name="Microsoft.NETCore.App.Ref" Version="8.0.0-rc.2.23456.8">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>3c48925a6c1ab31865b4438a6cb88242d1a8fe4d</Sha>
<Sha>1222f14d02818cfab597fa2a17c8664fe6cb39be</Sha>
</Dependency>
<Dependency Name="Microsoft.NETCore.App.Runtime.win-x64" Version="8.0.0-rc.2.23431.9">
<Dependency Name="Microsoft.NETCore.App.Runtime.win-x64" Version="8.0.0-rc.2.23456.8">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>3c48925a6c1ab31865b4438a6cb88242d1a8fe4d</Sha>
<Sha>1222f14d02818cfab597fa2a17c8664fe6cb39be</Sha>
</Dependency>
<!-- NB: Using BrowserDebugHost to represent the nonshipping version of Microsoft.NETCore.App -->
<Dependency Name="Microsoft.NETCore.BrowserDebugHost.Transport" Version="8.0.0-rc.2.23431.9">
<Dependency Name="Microsoft.NETCore.BrowserDebugHost.Transport" Version="8.0.0-rc.2.23456.8">
<Uri>https://github.com/dotnet/runtime</Uri>
<Sha>3c48925a6c1ab31865b4438a6cb88242d1a8fe4d</Sha>
<Sha>1222f14d02818cfab597fa2a17c8664fe6cb39be</Sha>
</Dependency>
</ProductDependencies>
<ToolsetDependencies>
Expand Down
26 changes: 13 additions & 13 deletions eng/Versions.props
Original file line number Diff line number Diff line change
Expand Up @@ -16,19 +16,19 @@
<UsingToolXliff>False</UsingToolXliff>
</PropertyGroup>
<PropertyGroup Label="Dependencies from dotnet/runtime">
<MicrosoftExtensionsCachingMemoryVersion>8.0.0-rc.2.23431.9</MicrosoftExtensionsCachingMemoryVersion>
<MicrosoftExtensionsConfigurationVersion>8.0.0-rc.2.23431.9</MicrosoftExtensionsConfigurationVersion>
<MicrosoftExtensionsConfigurationAbstractionsVersion>8.0.0-rc.2.23431.9</MicrosoftExtensionsConfigurationAbstractionsVersion>
<MicrosoftExtensionsConfigurationEnvironmentVariablesVersion>8.0.0-rc.2.23431.9</MicrosoftExtensionsConfigurationEnvironmentVariablesVersion>
<MicrosoftExtensionsConfigurationJsonVersion>8.0.0-rc.2.23431.9</MicrosoftExtensionsConfigurationJsonVersion>
<MicrosoftExtensionsDependencyInjectionVersion>8.0.0-rc.2.23431.9</MicrosoftExtensionsDependencyInjectionVersion>
<MicrosoftExtensionsDependencyModelVersion>8.0.0-rc.2.23431.9</MicrosoftExtensionsDependencyModelVersion>
<MicrosoftExtensionsHostFactoryResolverSourcesVersion>8.0.0-rc.2.23431.9</MicrosoftExtensionsHostFactoryResolverSourcesVersion>
<MicrosoftExtensionsLoggingVersion>8.0.0-rc.2.23431.9</MicrosoftExtensionsLoggingVersion>
<SystemTextJsonVersion>8.0.0-rc.2.23431.9</SystemTextJsonVersion>
<MicrosoftNETCoreAppRefVersion>8.0.0-rc.2.23431.9</MicrosoftNETCoreAppRefVersion>
<MicrosoftNETCoreAppRuntimewinx64Version>8.0.0-rc.2.23431.9</MicrosoftNETCoreAppRuntimewinx64Version>
<MicrosoftNETCoreBrowserDebugHostTransportVersion>8.0.0-rc.2.23431.9</MicrosoftNETCoreBrowserDebugHostTransportVersion>
<MicrosoftExtensionsCachingMemoryVersion>8.0.0-rc.2.23456.8</MicrosoftExtensionsCachingMemoryVersion>
<MicrosoftExtensionsConfigurationVersion>8.0.0-rc.2.23456.8</MicrosoftExtensionsConfigurationVersion>
<MicrosoftExtensionsConfigurationAbstractionsVersion>8.0.0-rc.2.23456.8</MicrosoftExtensionsConfigurationAbstractionsVersion>
<MicrosoftExtensionsConfigurationEnvironmentVariablesVersion>8.0.0-rc.2.23456.8</MicrosoftExtensionsConfigurationEnvironmentVariablesVersion>
<MicrosoftExtensionsConfigurationJsonVersion>8.0.0-rc.2.23456.8</MicrosoftExtensionsConfigurationJsonVersion>
<MicrosoftExtensionsDependencyInjectionVersion>8.0.0-rc.2.23456.8</MicrosoftExtensionsDependencyInjectionVersion>
<MicrosoftExtensionsDependencyModelVersion>8.0.0-rc.2.23456.8</MicrosoftExtensionsDependencyModelVersion>
<MicrosoftExtensionsHostFactoryResolverSourcesVersion>8.0.0-rc.2.23456.8</MicrosoftExtensionsHostFactoryResolverSourcesVersion>
<MicrosoftExtensionsLoggingVersion>8.0.0-rc.2.23456.8</MicrosoftExtensionsLoggingVersion>
<SystemTextJsonVersion>8.0.0-rc.2.23456.8</SystemTextJsonVersion>
<MicrosoftNETCoreAppRefVersion>8.0.0-rc.2.23456.8</MicrosoftNETCoreAppRefVersion>
<MicrosoftNETCoreAppRuntimewinx64Version>8.0.0-rc.2.23456.8</MicrosoftNETCoreAppRuntimewinx64Version>
<MicrosoftNETCoreBrowserDebugHostTransportVersion>8.0.0-rc.2.23456.8</MicrosoftNETCoreBrowserDebugHostTransportVersion>
</PropertyGroup>
<PropertyGroup Label="Dependencies from dotnet/arcade">
<MicrosoftDotNetBuildTasksTemplatingVersion>8.0.0-beta.23451.1</MicrosoftDotNetBuildTasksTemplatingVersion>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1145,7 +1145,7 @@ public static void SetIsFixedLength(this IMutableProperty property, bool? fixedL
/// <returns><see langword="true" /> if the mapped column is nullable; <see langword="false" /> otherwise.</returns>
public static bool IsColumnNullable(this IReadOnlyProperty property)
=> property.IsNullable
|| (property.DeclaringType is IReadOnlyEntityType entityType
|| (property.DeclaringType.ContainingEntityType is IReadOnlyEntityType entityType
&& entityType.BaseType != null
&& entityType.GetMappingStrategy() == RelationalAnnotationNames.TphMappingStrategy);

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -341,6 +341,30 @@ public virtual void Configuring_direction_on_RowsAffectedParameter_throws()

public abstract class RelationalComplexTypeTestBase : ComplexTypeTestBase
{
[ConditionalFact]
public virtual void Can_use_TPH()
{
var modelBuilder = CreateModelBuilder();

modelBuilder
.Ignore<Product>()
.Ignore<IndexedClass>()
.Entity<ComplexPropertiesBase>();

modelBuilder
.Entity<ComplexProperties>()
.ComplexProperty(e => e.Customer)
.Ignore(c => c.Details)
.Ignore(c => c.Orders)
.Property(c => c.Name).IsRequired();

var model = modelBuilder.FinalizeModel();
var complexProperty = model.FindEntityType(typeof(ComplexProperties))!.GetComplexProperties().Single();
var property = complexProperty.ComplexType.FindProperty(nameof(Customer.Name))!;

Assert.True(property.IsColumnNullable());
}

[ConditionalFact]
public virtual void Can_use_table_splitting()
{
Expand Down
6 changes: 5 additions & 1 deletion test/EFCore.Tests/ModelBuilding/TestModel.cs
Original file line number Diff line number Diff line change
Expand Up @@ -894,9 +894,13 @@ protected interface IReplaceable
int Property { get; set; }
}

protected class ComplexProperties
protected class ComplexPropertiesBase
{
public int Id { get; set; }
}

protected class ComplexProperties : ComplexPropertiesBase
{
public required Customer Customer { get; set; }
public required DoubleProperty DoubleProperty { get; set; }
public required IndexedClass IndexedClass { get; set; }
Expand Down