Skip to content

Commit 0533e60

Browse files
authored
Sync to EF 10.0.0-preview.7 (#3597)
1 parent 6dc349f commit 0533e60

File tree

42 files changed

+3027
-2615
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+3027
-2615
lines changed

Directory.Packages.props

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,20 @@
11
<Project>
22
<PropertyGroup>
3-
<EFCoreVersion>10.0.0-preview.7.25352.2</EFCoreVersion>
4-
<MicrosoftExtensionsVersion>10.0.0-preview.7.25351.105</MicrosoftExtensionsVersion>
3+
<EFCoreVersion>10.0.0-preview.7.25380.108</EFCoreVersion>
4+
<MicrosoftExtensionsVersion>10.0.0-preview.7.25380.108</MicrosoftExtensionsVersion>
55
<NpgsqlVersion>9.0.3</NpgsqlVersion>
66
</PropertyGroup>
77

88
<ItemGroup>
9-
<PackageVersion Include="Microsoft.EntityFrameworkCore" Version="$(EFCoreVersion)" />
10-
<PackageVersion Include="Microsoft.EntityFrameworkCore.Relational" Version="$(EFCoreVersion)" />
11-
<PackageVersion Include="Microsoft.EntityFrameworkCore.Abstractions" Version="$(EFCoreVersion)" />
12-
<PackageVersion Include="Microsoft.EntityFrameworkCore.Relational.Specification.Tests" Version="$(EFCoreVersion)" />
13-
<PackageVersion Include="Microsoft.EntityFrameworkCore.Design" Version="$(EFCoreVersion)" />
9+
<!--
10+
Dependencies on EF preview versions should be locked to a specific version (as provider-facing breaking changes are frequent).
11+
For released versions, depend on anything in the current major version to allow users to update to higher patch versions.
12+
-->
13+
<PackageVersion Include="Microsoft.EntityFrameworkCore" Version="[$(EFCoreVersion)]" />
14+
<PackageVersion Include="Microsoft.EntityFrameworkCore.Relational" Version="[$(EFCoreVersion)]" />
15+
<PackageVersion Include="Microsoft.EntityFrameworkCore.Abstractions" Version="[$(EFCoreVersion)]" />
16+
<PackageVersion Include="Microsoft.EntityFrameworkCore.Relational.Specification.Tests" Version="[$(EFCoreVersion)]" />
17+
<PackageVersion Include="Microsoft.EntityFrameworkCore.Design" Version="[$(EFCoreVersion)]" />
1418

1519
<PackageVersion Include="Microsoft.Extensions.Configuration.Json" Version="$(MicrosoftExtensionsVersion)" />
1620
<PackageVersion Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="$(MicrosoftExtensionsVersion)" />
@@ -22,11 +26,11 @@
2226
<PackageVersion Include="Npgsql.DependencyInjection" Version="$(NpgsqlVersion)" />
2327

2428
<PackageVersion Include="Microsoft.SourceLink.GitHub" Version="8.0.0" />
25-
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.8.0" />
26-
<PackageVersion Include="xunit" Version="2.9.2" />
27-
<PackageVersion Include="xunit.assert" Version="2.9.2" />
28-
<PackageVersion Include="xunit.core" Version="2.9.2" />
29-
<PackageVersion Include="xunit.runner.visualstudio" Version="3.0.2" />
30-
<PackageVersion Include="GitHubActionsTestLogger" Version="2.3.3" />
29+
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.14.1" />
30+
<PackageVersion Include="xunit" Version="2.9.3" />
31+
<PackageVersion Include="xunit.assert" Version="2.9.3" />
32+
<PackageVersion Include="xunit.core" Version="2.9.3" />
33+
<PackageVersion Include="xunit.runner.visualstudio" Version="3.1.3" />
34+
<PackageVersion Include="GitHubActionsTestLogger" Version="2.4.1" />
3135
</ItemGroup>
3236
</Project>

src/EFCore.PG/Infrastructure/Internal/NpgsqlOptionsExtension.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ namespace Npgsql.EntityFrameworkCore.PostgreSQL.Infrastructure.Internal;
1111
public class NpgsqlOptionsExtension : RelationalOptionsExtension
1212
{
1313
private DbContextOptionsExtensionInfo? _info;
14-
private ParameterizedCollectionMode? _parameterizedCollectionMode;
14+
private ParameterTranslationMode? _parameterizedCollectionMode;
1515

1616
private readonly List<UserRangeDefinition> _userRangeDefinitions;
1717
private readonly List<EnumDefinition> _enumDefinitions;
@@ -27,8 +27,8 @@ public class NpgsqlOptionsExtension : RelationalOptionsExtension
2727
/// any release. You should only use it directly in your code with extreme caution and knowing that
2828
/// doing so can result in application failures when updating to a new Entity Framework Core release.
2929
/// </summary>
30-
public override ParameterizedCollectionMode ParameterizedCollectionMode
31-
=> _parameterizedCollectionMode ?? ParameterizedCollectionMode.Parameter;
30+
public override ParameterTranslationMode ParameterizedCollectionMode
31+
=> _parameterizedCollectionMode ?? ParameterTranslationMode.Parameter;
3232

3333
/// <summary>
3434
/// This is an internal API that supports the Entity Framework Core infrastructure and not subject to
@@ -148,7 +148,7 @@ public override int? MinBatchSize
148148

149149
// We need to override WithUseParameterizedCollectionMode since we override ParameterizedCollectionMode above
150150
/// <inheritdoc />
151-
public override RelationalOptionsExtension WithUseParameterizedCollectionMode(ParameterizedCollectionMode parameterizedCollectionMode)
151+
public override RelationalOptionsExtension WithUseParameterizedCollectionMode(ParameterTranslationMode parameterizedCollectionMode)
152152
{
153153
var clone = (NpgsqlOptionsExtension)Clone();
154154

test/EFCore.PG.FunctionalTests/NpgsqlComplianceTest.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ public class NpgsqlComplianceTest : RelationalComplianceTestBase
44
{
55
protected override ICollection<Type> IgnoredTestBases { get; } = new HashSet<Type>
66
{
7+
// TODO: Enable for rc.1 (query support for complex collections mapped to JSON)
8+
typeof(ComplexCollectionJsonUpdateTestBase<>),
9+
710
// Not implemented
811
typeof(CompiledModelTestBase), typeof(CompiledModelRelationalTestBase), // #3087
912
typeof(FromSqlSprocQueryTestBase<>),

test/EFCore.PG.FunctionalTests/Query/AdHocMiscellaneousQueryNpgsqlTest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ public class AdHocMiscellaneousQueryNpgsqlTest(NonSharedFixture fixture) : AdHoc
77
protected override ITestStoreFactory TestStoreFactory
88
=> NpgsqlTestStoreFactory.Instance;
99

10-
protected override DbContextOptionsBuilder SetParameterizedCollectionMode(DbContextOptionsBuilder optionsBuilder, ParameterizedCollectionMode parameterizedCollectionMode)
10+
protected override DbContextOptionsBuilder SetParameterizedCollectionMode(DbContextOptionsBuilder optionsBuilder, ParameterTranslationMode parameterizedCollectionMode)
1111
{
1212
new NpgsqlDbContextOptionsBuilder(optionsBuilder).UseParameterizedCollectionMode(parameterizedCollectionMode);
1313

test/EFCore.PG.FunctionalTests/Query/CompatibilityQueryNpgsqlTest.cs

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -17,21 +17,20 @@ public async Task Array_contains_is_not_parameterized_with_array_on_redshift()
1717
{
1818
var ctx = CreateRedshiftContext();
1919

20-
// https://github.com/dotnet/efcore/issues/36311
21-
await Assert.ThrowsAsync<UnreachableException>(async () =>
22-
{
23-
var numbers = new[] { 8, 9 };
24-
var result = await ctx.TestEntities.Where(e => numbers.Contains(e.SomeInt)).SingleAsync();
25-
Assert.Equal(1, result.Id);
26-
27-
AssertSql(
28-
"""
29-
SELECT t."Id", t."SomeInt"
30-
FROM "TestEntities" AS t
31-
WHERE t."SomeInt" IN (?, ?)
32-
LIMIT 2
33-
""");
34-
});
20+
var numbers = new[] { 8, 9 };
21+
var result = await ctx.TestEntities.Where(e => numbers.Contains(e.SomeInt)).SingleAsync();
22+
Assert.Equal(1, result.Id);
23+
24+
AssertSql(
25+
"""
26+
@numbers1='?' (DbType = Int32)
27+
@numbers2='?' (DbType = Int32)
28+
29+
SELECT t."Id", t."SomeInt"
30+
FROM "TestEntities" AS t
31+
WHERE t."SomeInt" IN (@numbers1, @numbers2)
32+
LIMIT 2
33+
""");
3534
}
3635

3736
#region Support

test/EFCore.PG.FunctionalTests/Query/NonSharedPrimitiveCollectionsQueryNpgsqlTest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ namespace Microsoft.EntityFrameworkCore.Query;
55
public class NonSharedPrimitiveCollectionsQueryNpgsqlTest(NonSharedFixture fixture)
66
: NonSharedPrimitiveCollectionsQueryRelationalTestBase(fixture)
77
{
8-
protected override DbContextOptionsBuilder SetParameterizedCollectionMode(DbContextOptionsBuilder optionsBuilder, ParameterizedCollectionMode parameterizedCollectionMode)
8+
protected override DbContextOptionsBuilder SetParameterizedCollectionMode(DbContextOptionsBuilder optionsBuilder, ParameterTranslationMode parameterizedCollectionMode)
99
{
1010
new NpgsqlDbContextOptionsBuilder(optionsBuilder).UseParameterizedCollectionMode(parameterizedCollectionMode);
1111

test/EFCore.PG.FunctionalTests/Query/NorthwindAggregateOperatorsQueryNpgsqlTest.cs

Lines changed: 0 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -15,22 +15,6 @@ public NorthwindAggregateOperatorsQueryNpgsqlTest(
1515
Fixture.TestSqlLoggerFactory.SetTestOutputHelper(testOutputHelper);
1616
}
1717

18-
// https://github.com/dotnet/efcore/issues/36311
19-
public override Task Contains_with_parameter_list_value_type_id(bool async)
20-
=> Assert.ThrowsAsync<UnreachableException>(() => base.Contains_with_parameter_list_value_type_id(async));
21-
22-
// https://github.com/dotnet/efcore/issues/36311
23-
public override Task IReadOnlySet_Contains_with_parameter(bool async)
24-
=> Assert.ThrowsAsync<UnreachableException>(() => base.IReadOnlySet_Contains_with_parameter(async));
25-
26-
// https://github.com/dotnet/efcore/issues/36311
27-
public override Task List_Contains_with_parameter_list(bool async)
28-
=> Assert.ThrowsAsync<UnreachableException>(() => base.List_Contains_with_parameter_list(async));
29-
30-
// https://github.com/dotnet/efcore/issues/36311
31-
public override Task IImmutableSet_Contains_with_parameter(bool async)
32-
=> Assert.ThrowsAsync<UnreachableException>(() => base.IImmutableSet_Contains_with_parameter(async));
33-
3418
// Overriding to add equality tolerance because of floating point precision
3519
public override async Task Average_over_max_subquery(bool async)
3620
{

test/EFCore.PG.FunctionalTests/Query/NorthwindMiscellaneousQueryNpgsqlTest.cs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,6 @@ public NorthwindMiscellaneousQueryNpgsqlTest(
1818
Fixture.TestSqlLoggerFactory.SetTestOutputHelper(testOutputHelper);
1919
}
2020

21-
// https://github.com/dotnet/efcore/issues/36311
22-
public override Task Entity_equality_contains_with_list_of_null(bool async)
23-
=> Assert.ThrowsAsync<UnreachableException>(() => base.Entity_equality_contains_with_list_of_null(async));
24-
2521
public override async Task Query_expression_with_to_string_and_contains(bool async)
2622
{
2723
await base.Query_expression_with_to_string_and_contains(async);

test/EFCore.PG.FunctionalTests/Query/NorthwindWhereQueryNpgsqlTest.cs

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,6 @@ public NorthwindWhereQueryNpgsqlTest(NorthwindQueryNpgsqlFixture<NoopModelCustom
1313
Fixture.TestSqlLoggerFactory.SetTestOutputHelper(testOutputHelper);
1414
}
1515

16-
// https://github.com/dotnet/efcore/issues/36311
17-
public override Task Where_navigation_contains(bool async)
18-
=> Assert.ThrowsAsync<UnreachableException>(() => base.Where_navigation_contains(async));
19-
2016
public override async Task Where_compare_constructed_equal(bool async)
2117
{
2218
// Anonymous type to constant comparison. Issue #14672.

test/EFCore.PG.FunctionalTests/Query/Relationships/ComplexRelationshipsNpgsqlFixture.cs

Lines changed: 0 additions & 13 deletions
This file was deleted.

0 commit comments

Comments
 (0)