dotnet / efcore

EF Core is a modern object-database mapper for .NET. It supports LINQ queries, change tracking, updates, and schema migrations.
https://docs.microsoft.com/ef/
MIT License
13.65k stars 3.15k forks source link

Entity Framework Weekly Status Updates (2020) #19549

Closed ajcvickers closed 1 year ago

ajcvickers commented 4 years ago

Weekly status updates for 2021

Expand to see additional information from the end of 2020...

This issue contains status updates from the Entity Framework team to provide insight into what we are focused on, progress made, and other interesting highlights from the week. [Jump to latest update](https://github.com/dotnet/efcore/issues/19549#issuecomment-742849297) ### More Information Broader information on EF Core planning can be found in the [EF Core roadmap](https://docs.microsoft.com/ef/core/what-is-new/roadmap). Use GitHub queries to find full details of * Issues [fixed for EF Core 5.0.0](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.0+is%3Aclosed) * Issues [fixed for EF Core 5.0.1](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.1+is%3Aclosed) * Issues [fixed for EF Core 5.0.2](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.2+is%3Aclosed) but not yet shipped * Issues [fixed for EF Core 3.1.0](https://github.com/aspnet/EntityFrameworkCore/issues?q=is%3Aissue+milestone%3A3.1.0+is%3Aclosed) * Issues [fixed for EF Core 3.1.1](https://github.com/aspnet/EntityFrameworkCore/issues?q=is%3Aissue+milestone%3A3.1.1+is%3Aclosed) * EF Core 3.1.2 contains only dependency updates * Issues [fixed for EF Core 3.1.3](https://github.com/aspnet/EntityFrameworkCore/issues?q=is%3Aissue+milestone%3A3.1.3+is%3Aclosed) * Issues [fixed for EF Core 3.1.4](https://github.com/aspnet/EntityFrameworkCore/issues?q=is%3Aissue+milestone%3A3.1.4+is%3Aclosed) * EF Core 3.1.5 contains only dependency updates * Issues [fixed for EF Core 3.1.6](https://github.com/aspnet/EntityFrameworkCore/issues?q=is%3Aissue+milestone%3A3.1.6+is%3Aclosed) * Issues [fixed for EF Core 3.1.7](https://github.com/aspnet/EntityFrameworkCore/issues?q=is%3Aissue+milestone%3A3.1.7+is%3Aclosed) * EF Core 3.1.8 contains only dependency updates * Issues [fixed for EF Core 3.1.9](https://github.com/aspnet/EntityFrameworkCore/issues?q=is%3Aissue+milestone%3A3.1.9+is%3Aclosed) * Issues [fixed for EF Core 3.1.10](https://github.com/aspnet/EntityFrameworkCore/issues?q=is%3Aissue+milestone%3A3.1.10+is%3Aclosed) * Issues [fixed for EF Core 3.1.11](https://github.com/aspnet/EntityFrameworkCore/issues?q=is%3Aissue+milestone%3A3.1.11+is%3Aclosed) but not yet shipped * Issues [fixed for EF Core 3.0.0](https://github.com/aspnet/EntityFrameworkCore/issues?q=is%3Aissue+milestone%3A3.0.0+is%3Aclosed) > Please note that there is never a guarantee that an issue will be fixed in its assigned release. Re-evaluation of the plan throughout the release cycle sometimes results in issues being pushed out to a later release. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

Weekly status updates for 2019

ajcvickers commented 4 years ago

January 9, 2020

Expand to see status from this week...

We're back with weekly updates after a break for the holiday period. ## What are we doing now? [Critical bugs in 3.1](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.1+is%3Aclosed) are now being considered for patch releases. The first patch release is scheduled for later this month. Planning for the EF Core "5.0" release (i.e. the one after 3.1) is being finalized and we hope to post an overview in the next couple of weeks. Work on several major features planned for 5.0 has already begun. See the pull requests section below for details. The [115+ issues already fixed for 5.0 can be found on GitHUb](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.0+is%3Aclosed) In addition, we are working on: * Technical debt * Code cleanup, additional testing, test reliability, etc. * Documentation * Updating docs to be cover changes in the 3.0 and 3.1 releases * An overhaul of the getting started docs to make them more approachable/easier to follow * Reorganization of docs to make things easier to find and to add cross-references * Adding more details and clarifications to existing docs * Updating the samples and adding more examples ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Using the daily builds is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * We work hard to keep the daily builds in good shape by running over 50,000 tests per TFM for each build. * Daily builds now contain work scheduled for release in EF Core 5.0. * There are already [115 issues closed and merged for EF Core 5.0](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.0+is%3Aclosed). * Current and LTS: [EF Core 3.1.0](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## New features in EF Core 5.0 As stated above, planning of 5.0 major features is ongoing, but in addition to bug fixes we have already merged a few small features/enhancements. ### Simple way to get generated SQL EF Core 5.0 introduces the `ToQueryString` extension method which will return the SQL that EF Core will generate when executing a LINQ query. For example, the code: ```C# var query = context.Set().Where(c => c.City == city); Console.WriteLine(query.ToQueryString()) ``` results in this output when using the SQL Server database provider: ```SQL DECLARE p0 nvarchar(4000) = N'London'; SELECT [c].[CustomerID], [c].[Address], [c].[City], [c].[CompanyName], [c].[ContactName], [c].[ContactTitle], [c].[Country], [c].[Fax], [c].[Phone], [c].[PostalCode], [c].[Region] FROM [Customers] AS [c] WHERE [c].[City] = @__city_0 ``` Notice that declarations for parameters of the correct type are also included in the output. This allows copy/pasting to SQL Server Management Studio, or similar tools, such that the query can be executed for debugging/analysis. ## Pull requests over the holiday period ### Community contributions * @knom fixed [alter database statements to handle complex names](https://github.com/dotnet/efcore/pull/19291) * @svengeance implemented [translation of byte array Length for SQL Server and SQLite](https://github.com/dotnet/efcore/pull/19189) * @svengeance fixed a bug [translating casting with "as"](https://github.com/dotnet/efcore/pull/19269) * @Marusyk and @nmichels implemented translation for DATEFFROMPARTS on SQL Server: [19400](https://github.com/dotnet/efcore/pull/19400) [18630](https://github.com/dotnet/efcore/pull/18630) * @ralmsdeveloper cleaned up [SQL generation to remove an extra blank line](https://github.com/dotnet/efcore/pull/19519) * @ralmsdeveloper cleaned up [unused using directives](https://github.com/dotnet/efcore/pull/19483) * @redoz fixed a [typo in the change tracker documentation](https://github.com/aspnet/EntityFramework.Docs/pull/2027) * @bbrandt added [EFCore.TimeTraveler to the extension list](https://github.com/aspnet/EntityFramework.Docs/pull/2001) * @MaxG117 added [the Teradata.EntityFrameworkCore provider to the database provider list](https://github.com/aspnet/EntityFramework.Docs/pull/1849) * @ErikEJ updated [the extensions page for 3.1](https://github.com/aspnet/EntityFramework.Docs/pull/1864) Many thanks to all our contributors! ### EF Core * Skip navigations (for many-to-many) * Metadata for [skip navigations](https://github.com/dotnet/efcore/pull/19366) * Extract [base interface for navigations](https://github.com/dotnet/efcore/pull/19504) * Make [skip navigation foreign key nullable and mutable](https://github.com/dotnet/efcore/pull/19485) * Indexer properties (stretch goal for many-to-many) * Initial support for [indexer properties](https://github.com/dotnet/efcore/pull/19450) * Public [model building API for indexer properties](https://github.com/dotnet/efcore/pull/19472) * Disallow [backing fields for indexer properties](https://github.com/dotnet/efcore/pull/19449) * Getter/setter [support for indexer properties](https://github.com/dotnet/efcore/pull/19440) * Shared-type entities (stretch goal for many-to-many) * Initial metadata support for [entity types that share a CLR type](https://github.com/dotnet/efcore/pull/19516) * Query * Improved design for [relational null semantics](https://github.com/dotnet/efcore/pull/19168) * Improved design for [expansion of navigations](https://github.com/dotnet/efcore/pull/19377) * Initial implementation of [query DebugView and ToQueryString ](https://github.com/dotnet/efcore/pull/19324) * Update [ToQueryString to generate runnable SQL with parameters](https://github.com/dotnet/efcore/pull/19368) * Use [SQLite CLI parameter syntax for ToQueryString](https://github.com/dotnet/efcore/pull/19395) * Translate [Queryable.Reverse](https://github.com/dotnet/efcore/pull/19357) * Support access to a [DbCommand setup as EF would do so to run a query](https://github.com/dotnet/efcore/pull/19335) * Use [Select 1 ordering when no other ordering exists](https://github.com/dotnet/efcore/pull/19317) * Fix to [translate Contains only when there is a server-side list](https://github.com/dotnet/efcore/pull/19315) * Fix to [unwind nested invocations recursively](https://github.com/dotnet/efcore/pull/19514) * Removed public setters from [custom expression properties](https://github.com/dotnet/efcore/pull/19346) * Make [partitions optional in RowNumberExpression](https://github.com/dotnet/efcore/pull/19478) * Fix to [DateTimeOffset type mapping](https://github.com/dotnet/efcore/pull/19479) * Fix to [translation of ternary operator with unknown type mapping](https://github.com/dotnet/efcore/pull/19476) * Translation for [Coalesce SQL function](https://github.com/dotnet/efcore/pull/19270) * Convert [Enumerable methods to Queryable methods after ToList, etc.](https://github.com/dotnet/efcore/pull/19436) * Generate [more efficient parameter lengths/types for strings on SQL Server](https://github.com/dotnet/efcore/pull/19428) * Fix to [lift pending collections when applying single result projection](https://github.com/dotnet/efcore/pull/19345) * Fxi to [cast [result of IndexOf appropriately for SQL Server](https://github.com/dotnet/efcore/pull/19314) * Query regression testing: [19463](https://github.com/dotnet/efcore/pull/19463) [19268](https://github.com/dotnet/efcore/pull/19268) * Change tracking * Updates to [state manager debug view based on design meeting feedback](https://github.com/dotnet/efcore/pull/19238) * Fix to [stop tracking deleted entity when supplanted by non-deleted instance](https://github.com/dotnet/efcore/pull/19477) * Make [EntityEntryGraphNodeState.TState mutable](https://github.com/dotnet/efcore/pull/19453) * Fix to [prevent temporary value from being left over when FK is later set to null](https://github.com/dotnet/efcore/pull/19434) * Fix to [stop deleting dependents when principal is detached](https://github.com/dotnet/efcore/pull/19379) * Fix to [stop nulling out FK properties when detaching a principal](https://github.com/dotnet/efcore/pull/19432) * Fix to [throw exception when identifying FK value is still unknown when saving changes](https://github.com/dotnet/efcore/pull/19405) * Fix to [initialize value converters lazily](https://github.com/dotnet/efcore/pull/19406) * Fix to [prevent stack overflow when lazy-loading](https://github.com/dotnet/efcore/pull/19384) * Fix to [correct "shared" annotation in state manager debug view](https://github.com/dotnet/efcore/pull/19391) * Testing for [TPH model with lazy-loading](https://github.com/dotnet/efcore/pull/19409) * Model building * Refactoring of [ConventionScope](https://github.com/dotnet/efcore/pull/19297) * Fixes to [fixed length string mappings](https://github.com/dotnet/efcore/pull/19422) * Fix to [match more collection backing fields](https://github.com/dotnet/efcore/pull/19447) * Fix to [always store original value for properties mapped to unique indexes](https://github.com/dotnet/efcore/pull/19445) * Tooling * Fix [dotnet ef context info to not throw for bad/non-relational connections](https://github.com/dotnet/efcore/pull/19375) * Configure the [dotnet-ef tool to roll forward for major versions](https://github.com/dotnet/efcore/pull/19515) * Fix [scaffolding of empty C# array literals](https://github.com/dotnet/efcore/pull/19408) * Other * Use [GitHub Actions for Cosmos provider testing](https://github.com/dotnet/efcore/pull/19309) * Allow [DbConnection or connection string to be changed on existing DbContext](https://github.com/dotnet/efcore/pull/19376) * Fix [ReplaceService to work with multiple registrations](https://github.com/dotnet/efcore/pull/19393) * Use [value converters when storing in the in-memory database](https://github.com/dotnet/efcore/pull/19417) * Annotate [Scaffolding assembly for nullable reference types](https://github.com/dotnet/efcore/pull/19401) * Fix [small typos in docs and resource strings](https://github.com/dotnet/efcore/pull/19430) * Documentation: * Updates to [external link icons](https://github.com/aspnet/EntityFramework.Docs/pull/1916) * Update [supported framework versions](https://github.com/aspnet/EntityFramework.Docs/pull/1980) * Merge [relational inheritance into main inheritance page](https://github.com/aspnet/EntityFramework.Docs/pull/1992) * Merge [default values and computed columns into generated properties section](https://github.com/aspnet/EntityFramework.Docs/pull/2003) * Move [sequences documentation out of relational area and clean up](https://github.com/aspnet/EntityFramework.Docs/pull/1997) * Merge [relational and non-relational index docs](https://github.com/aspnet/EntityFramework.Docs/pull/1990) * Merge [relational and non-relational property/column docs](https://github.com/aspnet/EntityFramework.Docs/pull/1983) * Merge [relational and non-relational key mapping](https://github.com/aspnet/EntityFramework.Docs/pull/1993) * Merge [relational constraints into general relationships docs](https://github.com/aspnet/EntityFramework.Docs/pull/1999) * Merge [primary keys and alternate keys into keys docs](https://github.com/aspnet/EntityFramework.Docs/pull/1984) * Updates to [providers/extension docs for 3.1](https://github.com/aspnet/EntityFramework.Docs/pull/1995) * Cleanup of [modeling docs](https://github.com/aspnet/EntityFramework.Docs/pull/2007) * Fix [link to remove en-us](https://github.com/aspnet/EntityFramework.Docs/pull/2006) * Nest [tab headings](https://github.com/aspnet/EntityFramework.Docs/pull/1976) * Add [clarification about transitive references to the design package](https://github.com/aspnet/EntityFramework.Docs/pull/1975) ### Microsoft.Data.Sqlite * Updated [link to Sqlite docs](https://github.com/dotnet/efcore/pull/19267) ## Issues remaining for 5.0 The burn-down will return for 5.0 once the plan is finalized. ## Latest releases EF Core: * Daily builds: install the latest preview SDK, then [follow the instructions from the wiki](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) * Current/LTS: [EF Core 3.1.0](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) EF6: * Daily builds: install the latest preview SDK, then [use the feeds listed on the repo homepage](https://github.com/aspnet/EntityFramework6) * Current: [EF 6.4.0](https://www.nuget.org/packages/EntityFramework/) ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

January 16, 2020

Expand to see status from this week...

## EF Core 3.1.1 EF Core 3.1.1 is now [available on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.1). This is a patch release of 3.1 containing [critical bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.1+is%3Aclosed). ## EF Core 5.0 The initial plan for EF Core 5.0 is now [live on our docs site](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/plan). This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. We are always grateful for your feedback so that it can influence this learning process, as well as influence future planning. Please use the Feedback links at the bottom of the document. ### Themes for EF Core 5.0 The high-level themes for EF Core 5.0 are [detailed in the 5.0 plan](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/plan). These themes are: * Many-to-many navigation properties (a.k.a "skip navigations") * Table-per-type (TPT) inheritance mapping * Filtered Include * Rationalize ToTable, ToQuery, ToView, FromSql, etc. * General query enhancements * Migrations and deployment experience * EF Core platforms experience * Performance * Architectural/contributor documentation * Microsoft.Data.Sqlite documentation * General documentation * Fixing bugs * Small enhancements ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Using the daily builds is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * We work hard to keep the daily builds in good shape by running over 55,000 tests per target for each build. * Daily builds now contain work scheduled for release in EF Core 5.0. * There are already [120 issues closed and merged for EF Core 5.0](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.0+is%3Aclosed). * Current and LTS: [EF Core 3.1.1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Pull requests from the last week ### Community contributions * @orionstudt contributed [support for change tracking proxies](https://github.com/dotnet/efcore/pull/19437) * @jmzagorski fixed the [summary comment for WithOne](https://github.com/dotnet/efcore/pull/19560) * @jviau contributed [translations for Contains, StartsWith, and EndsWith on Cosmos](https://github.com/dotnet/efcore/pull/19563) * @WeihanLi contributed the [context.Database.IsRelational extension method](https://github.com/dotnet/efcore/pull/19521) * @MHDuke removed the [out-dated limitation on query filters using navigations](https://github.com/aspnet/EntityFramework.Docs/pull/2009) Many thanks to all our contributors! ### EF Core * Query * Optimized [generation of SQL CASE blocks](https://github.com/dotnet/efcore/pull/19548) * Additional [code cleanup for null semantics](https://github.com/dotnet/efcore/pull/19529) * Updated [query asserters to not use dynamic](https://github.com/dotnet/efcore/pull/19528) * Tooling * Updates to [nullable reference types changes for the scaffolding package](https://github.com/dotnet/efcore/pull/19507) * SQLite * Fix for [finding SpatiaLite in framework-dependent deployments](https://github.com/dotnet/efcore/pull/19561) * Documentation: * Updates to [releases and planning for EF Core 3.1 and 5.0](https://github.com/aspnet/EntityFramework.Docs/pull/2050) * Improved documentation for [using backing fields](https://github.com/aspnet/EntityFramework.Docs/pull/2005) * Documented [workarounds for using SpatiaLite with PROJ](https://github.com/aspnet/EntityFramework.Docs/pull/2045) * Fix for [typo in link](https://github.com/aspnet/EntityFramework.Docs/pull/2052) * Clarification on [nullable reference types and backing fields](https://github.com/aspnet/EntityFramework.Docs/pull/2024) * Added not about [API surface being null-oblivious](https://github.com/aspnet/EntityFramework.Docs/pull/2022) * Updated docs readme with [detailed instructions for fixing a typo](https://github.com/aspnet/EntityFramework.Docs/pull/2036) ## Issues remaining for 5.0 The burn-down will return for EF Core 5.0 next week. ## Latest releases See [EF Core releases and planning](https://docs.microsoft.com/en-us/ef/core/what-is-new/) in our documentation for full details. EF Core: * Daily builds: install the latest preview SDK, then [follow the instructions from the wiki](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) * Current/LTS: [EF Core 3.1.1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) EF6: * Daily builds: install the latest preview SDK, then [use the feeds listed on the repo homepage](https://github.com/aspnet/EntityFramework6) * Current: [EF 6.4.0](https://www.nuget.org/packages/EntityFramework/) ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

January 23, 2020

Expand to see status from this week...

## EF Core 3.1.1 EF Core 3.1.1 is now [available on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.1). This is a patch release of 3.1 containing [critical bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.1+is%3Aclosed). ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. ### Status of themes for EF Core 5.0 Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Not started | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Not started | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Not started | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Not started | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Complete! | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0. ![image](https://user-images.githubusercontent.com/1430078/73019169-ef48a580-3dd7-11ea-9fb0-cf11f20e16f3.png) * The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Using the daily builds is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * We work hard to keep the daily builds in good shape by running over 55,000 tests per target for each build. * Daily builds now contain work scheduled for release in EF Core 5.0. * There are already [123 issues closed and merged for EF Core 5.0](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.0+is%3Aclosed). * Current and LTS: [EF Core 3.1.1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Pull requests from the last week Pull request numbers are low right now since most if the team is working on investigating, learning, designing, etc. for new features. ### Community contributions * @benmccallum clarified [documentation for UseLoggerFactory](https://github.com/dotnet/efcore/pull/19654) * @OOberoi fixed [a typo](https://github.com/aspnet/EntityFramework.Docs/pull/2049) * @mariusGundersen added a [link to Expressionify](https://github.com/aspnet/EntityFramework.Docs/pull/2047) * @aevitas fixed [a typo](https://github.com/aspnet/EntityFramework.Docs/pull/2057) Many thanks to all our contributors! ### EF Core * Query * Improvements to [null-semantics by using function-specific metadata](https://github.com/dotnet/efcore/pull/19607) * Added some [inline documentation on navigation expansion](https://github.com/dotnet/efcore/pull/19415) ## Latest releases See [EF Core releases and planning](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. EF Core: * Daily builds: install the latest preview SDK, then [follow the instructions from the wiki](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) * Current/LTS: [EF Core 3.1.1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) EF6: * Daily builds: install the latest preview SDK, then [use the feeds listed on the repo homepage](https://github.com/aspnet/EntityFramework6) * Current: [EF 6.4.0](https://www.nuget.org/packages/EntityFramework/) ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

January 30, 2020

Expand to see status from this week...

## Highlights * Updated [release-planning documentation](https://docs.microsoft.com/ef/core/what-is-new/release-planning). This covers * How we prioritize issues for patching and other releases * How to understand the states/milestones of issues on GitHub * Updated [comparison between EF Core and EF6](https://docs.microsoft.com/ef/efcore-and-ef6/) including guidance on which to use * EF Core can now generate change-tracking proxies (automatically implementing IPropertyChanged, etc.) thanks to a community contribution (Thanks @orionstudt!) * Technically this went in a couple of weeks ago. We did some additional testing this week and it's looking very solid! * The community continues to contribute additional query translations. * Thanks to @svengeance for this week's [translation of SequenceEqual for byte arrays](https://github.com/dotnet/efcore/pull/19698) ## EF Core 3.1.1 EF Core 3.1.1 is now [available on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.1). This is a patch release of 3.1 containing [critical bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.1+is%3Aclosed). ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. ### Status of themes for EF Core 5.0 Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Not started | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Not started | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Not started | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Complete! | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0. ![image](https://user-images.githubusercontent.com/1430078/73482973-891dce80-4353-11ea-9ace-f209a2d7b53a.png) * The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Using the daily builds is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * We work hard to keep the daily builds in good shape by running over 55,000 tests per target for each build. However, due to internal infrastructure changes there are currently some bad packages on the feed. Use package versions "5.0.0-alpha.*" to workaround this. * Daily builds now contain work scheduled for release in EF Core 5.0. * There are already [133 issues closed and merged for EF Core 5.0](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.0+is%3Aclosed). * Current and LTS: [EF Core 3.1.1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Pull requests from the last week Pull request numbers are low right now since most if the team is working on investigating, learning, designing, etc. for new features. ### Community contributions * @matthiaslischka contributed [documentation clarification for EntityEntry.OriginalValues](https://github.com/dotnet/efcore/pull/19698) * @svengeance contributed [translations for SequenceEqual on byte arrays](https://github.com/dotnet/efcore/pull/19594) * @VladDragnea contributed a [design-time enhancement that allows a DbContext to be resolved from D.I. in more cases](https://github.com/dotnet/efcore/pull/17273) * @gravbox contributed a [link to nHydrate in the third-party extensions documentation](https://github.com/aspnet/EntityFramework.Docs/pull/2060) Many thanks to all our contributors! ### EF Core * Query * Fixed [translation for VB string comparisons](https://github.com/dotnet/efcore/pull/19681) * Tracking/SaveChanges * Implementation of [robust ordering for key property values](https://github.com/dotnet/efcore/pull/19644) * Consolidation of [structural and key comparers](https://github.com/dotnet/efcore/pull/19714) * Documentation * Updated [comparison of EF Core and EF6](https://github.com/aspnet/EntityFramework.Docs/pull/2064) * Updated [release-planning documentation](https://github.com/aspnet/EntityFramework.Docs/pull/2071) * Updated [breaking change documentation to call out .NET Standard 2.0 support is back in EF Core 3.1](https://github.com/aspnet/EntityFramework.Docs/pull/2065) * Testing * Functional testing for [change-tracking proxies](https://github.com/dotnet/efcore/pull/19706) * Improved [functional testing for migrations](https://github.com/dotnet/efcore/pull/19353) (Also [19699](https://github.com/dotnet/efcore/pull/19699) [19718](https://github.com/dotnet/efcore/pull/19718)) * Testing for [GroupBy scenario with with HasValue](https://github.com/dotnet/efcore/pull/19700) * Testing for [null semantics and CASE generation scenario](https://github.com/dotnet/efcore/pull/19685) * Testing for [parameter-based optimization scenario](https://github.com/dotnet/efcore/pull/19684) * Fixed [multiple database tests to work with other providers](https://github.com/dotnet/efcore/pull/19707) * Package dependency updates * Updated to [Cosmos 3.6.0](https://github.com/dotnet/efcore/pull/19730) * Updated to [SqlClient 2.0.0-preview1](https://github.com/dotnet/efcore/pull/19729) ## Latest releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. EF Core: * Daily builds: install the latest preview SDK, then [follow the instructions from the wiki](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) * Current/LTS: [EF Core 3.1.1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) EF6: * Daily builds: install the latest preview SDK, then [use the feeds listed on the repo homepage](https://github.com/aspnet/EntityFramework6) * Current: [EF 6.4.0](https://www.nuget.org/packages/EntityFramework/) ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

February 6, 2020

Expand to see status from this week...

## Highlights * The fundamental [model building changes](https://github.com/dotnet/efcore/pull/19660) for many-to-many are now merged. * Early work has started on designing the "store model" representation needed for TPT. * `_etag` concurrency is now supported on Cosmos thanks to a community contribution from @jviau! * Have you considered [contributing](https://github.com/dotnet/aspnetcore/blob/master/CONTRIBUTING.md)? * We've published [What's new in EF Core 5.0](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew) * This document will track new features introduced in each preview of EF Core 5.0 ## EF Core 3.1.1 EF Core 3.1.1 is now [available on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.1). This is a patch release of 3.1 containing [critical bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.1+is%3Aclosed). ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. ### Status of themes for EF Core 5.0 Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Not started | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Complete! | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0. ![image](https://user-images.githubusercontent.com/1430078/73988198-c86d9180-48f6-11ea-9a91-a2bddd70f6ee.png) * The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Using the daily builds is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * We work hard to keep the daily builds in good shape by running over 55,000 tests per target for each build. However, due to internal infrastructure changes there are currently some bad packages on the feed. Use package versions "5.0.0-alpha.*" to workaround this. * Daily builds now contain work scheduled for release in EF Core 5.0. * There are already [140 issues closed and merged for EF Core 5.0](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.0+is%3Aclosed). * Current and LTS: [EF Core 3.1.1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Pull requests from the last week Pull request numbers are low right now since most if the team is working on investigating, learning, designing, etc. for new features. ### Community contributions @jviau contributed support for [concurrency using `_etag` in the Cosmos provider](https://github.com/dotnet/efcore/pull/19581) @CGijbels contributed [improved organization of terms in relationship dodcumentation](https://github.com/aspnet/EntityFramework.Docs/pull/2081) Many thanks to all our contributors! ### EF Core * Model building * Implementation of [fluent API for skip navigations (many-to-many)](https://github.com/dotnet/efcore/pull/19660) * Added [missing IEnumerable overloads to HasData on OwnedNavigationBuilders](https://github.com/dotnet/efcore/pull/19766) * Query * Fix to [use value converter when comparing to converted bool literal](https://github.com/dotnet/efcore/pull/19689) * Fixed [typo in InstancePropagatesNullability type name](https://github.com/dotnet/efcore/pull/19771) * Cosmos * Fix to [nested OwnsMany inside an OwnsOne for Cosmos](https://github.com/dotnet/efcore/pull/19784) * Test * Split [graph update tests into multiple files](https://github.com/dotnet/efcore/pull/19770) * Documentation * Created initial [What's new in EF Core 5.0 document](https://github.com/aspnet/EntityFramework.Docs/pull/2083) ## Latest releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. EF Core: * Daily builds: install the latest preview SDK, then [follow the instructions from the wiki](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) * Current/LTS: [EF Core 3.1.1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) EF6: * Daily builds: install the latest preview SDK, then [use the feeds listed on the repo homepage](https://github.com/aspnet/EntityFramework6) * Current: [EF 6.4.0](https://www.nuget.org/packages/EntityFramework/) ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

February 13, 2020

Expand to see status from this week...

## Highlights * The initial design has been completed for [the store model abstraction used by TPT, TPC, and entity splitting](https://github.com/dotnet/efcore/issues/12846#issuecomment-585377691) * Code to [implement the API is out in a PR](https://github.com/dotnet/efcore/pull/19896) * We have reassessed all issues filed since the 3.0 release as candidates to be included in a 3.1.x patch release * Issues going through the process of approval for patching are [labeled on GitHub with `servicing-consider`](https://github.com/dotnet/efcore/issues?q=is%3Aopen+is%3Aissue+label%3AServicing-consider) * Issues approved for patching are [labeled on GitHub with `servicing-approved`](https://github.com/dotnet/efcore/issues?utf8=%E2%9C%93&q=is%3Aissue+label%3AServicing-approved+) ## EF Core 3.1.1 EF Core 3.1.1 is now [available on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.1). This is a patch release of 3.1 containing [critical bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.1+is%3Aclosed). ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. ### Status of themes for EF Core 5.0 Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Not started | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Complete! | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0. ![image](https://user-images.githubusercontent.com/1430078/74489408-0da33d80-4e7a-11ea-92c4-638ffa42e05e.png) * The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Using the daily builds is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * We work hard to keep the daily builds in good shape by running over 57,000 tests per target for each build. * Daily builds now contain work scheduled for release in EF Core 5.0. * There are already [150 issues closed and merged for EF Core 5.0](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.0+is%3Aclosed). * Current and LTS: [EF Core 3.1.1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Pull requests from the last week Pull request numbers are low right now since most if the team is working on investigating, learning, designing, etc. for new features. ### Community contributions * @mikes-gh contributed [code to normalize parenthesis when scaffolding from old SQL Server databases](https://github.com/dotnet/efcore/pull/19745) * @Muppets contributed [better exception handling and messages for Last, etc.](https://github.com/dotnet/efcore/pull/19773) * @sguitardude [removed an outdated link from the docs](https://github.com/aspnet/EntityFramework.Docs/pull/2104) * @SimpleSamples [clarified language in the existing database docs](https://github.com/aspnet/EntityFramework.Docs/pull/2102) * @loic-sharma [removed outdated information about NuGet package install](https://github.com/aspnet/EntityFramework.Docs/pull/2101) * @amrbadawy [updated docs to use example.com instead of sample.com](https://github.com/aspnet/EntityFramework.Docs/pull/2100) * @MaxG117 [updated the Teradata.EntityFrameworkCore reference to indicate it is now releases](https://github.com/aspnet/EntityFramework.Docs/pull/2093) Many thanks to all our contributors! ### EF Core * Model building * Rename [IModelFinalizedConvention to IModelFinalizingConvention](https://github.com/dotnet/efcore/pull/19872) in preparation for store model work * Added [DbSet support for shared-type entity types](https://github.com/dotnet/efcore/pull/19517) * Query * Fix [exponential query compilation in some deep query trees](https://github.com/dotnet/efcore/pull/19858) * Fixes to [correctly use DbContext members in compiled queries](https://github.com/dotnet/efcore/pull/19841) * Use [KeyValueComparer to compare query identifiers](https://github.com/dotnet/efcore/pull/19836) * Add [query plan back to logging](https://github.com/dotnet/efcore/pull/19674) * Fix [snapshot of selector shape to handle GroupBy-Aggregate](https://github.com/dotnet/efcore/pull/19835) * Don't use [null propagation by default for UDFs](https://github.com/dotnet/efcore/pull/19833) * Make [IEntityType part of EntityQueryable to handle shared-type entities](https://github.com/dotnet/efcore/pull/19819) * Convert [List.Count to Queryable.Count() only for queryables](https://github.com/dotnet/efcore/pull/19831) * Combine [queryable method processing expression visitors](https://github.com/dotnet/efcore/pull/19885) * Fix [parameter name generation for raw SQL queries](https://github.com/dotnet/efcore/pull/19839) * Additional [code cleanup and tests for checked context](https://github.com/dotnet/efcore/pull/19862) * Cleanup [VB/C# language processing](https://github.com/dotnet/efcore/pull/19823) * Remove [use of default type mapping where not needed](https://github.com/dotnet/efcore/pull/19822) * Scaffolding * [Minor refactorings](https://github.com/dotnet/efcore/pull/19795) * Tests * Added [query test coverage for indexer properties](https://github.com/dotnet/efcore/pull/19502) * Test cleanup for [date translations](https://github.com/dotnet/efcore/pull/19821) * Add [provider-specific delimiting to hand-written queries](https://github.com/dotnet/efcore/pull/19837) * Fix for [non-deterministic ordering on some providers](https://github.com/dotnet/efcore/pull/19855) * Docs * Added an [Oxford comma](https://github.com/aspnet/EntityFramework.Docs/pull/2095) ## Latest releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. EF Core: * Daily builds: install the latest preview SDK, then [follow the instructions from the wiki](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) * Current/LTS: [EF Core 3.1.1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) EF6: * Daily builds: install the latest preview SDK, then [use the feeds listed on the repo homepage](https://github.com/aspnet/EntityFramework6) * Current: [EF 6.4.0](https://www.nuget.org/packages/EntityFramework/) ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

February 20, 2020

Expand to see status from this week...

## Highlights * Patches for [11 issues have been merged for the 3.1.3 patch release](https://github.com/dotnet/efcore/issues?q=is%3Aissue+label%3AServicing-approved+milestone%3A3.1.3), tentatively scheduled for March. * The window for the 3.1.3 release has now closed, but we are still investigating additional issues to fix in later patches. * We are working on a [an easier to use way to load a graph using multiple queries](https://github.com/dotnet/efcore/issues/18022#issuecomment-586521749). * We will make this available in some form for the 3.1 release. ## EF Core 3.1.2 EF Core 3.1.2 is now [available on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.2). This patch release contains no new EF Core code. It was released because it updates some dependencies. All the [fixes in the 3.1.1 release](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.1+is%3Aclosed) are also included in the 3.1.2 release. ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. ### Status of themes for EF Core 5.0 Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Not started | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Complete! | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burndown
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Using the daily builds is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * We work hard to keep the daily builds in good shape by running over 57,000 tests per target for each build. * Daily builds now contain work scheduled for release in EF Core 5.0. * There are already [157 issues closed and merged for EF Core 5.0](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.0+is%3Aclosed). * Current and LTS: [EF Core 3.1.2](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Pull requests from the last week Pull request numbers are low right now since most if the team is working on investigating, learning, designing, etc. for new features. ### Community contributions * @aleksandar-manukov implemented [translations for TimeSpan members](https://github.com/dotnet/efcore/pull/19774) * Many thanks to all our contributors! ### EF Core * 3.1.3 patch PRs * Fix [exception when scaffolding from tables/views without keys](https://github.com/dotnet/efcore/pull/19919) * Fixed [failure to find SpatialLite in framework-dependent deployments](https://github.com/dotnet/efcore/pull/19701) * Fixed [several issues in cascade behaviors when detaching entities](https://github.com/dotnet/efcore/pull/19911) * Fix for [collection Includes on Cosmos](https://github.com/dotnet/efcore/pull/19901) * Fixed [exponential perf when translating deeply nested queries](https://github.com/dotnet/efcore/pull/19867) * Fix to [simplify the query for simple owned entity cases](https://github.com/dotnet/efcore/pull/19871) * Fix to [DateTimeOffset type mapping](https://github.com/dotnet/efcore/pull/19865) * Fix to [OrderBy/ThenBy translations with expanded navigations](https://github.com/dotnet/efcore/pull/19863) * Model building * Initial merge of the [relational model API for TPT, TPC, entity splitting, etc.](https://github.com/dotnet/efcore/pull/19896) * Allow [backing field to be specified via .NET attribute](https://github.com/dotnet/efcore/pull/19989) * Change [error for inappropriate HiLo configuration to warning since it is valid in corner cases](https://github.com/dotnet/efcore/pull/19887) * Scaffolding * Allow [overriding of the connection string for scaffolding](https://github.com/dotnet/efcore/pull/19913) * Testing * Add [automatic null propagation for AssertQuery baselines](https://github.com/dotnet/efcore/pull/19902) * C.I. test runs moved to [use the Helix infrastructure](https://github.com/dotnet/efcore/pull/19917) ## Latest releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

February 27, 2020

Expand to see status from this week...

## Highlights * We have merged a large community PR from @pmiddleton to [support mapping a CLR method returning an IQueryable to a TVF in the database](https://github.com/dotnet/efcore/pull/20053). * This is a great example of the community working with the EF team to integrate a big change into the query pipeline. * The [implementation for `KeylessAttribute`](https://github.com/dotnet/efcore/pull/20011) is now merged. * This allows marking entity types as keyless without using the model building API. ## EF Core 3.1.2 EF Core 3.1.2 is now [available on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.2. This patch release contains no new EF Core code. It was released because it updates some dependencies. All the [fixes in the 3.1.1 release](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.1+is%3Aclosed) are also included in the 3.1.2 release. ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. ### Status of themes for EF Core 5.0 Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Not started | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Complete! | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @pmiddleton contributed a [major update to support mapping queryable functions to TVF](https://github.com/dotnet/efcore/pull/20053) * @alaatm made a change to [cache the StringBuilder in SQL Server conventions](https://github.com/dotnet/efcore/pull/20037) * @EricStG added [additional tests for spatial queries](https://github.com/dotnet/efcore/pull/20036) * @Muppets added [regression tests for int/string concatenation](https://github.com/dotnet/efcore/pull/19948) * @Costo fixed [the QueryFilters sample](https://github.com/dotnet/EntityFramework.Docs/pull/2114) Many thanks to all our contributors! ### EF Core * 3.1.x patch PRs * Fixed [dotnet-ef to depend on only .NET Core 3.1.0, not other 3.1.x versions](https://github.com/dotnet/efcore/pull/20007) * Change to [match MemberInfo with incorrect ReflectedType as is commonly created in manual expression trees](https://github.com/dotnet/efcore/pull/20047) * Model building * Allow [mapping an entity type to both a table and a view](https://github.com/dotnet/efcore/pull/20054) * Added [view support to the relational model API](https://github.com/dotnet/efcore/pull/19971) * Start [storing all sequences in a single annotation](https://github.com/dotnet/efcore/pull/20066) * Introduce [KeylessAttribute](https://github.com/dotnet/efcore/pull/20011) * Log a warning when [using KeylessAttribute and KeyAttribute at the same time](https://github.com/dotnet/efcore/pull/20050) * Don't allow [KeyAttribute to override KeylessAttribute](https://github.com/dotnet/efcore/pull/20049) * Query * Added [plugin support for EvaluatableExpressionFilter](https://github.com/dotnet/efcore/pull/20033) Also [20080](https://github.com/dotnet/efcore/pull/20080) * Generate [APPLY rather than JOIN for sub-queries with outside references](https://github.com/dotnet/efcore/pull/20008) * Improvements to [null propagation strategy for functions](https://github.com/dotnet/efcore/pull/20025) * Updated [function nullability propagation](https://github.com/dotnet/efcore/pull/20031) * Added [automatic null propagation to AssertQuery baselines](https://github.com/dotnet/efcore/pull/20010) * SQLite * Fix [modulo calculation on floating-point values](https://github.com/dotnet/efcore/pull/20024) * Make [CommandTimeout option also set the SQLite connection DefaultTimeout](https://github.com/dotnet/efcore/pull/20010) * Tools * Get [EngineEdition & CompatibilityLevel once per connection when scaffolding a DbContext](https://github.com/dotnet/efcore/pull/20026) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burndown
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Using the daily builds is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * We work hard to keep the daily builds in good shape by running over 57,000 tests per target for each build. * Daily builds now contain work scheduled for release in EF Core 5.0. * There are already [171 issues closed and merged for EF Core 5.0](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.0+is%3Aclosed). * Current and LTS: [EF Core 3.1.2](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Latest releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

March 5, 2020

Expand to see status from this week...

## Highlights * Lots of work this week setting up the query pipeline to handle different types of query roots. * This is foundational for improved support for [TVFs, ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc). * Community PR from @lokalmatador to greatly improve [usability of decimals with SQLite](https://github.com/dotnet/efcore/pull/20035). * Many thanks to @Muppets for [paying off some of our technical debt](https://github.com/dotnet/efcore/pull/20087). ## EF Core 3.1.2 EF Core 3.1.2 is now [available on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.2. This patch release contains no new EF Core code. It was released because it updates some dependencies. All the [fixes in the 3.1.1 release](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.1+is%3Aclosed) are also included in the 3.1.2 release. ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. ### Status of themes for EF Core 5.0 Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Not started | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Complete! | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @lokalmatador added support for [decimal comparisons in SQLite](https://github.com/dotnet/efcore/pull/20035) * @Muppets helped immensely with some 3.0 technical debt by [creating resource strings for exception messages](https://github.com/dotnet/efcore/pull/20087) * @dshuvaev added support for [nested ambient transaction](https://github.com/dotnet/efcore/pull/20012) * @nmichels improved the [efficiency of SqliteDataRecord](https://github.com/dotnet/efcore/pull/18438). See also [20088](https://github.com/dotnet/efcore/pull/20088) [20092](https://github.com/dotnet/efcore/pull/20092) * @OOberoi fixed [some typos and punctuation](https://github.com/dotnet/EntityFramework.Docs/pull/2148) * @vslee clarified the [many-to-many issues in the 5.0 plan](https://github.com/dotnet/EntityFramework.Docs/pull/2125) * @sguitardude [fixed spelling of set up](https://github.com/dotnet/EntityFramework.Docs/pull/2157) * @amrbadawy [Changed owned type to owned entity](https://github.com/dotnet/EntityFramework.Docs/pull/2154) * @amrbadawy [Removed incorrect endregion](https://github.com/dotnet/EntityFramework.Docs/pull/2153) * @lohoris-crane fixed [a typo](https://github.com/dotnet/EntityFramework.Docs/pull/2155) Many thanks to all our contributors! ### EF Core * Query * Introduction of [custom query root expressions](https://github.com/dotnet/efcore/pull/20152) * Introduction of [custom query root for TVFs](https://github.com/dotnet/efcore/pull/20165) * Introduction of [QueryableFunctionExpression to represent TVFs in the SQL tree](https://github.com/dotnet/efcore/pull/20183) * Convert [FromSql methods to custom query roots](https://github.com/dotnet/efcore/pull/20154) * Improve [parameterization of Queryable functions](https://github.com/dotnet/efcore/pull/20186) * Use [IsNullable property to determine its nullability](https://github.com/dotnet/efcore/pull/20177) * Allow [parameters of the integer type underlying the enum](https://github.com/dotnet/efcore/pull/20081) * Fix to [apply null-semantics to subquery.Contains(null)](https://github.com/dotnet/efcore/pull/19744) * Minor cleanup related to [Queryable Functions](https://github.com/dotnet/efcore/pull/20178) * Improved [expression tree printing](https://github.com/dotnet/efcore/pull/20147) * Model building * Added [ForeignKeyConstraint to the relational model](https://github.com/dotnet/efcore/pull/20141) * Fixed [issue using null to remove an index filter](https://github.com/dotnet/efcore/pull/20158) * Prevent [explicit use of proxy types in the model](https://github.com/dotnet/efcore/pull/20130) * Store [all functions in a single annotation](https://github.com/dotnet/efcore/pull/20091) * Migrations * Add support for [more literal generation needed for NodaTime types](https://github.com/dotnet/efcore/pull/20142) * Throw if [migration has the same name as the context](https://github.com/dotnet/efcore/pull/20143) * Transactions * Clarification of the [nested ambient transaction exception message](https://github.com/dotnet/efcore/pull/20089) * Sqlite * Fixed [SQlite scaffolding issues for autoincrement and FKs without column references](https://github.com/dotnet/efcore/pull/20063) * Docs * Make [breadcrumbs consistent with .NET and ASP.NET docs](https://github.com/dotnet/EntityFramework.Docs/pull/2159) * Update [highlighting for modeling docs](https://github.com/dotnet/EntityFramework.Docs/pull/2152) * Update releases to [indicate that EF Core 3.0 is now out-of-support](https://github.com/dotnet/EntityFramework.Docs/pull/2158) ### Microsoft.Data.Sqlite * Align with other providers by [defaulting CommandText to an empty string](https://github.com/dotnet/efcore/pull/20151) * Improve SqliteConnection perf by [making more things lazy](https://github.com/dotnet/efcore/pull/20150) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Using the daily builds is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * We work hard to keep the daily builds in good shape by running over 57,000 tests per target for each build. * Daily builds now contain work scheduled for release in EF Core 5.0. * There are already [171 issues closed and merged for EF Core 5.0](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.0+is%3Aclosed). * Current and LTS: [EF Core 3.1.2](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Latest releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

March 12, 2020

Expand to see status from this week...

## Highlights * Please welcome @JeremyLikness as the new Senior Program Manager for .NET Data! Jeremy will be working closely with the EF team as well as more broadly across .NET. * `dotnet ef database update` now accepts a [connection string on the command line](https://github.com/dotnet/efcore/pull/20245). * Querying for all types in a TPH hierarchy now [doesn't require a Where clause](https://github.com/dotnet/efcore/pull/20193). ## EF Core 3.1.2 EF Core 3.1.2 is now [available on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.2. This patch release contains no new EF Core code. It was released because it updates some dependencies. All the [fixes in the 3.1.1 release](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.1+is%3Aclosed) are also included in the 3.1.2 release. ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. ### Status of themes for EF Core 5.0 Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Not started | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Complete! | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @prog-rajkamal corrected [the supported .NET Standard version in installation docs](https://github.com/dotnet/EntityFramework.Docs/pull/2171) * @ccjx added [more examples of 'from' and 'to' usage in migration script samples](https://github.com/dotnet/EntityFramework.Docs/pull/2142) * @AnthonyMonterrosa [corrected some grammar](https://github.com/dotnet/EntityFramework.Docs/pull/2169) Many thanks to all our contributors! ### EF Core * Query * Handle more cases of [casting to an interface inside query](https://github.com/dotnet/efcore/pull/20233) * Updated [test baseline for free-text query](https://github.com/dotnet/efcore/pull/20232) * Updated [test for using Cast with TVF](https://github.com/dotnet/efcore/pull/20234) * Cleanup in [Queryable function support](https://github.com/dotnet/efcore/pull/20139) * Model building * Remove the need for [Where clause when returning all types in a TPH hierarchy](https://github.com/dotnet/efcore/pull/20193) * Added [TableIndex and UniqueConstraint to the relational model](https://github.com/dotnet/efcore/pull/20196) * Allow [inline configuration of navigations](https://github.com/dotnet/efcore/pull/20195) * Validate [more SQL Server-specific configuration for shared database objects](https://github.com/dotnet/efcore/pull/20185) * Migrations * Added [connection string parameter for update-database](https://github.com/dotnet/efcore/pull/20245) * Use the [correct IDesignTimeDbContextFactory when generics involved](https://github.com/dotnet/efcore/pull/20242) * Dependencies * Updated [Microsoft.Azure.Cosmos to 3.7.0-preview](https://github.com/dotnet/efcore/pull/20149) * Update [BenchmarkDotNet version to 0.12.0](https://github.com/dotnet/efcore/pull/20187) * Docs * Added [clarification for using the EF6 designer with .NET Core](https://github.com/dotnet/EntityFramework.Docs/pull/2170) * Simplification of [docs breadcrumbs](https://github.com/dotnet/EntityFramework.Docs/pull/2164) * Tests * Fixed [line endings to support building on one platform and running on another](https://github.com/dotnet/efcore/pull/20227) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Using the daily builds is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * We work hard to keep the daily builds in good shape by running over 57,000 tests per target for each build. * There are already [195 issues closed and merged for EF Core 5.0](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.0+is%3Aclosed). * Current and LTS: [EF Core 3.1.2](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Latest releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

March 19, 2020

Expand to see status from this week...

## EF Core 5.0 preview 1 released! EF Core 5.0 preview 1 is on [NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.2.20120.8) now! New features in preview 1: * Simple Logging * Simple way to get generated SQL * Use a C# attribute to indicate that an entity has no key * Connection or connection string can be changed on initialized DbContext * Change-tracking proxies * Enhanced debug views * Improved handling of database null semantics * Indexer properties * Generation of check constraints for enum mappings * Cosmos optimistic concurrency with ETags * Query translations for more DateTime constructs * Query translations for more byte array constructs * Query translation for Reverse * Query translation for bitwise operators * Query translation for strings on Cosmos The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-1/) has installation instructions and full details. ## EF Core 3.1.2 EF Core 3.1.2 is now [available on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.2). This patch release contains no new EF Core code. It was released because it updates some dependencies. All the [fixes in the 3.1.1 release](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.1+is%3Aclosed) are also included in the 3.1.2 release. ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | In-progress | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Complete! | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @1iveowl added [WithPartitionKey extension method for Cosmos](https://github.com/dotnet/efcore/pull/20300) * @thomaslevesque Added [NotParameterizedAttribute to FreeText's parameter](https://github.com/dotnet/efcore/pull/20308) Many thanks to all our contributors! ### EF Core * Query * Fix [issue materializing entity instances for keyless types will all null values](https://github.com/dotnet/efcore/pull/20280) * Added [more flexibility for discriminator conditions in the entity shaper](https://github.com/dotnet/efcore/pull/20324) * Make [keyless entity type materialization checks part of discriminator conditions](https://github.com/dotnet/efcore/pull/20325) * Make [CreateReadValueExpression an extension method](https://github.com/dotnet/efcore/pull/20321) * Disallow [setting custom translation for DbFunction mapped to TVFs](https://github.com/dotnet/efcore/pull/20315) * Remove [client implementation for EF.Functions.Like](https://github.com/dotnet/efcore/pull/20311) * Remove [client evaluation code for EF.Functions methods](https://github.com/dotnet/efcore/pull/20312) * Improve [printing of switch in expression tree](https://github.com/dotnet/efcore/pull/20326) * Model building * Added [Navigation API to allow configuration of navigation properties](https://github.com/dotnet/efcore/pull/20271) * Added [ability to configure the navigation on dependent side of owned types](https://github.com/dotnet/efcore/pull/20282) * Added [HasField to navigation builder to make it easy to set the backing field](https://github.com/dotnet/efcore/pull/20323) * Made [discriminator mapping as complete by default](https://github.com/dotnet/efcore/pull/20265) * Improve and test [consistency in metadata APIs](https://github.com/dotnet/efcore/pull/20267) * Removed [earlier design for navigation configuration](https://github.com/dotnet/efcore/pull/20317) * Docs * Updated [what's new in EF Core 5.0 preview 1](https://github.com/dotnet/EntityFramework.Docs/pull/2187) * Updated [releases to include 5.0 previews](https://github.com/dotnet/EntityFramework.Docs/pull/2190) * Updated [security template](https://github.com/dotnet/efcore/pull/20310) * Tests * Disable [SQL Server cross-store flaky tests](https://github.com/dotnet/efcore/pull/20314) * Cleanup [in SqlServer functional tests config](https://github.com/dotnet/efcore/pull/20313) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.2.20120.8) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.2](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

March 26, 2020

Expand to see status from this week...

## Highlights * EF Core 3.1.3 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.2). * This is a patch release of 3.1 [containing twelve important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.3+is%3Aclosed). * EF Core 5.0 preview 1 is [also available on NuGet now!](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-1/) * Merged and in the [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md): * Support for [filtered Include](https://github.com/dotnet/efcore/issues/1833). * The main part of the fix for [owned entities producing overly complicated SQL](https://github.com/dotnet/efcore/issues/18299) * Initial new documentation for: * [Testing EF Core apps](https://github.com/dotnet/EntityFramework.Docs/pull/2216) * [Value comparers](https://github.com/dotnet/EntityFramework.Docs/pull/2192) ## Quick peak at filtered Include [Global query filters](https://docs.microsoft.com/ef/core/querying/filters) have been supported since EF Core 2.0. Now EF Core 5.0 introduces ad-hoc filtering of relationships using [Include](https://docs.microsoft.com/ef/core/querying/related-data). For example, this query uses Include in its traditional form to query for Blogs and also load every associated Post. ```C# var blogs = context.Blogs .Include(e => e.Posts) .ToList(); DisplayBlogs(blogs); ``` Typical output from this query might be: ``` Blog: Crisps: Post: Cheese and Onion Post: Prawn Cocktail Post: Smokey Bacon Post: Salt and Vinegar Post: Cream Cheese and Chives Blog: Sandwiches: Post: BLT Post: Ham and Cheese Post: Cheese and Pickle Post: Cheese and Tomato ``` In EF Core 5.0, Include can now be given a `Where` clause to filter which associated entities are loaded. For example, this query uses Include with a filter for only posts with titles containing "Cheese". ```C# var blogsWithCheese = context.Blogs .Include(e => e.Posts.Where(p => p.Title.Contains("Cheese"))) .ToList(); DisplayBlogs(blogsWithCheese); ``` This translates to the following SQL when using the SQL Server databse provider: ```sql SELECT [b].[Id], [b].[Title], [t].[Id], [t].[BlogId], [t].[Title] FROM [Blogs] AS [b] LEFT JOIN ( SELECT [p].[Id], [p].[BlogId], [p].[Title] FROM [Post] AS [p] WHERE CHARINDEX(N'Cheese', [p].[Title]) > 0 ) AS [t] ON [b].[Id] = [t].[BlogId] ORDER BY [b].[Id], [t].[Id] ``` Using the same data as before, the output is now: ``` Blog: Crisps: Post: Cheese and Onion Post: Cream Cheese and Chives Blog: Sandwiches: Post: Ham and Cheese Post: Cheese and Pickle Post: Cheese and Tomato ``` ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @Marusyk implemented [translation for the SQL Server DATALENGTH function](https://github.com/dotnet/efcore/pull/20079) * @akovac35 added clarifications for [configuration of DbContext with Blazor](https://github.com/dotnet/EntityFramework.Docs/pull/2201) * @leotsarev added [EF 6.4 to the EF6 releases](https://github.com/dotnet/EntityFramework.Docs/pull/2209) * @kostat added [XLinq to the extensions docs](https://github.com/dotnet/EntityFramework.Docs/pull/2214) Many thanks to all our contributors! ### EF Core * Query * Implemented support for [filtered Include](https://github.com/dotnet/efcore/pull/20279) * Stop [generating server side joins for optional dependents](https://github.com/dotnet/efcore/pull/20345) * Fix to [map projection correctly when joining two tables](https://github.com/dotnet/efcore/pull/20207) Also [20340](https://github.com/dotnet/efcore/pull/20340) * Improve [detection of non-composed FromSql](https://github.com/dotnet/efcore/pull/20366) * Bring back [detailed error logging for queries](https://github.com/dotnet/efcore/pull/20367) * Remove [code duplication for materialization condition](https://github.com/dotnet/efcore/pull/20356) * Docs: * Initial [guidance on testing EF Core applications](https://github.com/dotnet/EntityFramework.Docs/pull/2216) * New documentation for [value comparers](https://github.com/dotnet/EntityFramework.Docs/pull/2192) * Clarify [supported project types for the EF6 designer](https://github.com/dotnet/EntityFramework.Docs/pull/2195) * Added [3.1.3 to releases](https://github.com/dotnet/EntityFramework.Docs/pull/2217) * Test: * Convert [NorthwindDbFunctionsQueryTests to use common test infrastructure](https://github.com/dotnet/efcore/pull/20403) * Update [SQL assertions in OwnedQuerySqlServerTest](https://github.com/dotnet/efcore/pull/20353) * Cleanup [optional dependents SQL feature](https://github.com/dotnet/efcore/pull/20354) * SQLite: * Workaround to [set temp and data directory on UWP due to current directory issue](https://github.com/dotnet/efcore/pull/20077) * Model building: * Refactor [MigrationsModelDiffer to use the database model](https://github.com/dotnet/efcore/pull/20305) * Global: * Internal API usage scrub: [20399](https://github.com/dotnet/efcore/pull/20399) [20398](https://github.com/dotnet/efcore/pull/20398) [20388](https://github.com/dotnet/efcore/pull/20388) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.2.20120.8) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.3](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

April 2, 2020

Expand to see status from this week...

## EF Core 5.0 preview 2 released! EF Core 5.0 preview 2 is on [NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.2.20159.4) now! For EF Core, preview 2 contains only a few new features over preview 1: * Use a C# attribute to specify a property backing field * Complete discriminator mapping * Performance improvements in Microsoft.Data.Sqlite Remember that all these preview 1 features are also in preview 2: * Simple Logging * Simple way to get generated SQL * Use a C# attribute to indicate that an entity has no key * Connection or connection string can be changed on initialized DbContext * Change-tracking proxies * Enhanced debug views * Improved handling of database null semantics * Indexer properties * Generation of check constraints for enum mappings * Cosmos optimistic concurrency with ETags * Query translations for more DateTime constructs * Query translations for more byte array constructs * Query translation for Reverse * Query translation for bitwise operators * Query translation for strings on Cosmos The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-2/) has installation instructions and full details. ## EF Core 3.1.3 EF Core 3.1.3 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.3). This is a patch release of 3.1 [containing twelve important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.3+is%3Aclosed). ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions @sungam3r Fixed [typos in the XML doc comments](https://github.com/dotnet/efcore/pull/20464) @ErikEJ adding testing support to [detect SqlServer features automagically rather than using env vars](https://github.com/dotnet/efcore/pull/20371) Many thanks to all our contributors! ### EF Core * Query * Cover more scenarios by [Rewriting entity equality during translation phase](https://github.com/dotnet/efcore/pull/20447) * Fix translation issues by [merging query optimizing expression visitors](https://github.com/dotnet/efcore/pull/20489) * Fix [translation of SQL Serer ToString](https://github.com/dotnet/efcore/pull/20470) * Improve perf of [finding value comparer for in-memory database](https://github.com/dotnet/efcore/pull/20444) * Add [ability for translation pipeline to translate property access over a subquery](https://github.com/dotnet/efcore/pull/20427) * Pass [QueryCompilationContext to factories used during compilation time](https://github.com/dotnet/efcore/pull/20422) * Revert [fix for bool column equality since it fails for some cases](https://github.com/dotnet/efcore/pull/20425) * Model Building: * Add a convention to [discover the entity type returned by a queryable function](https://github.com/dotnet/efcore/pull/20429) * Made [AnnotationBuilder public](https://github.com/dotnet/efcore/pull/20448) * Implementation of [HasPrecision to specify precision/scale in a database agnostic manner](https://github.com/dotnet/efcore/pull/20468) * Throw early when [IsUnique invalidates relationship multiplicity](https://github.com/dotnet/efcore/pull/20477) * Updated [IInfrastructure on Fluent API to use public interfaces](https://github.com/dotnet/efcore/pull/20492) * API review and cleanup: * Miscellaneous API review changes: [20452](https://github.com/dotnet/efcore/pull/20452) [20412](https://github.com/dotnet/efcore/pull/20412) * Cleanup of [value generation visibility and namespaces](https://github.com/dotnet/efcore/pull/20457) * Allow [switching off use of EF Analyzer in EF projects](https://github.com/dotnet/efcore/pull/20459) * Fixed [Linux build breaks](https://github.com/dotnet/efcore/pull/20450) * Migrations/Tooling: * Generate [correct SQL for DefaultValue or other literals with line-breaks](https://github.com/dotnet/efcore/pull/20304) * Allow [namespaces to be specified for migrations and scaffolding tooling](https://github.com/dotnet/efcore/pull/20355) * Test: * Added [test model for many-to-many relationships](https://github.com/dotnet/efcore/pull/20491) * Docs: * Added [5.0 preview 2 features to What's New doc](https://github.com/dotnet/EntityFramework.Docs/pull/2232) ### Microsoft.Data.Sqlite * Test against [e_sqlcipher and winsqlite3](https://github.com/dotnet/efcore/pull/20301) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 2](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.2.20159.4) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.3](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

April 9, 2020

Expand to see status from this week...

## Highlights * Great progress on many-to-many support in queries * Quality: API reviews and internal code cleanup * Continued small enhancements to the model building APIs ## EF Core 5.0 preview 2 EF Core 5.0 preview 2 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.2.20159.4) The EF Core 5.0 previews contain the following new features and enhancements: * [Simple Logging](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-2/) has installation instructions and full details. ## EF Core 3.1.3 EF Core 3.1.3 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.3). This is a patch release of 3.1 [containing twelve important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.3+is%3Aclosed). ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @dzmitry-lahoda [clarified getting started guidance](https://github.com/dotnet/EntityFramework.Docs/pull/2224) * @ErikEJ [fixed broken links to old blog posts](https://github.com/dotnet/EntityFramework.Docs/pull/2253) * @Logerfo made some [small adjustments to the relationships page](https://github.com/dotnet/EntityFramework.Docs/pull/2256) Many thanks to all our contributors! ### EF Core * Internal code cleanup * Make [IDbSetFinder public](https://github.com/dotnet/efcore/pull/20458) * Cleanup and add documentation for [IndentedStringBuilder](https://github.com/dotnet/efcore/pull/20530) * Cleanup [EF-internal usage for building/using internal service provider](https://github.com/dotnet/efcore/pull/20535) * Make [key value factories public](https://github.com/dotnet/efcore/pull/20523) * Move [MetadataDebugStringOptions to Infrastructure and make DebugView public](https://github.com/dotnet/efcore/pull/20531) * Make [Graph and Multigraph fully internal](https://github.com/dotnet/efcore/pull/20533) * Make [a selection of comparers public](https://github.com/dotnet/efcore/pull/20538) * Make [miscellaneous EF-internal code public or real internal](https://github.com/dotnet/efcore/pull/20539) * De-nest [ServiceCharacteristics](https://github.com/dotnet/efcore/pull/20560) * Query * Fix to [parameterize components of NewExpression when possible](https://github.com/dotnet/efcore/pull/20522) * Fix [incorrect JOIN rather than APPLY for subqueries with outside references to a joined table](https://github.com/dotnet/efcore/pull/20064) * Flatten [case expressions](https://github.com/dotnet/efcore/pull/20362) * Fix for [queries with enum parameters whose value is of underlying type but the value expected by type mapping is the actual enum type](https://github.com/dotnet/efcore/pull/20365) * Fix assumption that [Parameter.Name is not null](https://github.com/dotnet/efcore/pull/20503) * Assign [types for SqlExpression correctly](https://github.com/dotnet/efcore/pull/20525) * Fix [composite null checking in navigation expansion](https://github.com/dotnet/efcore/pull/20556) * Avoid [potential null to bool cast](https://github.com/dotnet/efcore/pull/20499) * Model building * Update [BackingFieldAttribute to also work for Navigations](https://github.com/dotnet/efcore/pull/20520) * Skip [decimal store type warning when value converter makes it irrelevant](https://github.com/dotnet/efcore/pull/20555) * Use [generic IndexBuilder](https://github.com/dotnet/efcore/pull/20524) * Add [generic KeyBuilder](https://github.com/dotnet/efcore/pull/20516) * Make [ForeignKeyAttributeConvention run when new Navigation is added](https://github.com/dotnet/efcore/pull/20506) * Test * Tweak [many-to-many testing model](https://github.com/dotnet/efcore/pull/20519) * Tweak [slow-running test](https://github.com/dotnet/efcore/pull/20532) * Docs * Clarify [WPF data binding guidance on .NET Core](https://github.com/dotnet/EntityFramework.Docs/pull/2235) * Move [preview 2 before preview 1 in What's New](https://github.com/dotnet/EntityFramework.Docs/pull/2244) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 2](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.2.20159.4) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.3](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

April 16, 2020

Expand to see status from this week...

## Highlights We now have a new Entity Framework hub page at [docs.microsoft.com/ef](https://docs.microsoft.com/ef/)! New hub page screenshot This is part of an ongoing docs push--feedback always appreciated. Does it help you find what you need? Also: - Support for different [database collations](https://github.com/dotnet/efcore/pull/20602) in migrations and queries - Two more issues patched for the upcoming 3.1.4 patch release--see below - Docs for new features, including filtered Include, KeylessAttribute, and BackingFieldAttribute ## EF Core 5.0 preview 2 EF Core 5.0 preview 2 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.2.20159.4) The EF Core 5.0 previews contain the following new features and enhancements: * [Simple Logging](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-2/) has installation instructions and full details. ## EF Core 3.1.3 EF Core 3.1.3 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.3). This is a patch release of 3.1 [containing twelve important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.3+is%3Aclosed). ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions - @ralmsdeveloper ran a [routine code cleanup mainly to cleanup unneeded usings](https://github.com/dotnet/efcore/pull/20605) - @ErikEJ added [Ramses, EFCore.NamingConventions, SimplerSoftware.EntityFrameworkCore.SqlServer.NodaTime, and Dabble.EntityFrameworkCore.Temporal.Query to the list of EF Core extensions](https://github.com/dotnet/EntityFramework.Docs/pull/2272) - @ErikEJ fixed [some URL build warnings](https://github.com/dotnet/EntityFramework.Docs/pull/2264) Many thanks to all our contributors! ### EF Core - Query - Fix to [be resilient to parameter expression with no name set, as generated by OData](https://github.com/dotnet/efcore/pull/20521) **Will be in the 3.1.4 patch** - Fix to [use the value from DefaultIfEmpty in Min/Max instead of throwing](https://github.com/dotnet/efcore/pull/20635) - Fix for [filtered include when last operation is OrderBy](https://github.com/dotnet/efcore/pull/20585) - Support for [Contains on `List`](https://github.com/dotnet/efcore/pull/20628) - Support for [up-to 15 parameters in CompiledQuery](https://github.com/dotnet/efcore/pull/20621) - Improve consistency of [expression visitor `Visit` methods](https://github.com/dotnet/efcore/pull/20619) - Model building - Support [specifying collations on columns and databases](https://github.com/dotnet/efcore/pull/20602) - Add [column types to migrations data operations](https://github.com/dotnet/efcore/pull/20572) - Throw when [Many-to-many configured with only one navigation](https://github.com/dotnet/efcore/pull/20571) - Fix to [ensure the migrations snapshot has type mappings applied](https://github.com/dotnet/efcore/pull/20652) - Improved [error message when FK properties are mismatch](https://github.com/dotnet/efcore/pull/20616) - Revert [HasKey binary breaking change and add a test for IdentityServer4](https://github.com/dotnet/efcore/pull/20620) - Documentation - New [top-level "hub page" for Entity Framework docs](https://github.com/dotnet/EntityFramework.Docs/pull/2279) Also [#2292](https://github.com/dotnet/EntityFramework.Docs/pull/2292) - Docs for [filtered Include](https://github.com/dotnet/EntityFramework.Docs/pull/2260) - Docs for [BackingFieldAttribute](https://github.com/dotnet/EntityFramework.Docs/pull/2268) - Docs for [KeylessAttribute](https://github.com/dotnet/EntityFramework.Docs/pull/2265) - Cosmos - Avoid [using "value" as an alias since it is a reserved word](https://github.com/dotnet/efcore/pull/20574) **Will be in the 3.1.4 patch** - Testing - Improve robustness of [ToString translation tests](https://github.com/dotnet/efcore/pull/20640) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.
Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 2](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.2.20159.4) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.3](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

April 23, 2020

Expand to see status from this week...

## EF Core 5.0 preview 3 released! EF Core 5.0 preview 3 is on [NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.3.20181.2) now! New features in preview 3 include: * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) Remember that all these preview 1 and 2 features are also included in preview 3: * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-3/) has installation instructions and full details. ## EF Core 3.1.3 EF Core 3.1.3 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.3). This is a patch release of 3.1 [containing twelve important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.3+is%3Aclosed). ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @ErikEJ fixed a bug [scaffolding a DbContext from a database with hypothetical indexes](https://github.com/dotnet/efcore/pull/20707) * @ralmsdeveloper introduced [CommentAttribute to specify comments for tables and columns when creating migrations](https://github.com/dotnet/efcore/pull/20676) * @paulomorgado updated the [link to release planning process](https://github.com/dotnet/efcore/pull/20686) * @ralmsdeveloper added support for [fill factors in SQL Server indexes](https://github.com/dotnet/efcore/pull/20634) * @1iveowl added [improvements in the Cosmos provider for Find/FindAsync with Partition Key](https://github.com/dotnet/efcore/pull/20461) Also see [20698](https://github.com/dotnet/efcore/pull/20698). * @IGx89 added [Cosmos provider support for populating `__jObject` on SaveChanges](https://github.com/dotnet/efcore/pull/20661) * @FransBouma updated [the Extensions page so it reflects the support for EF Core 3 by LLBLGen Pro](https://github.com/dotnet/EntityFramework.Docs/pull/2312) * @witheej fixed the [interception of database operations sample](https://github.com/dotnet/EntityFramework.Docs/pull/2255) * @oskarj added [missing Update-Database step to migrations doc](https://github.com/dotnet/EntityFramework.Docs/pull/2299) Many thanks to all our contributors! ### EF Core * Model building * Support for [persisted/stored and virtual computed columns](https://github.com/dotnet/efcore/pull/20540) * Support [check constraints on when configuring opened entities](https://github.com/dotnet/efcore/pull/20632) * Allow [disabling of error for un-matched navigation properties when using Include](https://github.com/dotnet/efcore/pull/20630) * Fix for [null reference exception when calling calling Owned](https://github.com/dotnet/efcore/pull/20655) * Fix for [adding identifier appropriately when generating joins](https://github.com/dotnet/efcore/pull/20599) * Obsolete [key comparers on properties](https://github.com/dotnet/efcore/pull/20680) * Docs * Correct [documentation for SequentialGuidValueGenerator](https://github.com/dotnet/efcore/pull/20696) * Added [new features for EF Core 5.0 preview 3](https://github.com/dotnet/EntityFramework.Docs/pull/2304) * Added [versions when BackingField and Keyless attributes became available](https://github.com/dotnet/EntityFramework.Docs/pull/2297) * Improved [providers documentation organization](https://github.com/dotnet/EntityFramework.Docs/pull/2295) * Query * Updated [InheritanceRelationshipsQueryTest to include owned types](https://github.com/dotnet/efcore/pull/20704) * Fix to [resource strings](https://github.com/dotnet/efcore/pull/20724). Also see [20725](https://github.com/dotnet/efcore/pull/20725) * Remove [AnonymousObject](https://github.com/dotnet/efcore/pull/20644) * SaveChanges * Expose [async transaction commit/rollback APIs](https://github.com/dotnet/efcore/pull/20695) * Added [complex mapping support needed for TPT/TPC](https://github.com/dotnet/efcore/pull/20674) * Tests * Improve test reliability by [starting LocalDB early](https://github.com/dotnet/efcore/pull/20703) * Run [dependency object tests automatically for all dependency objects](https://github.com/dotnet/efcore/pull/20684) * Migrations * Fix for [correctly handling line breaks in Migrations seed data](https://github.com/dotnet/efcore/pull/20699) * Miscellaneous * Make [ToDebugString methods public and DebugViews easily obtainable](https://github.com/dotnet/efcore/pull/20681) * Make [ReferenceEqualityComparer real internal](https://github.com/dotnet/efcore/pull/20685) * Update [CosmosClient to 3.8.0-preview and SqlClient to 2.0.0-preview2](https://github.com/dotnet/efcore/pull/20480) * Made [code changes based on API review](https://github.com/dotnet/efcore/pull/20678) * Enable [internal code usage analyzer on the providers](https://github.com/dotnet/efcore/pull/20567) ### Microsoft.Data.Sqlite * API standardization for [empty string init and coalescing for various properties](https://github.com/dotnet/efcore/pull/20172) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 3](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.3.20181.2) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.3](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

April 30, 2020

Expand to see status from this week...

## Highlights * Major updates to [guidance for testing EF Core apps](https://docs.microsoft.com/ef/core/miscellaneous/testing/), including [samples](https://docs.microsoft.com/ef/core/miscellaneous/testing/testing-sample), and [using SQLite in-memory databases](https://docs.microsoft.com/ef/core/miscellaneous/testing/sqlite). * Use [EF.Functions.Collate](https://github.com/dotnet/EntityFramework.Docs/blob/4db628f73c83e78b7da20c936b0d1a952d1d242b/entity-framework/core/miscellaneous/collations-and-case-sensitivity.md) for explicit collations in queries * Support for [savepoints](https://github.com/dotnet/efcore/issues/20176) * Support for [mapping IPAddress properties](https://github.com/dotnet/efcore/issues/18662) ## EF Core 5.0 preview 3 EF Core 5.0 preview 3 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.3.20181.2) The EF Core 5.0 previews contain the following new features and enhancements: * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-3/) has installation instructions and full details. ## EF Core 3.1.3 EF Core 3.1.3 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.3). This is a patch release of 3.1 [containing twelve important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.3+is%3Aclosed). ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @1iveowl implemented [detection of partition key filters in Cosmos queries](https://github.com/dotnet/efcore/pull/20690) * @ralmsdeveloper implemented [built-in converters for IPAddress](https://github.com/dotnet/efcore/pull/20679) * @bdebaere made [migrations IDs more flexible](https://github.com/dotnet/efcore/pull/20722) * @BhargaviAnnadevara-MSFT updated [EF6/EF Core comparison docs](https://github.com/dotnet/EntityFramework.Docs/pull/2323) Also [#2324](https://github.com/dotnet/EntityFramework.Docs/pull/2324) Many thanks to all our contributors! ### EF Core * Query * Add [EF.Functions.Collate](https://github.com/dotnet/efcore/pull/20603) * Fix for [using Equals on enums converted to strings](https://github.com/dotnet/efcore/pull/20775) * Test for [Contains with a `List`](https://github.com/dotnet/efcore/pull/20774) * Cleanup for [query APIs](https://github.com/dotnet/efcore/pull/20767) * Updates from [API review](https://github.com/dotnet/efcore/pull/20772) * Support for [identity resolution in no-tracking queries](https://github.com/dotnet/efcore/pull/20739) * Cleanup of [query filter to partition key detection](https://github.com/dotnet/efcore/pull/20762) * De-duplication of [query enumerators](https://github.com/dotnet/efcore/pull/20727) * Add [XML docs for query APIs](https://github.com/dotnet/efcore/pull/20573) Also [#20745](https://github.com/dotnet/efcore/pull/20745) * Docs * New guidance for [testing EF Core applications](https://github.com/dotnet/EntityFramework.Docs/pull/2319) * Updates to [What's New for new documentation](https://github.com/dotnet/EntityFramework.Docs/pull/2342) * Document [passing arguments to IDesignTimeDbContextFactory](https://github.com/dotnet/EntityFramework.Docs/pull/2334) * Document [passing a connection string to Update-Database](https://github.com/dotnet/EntityFramework.Docs/pull/2338) * Document [how to use Namespace and ContextNamespace for migrations and scaffolding](https://github.com/dotnet/EntityFramework.Docs/pull/2333) * Improve [ordering of cards and add platform card](https://github.com/dotnet/EntityFramework.Docs/pull/2322) * Add [C.I. to ensure samples build](https://github.com/dotnet/EntityFramework.Docs/pull/2327) * Add [EntityFrameworkCore.SqlServer.HierarchyId to the EF extensions list](https://github.com/dotnet/EntityFramework.Docs/pull/2318) * Model building * Add [missing concurrency token properties for table splitting](https://github.com/dotnet/efcore/pull/20748) * Support for [public fields in the model building API](https://github.com/dotnet/efcore/pull/20726) * Updates from [API review](https://github.com/dotnet/efcore/pull/20713) * Miscellaneous * Simplify [execution strategy logic](https://github.com/dotnet/efcore/pull/20754) * Cleanup of [internal code](https://github.com/dotnet/efcore/pull/20708) * SaveChanges * Support for [savepoints](https://github.com/dotnet/efcore/pull/20710) * Tooling/Migrations * Support [passing arguments to IDesignTimeDbContextFactory](https://github.com/dotnet/efcore/pull/20341) * Tests * Change [Cosmos functional tests to target only one TFM](https://github.com/dotnet/efcore/pull/20709) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.
Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 3](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.3.20181.2) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.3](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

May 7, 2020

Expand to see status from this week...

## Highlights The first [Entity Framework Community Standup](https://dotnet.microsoft.com/platform/community/standup) was streamed live on Wednesday! If you missed it, then [catch up now on YouTube](https://youtu.be/j1sGgfCxhp0). In the first episode: * Meet the EF team * See how EF Core was used to rapidly create app for connecting PPE donors with hospitals * A demo of testing applications with EF Core, including shared test databases ## EF Core 5.0 preview 3 EF Core 5.0 preview 3 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.3.20181.2) The EF Core 5.0 previews contain the following new features and enhancements: * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-3/) has installation instructions and full details. ## EF Core 3.1.3 EF Core 3.1.3 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.3). This is a patch release of 3.1 [containing twelve important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.3+is%3Aclosed). ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @LaurenceJKing documented [async LINQ operator exceptions](https://github.com/dotnet/efcore/pull/20832) * @cincuranet updated the [supported version for FirebirdSql.EntityFrameworkCore.Firebird to 3.1](https://github.com/dotnet/EntityFramework.Docs/pull/2365) * @mderriey fixed [some typos and grammar errors in the testing docs](https://github.com/dotnet/EntityFramework.Docs/pull/2349) Many thanks to all our contributors! ### EF Core * Query * Improve [extensibility of null semantics processor](https://github.com/dotnet/efcore/pull/20854) * Fix [consistency issues in query code](https://github.com/dotnet/efcore/pull/20845) * Translate [NegateChecked to SQL](https://github.com/dotnet/efcore/pull/20848) * Fix to [ensure MakeUnary/Binary returns null for invalid operator types](https://github.com/dotnet/efcore/pull/20847) * Add [API docs for relational types](https://github.com/dotnet/efcore/pull/20838). See also [#20783](https://github.com/dotnet/efcore/pull/20783) and [#20801](https://github.com/dotnet/efcore/pull/20801) * Documentation * Guide people towards [the Name= syntax for connection strings](https://github.com/dotnet/EntityFramework.Docs/pull/2347) * Documentation for [Navigation model building API](https://github.com/dotnet/EntityFramework.Docs/pull/2340) * Document that [Namespace and ContextNamespace options are only available in 5.0](https://github.com/dotnet/EntityFramework.Docs/pull/2358) * Fixed [links to be relative where appropriate](https://github.com/dotnet/EntityFramework.Docs/pull/2351) * Migrations * Rename [MigrationSqlGeneratorTest to MigrationsSqlGeneratorTest](https://github.com/dotnet/efcore/pull/20855) * Fix to [allow older versions of tools to pass null args](https://github.com/dotnet/efcore/pull/20799) * Fix to [only add the RemainingArguments if they are defined](https://github.com/dotnet/efcore/pull/20797) * Model building * Fix to [truncate and uniquify sequence names that are too long](https://github.com/dotnet/efcore/pull/20834) * SaveChanges * Fixed [wrong "Committed transaction" log message](https://github.com/dotnet/efcore/pull/20861) * Scaffolding * Revert [scaffolding nullability breaking changes](https://github.com/dotnet/efcore/pull/20824) * Miscellaneous * Allow [obsoletion for string resources](https://github.com/dotnet/efcore/pull/20836) * Benchmarks * Remove [cold start benchmarking](https://github.com/dotnet/efcore/pull/20816) * Cosmos * Enable [skipped test for for loss of long accuracy now fixed in the Cosmos client](https://github.com/dotnet/efcore/pull/20802) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 3](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.3.20181.2) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.3](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

May 14, 2020

Expand to see status from this week...

## Highlights * EF Core 3.1.4 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.4). * This is a patch release of 3.1 [containing eight important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.4+is%3Aclosed). * Check out [this blog post](https://jlik.me/hvp) from @JeremyLikness on using CosmosDB via EF Core running in the browser using Blazor WebAssembly! * Better exception messages when queries cannot be translated. For example, for this query where `IsLondon` is an unmapped property: ```C# context.Customers.OrderBy(c => c.IsLondon).ToList() ``` EF Core now throws a message indicating that `IsLondon` is the problem: > The LINQ expression 'DbSet() .OrderBy(c => c.IsLondon)' could not be translated. Additional information: Translation of member 'IsLondon' on entity type 'Customer' failed. Possibly the specified member is not mapped. Either rewrite the query in a form that can be translated, or switch to client evaluation explicitly by inserting a call to either AsEnumerable(), AsAsyncEnumerable(), ToList(), or ToListAsync(). See https://go.microsoft.com/fwlink/?linkid=2101038 for more information. ## EF Core 5.0 preview 3 EF Core 5.0 preview 3 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.3.20181.2) The EF Core 5.0 previews contain the following new features and enhancements: * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-3/) has installation instructions and full details. ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @AlexanderTaeschner added support for [EXPLAIN on parameterized queries in SQLite](https://github.com/dotnet/efcore/pull/19630) * @Jesse-Hufstetler corrected [the name of SQL Server Management Studio](https://github.com/dotnet/EntityFramework.Docs/pull/2370) Many thanks to all our contributors! ### EF Core * Query * Throw [better exception messages when query cannot be translated](https://github.com/dotnet/efcore/pull/20663) * Throw [better exception message for aggregate function after client evaluation](https://github.com/dotnet/efcore/pull/20936) * Simplify [AssertIncludeQuery](https://github.com/dotnet/efcore/pull/20939) * Better [extensibility for SQL processing of parameter values](https://github.com/dotnet/efcore/pull/20883) * Docs * Stop [using `` elements incorrectly](https://github.com/dotnet/efcore/pull/20893) * Document [support for computed columns in SQLite](https://github.com/dotnet/EntityFramework.Docs/pull/2368) * Use [tabs in scaffolding page](https://github.com/dotnet/EntityFramework.Docs/pull/2377) * Migrations * Support for [generated (computed) columns in SQLite](https://github.com/dotnet/efcore/pull/20814) * Test coverage for [alterating check constraints](https://github.com/dotnet/efcore/pull/20877) * Cosmos * Fix to [generate enum literal/parameter correctly](https://github.com/dotnet/efcore/pull/20934) * Model building * Move [generation of check constraints for enums into an external plugin package](https://github.com/dotnet/efcore/pull/20898) * Benchmarks * Replace [decimal with double in benchmarks](https://github.com/dotnet/efcore/pull/20876) * Miscellaneous * Dependency updates to [Castle Core 4.1.1, Cosmos Client 3.9.0-preview2, and SqlClient 2.0.0-preview3](https://github.com/dotnet/efcore/pull/20805) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 3](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.3.20181.2) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.4](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

May 21, 2020

Expand to see status from this week...

## Highlights * EF Core connecting to Cosmos DB was shown in @ScottGu's keynote at Build! * And in case you missed it with all the Build excitement: * EF Core 5.0 preview 4 is out now! * EF Core 3.1.4 is out now! ## EF Core 5.0 preview 4 EF Core 5.0 preview 4 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.4.20220.10) New features in preview 4 include: * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) Remember that all these preview 1, 2, and 3 features are also included in preview 4: * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-4/) has installation instructions and full details. ## EF Core 3.1.4 EF Core 3.1.4 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.4). This is a patch release of 3.1 [containing eight important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.4+is%3Aclosed). ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Not started | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @Marusyk added [an overload to UseTransaction for specifying the transaction ID](https://github.com/dotnet/efcore/pull/20844) * @ivarlovlie added [instructions for updating a dotnet-ef installation](https://github.com/dotnet/EntityFramework.Docs/pull/2395). See also [#2391](https://github.com/dotnet/EntityFramework.Docs/pull/2391). * @cucoreanu fixed [typos and grammar](https://github.com/dotnet/EntityFramework.Docs/pull/2385) Many thanks to all our contributors! ### EF Core * Query * Fix to [simplify case blocks in the SQL tree](https://github.com/dotnet/efcore/pull/20966) * Support for [switch expression in SqlNullabilityProcessor](https://github.com/dotnet/efcore/pull/20953) * Fix to [translate stringColumn.FirstOrDefault() using SUBSTRING on SQL Server](https://github.com/dotnet/efcore/pull/20840) * Test for [correct literal generation in non-Unicode CompareTo](https://github.com/dotnet/efcore/pull/20993) * Test infrastructure for [asserting includes in the query](https://github.com/dotnet/efcore/pull/20958) * Test [cleanup](https://github.com/dotnet/efcore/pull/20957) * Documentation * Reference [5.0.0-preview4 in samples](https://github.com/dotnet/EntityFramework.Docs/pull/2399) * Fix [top-level heading in WPF docs](https://github.com/dotnet/EntityFramework.Docs/pull/2397) * Model building * Changes based on [API review feedback](https://github.com/dotnet/efcore/pull/20963) * Connection resiliency * Added [new transient error for SQL Azure](https://github.com/dotnet/efcore/pull/20970) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 4](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.4.20220.10) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.4](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

May 28, 2020

Expand to see status from this week...

## Highlights * [TPT support to model building, migrations and update pipeline](https://github.com/dotnet/efcore/pull/20938) is now merged! * Full support for queries is still pending * Lots of work on query testing in preparation for split Includes, many-to-many, and TPT * The next EF Community Standup is scheduled for Wednesday, June 3rd at 10am PT / 1pm ET. Join us at https://live.dot.net. ## EF Core 5.0 preview 4 EF Core 5.0 preview 4 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.4.20220.10) New features in preview 4 include: * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) Remember that all these preview 1, 2, and 3 features are also included in preview 4: * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-4/) has installation instructions and full details. ## EF Core 3.1.4 EF Core 3.1.4 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.4). This is a patch release of 3.1 [containing eight important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.4+is%3Aclosed). ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | In-progress | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### EF Core * Query * Fix memory leak by [using scoped query logger from QueryContext](https://github.com/dotnet/efcore/pull/21024) * Make [IPrintableExpression.Print explicit interface implementation](https://github.com/dotnet/efcore/pull/21063) * Fix [non-deterministic ordering in query test](https://github.com/dotnet/efcore/pull/21038) * Add [validation to warn about required navigations pointing to entity with query filter](https://github.com/dotnet/efcore/pull/21018) * Use [AssertQuery in NorthwindIncludeQueryTestBase](https://github.com/dotnet/efcore/pull/21011) * Test for [Select with coalesce operator on field with non-Unicode string](https://github.com/dotnet/efcore/pull/21005) * Model building * Add [TPT support to model building, migrations and update pipeline](https://github.com/dotnet/efcore/pull/20938) * Scaffolding * Allow [suppression of OnConfiguring() generation](https://github.com/dotnet/efcore/pull/20811) * Migrations * Fix to [correct ordering of check constraint creation](https://github.com/dotnet/efcore/pull/21040) * In-memory database * Fix to [differentiate between owned types correctly when using in-memory database with string matching](https://github.com/dotnet/efcore/pull/21033) * Documentation * Update to [specifically mention that the in-memory database does not support SQL](https://github.com/dotnet/EntityFramework.Docs/pull/2402) * Miscellaneous * Small [docs and cleanup fixes](https://github.com/dotnet/efcore/pull/21031) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 4](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.4.20220.10) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.4](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

June 4, 2020

Expand to see status from this week...

## Highlights * Indexes can now be configured using a .NET attribute--see examples below * Oracle have released a [beta of their EF Core database provider](https://www.nuget.org/packages/Oracle.EntityFrameworkCore/3.19.0-beta1) that supports EF Core 3.1 * EF Core now supports [transaction savepoints](https://github.com/dotnet/efcore/issues/20176) ### IndexAttribute The new [IndexAttribute](https://github.com/dotnet/efcore/issues/4050) can be placed on an entity type to specify an index for a single column. For example: ```C# [Index(nameof(FullName), IsUnique = true)] public class User { public int Id { get; set; } [MaxLength(128)] public string FullName { get; set; } } ``` For SQL Server, Migrations will then generate the following SQL: ```sql CREATE UNIQUE INDEX [IX_Users_FullName] ON [Users] ([FullName]) WHERE [FullName] IS NOT NULL; ``` IndexAttribute can also be used to specify an index spanning multiple columns. For example: ```C# [Index(nameof(FirstName), nameof(LastName), IsUnique = true)] public class User { public int Id { get; set; } [MaxLength(64)] public string FirstName { get; set; } [MaxLength(64)] public string LastName { get; set; } } ``` For SQL Server, this results in: ```sql CREATE UNIQUE INDEX [IX_Users_FirstName_LastName] ON [Users] ([FirstName], [LastName]) WHERE [FirstName] IS NOT NULL AND [LastName] IS NOT NULL; ``` ## EF Core 5.0 preview 4 EF Core 5.0 preview 4 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.4.20220.10) New features in preview 4 include: * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) Remember that all these preview 1, 2, and 3 features are also included in preview 4: * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-4/) has installation instructions and full details. ## EF Core 3.1.4 EF Core 3.1.4 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.4). This is a patch release of 3.1 [containing eight important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.4+is%3Aclosed). ## EF Core 5.0 Most of the team is now heads-down investigating, learning about, designing, and implementing new features for EF Core 5.0. Any feedback you have for the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) would be greatly appreciated. This plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | In-progress | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | In-progress | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @Alireza-Mim fixed [a documentation typo](https://github.com/dotnet/EntityFramework.Docs/pull/2412) Many thanks to all our contributors! ### EF Core * Model building * Introduced [IndexAttribute](https://github.com/dotnet/efcore/pull/21012) * Add support for [seed data for entity types using table sharing where the principal is using TPT](https://github.com/dotnet/efcore/pull/21087) * Fix to [store-generated value indexes for concurrency properties](https://github.com/dotnet/efcore/pull/21128) * Tests for [array literals in migrations data](https://github.com/dotnet/efcore/pull/21044) * Fix to [mark owned collections composite key properties to use generated values even after the first two usages](https://github.com/dotnet/efcore/pull/21042) * Rename [GetName, etc. to GetDatabaseName, etc.](https://github.com/dotnet/efcore/pull/21081) * Add [IPrimaryKeyConstraint and remove UniqueConstraint.IsPrimaryKey](https://github.com/dotnet/efcore/pull/21062) * Add [named and unnamed strings for index errors](https://github.com/dotnet/efcore/pull/21074) * Query * Introduce [provider hook for SQL composability checks](https://github.com/dotnet/efcore/pull/21127) * Regression test for [materializing a keyless entity on the right side of a left join](https://github.com/dotnet/efcore/pull/21116) * Add tests for [string-based Include](https://github.com/dotnet/efcore/pull/21058) * Add [Include tests with no-tracking configuration](https://github.com/dotnet/efcore/pull/21052) * Rename [ISqlExpressionFactory.Function to NiladicFunction](https://github.com/dotnet/efcore/pull/21064) * Make [QueryAsserter a combined form of TestBase & Fixture configuration](https://github.com/dotnet/efcore/pull/21051) * Documentation * Updates to [database providers and versions list](https://github.com/dotnet/EntityFramework.Docs/pull/2410) * Start using [DocumentationAnalyzers](https://github.com/dotnet/efcore/pull/21095). Many thanks to @sharwell! * Miscellaneous * Start using [ConfigureAwait(false)](https://github.com/dotnet/efcore/pull/21110) * Test [JSON serialization of EF object graphs](https://github.com/dotnet/efcore/pull/20827) * Change tracking * Ensure [consistent fixup from query when reference navigation explicitly set](https://github.com/dotnet/efcore/pull/21045) * SaveChanges * Support for [transaction savepoints](https://github.com/dotnet/efcore/pull/21103) * Tools * Fix [preview 5 break in DbContextActivator](https://github.com/dotnet/efcore/pull/21069) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 4](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.4.20220.10) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.4](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

June 11, 2020

Expand to see status from this week...

## Highlights * We have completed a re-balancing of the work for EF Core 5.0, including pulling in full many-to-many support. Details below. * EF Core 5.0 preview 5 is available now! Details below. * New [`ChangeTracker.Clear()` method](https://github.com/dotnet/efcore/issues/15577) to further reduce the need for mass detach of tracked entities. ## EF Core 5.0 preview 5 EF Core 5.0 preview 5 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.5.20278.2) New features in preview 5 include: * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) Remember that all these preview 1, 2, 3, and 4 features are also included in preview 5: * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-5/) has installation instructions and full details. ## EF Core 3.1.5 EF Core 3.1.5 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.5). This is a patch release of 3.1 containing dependency updates, but no new bug fixes over those already shipped in 3.1.4. ## EF Core 5.0 We have completed a re-balancing of the work for EF Core 5.0. The major changes are: * The full implementation of [many-to-many](https://github.com/dotnet/efcore/issues/10508) has been pulled into EF Core 5.0. (Previously we were only planning for [many-to-many navigations](https://github.com/dotnet/efcore/issues/19003).) * Reintroduction of [split Includes](https://github.com/dotnet/efcore/issues/20892) has become a major feature for 5.0. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. * The plan for architectural/provider documentation was too ambitious. We still believe this is important, but unfortunately it won't land with EF Core 5.0. We will update the documented [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) soon. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | In-progress | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | In-progress | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @serpent5 fixed issues in the [model caching sample](https://github.com/dotnet/EntityFramework.Docs/pull/2438) and [relationship docs](https://github.com/dotnet/EntityFramework.Docs/pull/2434) * @sdanyliv added [linq2db.EntityFrameworkCore to EF Core extensions](https://github.com/dotnet/EntityFramework.Docs/pull/2431) Many thanks to all our contributors! ### EF Core * Query * Fix memory leak by using [scoped query logger from QueryContext](https://github.com/dotnet/efcore/pull/21025). **Approved for 3.1.6 patch.** * Refactor [shaper processing for relational queries](https://github.com/dotnet/efcore/pull/21181) * Introduce [FromSqlQueryingEnumerable for non composed FromSql](https://github.com/dotnet/efcore/pull/21180) * Ignore [comments in SQL composability check](https://github.com/dotnet/efcore/pull/21188) * Better [exception message when failing to translate a function](https://github.com/dotnet/efcore/pull/21178) * Move [fake ORDER BY clause to SQL Server provider](https://github.com/dotnet/efcore/pull/21187) * Fix [translation of Contains expression when setting UseRelationalNulls(true)](https://github.com/dotnet/efcore/pull/21186) * Reduce [allocations in ExpressionEqualityComparer](https://github.com/dotnet/efcore/pull/21113) * Add support for [convert to/from bool value using Convert.To* methods](https://github.com/dotnet/efcore/pull/21163) * Rewrite [cache synchronization to lock instead of spin](https://github.com/dotnet/efcore/pull/21124) * Throw when a [query filter is configured on an owned type](https://github.com/dotnet/efcore/pull/21129) * Documentation * Document [collations and case-sensitivity](https://github.com/dotnet/EntityFramework.Docs/pull/2328). Also [#2446](https://github.com/dotnet/EntityFramework.Docs/pull/2446). * Document [using navigations in query filters](https://github.com/dotnet/EntityFramework.Docs/pull/2394) * Start of documentation for [EF Core 5.0 breaking changes](https://github.com/dotnet/EntityFramework.Docs/pull/2433) * Tweaks to [inheritance docs](https://github.com/dotnet/EntityFramework.Docs/pull/2425) * Model building * Set [hint size for IPAddress string representation to 45](https://github.com/dotnet/efcore/pull/21161) * Validate that [derived types in TPT aren't sharing table as dependants](https://github.com/dotnet/efcore/pull/21155) * Allow [multiple indexes on the same properties](https://github.com/dotnet/efcore/pull/21115) * Miscellaneous * Use [ConfigureAwait(false) throughout the EF Core codebase](https://github.com/dotnet/efcore/pull/21185) * Return [ValueTask in loggers and interceptors](https://github.com/dotnet/efcore/pull/21158) * Update [Cosmos and SqlClient dependencies](https://github.com/dotnet/efcore/pull/21137) * Spatial * Add support for [Z and M when using spatial types with SQLite](https://github.com/dotnet/efcore/pull/21130) * Change tracking * Implement [ChangeTracker.Clear() to stop tracking all entities](https://github.com/dotnet/efcore/pull/21169) * Cosmos * Enable [Cosmos testing against release branches](https://github.com/dotnet/efcore/pull/21182) * Testing * Improvement to [start LocalDB early to make tests more reliable](https://github.com/dotnet/efcore/pull/21168) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 5](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.5.20278.2) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.5](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

June 18, 2020

Expand to see status from this week...

## Highlights * More than 50 PRs in the last seven days! * Option to run multiple queries for collection Includes is in the daily builds and will be in 5.0.0 preview 6. * New `AddDbContextFactory` to easily register a DbContext factory in the application's dependency-injection container. * Humanizer.Core is now used to pluralize when scaffolding a DbContext from an existing database. ## EF Core 5.0 preview 5 EF Core 5.0 preview 5 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.5.20278.2) New features in preview 5 include: * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) Remember that all these preview 1, 2, 3, and 4 features are also included in preview 5: * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-5/) has installation instructions and full details. ## EF Core 3.1.5 EF Core 3.1.5 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.5). This is a patch release of 3.1 containing dependency updates, but no new bug fixes over those already shipped in 3.1.4. ## EF Core 5.0 We have completed a re-balancing of the work for EF Core 5.0. The major changes are: * The full implementation of [many-to-many](https://github.com/dotnet/efcore/issues/10508) has been pulled into EF Core 5.0. (Previously we were only planning for [many-to-many navigations](https://github.com/dotnet/efcore/issues/19003).) * Reintroduction of [split Includes](https://github.com/dotnet/efcore/issues/20892) has become a major feature for 5.0. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. * The plan for architectural/provider documentation was too ambitious. We still believe this is important, but unfortunately it won't land with EF Core 5.0. The plan at [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) as been updated to reflect this. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | In-progress | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | In-progress | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @ErikEJ wired up [Humanizer.Core as a default pluralizer for scaffolding a DbContext](https://github.com/dotnet/efcore/pull/20577) * @Marusyk added an [overload to UseCosmos that takes a connection string](https://github.com/dotnet/efcore/pull/21088) * @twenzel fixed a [parameter name in a null check](https://github.com/dotnet/efcore/pull/21235) * @manvydasu updated documentation to [clearly indicate that userSuppliedSearchTerm variable represents parameter for the query](https://github.com/dotnet/efcore/pull/21256) * @brandongregoryscott fixed a [minor typo in Query Filters doc](https://github.com/dotnet/EntityFramework.Docs/pull/2460) * @uncheckederror fixed [the CreatePoint() example](https://github.com/dotnet/EntityFramework.Docs/pull/2404) * @serpent5 fixed [wording when discussing MigrationBuilder.ActiveProvide](https://github.com/dotnet/EntityFramework.Docs/pull/2448) * @serpent5 [updated text in links to match topic title](https://github.com/dotnet/EntityFramework.Docs/pull/2453) * @rocke97 [fixed typo when describing in-memory testing](https://github.com/dotnet/EntityFramework.Docs/pull/2455) Many thanks to all our contributors! ### EF Core * Query * Implement [option to do split query for collection Include](https://github.com/dotnet/efcore/pull/21219) * Implement [filtered Include for AsSplitQuery operator](https://github.com/dotnet/efcore/pull/21277) * Fix for [bool column equality when value converter is applied](https://github.com/dotnet/efcore/pull/21144) * Fix for [race condition in split query](https://github.com/dotnet/efcore/pull/21301) * Fix for [bool with value converter query processing on Cosmos](https://github.com/dotnet/efcore/pull/21306) * Rename [PerformIdentityResolution to AsNoTrackingWithIdentityResolution](https://github.com/dotnet/efcore/pull/21303) * Convert ["APPLY" to "JOIN" with skip via RowNumber](https://github.com/dotnet/efcore/pull/21282) * Fix for [logic protecting SUM from returning null in complex scenarios](https://github.com/dotnet/efcore/pull/21203) * Improvement to [DRY SelectExpression.AddJoin](https://github.com/dotnet/efcore/pull/21248) * Fix [inference issues around convert to object](https://github.com/dotnet/efcore/pull/21125) * Improvement to [eliminate boxing when entering critical sections](https://github.com/dotnet/efcore/pull/21230) * Fix to [process client eval in join when in the collection shaper](https://github.com/dotnet/efcore/pull/21236) * Documentation * Updates to [EF Core 5.0 plan](https://github.com/dotnet/EntityFramework.Docs/pull/2452) * Update [docs for IndentedStringBuilder](https://github.com/dotnet/efcore/pull/21312) * Update [reference to .NET CLI](https://github.com/dotnet/EntityFramework.Docs/pull/2466) * Add [definition of PMC before first use](https://github.com/dotnet/EntityFramework.Docs/pull/2465) * Document [new options are only available starting in EF Core 5.0](https://github.com/dotnet/EntityFramework.Docs/pull/2464) * Update [filtered Include docs to notify users about how it interact with tracked entities](https://github.com/dotnet/EntityFramework.Docs/pull/2440) * Document [precision and scale](https://github.com/dotnet/EntityFramework.Docs/pull/2406) * Miscellaneous * Enable [GitHub Dependabot](https://github.com/dotnet/efcore/pull/21197) * Update dependency to [Cosmos SDK V4](https://github.com/dotnet/efcore/pull/21302) * Update dependency to [Microsoft.Data.SqlClient 2.0.0](https://github.com/dotnet/efcore/pull/21297) * Update dependency to [Humanizer.Core 2.8.26](https://github.com/dotnet/efcore/pull/21298) * Update dependency to [IdentityServer4.EntityFramework to 3.1.3](https://github.com/dotnet/efcore/pull/21242) * Update dependency to [Microsoft.DotNet.PlatformAbstractions to 3.1.5](https://github.com/dotnet/efcore/pull/21241) * Add a [link to discussions for questions in issue template](https://github.com/dotnet/efcore/pull/21207) * Cosmos * Make the [Cosmos 'id' property more flexible](https://github.com/dotnet/efcore/pull/21249) * Improvement to [add partition key to the key](https://github.com/dotnet/efcore/pull/21243) * Expose more [CosmosClient options](https://github.com/dotnet/efcore/pull/21281) * Test improvement to [unify connection strings](https://github.com/dotnet/efcore/pull/21289) * Change tracking * Fix to [restore original value when setting IsModified false on navigation](https://github.com/dotnet/efcore/pull/21260) * Fix to [return true for IsModified on navigations pointing to Added or Deleted entities](https://github.com/dotnet/efcore/pull/21259) * Fix to [start tracking entire graph when new entity added to LocalView](https://github.com/dotnet/efcore/pull/21275) * Fix to [call the NextAsync instead of Next in the HiLo generator](https://github.com/dotnet/efcore/pull/21261) * Tooling * Discover [IDbContextFactory at design-time](https://github.com/dotnet/efcore/pull/21258) * Disable [nullable reference types in scaffolding](https://github.com/dotnet/efcore/pull/21190) * Improvement to [experience passing arguments to the design-time context factory](https://github.com/dotnet/efcore/pull/21271) * Context creation * Implement [AddDbContextFactory to allow registering a factory for creating contexts](https://github.com/dotnet/efcore/pull/21246) * Improvement to [avoid using ActivatorServices for common DbContext constructor](https://github.com/dotnet/efcore/pull/21254) * Model building * Make [NotMapped take precedence over other attributes that reference properties](https://github.com/dotnet/efcore/pull/21231) * Fix for [type mappings on IndexAttribute properties](https://github.com/dotnet/efcore/pull/21183) * Lazy-loading * Fix to [correctly set IsLoaded for navigations on derived types](https://github.com/dotnet/efcore/pull/21292) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 5](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.5.20278.2) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.5](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

June 25, 2020

Expand to see status from this week...

## EF Core 5.0 preview 6 EF Core 5.0 preview 6 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.6.20312.4) New features in preview 6 include: * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) Remember that all these features from previous previews are also included in preview 6: * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-6/) has installation instructions and full details. ## EF Core 3.1.5 EF Core 3.1.5 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.5). This is a patch release of 3.1 containing dependency updates, but no new bug fixes over those already shipped in 3.1.4. ## EF Core 5.0 We have completed a re-balancing of the work for EF Core 5.0. The major changes are: * The full implementation of [many-to-many](https://github.com/dotnet/efcore/issues/10508) has been pulled into EF Core 5.0. (Previously we were only planning for [many-to-many navigations](https://github.com/dotnet/efcore/issues/19003).) * Reintroduction of [split Includes](https://github.com/dotnet/efcore/issues/20892) has become a major feature for 5.0. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. * The plan for architectural/provider documentation was too ambitious. We still believe this is important, but unfortunately it won't land with EF Core 5.0. The plan at [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) as been updated to reflect this. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | In-progress | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | In-progress | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### EF Core * Query * Implement [query support for many-to-many](https://github.com/dotnet/efcore/pull/20568) * Fix [ordering for filtered Include in single query scenario](https://github.com/dotnet/efcore/pull/21337) * Make it easy to [map built-in functions](https://github.com/dotnet/efcore/pull/21391) * Fix for [adding dependent conditions](https://github.com/dotnet/efcore/pull/21400) * Tests for [TPT in InheritanceQueryTestBase](https://github.com/dotnet/efcore/pull/21394) * Regression tests for [GroupBy queries](https://github.com/dotnet/efcore/pull/21395) * Throw better exception on [blocked translation of aggregate](https://github.com/dotnet/efcore/pull/21392) * Tests for [owned collections and AsSplitQuery](https://github.com/dotnet/efcore/pull/21387) * Update [SQL assertions](https://github.com/dotnet/efcore/pull/21385) * Fix to [correctly remove locks in query caches](https://github.com/dotnet/efcore/pull/21367) * Document [some internal constructors](https://github.com/dotnet/efcore/pull/21330) * Updates from [API reviews](https://github.com/dotnet/efcore/pull/21346) * Clean up [query validation for various negative cases](https://github.com/dotnet/efcore/pull/21344) * Fix [test ordering issue](https://github.com/dotnet/efcore/pull/21342) * Add capability to [verify order in ordered filtered Include queries](https://github.com/dotnet/efcore/pull/21305) * Regression tests for [incorrect syntax near the keyword 'AS` for group by aggregate](https://github.com/dotnet/efcore/pull/21077) * Migrations * Ability to [exclude parts of the model from migrations](https://github.com/dotnet/efcore/pull/21390) * Refactor [annotation code generation](https://github.com/dotnet/efcore/pull/21329) * Updates from [API reviews](https://github.com/dotnet/efcore/pull/21324) * Fix to [avoid 10 second timeout when doing existence checks with SqlClient](https://github.com/dotnet/efcore/pull/21328) * Cosmos * Allow [PK with just the partition key and using id as the partition key](https://github.com/dotnet/efcore/pull/21405) * Use [object syntax for aliased projections](https://github.com/dotnet/efcore/pull/21347) * Fix to [correctly convert the id value to string](https://github.com/dotnet/efcore/pull/21326) * Model building * Bring back [SqlServerDbFunctionConvention](https://github.com/dotnet/efcore/pull/21388) * Fix to [generate ProductVersion in model snapshot again](https://github.com/dotnet/efcore/pull/21360) * Fix to [correct the order of param definitions](https://github.com/dotnet/efcore/pull/21317) * Change tracking * Allow use of [nullable backing field to check for default value](https://github.com/dotnet/efcore/pull/21351) * Dependencies * Update [IdentityServer4.EntityFramework from 3.1.3 to 4.0.0](https://github.com/dotnet/efcore/pull/21363) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 6](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.6.20312.4) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.5](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

July 2, 2020

Expand to see status from this week...

## Highlights * DbContextFactory now [supports context pooling](https://github.com/dotnet/efcore/pull/21431) * Major improvements to the [Migrations documentation](https://github.com/dotnet/EntityFramework.Docs/pull/2430) * Split-queries can now be [configured as the default](https://github.com/dotnet/efcore/pull/21412) for collection Includes ## EF Core 5.0 preview 6 EF Core 5.0 preview 6 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.6.20312.4) New features in preview 6 include: * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) Remember that all these features from previous previews are also included in preview 6: * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-6/) has installation instructions and full details. ## EF Core 3.1.5 EF Core 3.1.5 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.5). This is a patch release of 3.1 containing dependency updates, but no new bug fixes over those already shipped in 3.1.4. ## EF Core 5.0 We have completed a re-balancing of the work for EF Core 5.0. The major changes are: * The full implementation of [many-to-many](https://github.com/dotnet/efcore/issues/10508) has been pulled into EF Core 5.0. (Previously we were only planning for [many-to-many navigations](https://github.com/dotnet/efcore/issues/19003).) * Reintroduction of [split Includes](https://github.com/dotnet/efcore/issues/20892) has become a major feature for 5.0. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. * The plan for architectural/provider documentation was too ambitious. We still believe this is important, but unfortunately it won't land with EF Core 5.0. The plan at [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) as been updated to reflect this. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | In-progress | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | In-progress | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | In-progress | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | In-progress | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ### Community contributions * @jonlouie fixed a [translation error when using unary negations](https://github.com/dotnet/efcore/pull/21389) * @mohsinnasir added [NCache Entity Framework Core Provider](https://github.com/dotnet/EntityFramework.Docs/pull/2480) to the extensions page * @seekingtheoptimal updated [scaffolding named connection string syntax](https://github.com/dotnet/EntityFramework.Docs/pull/2473) * @OOberoi fixed a [typo in the new features documentation](https://github.com/dotnet/EntityFramework.Docs/pull/2485) Many thanks to all our contributors! ## Pull requests from the last week ### EF Core * Query * Support for [self-bootstrapping functions returning IQueryable](https://github.com/dotnet/efcore/pull/21487) * Fix to [auto-buffer data readers in SqlServer when using split query with no MARS](https://github.com/dotnet/efcore/pull/21456) * Update documentation for [different constructors of SqlExpression](https://github.com/dotnet/efcore/pull/21457) * Fix to [bind projection member in client eval](https://github.com/dotnet/efcore/pull/21458) * Fix to [dispose inner data readers for split query](https://github.com/dotnet/efcore/pull/21454) * Test updates to [remove MARS fixtures](https://github.com/dotnet/efcore/pull/21428) * Generate a [warning for multiple collection Includes](https://github.com/dotnet/efcore/pull/21419) * Introduce [context-level configuration for split query](https://github.com/dotnet/efcore/pull/21412) * Documentation * Major improvements to the [migrations docs](https://github.com/dotnet/EntityFramework.Docs/pull/2430) * Add [.NET 5 TFMs to the version matrix](https://github.com/dotnet/EntityFramework.Docs/pull/2483) * DbContext * Support for [DbContextFactory backed by a pool of DbContext instances](https://github.com/dotnet/efcore/pull/21431) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 6](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.6.20312.4) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.5](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

July 9, 2020

Expand to see status from this week...

## Highlights * All the major parts of [table-per-type (TPT) mapping](https://github.com/dotnet/efcore/issues/2266) are done! * Support for table-valued-functions (TVFs) is now complete thanks to a great collaboration with community contributor @pmiddleton. * Great progress on many-to-many, including creation of the association mapping convention. ## EF Core 5.0 preview 6 EF Core 5.0 preview 6 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.6.20312.4) New features in preview 6 include: * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) Remember that all these features from previous previews are also included in preview 6: * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-6/) has installation instructions and full details. ## EF Core 3.1.5 EF Core 3.1.5 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.5). This is a patch release of 3.1 containing dependency updates, but no new bug fixes over those already shipped in 3.1.4. ## EF Core 5.0 We have completed a re-balancing of the work for EF Core 5.0. The major changes are: * The full implementation of [many-to-many](https://github.com/dotnet/efcore/issues/10508) has been pulled into EF Core 5.0. (Previously we were only planning for [many-to-many navigations](https://github.com/dotnet/efcore/issues/19003).) * Reintroduction of [split Includes](https://github.com/dotnet/efcore/issues/20892) has become a major feature for 5.0. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. * The plan for architectural/provider documentation was too ambitious. We still believe this is important, but unfortunately it won't land with EF Core 5.0. The plan at [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) as been updated to reflect this. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | In-progress | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ### Community contributions * @MartinBP fixed [a build issue on case-sensitive Windows filesystems](https://github.com/dotnet/efcore/pull/21461) * @Ropouser fixed [a typo in the owned entities documentation](https://github.com/dotnet/EntityFramework.Docs/pull/2501) Many thanks to all our contributors! ## Pull requests from the last week ### EF Core * Query * Implement [TPT for relational layer](https://github.com/dotnet/efcore/pull/21474) * Support use of [function mapping when querying for DbSet](https://github.com/dotnet/efcore/pull/21507) * Fix to [bring back join entity when including Skip collection navigations in a tracking query](https://github.com/dotnet/efcore/pull/21504) * Convert [inheritance query tests to AssertQuery infrastructure](https://github.com/dotnet/efcore/pull/21501) * Convert [inheritance relationship tests to AssertQuery infrastructure](https://github.com/dotnet/efcore/pull/21560) * Fix to [convert multiple equality/in-equality on same column joined by Or/Else into SQL IN expression](https://github.com/dotnet/efcore/pull/21477). Also [#21566]https://github.com/dotnet/efcore/pull/21566). * Fix to [put client method to fetch join entity after filtered include](https://github.com/dotnet/efcore/pull/21517) * Add [TPT variation for ManyToMany test](https://github.com/dotnet/efcore/pull/21534). Also [#21553](https://github.com/dotnet/efcore/pull/21553). * Add [TPT variant for FilterInheritanceQueryTests](https://github.com/dotnet/efcore/pull/21533) * Add [TPT variant for GearsOfWarQueryTests](https://github.com/dotnet/efcore/pull/21532) * Add [split query tests in TPT relationship tests](https://github.com/dotnet/efcore/pull/21537) * Use [split queries for graph update tests](https://github.com/dotnet/efcore/pull/21472) * Fix [to Allow ToList on non-Queryables](https://github.com/dotnet/efcore/pull/21502) * Documentation for [query splitting](https://github.com/dotnet/EntityFramework.Docs/pull/2486) * Migrations * Clean up [Migrations code](https://github.com/dotnet/efcore/pull/21551) * Model building * Allow [mapping entity types to TVFs](https://github.com/dotnet/efcore/pull/21473) * Enhancement to [create many-to-many association entity type automatically by convention](https://github.com/dotnet/efcore/pull/21484) * Add [HasField(FieldInfo) to NavigationBuilder](https://github.com/dotnet/efcore/pull/21550) * Support [model-level eager loading configuration](https://github.com/dotnet/efcore/pull/19355) * Refactor [relational overridable metadata API](https://github.com/dotnet/efcore/pull/21523) * SaveChanges * Fix to [updates on the dependent in table sharing using TPT](https://github.com/dotnet/efcore/pull/21542) * Dependencies * Update [IdentityServer4.EntityFramework from 4.0.0 to 4.0.2](https://github.com/dotnet/efcore/pull/21525) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 6](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.6.20312.4) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.5](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

July 16, 2020

Expand to see status from this week...

## Highlights * Major new [Xamarin getting started article and code sample](https://docs.microsoft.com/ef/core/get-started/xamarin)! (Many thanks to @codemillmatt!) * Community contribution from @lokalmatador to greatly improve [decimal translation on SQLite](https://github.com/dotnet/efcore/issues/19635) * Initial many-to-many change tracking merged ## EF Core 5.0 preview 6 EF Core 5.0 preview 6 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.6.20312.4) New features in preview 6 include: * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) Remember that all these features from previous previews are also included in preview 6: * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-5-0-preview-6/) has installation instructions and full details. ## EF Core 3.1.6 EF Core 3.1.6 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.6). This is a patch release of 3.1 containing [important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.6+is%3Aclosed). ## EF Core 5.0 We have completed a re-balancing of the work for EF Core 5.0. The major changes are: * The full implementation of [many-to-many](https://github.com/dotnet/efcore/issues/10508) has been pulled into EF Core 5.0. (Previously we were only planning for [many-to-many navigations](https://github.com/dotnet/efcore/issues/19003).) * Reintroduction of [split Includes](https://github.com/dotnet/efcore/issues/20892) has become a major feature for 5.0. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. * The plan for architectural/provider documentation was too ambitious. We still believe this is important, but unfortunately it won't land with EF Core 5.0. The plan at [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) as been updated to reflect this. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | In-progress | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @lokalmatador implemented [arithemtic functions to support better decimal translations on SQLite](https://github.com/dotnet/efcore/pull/20212) * @shahabganji added [clarification on a limitation of shadow properties](https://github.com/dotnet/EntityFramework.Docs/pull/2484) * @AshkanAbd added a [soft-delete package to the extensions list](https://github.com/dotnet/EntityFramework.Docs/pull/2500) * @Ropouser fixed a [typo in the owned entities docs](https://github.com/dotnet/EntityFramework.Docs/pull/2501) Many thanks to all our contributors! ### EF Core * For 3.1.6 patch * Updated [Microsoft.Data.SqlClient dependency to 1.1.3](https://github.com/dotnet/efcore/pull/20377) * Fix up [App.config path for tools on .NET Framework](https://github.com/dotnet/efcore/pull/21272) * Query * Made [QueryableMethods public again](https://github.com/dotnet/efcore/pull/21590) * Fix [non-deterministic test issue in ManyToManyQueryTestBase](https://github.com/dotnet/efcore/pull/21638) * Allow [terminating operator on GroupBy without aggregate when not returning group](https://github.com/dotnet/efcore/pull/21623) * Apply [null semantics processing to QueryableFunctionExpression](https://github.com/dotnet/efcore/pull/21613) * Fix [invalid SQL with CROSS APPLY generated on SQLite](https://github.com/dotnet/efcore/pull/21591) * Add [regression tests for more GroupByAggregate cases](https://github.com/dotnet/efcore/pull/21589) * Fix to [support indirect joins which are using non-equal conditions](https://github.com/dotnet/efcore/pull/21397) * Query [regression tests](https://github.com/dotnet/efcore/pull/21579) * Updates to [query assertions](https://github.com/dotnet/efcore/pull/21574) * Model building * Use [FindEntityType(Type) as appropriate to support shared-type entity types](https://github.com/dotnet/efcore/pull/21639) * Deprecate [defining query at Core level](https://github.com/dotnet/efcore/pull/21622) * Fix to make [UsingEntity return the correct side of the association](https://github.com/dotnet/efcore/pull/21609) * Remove [hacky mappings for SQL types that only work on .NET Framework](https://github.com/dotnet/efcore/pull/21596) * Updates from [API review](https://github.com/dotnet/efcore/pull/21587) * Update [default join entity name](https://github.com/dotnet/efcore/pull/21584) * Documentation * New [Xamarin getting started article and code sample](https://github.com/dotnet/EntityFramework.Docs/pull/2497) * Update [SQLite Limitations for 5.0](https://github.com/dotnet/EntityFramework.Docs/pull/2506) * Indicate that [--connection for database update is EFCore 5 onwards](https://github.com/dotnet/EntityFramework.Docs/pull/2505) * Docs [cleanup](https://github.com/dotnet/EntityFramework.Docs/pull/2503) * Change tracking * Initial [change tracking for skip navigations](https://github.com/dotnet/efcore/pull/21516) * Moved [JSON serialization tests out of query tests](https://github.com/dotnet/efcore/pull/21594) * Moved [ObservableCollectionListSource to Abstractions package](https://github.com/dotnet/efcore/pull/21595) * SaveChanges * Fix to [include key values in the update topological sort](https://github.com/dotnet/efcore/pull/21556) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 6](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.6.20312.4) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.6](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

July 23, 2020

Expand to see status from this week...

## Highlights [Many-to-many](https://github.com/dotnet/efcore/issues/1368) is working now in the [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md)! We're still finishing off support, but common cases are working now. Let's walk through a simple end-to-end example. Here are our entity types: ```C# public class Post { public int Id { get; set; } public string Name { get; set; } public ICollection Tags { get; set; } } public class Tag { public int Id { get; set; } public string Text { get; set; } public ICollection Posts { get; set; } } ``` Notice that Post contains a collection of Tags, and Tag contains a collection of Posts. EF Core 5.0 recognizes this as a many-to-many relationship by convention. This means no code is requied in `OnModelCreating`. For example, here's our DbContext: ```C# public class BlogContext : DbContext { public DbSet Posts { get; set; } protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) => optionsBuilder .LogTo(Console.WriteLine, LogLevel.Information) .EnableSensitiveDataLogging() .UseSqlite("Data Source = test.db"); } ``` The DbSet for Posts is all EF Core needs to discover Post and Tag and their many-to-many relationship. When Migrations (or `EnsureCreated`) are used to create the database, EF Core will automatically create the join table. For example, on SQLite for this model, EF Core generates: ```sql CREATE TABLE "Posts" ( "Id" INTEGER NOT NULL CONSTRAINT "PK_Posts" PRIMARY KEY AUTOINCREMENT, "Name" TEXT NULL ); CREATE TABLE "Tag" ( "Id" INTEGER NOT NULL CONSTRAINT "PK_Tag" PRIMARY KEY AUTOINCREMENT, "Text" TEXT NULL ); CREATE TABLE "PostTag" ( "Post_Id" INTEGER NOT NULL, "Tag_Id" INTEGER NOT NULL, CONSTRAINT "PK_PostTag" PRIMARY KEY ("Post_Id", "Tag_Id"), CONSTRAINT "FK_PostTag_Posts_Post_Id" FOREIGN KEY ("Post_Id") REFERENCES "Posts" ("Id") ON DELETE CASCADE, CONSTRAINT "FK_PostTag_Tag_Tag_Id" FOREIGN KEY ("Tag_Id") REFERENCES "Tag" ("Id") ON DELETE CASCADE ); ``` (We plan to remove the underscores from the key names here.) Let's write a small console app to save and query some entities: ```C# public static class Program { public static void Main() { using (var context = new BlogContext()) { context.Database.EnsureDeleted(); context.Database.EnsureCreated(); var beginnerTag = new Tag {Text = "Beginner"}; var advancedTag = new Tag {Text = "Advanced"}; var efCoreTag = new Tag {Text = "EF Core"}; context.AddRange( new Post {Name = "EF Core 101", Tags = new List {beginnerTag, efCoreTag}}, new Post {Name = "Writing an EF database provider", Tags = new List {advancedTag, efCoreTag}}, new Post {Name = "Savepoints in EF Core", Tags = new List {beginnerTag, efCoreTag}}); context.SaveChanges(); } using (var context = new BlogContext()) { foreach (var post in context.Posts.Include(e => e.Tags)) { Console.Write($"Post \"{post.Name}\" has tags"); foreach (var tag in post.Tags) { Console.Write($" '{tag.Text}'"); } Console.WriteLine(); } } } } ``` In this example, first three Tags are created and these are added to the `Post.Tags` collection. Notice that the same Tag can be related to many different Posts, and vice-versa. EF Core generates the following SQL when SaveChanges is called: ```sql INSERT INTO "Posts" ("Name") VALUES (@p0); SELECT "Id" FROM "Posts" WHERE changes() = 1 AND "rowid" = last_insert_rowid(); INSERT INTO "Posts" ("Name") VALUES (@p0); SELECT "Id" FROM "Posts" WHERE changes() = 1 AND "rowid" = last_insert_rowid(); INSERT INTO "Posts" ("Name") VALUES (@p0); SELECT "Id" FROM "Posts" WHERE changes() = 1 AND "rowid" = last_insert_rowid(); INSERT INTO "Tag" ("Text") VALUES (@p0); SELECT "Id" FROM "Tag" WHERE changes() = 1 AND "rowid" = last_insert_rowid(); INSERT INTO "Tag" ("Text") VALUES (@p0); SELECT "Id" FROM "Tag" WHERE changes() = 1 AND "rowid" = last_insert_rowid(); INSERT INTO "Tag" ("Text") VALUES (@p0); SELECT "Id" FROM "Tag" WHERE changes() = 1 AND "rowid" = last_insert_rowid(); INSERT INTO "PostTag" ("Post_Id", "Tag_Id") VALUES (@p1, @p2); INSERT INTO "PostTag" ("Post_Id", "Tag_Id") VALUES (@p0, @p1); INSERT INTO "PostTag" ("Post_Id", "Tag_Id") VALUES (@p0, @p1); INSERT INTO "PostTag" ("Post_Id", "Tag_Id") VALUES (@p0, @p1); INSERT INTO "PostTag" ("Post_Id", "Tag_Id") VALUES (@p0, @p1); INSERT INTO "PostTag" ("Post_Id", "Tag_Id") VALUES (@p0, @p1); ``` Notice that EF Core first inserts the Posts and Tags, then creates and inserts rows into the join table for the relationships. Finally, the application creates a new DbContext and queries back the Posts and their related Tags. The SQL generated is: ```sql Executed DbCommand (0ms) [Parameters=[], CommandType='Text', CommandTimeout='30'] SELECT "p"."Id", "p"."Name", "t0"."Post_Id", "t0"."Tag_Id", "t0"."Id", "t0"."Text" FROM "Posts" AS "p" LEFT JOIN ( SELECT "p0"."Post_Id", "p0"."Tag_Id", "t"."Id", "t"."Text" FROM "PostTag" AS "p0" INNER JOIN "Tag" AS "t" ON "p0"."Tag_Id" = "t"."Id" ) AS "t0" ON "p"."Id" = "t0"."Post_Id" ORDER BY "p"."Id", "t0"."Post_Id", "t0"."Tag_Id", "t0"."Id" ``` Notice that the query automatically uses the join table to bring back all related Tags. This demo just scratches the surface of what can be done with many-to-many relationships. For example, look for future content that shows how to introduce a join table payload while still continuing to use the relationship as many-to-many! ## EF Core 5.0 preview 7 EF Core 5.0 preview 7 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.7.20365.15) New features in preview 7 include: * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) Remember that all these features from previous previews are also included in preview 7: * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-ef-core-5-0-preview-7/) has installation instructions and full details. ## EF Core 3.1.6 EF Core 3.1.6 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.6). This is a patch release of 3.1 containing [important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.6+is%3Aclosed). ## EF Core 5.0 We have completed a re-balancing of the work for EF Core 5.0. The major changes are: * The full implementation of [many-to-many](https://github.com/dotnet/efcore/issues/10508) has been pulled into EF Core 5.0. (Previously we were only planning for [many-to-many navigations](https://github.com/dotnet/efcore/issues/19003).) * Reintroduction of [split Includes](https://github.com/dotnet/efcore/issues/20892) has become a major feature for 5.0. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. * The plan for architectural/provider documentation was too ambitious. We still believe this is important, but unfortunately it won't land with EF Core 5.0. The plan at [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) as been updated to reflect this. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | In-progress | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @ChristopherHaws fixed a bug where [properties with `ValueGeneratedOnAdd` are reseeded in every migration](https://github.com/dotnet/efcore/pull/21683) Many thanks to all our contributors! ### EF Core * Model building * Add [public APIs to configure shared type entities](https://github.com/dotnet/efcore/pull/21552) * Add [API to allow configuration of the association entity type](https://github.com/dotnet/efcore/pull/21672) * Log [an error for Required on principal to dependent](https://github.com/dotnet/efcore/pull/21701) * Set [default max batch size for SQL Server](https://github.com/dotnet/efcore/pull/21704) * Allow [mapping entity types to SQL queries](https://github.com/dotnet/efcore/pull/21681) * Reduce [allocations in EntityType by short-circuiting](https://github.com/dotnet/efcore/pull/21708) * Throw for [shared type in inheritance](https://github.com/dotnet/efcore/pull/21715) * Add [a warning for decimal keys for SqlServer](https://github.com/dotnet/efcore/pull/21713) * Remove [IIndexNameChangedConvention](https://github.com/dotnet/efcore/pull/21738) * Remove [non-named shared type ModelBuilder overloads](https://github.com/dotnet/efcore/pull/21739) * Rename [IsEagerLoaded to AutoInclude](https://github.com/dotnet/efcore/pull/21743) * Return [void from AddShared and AddOwned](https://github.com/dotnet/efcore/pull/21741) * Consistently refer to [association entities as join entities](https://github.com/dotnet/efcore/pull/21746) * Rename [SharedEntity to SharedTypeEntity](https://github.com/dotnet/efcore/pull/21744) * Deprecate [defining query at Core level](https://github.com/dotnet/efcore/pull/21675) * Query * Fix [small perf regression in query compilation](https://github.com/dotnet/efcore/pull/21707) * Fix to [apply pending selector on single result query before trying to expand collection navigation](https://github.com/dotnet/efcore/pull/21690) * Fix to [stop reading default value from databases](https://github.com/dotnet/efcore/pull/21668) * Use [correct column mappings for TVF/FromSql](https://github.com/dotnet/efcore/pull/21722) * Disallow [FromSql/TVF with TPT](https://github.com/dotnet/efcore/pull/21725) * Make [SqlExpression.Type to be reference type or non-nullable value type](https://github.com/dotnet/efcore/pull/21726) * Fix [incorrect results returned when joining a key-less view to an entity](https://github.com/dotnet/efcore/pull/21723) * Use [object.Equals internally in query for key comparison](https://github.com/dotnet/efcore/pull/21742) * Regression test for [a sub-query inside a projection from a filtered Queryable](https://github.com/dotnet/efcore/pull/21735) * Reenable [some query tests](https://github.com/dotnet/efcore/pull/21702) * Regression test for [left joins with Include](https://github.com/dotnet/efcore/pull/21697) * Documentation * Improve [nullability guidance for DbSets](https://github.com/dotnet/EntityFramework.Docs/pull/2520) * Update [What's New for preview 7](https://github.com/dotnet/EntityFramework.Docs/pull/2527) * Added [savepoints to What's New for preview 7](https://github.com/dotnet/EntityFramework.Docs/pull/2530) * Update [SQLite Limitations for 5.0](https://github.com/dotnet/EntityFramework.Docs/pull/2506) * Change tracking * Support [change-tracking proxies/notification entities and proxy construction of join entities](https://github.com/dotnet/efcore/pull/21705) * Support [shared-type entity types in change tracking](https://github.com/dotnet/efcore/pull/21733) * Additional [testing for many-to-many change tracking](https://github.com/dotnet/efcore/pull/21657) * Miscellaneous * Update [Microsoft.DotNet.PlatformAbstractions from 3.1.5 to 3.1.6](https://github.com/dotnet/efcore/pull/21749) * Update [IdentityServer4.EntityFramework from 4.0.2 to 4.0.3 ](https://github.com/dotnet/efcore/pull/21748) * Remove [incomplete nullable reference annotations for 5.0](https://github.com/dotnet/efcore/pull/21695) * Scaffolding * Stop [scaffolding IsTableExcludedFromMigrations](https://github.com/dotnet/efcore/pull/21719) * Migrations * Correctly [generate null literals in arrays](https://github.com/dotnet/efcore/pull/21736) * Save Changes * Fix [savepoint bugs](https://github.com/dotnet/efcore/pull/21698) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 7](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.7.20365.15) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.6](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

July 30, 2020

Expand to see status from this week...

## Highlights Lots of work this week finishing up, testing, and refining many-to-many, TPT, and other EF Core 5.0 features. Don't wait for the next preview--try now with the [daily builds](https://github.com/dotnet/aspnetcore/blob/master/docs/DailyBuilds.md). Using the daily builds is easy: * Copy the `NuGet.config` from the link to your project/solution folder * Update your EF Core packages! Daily builds work on both .NET Core 3.1 and the .NET 5.0 previews. Try now and give us feedback! ## EF Core 5.0 preview 7 EF Core 5.0 preview 7 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.7.20365.15) New features in preview 7 include: * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) Remember that all these features from previous previews are also included in preview 7: * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-ef-core-5-0-preview-7/) has installation instructions and full details. ## EF Core 3.1.6 EF Core 3.1.6 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.6). This is a patch release of 3.1 containing [important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.6+is%3Aclosed). ## EF Core 5.0 We have completed a re-balancing of the work for EF Core 5.0. The major changes are: * The full implementation of [many-to-many](https://github.com/dotnet/efcore/issues/10508) has been pulled into EF Core 5.0. (Previously we were only planning for [many-to-many navigations](https://github.com/dotnet/efcore/issues/19003).) * Reintroduction of [split Includes](https://github.com/dotnet/efcore/issues/20892) has become a major feature for 5.0. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. * The plan for architectural/provider documentation was too ambitious. We still believe this is important, but unfortunately it won't land with EF Core 5.0. The plan at [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) as been updated to reflect this. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | In-progress | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | In-progress | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | In-progress | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | In-progress | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @SergerGood updated code to [use TryGetValue method where appropriate](https://github.com/dotnet/efcore/pull/21817) * @KaloyanIT updated [error message for CoreStrings.ConflictingRelationshipNavigation](https://github.com/dotnet/efcore/pull/21808) * @ErikEJ removed [duplicate registration in AddEntityFrameworkDesignTimeServices](https://github.com/dotnet/efcore/pull/21802) * @dzmitry-lahoda updated [link to SQL Server Docker docs](https://github.com/dotnet/EntityFramework.Docs/pull/2544) * @bide45 aligned [field name in code example with the description (e.g. Name to FullName)](https://github.com/dotnet/EntityFramework.Docs/pull/2542) * @jsportaro fixed [grammar mistake](https://github.com/dotnet/EntityFramework.Docs/pull/2534) Many thanks to all our contributors! ### EF Core * Query * Change [alias of the column for TPT Discriminator](https://github.com/dotnet/efcore/pull/21787) * Change [TPT to use string discriminator column](https://github.com/dotnet/efcore/pull/21784) * Rename [defining query APIs](https://github.com/dotnet/efcore/pull/21848) * Add [test for ParameterExpression issue in query rewriting](https://github.com/dotnet/efcore/pull/21849) * Fix [bug in FromSqlExpression.Equals](https://github.com/dotnet/efcore/pull/21833) * Add [ToQuerySql](https://github.com/dotnet/efcore/pull/21831) * Avoid [reading default values from Cosmos database](https://github.com/dotnet/efcore/pull/21821) * Allow [user functions to be annotated with nullability propagation information](https://github.com/dotnet/efcore/pull/21777) * Allow [entity equality to work on client converted entity](https://github.com/dotnet/efcore/pull/21780) * Disallow [FromSql on owner when owned navigation is mapped to same table](https://github.com/dotnet/efcore/pull/21778) * Make [ParameterBasedSqlProcessor thread-safe](https://github.com/dotnet/efcore/pull/21775) * Rewrite [entity equality for dependents sharing table](https://github.com/dotnet/efcore/pull/21747) * Model building * Use [default property names for join entity type](https://github.com/dotnet/efcore/pull/21811) * Add [nested lambda to ToTable API](https://github.com/dotnet/efcore/pull/21847) * Add [IConventionEntityTypeBuilder.HasSkipNavigation that takes an inverse](https://github.com/dotnet/efcore/pull/21850) * Make [discriminator read-only by default](https://github.com/dotnet/efcore/pull/21796) * Fully support [base type mapping names with precision/scale/size specified separately](https://github.com/dotnet/efcore/pull/21829) * Discover [self-referencing many-to-many relationships](https://github.com/dotnet/efcore/pull/21824) * Make [property bag entity types use an indexer properties rather than a shadow properties](https://github.com/dotnet/efcore/pull/21813) * Don't [write to computed column when table splitting](https://github.com/dotnet/efcore/pull/21776) * Only [create additional concurrency token properties when needed](https://github.com/dotnet/efcore/pull/21764) * Validate [shared views](https://github.com/dotnet/efcore/pull/21706) * Configure [command parameters as nullable for optional dependents in table splitting](https://github.com/dotnet/efcore/pull/21724) * Migrations * Don't warn for [existing calls to CreateCheckConstraint](https://github.com/dotnet/efcore/pull/21842) * Default [DOTNET_ENVIRONMENT to Development](https://github.com/dotnet/efcore/pull/21809) * Fix to [synthesize default constraint and rebuild indexes](https://github.com/dotnet/efcore/pull/21767) * Enable more operations on SQLite by [rebuilding tables](https://github.com/dotnet/efcore/pull/21575) * Test additional [table rebuild scenarios](https://github.com/dotnet/efcore/pull/21783) * Change tracking * Fix to [use the correct shared foreign key for navigation fixup](https://github.com/dotnet/efcore/pull/21834) * Use [cached collection accessor](https://github.com/dotnet/efcore/pull/21790) * Port [savepoint bug fixes to preview8](https://github.com/dotnet/efcore/pull/21785) * Documentation * New [get started with WPF for EF Core](https://github.com/dotnet/EntityFramework.Docs/pull/2535) * Use [a better way to ref docs.ms.com](https://github.com/dotnet/EntityFramework.Docs/pull/2539) * Fix [SQLite CommandType in XML doc](https://github.com/dotnet/efcore/pull/21795) * Dependencies * Bump [IdentityServer4.EntityFramework from 4.0.3 to 4.0.4](https://github.com/dotnet/efcore/pull/21800) * Remove [Spatialite testing from Mac OS agents](https://github.com/dotnet/efcore/pull/21761) * Scaffolding * Reverse engineer [computed columns](https://github.com/dotnet/efcore/pull/21588) on SQLite ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the bottom represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 7](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.7.20365.15) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.6](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

August 6, 2020

Expand to see status from this week...

## Highlights We're fixing bugs and polishing features for EF Core 5.0 with almost **50 PRs** in the last week! * This includes **seven PRs from the community**--many thanks as always to all our contributors! * Lots of bug fixes in query, model building, migrations, and more. Make sure to test with a [daily build](https://github.com/dotnet/aspnetcore/blob/master/docs/DailyBuilds.md) and tell us what you find while we still have time to fix issues! * [Interceptors and events for before and after SaveChanges](https://github.com/dotnet/efcore/issues/15910) are now implemented! ## EF Core 5.0 preview 7 EF Core 5.0 preview 7 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.7.20365.15) New features in preview 7 include: * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) Remember that all these features from previous previews are also included in preview 7: * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-ef-core-5-0-preview-7/) has installation instructions and full details. ## EF Core 3.1.6 EF Core 3.1.6 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.6). This is a patch release of 3.1 containing [important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.6+is%3Aclosed). ## EF Core 5.0 We have completed a second re-balancing of the work for EF Core 5.0. The major changes are: * The [migrations bundles feature](https://github.com/dotnet/efcore/issues/19693) will be deferred until after the EF Core 5.0 release. However, several other [targeted improvements related to migrations](https://github.com/dotnet/efcore/issues/19587#issuecomment-668794460) will be included in EF Core 5.0 * Support for [required 1-1 dependents](https://github.com/dotnet/efcore/issues/12100) has been pulled into the EF Core 5.0 release. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. The plan at [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) will be updated to reflect this. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-navigation-properties-aka-skip-navigations) | In-progress | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | Done | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | Scoped | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | In-progress | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | Scoped | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @mikewodarczyk fixed [a null reference exception when using EF Core with C# 9 record types](https://github.com/dotnet/efcore/pull/21846) * @jeffsvajlenko fixed [the weekly status updates link in readme](https://github.com/dotnet/efcore/pull/21905) * @KaloyanIT implemented [throwing a better exception message when Reverse cannot be translated](https://github.com/dotnet/efcore/pull/21885) * @vanillajonathan fixed [a type in the Sequence docs](https://github.com/dotnet/efcore/pull/21883) * @SergerGood fixed [an issue to use DisposeAsync when disposing the data reader in an async context](https://github.com/dotnet/efcore/pull/21878) * @OOberoi fixed [a typo in a method name](https://github.com/dotnet/EntityFramework.Docs/pull/2550) * @OOberoi fixed [grammar in the relationships documenation](https://github.com/dotnet/EntityFramework.Docs/pull/2550) Many thanks to all our contributors! ### EF Core * Query * Correctly [specify types to match constraints in materialization functions](https://github.com/dotnet/efcore/pull/21881) * Allow [FromSql on owner by generating join](https://github.com/dotnet/efcore/pull/21898) * Translate [GroupBy-Aggregate with condition](https://github.com/dotnet/efcore/pull/21907) * Translate [Distinct operator over group element before aggregate](https://github.com/dotnet/efcore/pull/21921) * Identify [Count(*) in different SelectExpression differently](https://github.com/dotnet/efcore/pull/21923) * Add [general query logging](https://github.com/dotnet/efcore/pull/21924) * Add [query logger to member/method translators](https://github.com/dotnet/efcore/pull/21935) * Fix [bug in CaseExpression.VisitChildren](https://github.com/dotnet/efcore/pull/21938) * Document [internal classes are internal for 5.0](https://github.com/dotnet/efcore/pull/21863) * Improve [SQL generation by translating is operator](https://github.com/dotnet/efcore/pull/21851) * Model building * Fix [shared type entity type bugs](https://github.com/dotnet/efcore/pull/21860) * Throw for [unmapped initialized collection navigation](https://github.com/dotnet/efcore/pull/21868) * Configure [backing field by attribute on skip navigation](https://github.com/dotnet/efcore/pull/21864) * Make [StoreObjectIdentifier a readonly struct](https://github.com/dotnet/efcore/pull/21889) * Make [InverseProperty work on skip navigations](https://github.com/dotnet/efcore/pull/21867) * Add [metadata for configuring required dependents](https://github.com/dotnet/efcore/pull/21873) * Log [a warning instead of throwing for IsRequired on ambiguous principal end](https://github.com/dotnet/efcore/pull/21926) * Remove all [ambiguous InverseAttribute skip navigations](https://github.com/dotnet/efcore/pull/21939) * Remove [TypeMapping annotation](https://github.com/dotnet/efcore/pull/21936) * Add [overloads for configuring shared type as owned type](https://github.com/dotnet/efcore/pull/21941) * SaveChanges * Add [SaveChanges interceptor](https://github.com/dotnet/efcore/pull/21857) * Add [SaveChanges events](https://github.com/dotnet/efcore/pull/21862) * Run [two SaveChanges interception suites against different databases](https://github.com/dotnet/efcore/pull/21880). See also [#21872](https://github.com/dotnet/efcore/pull/21872). * Rename [AreSavepointsSupported to SupportsSavepoints](https://github.com/dotnet/efcore/pull/21876) * Remove [unneeded savepoint API sugar](https://github.com/dotnet/efcore/pull/21929) * Remove [non-generic ValueTask from interceptors](https://github.com/dotnet/efcore/pull/21887) * Migrations * Make [CommandLogger available on MigrationCommand](https://github.com/dotnet/efcore/pull/21866) * Un-expose [some methods on CSharpSnapshotGenerator](https://github.com/dotnet/efcore/pull/21875) * Add [EXEC calls to idempotent scrip](https://github.com/dotnet/efcore/pull/21933) * Rename [MigrationOperation.For methods to CreateFrom](https://github.com/dotnet/efcore/pull/21884) * Testing * Fix [some non-deterministic tests](https://github.com/dotnet/efcore/pull/21895) * Add [query regression tests](https://github.com/dotnet/efcore/pull/21944) * Add [end to end test for shared type entity type](https://github.com/dotnet/efcore/pull/21948) * Fix [FreeText tests](https://github.com/dotnet/efcore/pull/21922) * Scaffolding * Generate [lambda with good identifiers](https://github.com/dotnet/efcore/pull/21946) * Scaffold [MaxLength attribute when using data annotations](https://github.com/dotnet/efcore/pull/21897) * Dependencies * Bump [NetTopologySuite from 2.0.0 to 2.1.0](https://github.com/dotnet/efcore/pull/21932) * Change tracking * Implementation and testing for [composite keys in many-to-many](https://github.com/dotnet/efcore/pull/21902) * Documentation * Update [index.yml](https://github.com/dotnet/EntityFramework.Docs/pull/2556). See also [#2554](https://github.com/dotnet/EntityFramework.Docs/pull/2554). ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 7](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.7.20365.15) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.6](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

August 13, 2020

Expand to see status from this week...

## Highlights * The EF Core 3.1.7 patch release is [available now on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.7). * EF Core 5.0 now has [perf counters](https://github.com/dotnet/efcore/pull/21912)! [Let us know which additional counters to expose](https://github.com/dotnet/efcore/issues/21931). * As always many thanks to the community, this week including a PR to support [deferred transactions in Microsoft.Data.Sqlite](https://github.com/dotnet/efcore/pull/21212) And of course we're continuing to fix issues and polish the experience for EF Core 5.0. Please try now with the latest [daily build](https://github.com/dotnet/aspnetcore/blob/master/docs/DailyBuilds.md) and file your feedback on GitHub. ## EF Core 5.0 preview 7 EF Core 5.0 preview 7 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.7.20365.15) New features in preview 7 include: * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) Remember that all these features from previous previews are also included in preview 7: * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-ef-core-5-0-preview-7/) has installation instructions and full details. ## EF Core 3.1.7 EF Core 3.1.7 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.7). This is a patch release of 3.1 containing [important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.7+is%3Aclosed). ## EF Core 5.0 We have completed a second re-balancing of the work for EF Core 5.0. The major changes are: * The [migrations bundles feature](https://github.com/dotnet/efcore/issues/19693) will be deferred until after the EF Core 5.0 release. However, several other [targeted improvements related to migrations](https://github.com/dotnet/efcore/issues/19587#issuecomment-668794460) will be included in EF Core 5.0 * Support for [required 1-1 dependents](https://github.com/dotnet/efcore/issues/12100) has been pulled into the EF Core 5.0 release. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. The plan at [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) will be updated to reflect this. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-nav) | In-progress | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | In-progress | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | Done | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | Scoped | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | In-progress | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | Scoped | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | In-progress ## Pull requests from the last week ### Community contributions * @AlexanderTaeschner implemented [deferred transactions in Microsoft.Data.Sqlite](https://github.com/dotnet/efcore/pull/21212) * @m4ss1m0g added [TryGetValue methods for properties](https://github.com/dotnet/efcore/pull/21911) Many thanks to all our contributors! ### EF Core * Model building * Add [generic NavigationBuilder](https://github.com/dotnet/efcore/pull/22017) * Configure [OnDelete for join entity types on SQL Server](https://github.com/dotnet/efcore/pull/21959) * Add [CLR type for shared type entity type in debug view](https://github.com/dotnet/efcore/pull/22011) * Determine [column names for TPT in the model instead of a convention](https://github.com/dotnet/efcore/pull/22026) * Target [FKs to the derived table in TPT if possible](https://github.com/dotnet/efcore/pull/22039) * Changes from [API review for attributes](https://github.com/dotnet/efcore/pull/22037) * Fixes for [type mappings following API review](https://github.com/dotnet/efcore/pull/22032) * Add [ITableBase.IsOptional](https://github.com/dotnet/efcore/pull/21966) * Make [required dependent columns in shared table non-nullable](https://github.com/dotnet/efcore/pull/21952) * Change tracking * Implement [explicit and lazy loading for many-to-many collections](https://github.com/dotnet/efcore/pull/22023) * Implement [MemberEntry support for skip navigations](https://github.com/dotnet/efcore/pull/21989) * Check [skip navigations in when attaching a graph](https://github.com/dotnet/efcore/pull/21999) * Query * Materialize [required dependents always](https://github.com/dotnet/efcore/pull/22019) * Prune [SelectExpression to remove not needed TPT LeftJoin](https://github.com/dotnet/efcore/pull/21992) * Miscellaneous * Implement [perf counters](https://github.com/dotnet/efcore/pull/21912) * General [changes from API reviews changes](https://github.com/dotnet/efcore/pull/21960). Also [#21958](https://github.com/dotnet/efcore/pull/21958). * Migrations * Generate [transaction statements in SQL script](https://github.com/dotnet/efcore/pull/21988) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 7](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.7.20365.15) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.7](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

August 20, 2020

Expand to see status from this week...

## Highlights * Major new guidance and samples for [EF Core in Blazor applications](https://docs.microsoft.com/aspnet/core/blazor/blazor-server-ef-core?view=aspnetcore-3.1) * .NET Core 5.0 and .NET Core 3.1 guidance * How to use AddDbContextFactory to manage your database sessions * Plus more! * EF [Community Standup](https://www.youtube.com/watch?v=W1sxepfIMRM&feature=youtu.be) with 45 minutes of **many-to-many** demos! * We start with a simple example, then see how it works under-the-covers. * Many-to-many is now complete and available in the [daily builds](https://github.com/dotnet/aspnetcore/blob/master/docs/DailyBuilds.md) * We are still fixing bugs and polishing, so get your feedback in now! ## EF Core 5.0 preview 7 EF Core 5.0 preview 7 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.7.20365.15) New features in preview 7 include: * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) Remember that all these features from previous previews are also included in preview 7: * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-ef-core-5-0-preview-7/) has installation instructions and full details. ## EF Core 3.1.7 EF Core 3.1.7 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.7). This is a patch release of 3.1 containing [important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.7+is%3Aclosed). ## EF Core 5.0 We have completed a second re-balancing of the work for EF Core 5.0. The major changes are: * The [migrations bundles feature](https://github.com/dotnet/efcore/issues/19693) will be deferred until after the EF Core 5.0 release. However, several other [targeted improvements related to migrations](https://github.com/dotnet/efcore/issues/19587#issuecomment-668794460) will be included in EF Core 5.0 * Support for [required 1-1 dependents](https://github.com/dotnet/efcore/issues/12100) has been pulled into the EF Core 5.0 release. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. The plan at [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) will be updated to reflect this. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-nav) | Done | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | Done | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | Done | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | Scoped/Done | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Scoped/Done | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | Scoped | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | Done ## Pull requests from the last week ### Community contributions * @SergerGood [reduced allocations by removing some boxing of structs](https://github.com/dotnet/efcore/pull/22030) * @Psypher9 implemented [Get-Migrations and update "migrations list" to show applied or pending](https://github.com/dotnet/efcore/pull/22109) Many thanks to all our contributors! ### EF Core * Model building * Don't [create an FK constraint if a derived type in TPT uses table sharing](https://github.com/dotnet/efcore/pull/22099) * Add [FK constraints between TPT tables](https://github.com/dotnet/efcore/pull/22136) * Don't [identify dictionary indexer as nullable reference type](https://github.com/dotnet/efcore/pull/22068) * Test for [HasKey on an overridden property](https://github.com/dotnet/efcore/pull/22111) * Make [RelationalAnnotationProviderDependencies public](https://github.com/dotnet/efcore/pull/22087) * Add [overloads to HasConversion that take a ValueComparer](https://github.com/dotnet/efcore/pull/22074) * Properly [remove incompatible entity types with the same name](https://github.com/dotnet/efcore/pull/22075) * Make [ITableBase methods throw for entity types not mapped to the table](https://github.com/dotnet/efcore/pull/22070) * Stop [qualifying Type parameters with CLR](https://github.com/dotnet/efcore/pull/22069) * Don't [uniquify non-existing FKs](https://github.com/dotnet/efcore/pull/22066) * Throw if [same name is specified for a different shared type owned entity type](https://github.com/dotnet/efcore/pull/22052) * Undo [binary breaking change to INavigation](https://github.com/dotnet/efcore/pull/22048) * API Review [changes](https://github.com/dotnet/efcore/pull/22038) * Fix an [OwnsOne overload not passing through the type](https://github.com/dotnet/efcore/pull/22050) * Remove [referenced key when removing the FK from skip navigation](https://github.com/dotnet/efcore/pull/22041) * DbContext * Avoid [initializing the model during DatabaseFacade.IsRelational()](https://github.com/dotnet/efcore/pull/22110) * Make [CollectionEntry.Query work with defining navigation](https://github.com/dotnet/efcore/pull/22100) * Use [local DetectChanges when cascade-deleting](https://github.com/dotnet/efcore/pull/22079) * React to [code review comments after the bot got too eager](https://github.com/dotnet/efcore/pull/22097) * Use [CreateFactory instead of CreateInstance in DbContextFactory](https://github.com/dotnet/efcore/pull/22072) * Query * Handle [Schrƶdinger's Cat in the query pipeline](https://github.com/dotnet/efcore/pull/22123) * Make [AsSplitQuery a no-op for the in-memory provider](https://github.com/dotnet/efcore/pull/22107) * Simplify [member access on conditional null check constructing nominal type](https://github.com/dotnet/efcore/pull/22033) * Disallow [return types of Queryables in projection](https://github.com/dotnet/efcore/pull/22024) * Tools * Workaround for [PowerShell issue in PMC tools](https://github.com/dotnet/efcore/pull/22134) * Workaround for [project system issue in PMC tools](https://github.com/dotnet/efcore/pull/22124) * Redo [pubternalyzer with Roslyn Operations](https://github.com/dotnet/efcore/pull/21996) * Cosmos * Add [ToQueryString for ReadItemQueryingEnumerable](https://github.com/dotnet/efcore/pull/22091) * Fix [Cosmos build break](https://github.com/dotnet/efcore/pull/22127) * Move [exception messages](https://github.com/dotnet/efcore/pull/22108) * SaveChanges * Propagate [original values for shared columns to added dependents in table splitting](https://github.com/dotnet/efcore/pull/22059) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 7](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.7.20365.15) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.7](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

August 27, 2020

Expand to see status from this week...

## Highlights EF Core 5.0 preview 8 is available now! * TPT * SQLite table rebuilds * TVFs * Plus lots of bug fixes and smaller enhancements! Full details and blog link below. ## EF Core 5.0 preview 8 EF Core 5.0 preview 8 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.8.20407.4) New features in preview 8 include: * [Table-per-type (TPT) mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-per-type-tpt-mapping) * [Migrations: Rebuild SQLite tables](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-rebuild-sqlite-tables) * [Table-valued functions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-valued-functions) * [Flexible query/update mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flexible-queryupdate-mapping) * [Context-wide split-query configuration](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#context-wide-split-query-configuration) * [PhysicalAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#physicaladdress-mapping) * [Add FieldInfo overload for NavigationBuilder](https://github.com/dotnet/efcore/issues/21539) * [Query generation for GroupBy with OwnsOne](https://github.com/dotnet/efcore/issues/14028) * [Support join after GroupByAggregate](https://github.com/dotnet/efcore/issues/10012) * [Generate a warning for multiple collection Includes](https://github.com/dotnet/efcore/issues/19933) * [Convert multiple equality on same column joined by Or/Else into SQL IN expression](https://github.com/dotnet/efcore/issues/20003) * [Make discriminator properties read-only be default](https://github.com/dotnet/efcore/issues/21154) * [Add an IDbContextFactory that pools context instances](https://github.com/dotnet/efcore/issues/21247) * [Cosmos: Allow PK with just the partition key](https://github.com/dotnet/efcore/issues/21396) Remember that all these features from previous previews are also included in preview 8: * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-ef-core-5-0-preview-8/) has installation instructions and full details. ## EF Core 3.1.7 EF Core 3.1.7 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.7). This is a patch release of 3.1 containing [important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.7+is%3Aclosed). ## EF Core 5.0 We have completed a second re-balancing of the work for EF Core 5.0. The major changes are: * The [migrations bundles feature](https://github.com/dotnet/efcore/issues/19693) will be deferred until after the EF Core 5.0 release. However, several other [targeted improvements related to migrations](https://github.com/dotnet/efcore/issues/19587#issuecomment-668794460) will be included in EF Core 5.0 * Support for [required 1-1 dependents](https://github.com/dotnet/efcore/issues/12100) has been pulled into the EF Core 5.0 release. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. The plan at [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) will be updated to reflect this. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-nav) | Done | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | Done | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | Done | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | Scoped/Done | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Scoped/Done | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | Scoped/Done | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | In-progress | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | Done ## Pull requests merged in the last week ### Community contributions * @TheFanatr fixed [attaching entities with generated non-key values](https://github.com/dotnet/efcore/pull/22149) * @TheFanatr implemented [translation of __jObject to access root](https://github.com/dotnet/efcore/pull/22143) Many thanks to all our contributors! ### EF Core * Miscellaneous * Downgrade [to Microsoft.Azure.Cosmos 3.12.0](https://github.com/dotnet/efcore/pull/22197) * Upgrade [build SDK to 5.0 preview8](https://github.com/dotnet/efcore/pull/22227) * Update [to Microsoft.Data.SqlClient 2.0.1](https://github.com/dotnet/efcore/pull/22244) * Punt [VB support from analyzer to post 5.0](https://github.com/dotnet/efcore/pull/22211) * Be [consistent about ifdefs for .NET 5](https://github.com/dotnet/efcore/pull/22194) * Be [consistent about which NotNull attribute to use](https://github.com/dotnet/efcore/pull/22178) * Sort [resx file on generate](https://github.com/dotnet/efcore/pull/22171) * Code cleanup for [EF.Relational](https://github.com/dotnet/efcore/pull/22183) * Code cleanup for [miscellaneous packages](https://github.com/dotnet/efcore/pull/22184) * Code cleanup for [Microsoft.Data.Sqlite](https://github.com/dotnet/efcore/pull/22188) * Code cleanup for [tests](https://github.com/dotnet/efcore/pull/22187) * Code cleanup for [database providers](https://github.com/dotnet/efcore/pull/22185) * Code cleanup for [EF.Core](https://github.com/dotnet/efcore/pull/22182) * Code cleanup for [EF.Design](https://github.com/dotnet/efcore/pull/22171) * Query * Throw [detailed exception message in buffered data reader](https://github.com/dotnet/efcore/pull/22233) * Correct [translation failure message](https://github.com/dotnet/efcore/pull/21408) * Fix to [push down into sub-query when applying over Skip after Distinct without OrderBy](https://github.com/dotnet/efcore/pull/22249) * Fix for [using variable in a .Select() from parent .SelectMany() scope](https://github.com/dotnet/efcore/pull/22254) * Block [queries with AsSplitQuery when collection was not split](https://github.com/dotnet/efcore/pull/22144) * Test for [NumberToBytesConverter on ulong RowVersion property](https://github.com/dotnet/efcore/pull/22257) * Preserve [value buffer indexes when adding navigation to weak type with in-memory provider](https://github.com/dotnet/efcore/pull/22202) * Test for [InMemory and byte array equality](https://github.com/dotnet/efcore/pull/22246) * Test for [complex case of null removal](https://github.com/dotnet/efcore/pull/22216) * Add tests for [split query and weak entities](https://github.com/dotnet/efcore/pull/22155) * Model building * Add [ValueGenerated.OnUpdateSometimes for shared columns](https://github.com/dotnet/efcore/pull/22225) * Improve [AUTOINCREMENT support on SQLite](https://github.com/dotnet/efcore/pull/22245) * Make [IMutableAnnotatable methods correctly update the ConfigurationSource](https://github.com/dotnet/efcore/pull/22229) * Stop [using DbSet property name for table name of shared type entity types](https://github.com/dotnet/efcore/pull/22218) * Don't [use nulls for shadow properties in non-anonymous seed data](https://github.com/dotnet/efcore/pull/22220) * Don't [use PropertyInfo from unmapped base type](https://github.com/dotnet/efcore/pull/22208) * Add [a warning for unmapped foreign keys](https://github.com/dotnet/efcore/pull/22175) * Re-run [FK discovery convention when skip navigation changes](https://github.com/dotnet/efcore/pull/22153) * Do not [generate redundant ColumnName/Type in fluent API](https://github.com/dotnet/efcore/pull/22173) * Migrations/tools * Use [pluralizer with database names too](https://github.com/dotnet/efcore/pull/22145) * Avoid [more PowerShell path cmdlets in PMC](https://github.com/dotnet/efcore/pull/22169) * Handle [included index columns on SQL Server](https://github.com/dotnet/efcore/pull/22148) * Don't let [--output-dir override the existing snapshot dir](https://github.com/dotnet/efcore/pull/22217) * Don't [generate unnecessary ALTER TABLE on SQL Server](https://github.com/dotnet/efcore/pull/22207) * Change tracking * Support [NaN for doubles/floats in change tracking](https://github.com/dotnet/efcore/pull/22242). Also see [#22168](https://github.com/dotnet/efcore/pull/22168). * Allow [FK properties to remain temporary when state changes from Added](https://github.com/dotnet/efcore/pull/22221) * Documentation * Tweak [DbSet nullability docs](https://github.com/dotnet/EntityFramework.Docs/pull/2577) * Update [what's new for preview 8](https://github.com/dotnet/EntityFramework.Docs/pull/2584) * Update [5.0 plan with current status](https://github.com/dotnet/EntityFramework.Docs/pull/2579) * Update [index.yml and toc.yml to reference new Blazor guidance](https://github.com/dotnet/EntityFramework.Docs/pull/2573) * Update [index.yml with suggestions](https://github.com/dotnet/EntityFramework.Docs/pull/2586) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/aspnet/AspNetCore/blob/master/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 8](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.8.20407.4) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.7](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 4 years ago

September 10, 2020

Expand to see status from this week...

## Highlights EF Core 5.0 is done! We're still fixing issues as they are found, but we're tracking at zero issues to fix for the release. (See the burndown below.) Try now with a [daily build](https://github.com/dotnet/efcore/blob/release/5.0-rc2/docs/DailyBuilds.md)! A bumper two weeks of 76 PRs this time, since I was out for a short vacation: * Dozens of bugs fixed * Major review of exception messages * Lots of docs being updated for EF Core 5.0 ## EF Core 5.0 preview 8 EF Core 5.0 preview 8 is [available on NuGet now!](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.8.20407.4) New features in preview 8 include: * [Table-per-type (TPT) mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-per-type-tpt-mapping) * [Migrations: Rebuild SQLite tables](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-rebuild-sqlite-tables) * [Table-valued functions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-valued-functions) * [Flexible query/update mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flexible-queryupdate-mapping) * [Context-wide split-query configuration](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#context-wide-split-query-configuration) * [PhysicalAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#physicaladdress-mapping) * [Add FieldInfo overload for NavigationBuilder](https://github.com/dotnet/efcore/issues/21539) * [Query generation for GroupBy with OwnsOne](https://github.com/dotnet/efcore/issues/14028) * [Support join after GroupByAggregate](https://github.com/dotnet/efcore/issues/10012) * [Generate a warning for multiple collection Includes](https://github.com/dotnet/efcore/issues/19933) * [Convert multiple equality on same column joined by Or/Else into SQL IN expression](https://github.com/dotnet/efcore/issues/20003) * [Make discriminator properties read-only be default](https://github.com/dotnet/efcore/issues/21154) * [Add an IDbContextFactory that pools context instances](https://github.com/dotnet/efcore/issues/21247) * [Cosmos: Allow PK with just the partition key](https://github.com/dotnet/efcore/issues/21396) Remember that all these features from previous previews are also included in preview 8: * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-ef-core-5-0-preview-8/) has installation instructions and full details. ## EF Core 3.1.8 EF Core 3.1.8 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.8). This is a patch release of 3.1 containing only updates to dependencies. There are no additional fixes in this release beyond those already shipped in EF Core 3.1.7. ## EF Core 5.0 We have completed a second re-balancing of the work for EF Core 5.0. The major changes are: * The [migrations bundles feature](https://github.com/dotnet/efcore/issues/19693) will be deferred until after the EF Core 5.0 release. However, several other [targeted improvements related to migrations](https://github.com/dotnet/efcore/issues/19587#issuecomment-668794460) will be included in EF Core 5.0 * Support for [required 1-1 dependents](https://github.com/dotnet/efcore/issues/12100) has been pulled into the EF Core 5.0 release. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. The plan at [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) will be updated to reflect this. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-nav) | Done | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | Done | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | Done | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | Scoped/Done | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Scoped/Done | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | Scoped/Done | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | Done | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | Done ## Pull requests merged in the last two weeks ### Community contributions * @0xced added support to [create and initialize the TestStore inside InitializeAsync](https://github.com/dotnet/efcore/pull/22429) * @nbuuck [updated the ordering caveat in FromSql](https://github.com/dotnet/EntityFramework.Docs/pull/2599) Many thanks to all our contributors! ### EF Core * Documentation * Link to [tool manifest docs](https://github.com/dotnet/EntityFramework.Docs/pull/2628) * Document [new commands and options for the tools](https://github.com/dotnet/EntityFramework.Docs/pull/2626) * Document [defining query breaking change](https://github.com/dotnet/EntityFramework.Docs/pull/2625) * Add [Cosmos breaking changes](https://github.com/dotnet/EntityFramework.Docs/pull/2627) * Add [breaking changes docs for 5.0](https://github.com/dotnet/EntityFramework.Docs/pull/2621) * Avoid [unnecessary views in URL to other product docs](https://github.com/dotnet/EntityFramework.Docs/pull/2623) * Cleanup of ["What is new" section](https://github.com/dotnet/EntityFramework.Docs/pull/2614) * Update [single/split query docs](https://github.com/dotnet/EntityFramework.Docs/pull/2606) * Add [note on cancellation tokens](https://github.com/dotnet/EntityFramework.Docs/pull/2609) * Cleanup of [query filters docs](https://github.com/dotnet/EntityFramework.Docs/pull/2613) * Add [replacement for IQueryTypeConfiguration in breaking changes](https://github.com/dotnet/EntityFramework.Docs/pull/2612) * Fixes for [links](https://github.com/dotnet/EntityFramework.Docs/pull/2610). Also [#2603](https://github.com/dotnet/EntityFramework.Docs/pull/2603). * Refactor and improve [async documentation](https://github.com/dotnet/EntityFramework.Docs/pull/2605) * Add [description headers for all EF Core conceptual doc pages](https://github.com/dotnet/EntityFramework.Docs/pull/2601) * Add [docs on SQL Server-specific index config](https://github.com/dotnet/EntityFramework.Docs/pull/2600) * Fix [header levels](https://github.com/dotnet/EntityFramework.Docs/pull/2595). Also [#2594](https://github.com/dotnet/EntityFramework.Docs/pull/2594). * Minor [improvements to the Microsoft.Data.Sqlite docs](https://github.com/dotnet/docs/pull/20467) * Model building * Remove [extra ToList calls in MigrationsModelDiffer](https://github.com/dotnet/efcore/pull/22471) * Allow [discriminator properties to have value converter and comparer](https://github.com/dotnet/efcore/pull/22425) * Make sure [non-shared-type entity types aren't discovered while a shared-type entity type is being added](https://github.com/dotnet/efcore/pull/22413) * Propagate [MaxLength, Precision, Scale and IsUnicode to sharing columns](https://github.com/dotnet/efcore/pull/22396) * Propagate [identity seed and increment to sharing columns](https://github.com/dotnet/efcore/pull/22376) * Add [a test for indexes on overlapping FKs](https://github.com/dotnet/efcore/pull/22393) * Relax [restriction on derived FKs using value-generation properties from composite keys](https://github.com/dotnet/efcore/pull/22372) * Add [the column type to the migration when deleting a data using a removed column](https://github.com/dotnet/efcore/pull/22346) * Cache [derived types used in DerivedTypeDiscoveryConvention](https://github.com/dotnet/efcore/pull/22314) * Minor [model building perf improvements](https://github.com/dotnet/efcore/pull/22285) * Improve [exception message for missing shared table linking FK](https://github.com/dotnet/efcore/pull/22264) * Change tracking * Stop [attempting to do local DetectChanges when not snapshot change-tracking](https://github.com/dotnet/efcore/pull/22439) * Snapshot using comparer [even when property is store-generated](https://github.com/dotnet/efcore/pull/22427) * Don't [check for temporary values on non-key properties when deleting an entity](https://github.com/dotnet/efcore/pull/22419) * Re-enable [Can_use_sequence_end_to_end_from_multiple_contexts_concurrently_async for in-memory](https://github.com/dotnet/efcore/pull/22420) * Stop [repeatedly detecting changed properties on Deleted entities](https://github.com/dotnet/efcore/pull/22322) * Fix [return values from ResetAsync](https://github.com/dotnet/efcore/pull/22319) * Cache [SkipDetectChanges on model as a field for perf](https://github.com/dotnet/efcore/pull/22281) * Cache [candidate properties for propagation and generation for perf](https://github.com/dotnet/efcore/pull/22275) * Cache [change detector in state manager CascadeDelete for perf](https://github.com/dotnet/efcore/pull/22261) * Cleanup [NaN handling in value comparers](https://github.com/dotnet/efcore/pull/22242) * Query * Find [correct table to use when owned entity is mapped to different table](https://github.com/dotnet/efcore/pull/22405) * Print [expression when throwing null type mapping in SQL tree](https://github.com/dotnet/efcore/pull/22360) * Add [fix for identifying columns in the case of distinct](https://github.com/dotnet/efcore/pull/21990) * Add [fix for AssertIncludeCollection ordering of elements](https://github.com/dotnet/efcore/pull/22345) * Make [DbFunctions non-evaluatable](https://github.com/dotnet/efcore/pull/22318) * Update [exception message for LogMultipleCollectionIncludeWarning](https://github.com/dotnet/efcore/pull/22298) * Add [optimization to conditional being equated to equality](https://github.com/dotnet/efcore/pull/22251) * Handle [multiple lets with weak entities](https://github.com/dotnet/efcore/pull/22259) * Add regression tests for query issues: [#15215](https://github.com/dotnet/efcore/issues/15215) [#22300](https://github.com/dotnet/efcore/pull/22300) [#22284](https://github.com/dotnet/efcore/pull/22284) [#22299](https://github.com/dotnet/efcore/pull/22299) [#22282](https://github.com/dotnet/efcore/pull/22282) * Miscellaneous * Update [daily builds guidance](https://github.com/dotnet/efcore/pull/22468) * Flow [missing cancellation token in HiLo generator](https://github.com/dotnet/efcore/pull/22443) * Remove [Microsoft.Azure.Cosmos.Direct from nupkg](https://github.com/dotnet/efcore/pull/22449) * Merge [ExistingConnectionTest with ConnectionSpecificationTest](https://github.com/dotnet/efcore/pull/22412) * Update to [SQLitePCLRaw 2.0.4](https://github.com/dotnet/efcore/pull/22297) * Re-enable [exception serialization tests](https://github.com/dotnet/efcore/pull/22305) * Exception message/resource string review: [#22469](https://github.com/dotnet/efcore/pull/22469) [#22450](https://github.com/dotnet/efcore/pull/22450) [#22417](https://github.com/dotnet/efcore/pull/22417) [#22392](https://github.com/dotnet/efcore/pull/22392) [#22373](https://github.com/dotnet/efcore/pull/22373) [#22343](https://github.com/dotnet/efcore/pull/22343) [#22333](https://github.com/dotnet/efcore/pull/22333) [#22321](https://github.com/dotnet/efcore/pull/22321) * Proxies * Automatically create [notification collections when change-tracking proxies are being used](https://github.com/dotnet/efcore/pull/22438) * Updates to [shared-type entity type handling in proxies](https://github.com/dotnet/efcore/pull/22408) * Limit [change tracking proxies to only changing _and_ changed strategies](https://github.com/dotnet/efcore/pull/22278) * Support [overriding virtual indexer property in proxies](https://github.com/dotnet/efcore/pull/22258) * SaveChanges * Stop [generating CommandError if CommandExecuted has already happened](https://github.com/dotnet/efcore/pull/22426) * Correctly [break double cycles in FK constraints](https://github.com/dotnet/efcore/pull/22398) * Tests for [value generators on owned properties](https://github.com/dotnet/efcore/pull/22363) * Populate [DbUpdateException.Entries for non-concurrency exceptions](https://github.com/dotnet/efcore/pull/22361) * Migrations * Persist [ValueGenerationStrategy.None in snapshot](https://github.com/dotnet/efcore/pull/22226) * Tools * Throw a better exception when [ActiveConfiguration returns null in the PMC](https://github.com/dotnet/efcore/pull/22334) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/dotnet/efcore/blob/release/5.0-rc2/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 preview 8](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-preview.8.20407.4) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.8](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 3 years ago

September 17, 2020

Expand to see status from this week...

## Highlights [EF Core 5.0 RC1](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-efcore-5-0-rc1/) is [feature complete on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-rc.1.20451.13) with a go-live license! * Over 3600 downloads since Monday * We're fixing bugs for RC2 as they are filed * Try it now! Meanwhile, the team is also working on documentation and internal quality. ## EF Core 5.0 RC1 New features in RC1 include: * [Many-to-many relationships](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#many-to-many) * [Map entity types to queries](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#map-entity-types-to-queries) * [Event counters](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#event-counters) * [Property bags](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#property-bags) * [SaveChanges interception and events](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#savechanges-interception-and-events) * [Exclude tables from migrations](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-tables-from-migrations) * [Required 1:1 dependents](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#required-11-dependents) * [Options for migration generation](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#options-for-migration-generation) * [Migrations scripts with transactions](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-scripts-with-transactions) * [See pending migrations](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#see-pending-migrations) * [ModelBuilder API for value comparers](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#modelbuilder-api-for-value-comparers) * [EntityEntry TryGetValue methods](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#entityentry-trygetvalue-methods) * [Default max batch size for SQL Server](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#default-max-batch-size-for-sql-server) * [Default environment to Development](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#default-environment-to-development) * [Better migrations column ordering](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#better-migrations-column-ordering) * [Translation of is on Cosmos](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [User-mapped functions can now be annotated to control null propagation](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Support for translation of GroupBy with conditional aggregates](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Translation of Distinct operator over group element before aggregate](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Model building for fields](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#model-building-for-fields) Remember that all these features from previous previews are also included in RC1: * [Table-per-type (TPT) mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-per-type-tpt-mapping) * [Migrations: Rebuild SQLite tables](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-rebuild-sqlite-tables) * [Table-valued functions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-valued-functions) * [Flexible query/update mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flexible-queryupdate-mapping) * [Context-wide split-query configuration](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#context-wide-split-query-configuration) * [PhysicalAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#physicaladdress-mapping) * [Add FieldInfo overload for NavigationBuilder](https://github.com/dotnet/efcore/issues/21539) * [Query generation for GroupBy with OwnsOne](https://github.com/dotnet/efcore/issues/14028) * [Support join after GroupByAggregate](https://github.com/dotnet/efcore/issues/10012) * [Generate a warning for multiple collection Includes](https://github.com/dotnet/efcore/issues/19933) * [Convert multiple equality on same column joined by Or/Else into SQL IN expression](https://github.com/dotnet/efcore/issues/20003) * [Make discriminator properties read-only be default](https://github.com/dotnet/efcore/issues/21154) * [Add an IDbContextFactory that pools context instances](https://github.com/dotnet/efcore/issues/21247) * [Cosmos: Allow PK with just the partition key](https://github.com/dotnet/efcore/issues/21396) * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-efcore-5-0-rc1/) has installation instructions and full details. ## EF Core 3.1.8 EF Core 3.1.8 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.8). This is a patch release of 3.1 containing only updates to dependencies. There are no additional fixes in this release beyond those already shipped in EF Core 3.1.7. ## EF Core 5.0 We have completed a second re-balancing of the work for EF Core 5.0. The major changes are: * The [migrations bundles feature](https://github.com/dotnet/efcore/issues/19693) will be deferred until after the EF Core 5.0 release. However, several other [targeted improvements related to migrations](https://github.com/dotnet/efcore/issues/19587#issuecomment-668794460) will be included in EF Core 5.0 * Support for [required 1-1 dependents](https://github.com/dotnet/efcore/issues/12100) has been pulled into the EF Core 5.0 release. * Some of the smaller, lower priority enhancements and bug fixes have been punted to allow for these changes. The plan at [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) will be updated to reflect this. Feedback is still greatly appreciated. As always, this plan is not set-in-stone; we expect it will evolve throughout the release cycle as we learn. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-nav) | Done | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | Done | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | Done | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | Scoped/Done | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Scoped/Done | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | Scoped/Done | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | Done | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | Done ## Pull requests merged in the last two weeks ### Community contributions * @0xced [removed the beta note about the Oracle.EntityFrameworkCore provider](https://github.com/dotnet/EntityFramework.Docs/pull/2643) * @hyperoceanic [fixed some typos in the Cosmos docs](https://github.com/dotnet/EntityFramework.Docs/pull/2638) * @Arnab-Developer [fixed a typo in the 'Applying Migrations with EF Core' document](https://github.com/dotnet/EntityFramework.Docs/pull/2631) Many thanks to all our contributors! ### EF Core * Change tracking * (RC2) Change [ChangeTrackingStrategy from annotation to field](https://github.com/dotnet/efcore/pull/22531) * Model building * (RC2) Throw for [ForeignKeyAttribute on skip navigation](https://github.com/dotnet/efcore/pull/22534) * (RC2) Handle [stale skip FKs in ForeignKeyPropertyDiscoveryConvention](https://github.com/dotnet/efcore/pull/22507) * (RC2) Add [RelationalModel debug property to Model](https://github.com/dotnet/efcore/pull/22479) * Reverse engineering * (RC2) Remove [ColumnType annotation from scaffolded code](https://github.com/dotnet/efcore/pull/22550) * Query * (RC2) Clone [DbParameter when adding to command if ICloneable](https://github.com/dotnet/efcore/pull/22485) * (3.1.9) Unwind [nested invocation expressions](https://github.com/dotnet/efcore/pull/22472) * (RC2) Generate [conditionals instead of switch in materializer delegate for discriminator values that need custom comparison](https://github.com/dotnet/efcore/pull/22470) * Miscellaneous * Move [some provider-facing tests to specifications](https://github.com/dotnet/efcore/pull/22574) * Update to [.NET SDK 5.0 RC1](https://github.com/dotnet/efcore/pull/22546) * Improve [exception messages](https://github.com/dotnet/efcore/pull/22511) * Improve [resource strings for the design-time](https://github.com/dotnet/efcore/pull/22488) * Improve [Microsoft.Data.Sqlite resources](https://github.com/dotnet/efcore/pull/22480) * Documentation * Added [What's new in RC1](https://github.com/dotnet/EntityFramework.Docs/pull/2635) * Tweaks to [daily build guidance after feedback](https://github.com/dotnet/efcore/pull/22481) * Add a [breaking change note for no client methods](https://github.com/dotnet/EntityFramework.Docs/pull/2651) * Fixed [typo in related data doc](https://github.com/dotnet/EntityFramework.Docs/pull/2648) * Tweak [wording on migrations warning](https://github.com/dotnet/EntityFramework.Docs/pull/2642) * Split [related data page into separate pages](https://github.com/dotnet/EntityFramework.Docs/pull/2617) * Remove [ms.assetid](https://github.com/dotnet/EntityFramework.Docs/pull/2630) * Document [deferred transactions in Microsoft.Data.Sqlite](https://github.com/dotnet/docs/pull/20507) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/dotnet/efcore/blob/release/5.0-rc2/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 RC1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-rc.1.20451.13) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.8](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 3 years ago

September 24, 2020

Expand to see status from this week...

## Highlights * More than 12,000 downloads of EF Core 5.0 RC1! * We're fixing issues as they are found * Nine customer-reported RC1 issues fixed this week for RC2 (see below) Try it now and report bugs! Meanwhile, the team continues to work on documentation and internal quality. ## EF Core 5.0 RC1 [EF Core 5.0 RC1](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-efcore-5-0-rc1/) is [feature complete on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-rc.1.20451.13) with a go-live license! New features in RC1 include: * [Many-to-many relationships](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#many-to-many) * [Map entity types to queries](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#map-entity-types-to-queries) * [Event counters](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#event-counters) * [Property bags](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#property-bags) * [SaveChanges interception and events](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#savechanges-interception-and-events) * [Exclude tables from migrations](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-tables-from-migrations) * [Required 1:1 dependents](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#required-11-dependents) * [Options for migration generation](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#options-for-migration-generation) * [Migrations scripts with transactions](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-scripts-with-transactions) * [See pending migrations](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#see-pending-migrations) * [ModelBuilder API for value comparers](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#modelbuilder-api-for-value-comparers) * [EntityEntry TryGetValue methods](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#entityentry-trygetvalue-methods) * [Default max batch size for SQL Server](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#default-max-batch-size-for-sql-server) * [Default environment to Development](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#default-environment-to-development) * [Better migrations column ordering](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#better-migrations-column-ordering) * [Translation of is on Cosmos](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [User-mapped functions can now be annotated to control null propagation](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Support for translation of GroupBy with conditional aggregates](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Translation of Distinct operator over group element before aggregate](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Model building for fields](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#model-building-for-fields) Remember that all these features from previous previews are also included in RC1: * [Table-per-type (TPT) mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-per-type-tpt-mapping) * [Migrations: Rebuild SQLite tables](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-rebuild-sqlite-tables) * [Table-valued functions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-valued-functions) * [Flexible query/update mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flexible-queryupdate-mapping) * [Context-wide split-query configuration](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#context-wide-split-query-configuration) * [PhysicalAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#physicaladdress-mapping) * [Add FieldInfo overload for NavigationBuilder](https://github.com/dotnet/efcore/issues/21539) * [Query generation for GroupBy with OwnsOne](https://github.com/dotnet/efcore/issues/14028) * [Support join after GroupByAggregate](https://github.com/dotnet/efcore/issues/10012) * [Generate a warning for multiple collection Includes](https://github.com/dotnet/efcore/issues/19933) * [Convert multiple equality on same column joined by Or/Else into SQL IN expression](https://github.com/dotnet/efcore/issues/20003) * [Make discriminator properties read-only be default](https://github.com/dotnet/efcore/issues/21154) * [Add an IDbContextFactory that pools context instances](https://github.com/dotnet/efcore/issues/21247) * [Cosmos: Allow PK with just the partition key](https://github.com/dotnet/efcore/issues/21396) * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-efcore-5-0-rc1/) has installation instructions and full details. ## EF Core 3.1.8 EF Core 3.1.8 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.8). This is a patch release of 3.1 containing only updates to dependencies. There are no additional fixes in this release beyond those already shipped in EF Core 3.1.7. ## EF Core 5.0 EF Core 5.0 is feature complete in the RC1 release. We are fixing bugs as they are found in the release candidates. See the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) for details. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-nav) | Done | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | Done | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | Done | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | Scoped/Done | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Scoped/Done | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | Scoped/Done | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | Done | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | Done ## Pull requests merged in the last two weeks ### Community contributions * @sajadtorkamani [fixed a typo in the migrations docs](https://github.com/dotnet/EntityFramework.Docs/pull/2673) * @0xced [added System.Data.SQLite to the list of EF6 providers](https://github.com/dotnet/EntityFramework.Docs/pull/2658) * @joakimriedel [fixed wrong code sample for AsSplitQuery/AsSingleQuery](https://github.com/dotnet/EntityFramework.Docs/pull/2659) Many thanks to all our contributors! ### EF Core * Documentation * Add [docs on CommandTimeout](https://github.com/dotnet/efcore/pull/22620) * Update [daily build guidance for EF Core 5.0/EF Core 6.0](https://github.com/dotnet/efcore/pull/22535) * Add [start of ORM considerations](https://github.com/dotnet/EntityFramework.Docs/pull/2668) * Update [.NET Tools page to 5.x](https://github.com/dotnet/EntityFramework.Docs/pull/2650) * New [document on context pooling](https://github.com/dotnet/EntityFramework.Docs/pull/2662) * Add [sample for the new Cosmos options](https://github.com/dotnet/EntityFramework.Docs/pull/2644) * Improve [docs showing easier way to edit docs](https://github.com/dotnet/EntityFramework.Docs/pull/2667) * Update [connection resiliency docs](https://github.com/dotnet/EntityFramework.Docs/pull/2649) * Testing * Move [some provider-facing tests to specifications](https://github.com/dotnet/efcore/pull/22574) * Fix [analyzer test after internal type was moved](https://github.com/dotnet/efcore/pull/22638) * Fix [the model in GraphUpdatesSqlServerTest.TptIdentity](https://github.com/dotnet/efcore/pull/22676) * Add [tests for previously fixed issues](https://github.com/dotnet/efcore/pull/22648) * Miscellaneous * (RC2) Include [commit SHA in `[AssemblyInformationalVersion]` value](https://github.com/dotnet/efcore/pull/22649) * Enable [NetAnalyzers reliability and globalization rules](https://github.com/dotnet/efcore/pull/22625) * Bump [IdentityServer4.EntityFramework from 4.0.4 to 4.1.0](https://github.com/dotnet/efcore/pull/22628) * Move [types out of top-level Internal namespaces](https://github.com/dotnet/efcore/pull/22596) * (RC2) Make [newline escaping logic more robust](https://github.com/dotnet/efcore/pull/22602) * Model building * (RC2) Undo [GetColumnName behavior change](https://github.com/dotnet/efcore/pull/22672) * (RC2) Don't [remove skip foreign key when join entity type is configured explicitly](https://github.com/dotnet/efcore/pull/22652) * (RC2) Add [null checks to account for owned types in TPT](https://github.com/dotnet/efcore/pull/22587) * Change tracking * (RC2) Mark [join entities as Added when either side is Added](https://github.com/dotnet/efcore/pull/22669) * (RC2) Generate [values for PK properties that are also self-referencing FK properties](https://github.com/dotnet/efcore/pull/22585) * Query * (RC2) Throw [exception for cycles in auto included navigations](https://github.com/dotnet/efcore/pull/22612) * Type mapping * (RC2) Handle [square brackets around explicitly specified SQL Server type names](https://github.com/dotnet/efcore/pull/22610) * Migrations * (RC2) Correctly [generate UseIdentityColumn(s) API in snapshot](https://github.com/dotnet/efcore/pull/22640) * SaveChanges * (RC2) Also clear [the store generated values when setting a normal value](https://github.com/dotnet/efcore/pull/22607) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/dotnet/efcore/blob/release/5.0-rc2/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 RC1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-rc.1.20451.13) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.8](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 3 years ago

October 1, 2020

Expand to see status from this week...

## Highlights Help us find the bugs! With around 700 issues fixed, EF Core 5.0 must have bugs. But we've only seen a trickle reported on RC1. So run your code on EF Core RC1 and **help us find those bugs!** Meanwhile, the team continues to work on documentation and internal quality, while also beginning EF Core 6.0 planning. ## EF Core 5.0 RC1 [EF Core 5.0 RC1](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-efcore-5-0-rc1/) is [feature complete on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-rc.1.20451.13) with a go-live license! New features in RC1 include: * [Many-to-many relationships](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#many-to-many) * [Map entity types to queries](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#map-entity-types-to-queries) * [Event counters](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#event-counters) * [Property bags](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#property-bags) * [SaveChanges interception and events](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#savechanges-interception-and-events) * [Exclude tables from migrations](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-tables-from-migrations) * [Required 1:1 dependents](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#required-11-dependents) * [Options for migration generation](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#options-for-migration-generation) * [Migrations scripts with transactions](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-scripts-with-transactions) * [See pending migrations](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#see-pending-migrations) * [ModelBuilder API for value comparers](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#modelbuilder-api-for-value-comparers) * [EntityEntry TryGetValue methods](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#entityentry-trygetvalue-methods) * [Default max batch size for SQL Server](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#default-max-batch-size-for-sql-server) * [Default environment to Development](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#default-environment-to-development) * [Better migrations column ordering](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#better-migrations-column-ordering) * [Translation of is on Cosmos](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [User-mapped functions can now be annotated to control null propagation](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Support for translation of GroupBy with conditional aggregates](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Translation of Distinct operator over group element before aggregate](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Model building for fields](https://docs.microsoft.com/en-us/ef/core/what-is-new/ef-core-5.0/whatsnew#model-building-for-fields) Remember that all these features from previous previews are also included in RC1: * [Table-per-type (TPT) mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-per-type-tpt-mapping) * [Migrations: Rebuild SQLite tables](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-rebuild-sqlite-tables) * [Table-valued functions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-valued-functions) * [Flexible query/update mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flexible-queryupdate-mapping) * [Context-wide split-query configuration](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#context-wide-split-query-configuration) * [PhysicalAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#physicaladdress-mapping) * [Add FieldInfo overload for NavigationBuilder](https://github.com/dotnet/efcore/issues/21539) * [Query generation for GroupBy with OwnsOne](https://github.com/dotnet/efcore/issues/14028) * [Support join after GroupByAggregate](https://github.com/dotnet/efcore/issues/10012) * [Generate a warning for multiple collection Includes](https://github.com/dotnet/efcore/issues/19933) * [Convert multiple equality on same column joined by Or/Else into SQL IN expression](https://github.com/dotnet/efcore/issues/20003) * [Make discriminator properties read-only be default](https://github.com/dotnet/efcore/issues/21154) * [Add an IDbContextFactory that pools context instances](https://github.com/dotnet/efcore/issues/21247) * [Cosmos: Allow PK with just the partition key](https://github.com/dotnet/efcore/issues/21396) * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-efcore-5-0-rc1/) has installation instructions and full details. ## EF Core 3.1.8 EF Core 3.1.8 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.8). This is a patch release of 3.1 containing only updates to dependencies. There are no additional fixes in this release beyond those already shipped in EF Core 3.1.7. ## EF Core 5.0 EF Core 5.0 is feature complete in the RC1 release. We are fixing bugs as they are found in the release candidates. See the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) for details. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-nav) | Done | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | Done | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | Done | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | Scoped/Done | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Scoped/Done | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | Scoped/Done | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | Done | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | Done ## Pull requests merged in the last two weeks ### Community contributions * @cincuranet fixed [indentation in a code snippet](https://github.com/dotnet/EntityFramework.Docs/pull/2714) * @dchristensen added [a warning about lost custom operations when squashing migrations](https://github.com/dotnet/EntityFramework.Docs/pull/2713) * @gurmeetsinghdke added [a hyperlink to 'Entity Framework Tools for Visual Studio'](https://github.com/dotnet/EntityFramework.Docs/pull/2683) Many thanks to all our contributors! ### EF Core * Model building * (5.0) Use [the schema of related ends for the join entity type by default](https://github.com/dotnet/efcore/pull/22845) * (5.0) Remove [the correct conflicting skip navigation](https://github.com/dotnet/efcore/pull/22846) * Documentation * Document [SQLite idempotent script limitations](https://github.com/dotnet/EntityFramework.Docs/pull/2682) * Updated [NuGet packages and settings for EF Core with Xamarin on iOS](https://github.com/dotnet/EntityFramework.Docs/pull/2666) * Document [pluralizer breaking change](https://github.com/dotnet/EntityFramework.Docs/pull/2681) * Document [IndexBuilder.HasName breaking change](https://github.com/dotnet/EntityFramework.Docs/pull/2680) * Update [daily builds to call out the GA daily build](https://github.com/dotnet/efcore/pull/22854) * Update [issue templates to remove discussions](https://github.com/dotnet/efcore/pull/22690) * Update [API docs](https://github.com/dotnet/efcore/pull/22626) * Miscellaneous * Replace [AsyncLock with SemaphoreSlim](https://github.com/dotnet/efcore/pull/22791) * Improve [exception messages](https://github.com/dotnet/efcore/pull/22793) * Bump [Microsoft.Azure.Cosmos from 3.12.0 to 3.13.0](https://github.com/dotnet/efcore/pull/22800) * Rename [Analyzer test project name](https://github.com/dotnet/efcore/pull/22750) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/dotnet/efcore/blob/release/5.0-rc2/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 RC1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-rc.1.20451.13) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.8](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 3 years ago

October 22, 2020

Expand to see status from this week...

## Highlights EF Core 5.0 RC2 is [on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-rc.2.20475.6). RC2 is an update to the feature-complete RC1 release containing [39 new bug fixes and tweaks](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.0-rc2+is%3Aclosed). It has a go-live license, so update now to get all the new features and bug fixes! The team is now focused on documentation, internal quality, and planning. Be sure to check out the new 5.0 documentation for: * [Many-to-many configuration](https://docs.microsoft.com/ef/core/modeling/relationships?tabs=fluent-api%2Cfluent-api-simple-key%2Csimple-key#many-to-many) * [TPT inheritance configuration](https://docs.microsoft.com/ef/core/modeling/inheritance#table-per-type-configuration) * [ASP.NET Core Blazor Server with Entity Framework Core](https://docs.microsoft.com/aspnet/core/blazor/blazor-server-ef-core?view=aspnetcore-5.0) * [EF Core with WPF on .NET Core tutorial](https://docs.microsoft.com/ef/core/get-started/wpf) * [Updated Xamarin with EF Core tutorial](https://docs.microsoft.com/ef/core/get-started/xamarin) * [EF Core 5.0 breaking changes](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/breaking-changes) * [Testing code that uses EF Core](https://docs.microsoft.com/ef/core/miscellaneous/testing/) * [Collations and case sensitivity](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Indexers and property bag entity types](https://docs.microsoft.com/ef/core/modeling/shadow-properties#property-bag-entity-types) * [Required dependent entities](https://docs.microsoft.com/ef/core/modeling/relationships?tabs=fluent-api%2Cfluent-api-simple-key%2Csimple-key#one-to-one) * [Updated spatial (GIS) documentation](https://docs.microsoft.com/ef/core/modeling/spatial) * [Updated Migrations docs](https://docs.microsoft.com/ef/core/managing-schemas/migrations/?tabs=dotnet-core-cli) * [Updated Cosmos docs for partition keys and ETags](https://docs.microsoft.com/ef/core/providers/cosmos/?tabs=dotnet-core-cli) * [Savepoints](https://docs.microsoft.com/ef/core/saving/transactions#savepoints) * [SQL Server function mappings](https://docs.microsoft.com/ef/core/providers/sql-server/functions) * [SQLite function mappings](https://docs.microsoft.com/ef/core/providers/sqlite/functions) * [Cosmos function mappings](https://docs.microsoft.com/ef/core/providers/cosmos/functions) ## EF Core 5.0 RC2 [EF Core 5.0 RC2](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-ef-core-5-rc2/) is [feature complete on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-rc.2.20475.6) with a go-live license. New features in EF Core 5.0 include: * [Many-to-many relationships](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#many-to-many) * [Map entity types to queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#map-entity-types-to-queries) * [Event counters](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#event-counters) * [Property bags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#property-bags) * [SaveChanges interception and events](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savechanges-interception-and-events) * [Exclude tables from migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-tables-from-migrations) * [Required 1:1 dependents](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#required-11-dependents) * [Options for migration generation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#options-for-migration-generation) * [Migrations scripts with transactions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-scripts-with-transactions) * [See pending migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#see-pending-migrations) * [ModelBuilder API for value comparers](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#modelbuilder-api-for-value-comparers) * [EntityEntry TryGetValue methods](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#entityentry-trygetvalue-methods) * [Default max batch size for SQL Server](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#default-max-batch-size-for-sql-server) * [Default environment to Development](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#default-environment-to-development) * [Better migrations column ordering](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#better-migrations-column-ordering) * [Translation of is on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [User-mapped functions can now be annotated to control null propagation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Support for translation of GroupBy with conditional aggregates](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Translation of Distinct operator over group element before aggregate](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Model building for fields](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#model-building-for-fields) * [Table-per-type (TPT) mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-per-type-tpt-mapping) * [Migrations: Rebuild SQLite tables](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-rebuild-sqlite-tables) * [Table-valued functions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-valued-functions) * [Flexible query/update mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flexible-queryupdate-mapping) * [Context-wide split-query configuration](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#context-wide-split-query-configuration) * [PhysicalAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#physicaladdress-mapping) * [Add FieldInfo overload for NavigationBuilder](https://github.com/dotnet/efcore/issues/21539) * [Query generation for GroupBy with OwnsOne](https://github.com/dotnet/efcore/issues/14028) * [Support join after GroupByAggregate](https://github.com/dotnet/efcore/issues/10012) * [Generate a warning for multiple collection Includes](https://github.com/dotnet/efcore/issues/19933) * [Convert multiple equality on same column joined by Or/Else into SQL IN expression](https://github.com/dotnet/efcore/issues/20003) * [Make discriminator properties read-only be default](https://github.com/dotnet/efcore/issues/21154) * [Add an IDbContextFactory that pools context instances](https://github.com/dotnet/efcore/issues/21247) * [Cosmos: Allow PK with just the partition key](https://github.com/dotnet/efcore/issues/21396) * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-ef-core-5-rc2/) has installation instructions and full details. ## EF Core 3.1.9 EF Core 3.1.9 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.9). This is a patch release of containing only [critical bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.9+is%3Aclosed). ## EF Core 5.0 EF Core 5.0 is feature complete in the RC2 release. We are fixing bugs as they are found in the release candidates. See the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) for details. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-nav) | Done | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | Done | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | Done | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | Scoped/Done | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Scoped/Done | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | Scoped/Done | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | Done | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | Done ## Pull requests merged in the last three weeks ### Community contributions * @Marusyk [simplified the string.IsNullOrEmpty translation for SQL Server](https://github.com/dotnet/efcore/pull/23039) * @ErikEJ [implemented scaffolding table and column description as XML comments](https://github.com/dotnet/efcore/pull/22937) * @tkp1n [reduced allocation by avoiding lambda capture of cancellation token](https://github.com/dotnet/efcore/pull/23014) * @gfoidl [fixed potential torn reads in EventCounters](https://github.com/dotnet/efcore/pull/22923) * @ErikEJ [fixed an issue to floor the sequence values to long Min and Max](https://github.com/dotnet/efcore/pull/22938) * @ErikEJ [fixed an issue to accept empty and emoji column names when reverse engineering](https://github.com/dotnet/efcore/pull/22900) * @joaopgrassi [added template methods around DbConnection inside RelationalConnection](https://github.com/dotnet/efcore/pull/22849) * @jantlee [corrected "setup" noun to verb issue](https://github.com/dotnet/EntityFramework.Docs/pull/2786) * @nschonni [disabled CS0169 warning](https://github.com/dotnet/EntityFramework.Docs/pull/2779) * @nschonni [fixed the build to only build samples if files are changed](https://github.com/dotnet/EntityFramework.Docs/pull/2776) * @nschonni [added paths filtering for markdownlint CI](https://github.com/dotnet/EntityFramework.Docs/pull/2775) * @kotpal [fixed a typo in whatsnew.md](https://github.com/dotnet/EntityFramework.Docs/pull/2763) * @cincuranet [fixed indentation in code snippet](https://github.com/dotnet/EntityFramework.Docs/pull/2714) Many thanks to all our contributors! ### EF Core * Documentation * Fix [incorrect tabs in backing field docs](https://github.com/dotnet/EntityFramework.Docs/pull/2796) * Tweak [breaking-changes.md](https://github.com/dotnet/EntityFramework.Docs/pull/2790) * Replace [bold with headings in breaking changes pages](https://github.com/dotnet/EntityFramework.Docs/pull/2774) * Add [a defining query test for a view-mapped entity type](https://github.com/dotnet/EntityFramework.Docs/pull/2745) * Add [documentation for WithPartitionKey](https://github.com/dotnet/EntityFramework.Docs/pull/2766) * Use [delete instead of drop](https://github.com/dotnet/EntityFramework.Docs/pull/2771) * Tweak [NRT guidance](https://github.com/dotnet/EntityFramework.Docs/pull/2778) * Add [documentation for IEntityTypeConfiguration](https://github.com/dotnet/EntityFramework.Docs/pull/2768) * Enable [markdownlint check in CI](https://github.com/dotnet/EntityFramework.Docs/pull/2773) * Simplify [tool installation instructions](https://github.com/dotnet/EntityFramework.Docs/pull/2765) * Update [samples to .NET SDK 5.0 RC2](https://github.com/dotnet/EntityFramework.Docs/pull/2764) * State explicitly [that the in-memory database is for testing](https://github.com/dotnet/EntityFramework.Docs/pull/2675) * Enable [Dependabot for samples](https://github.com/dotnet/EntityFramework.Docs/pull/2756) * Build [samples on PRs from forks](https://github.com/dotnet/EntityFramework.Docs/pull/2755) * Document [SQL Server function mappings](https://github.com/dotnet/EntityFramework.Docs/pull/2744) * Fix [slugs](https://github.com/dotnet/EntityFramework.Docs/pull/2747) * Add [documentation for property bag entity types](https://github.com/dotnet/EntityFramework.Docs/pull/2750) * Add [documentation for Cosmos ETag configuration](https://github.com/dotnet/EntityFramework.Docs/pull/2751) * Add [documentation for excluding tables from migrations](https://github.com/dotnet/EntityFramework.Docs/pull/2749) * Add [docs for simple logging](https://github.com/dotnet/EntityFramework.Docs/pull/2740) * Document [Cosmos function mappings](https://github.com/dotnet/EntityFramework.Docs/pull/2746) * Scrub for [versions 2.1 and older](https://github.com/dotnet/EntityFramework.Docs/pull/2739) * Link to [Microsoft.Data.Sqlite docs](https://github.com/dotnet/EntityFramework.Docs/pull/2737) * Reorganize [query samples](https://github.com/dotnet/EntityFramework.Docs/pull/2742) * Update [Xamarin sample with proper linker settings](https://github.com/dotnet/EntityFramework.Docs/pull/2702) * Fix the [samples build](https://github.com/dotnet/EntityFramework.Docs/pull/2738) * Stop [spamming our alumni friends](https://github.com/dotnet/EntityFramework.Docs/pull/2736) * Document [SQLite function mappings](https://github.com/dotnet/EntityFramework.Docs/pull/2733) * Add [documentation for view mapping](https://github.com/dotnet/EntityFramework.Docs/pull/2734) * Update [instructions for installing dotnet-ef](https://github.com/dotnet/EntityFramework.Docs/pull/2709) * Update [spatial docs](https://github.com/dotnet/EntityFramework.Docs/pull/2723) * Add [savepoints docs and other improvements to "saving"](https://github.com/dotnet/EntityFramework.Docs/pull/2698) * Add [documentation for TPT configuration](https://github.com/dotnet/EntityFramework.Docs/pull/2722) * Add [documentation for many-to-many relationship configuration](https://github.com/dotnet/EntityFramework.Docs/pull/2716) * Add [documentation for required dependents](https://github.com/dotnet/EntityFramework.Docs/pull/2710) * Miscellaneous * (3.1) Include [commit SHA in AssemblyInformationalVersion value](https://github.com/dotnet/efcore/pull/22650) * (5.0) Workaround for [mono bug in GetCustomAttributes affecting Xamarin Android](https://github.com/dotnet/efcore/pull/22995) * Disable [auto-generating symbols.nupkgs](https://github.com/dotnet/efcore/pull/22861) * Bump [Microsoft.Azure.Cosmos from 3.13.0 to 3.14.0](https://github.com/dotnet/efcore/pull/22966) * Bump [IdentityServer4.EntityFramework from 4.1.0 to 4.1.1](https://github.com/dotnet/efcore/pull/22965) * Improved [exception messages](https://github.com/dotnet/efcore/pull/22519) * Alter [CI to run Rich Navigation, add new Rich Nav specific pipeline](https://github.com/dotnet/efcore/pull/22964) * SDK changes: [#23051](https://github.com/dotnet/efcore/pull/23051) [#22984](https://github.com/dotnet/efcore/pull/22984) [#22918](https://github.com/dotnet/efcore/pull/22918) * Migrations * (3.1) Fix [issue where property with value generated on add is reseeded in every migration](https://github.com/dotnet/efcore/pull/22760) * (5.0) Stop [generating string concatenation inside EXEC for SQL Server migrations](https://github.com/dotnet/efcore/pull/23005) * Change [casing in SQL Server type names: stop yelling VARCHAR!](https://github.com/dotnet/efcore/pull/22933) * Model building * (5.0) Add [validation for seed data with skip navigations](https://github.com/dotnet/efcore/pull/22908) * (5.0) Ensure [grandchildren and below are mapped to the root table when using table sharing](https://github.com/dotnet/efcore/pull/22875) * Throw when [setting the base type on an entity type that has a declared key](https://github.com/dotnet/efcore/pull/22979) * Query * Stop [printing trailing comma for enumerable constants](https://github.com/dotnet/efcore/pull/22925) * Use [aliases when doing pushdown](https://github.com/dotnet/efcore/pull/22920) * Mark [entity shaper nullable only when correct](https://github.com/dotnet/efcore/pull/22533) * Testing * Additional [regression tests for issues that have been fixed previously](https://github.com/dotnet/efcore/pull/22897) * Convert [tests to AssertQuery as much as possible](https://github.com/dotnet/efcore/pull/22994) * Add [regression test for count after client eval](https://github.com/dotnet/efcore/pull/23029) * Change tracking * (5.0) Fix [places where skip navigations are missed](https://github.com/dotnet/efcore/pull/22884) ### Microsoft.Data.Sqlite * Implement [savepoint API for Microsoft.Data.Sqlite](https://github.com/dotnet/efcore/pull/22869) ### Burn-down for EF Core 5.0

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/dotnet/efcore/blob/main/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 RC2](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-rc.2.20475.6) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.9](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 3 years ago

October 29, 2020

Expand to see status from this week...

## Highlights We want to hear from YOU! Take the [EF Core survey](https://www.surveymonkey.com/r/RX6LCPF) now! * Want a MongoDB provider? Let us know! * Issues moving from EF6? Let us know! * Using Blazor, UWP, or Windows Forms? Let us know! * Need features from the Cosmos provider? Let us know! * Trouble deploying your database? Let us know! Many people use EF Core in many different ways. Let your voice be counted and help us plan the most comprehensive, cross-platform, high-performing and feature complete version. Ever! Direct link to the survey: https://www.surveymonkey.com/r/RX6LCPF ### Community Standup Learn about database collations and EF Core 5.0 in the latest [EF Core Community Standup](https://www.youtube.com/watch?v=YF1MbSYfiRY&list=PL1rZQsJPBU2St9-Mz1Kaa7rofciyrwWVx&index=2). The [EF Core Community Standups](https://www.youtube.com/playlist?list=PL1rZQsJPBU2Ry_KbYPklhVu0JhP0kOFbj) are live-streamed about once every two weeks. This is your opportunity to interact with the EF team and others from the .NET data community. The videos are all uploaded to YouTube, so you can enjoy the goodness even if you can't join us. [Comment on GitHub](https://github.com/dotnet/efcore/issues/22700) with ideas for guests, demos, or anything else you want to see. ## EF Core 5.0 RC2 [EF Core 5.0 RC2](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-ef-core-5-rc2/) is [feature complete on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-rc.2.20475.6) with a go-live license. New features in EF Core 5.0 include: * [Many-to-many relationships](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#many-to-many) * [Map entity types to queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#map-entity-types-to-queries) * [Event counters](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#event-counters) * [Property bags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#property-bags) * [SaveChanges interception and events](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savechanges-interception-and-events) * [Exclude tables from migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-tables-from-migrations) * [Required 1:1 dependents](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#required-11-dependents) * [Options for migration generation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#options-for-migration-generation) * [Migrations scripts with transactions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-scripts-with-transactions) * [See pending migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#see-pending-migrations) * [ModelBuilder API for value comparers](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#modelbuilder-api-for-value-comparers) * [EntityEntry TryGetValue methods](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#entityentry-trygetvalue-methods) * [Default max batch size for SQL Server](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#default-max-batch-size-for-sql-server) * [Default environment to Development](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#default-environment-to-development) * [Better migrations column ordering](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#better-migrations-column-ordering) * [Translation of is on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [User-mapped functions can now be annotated to control null propagation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Support for translation of GroupBy with conditional aggregates](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Translation of Distinct operator over group element before aggregate](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Model building for fields](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#model-building-for-fields) * [Table-per-type (TPT) mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-per-type-tpt-mapping) * [Migrations: Rebuild SQLite tables](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-rebuild-sqlite-tables) * [Table-valued functions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-valued-functions) * [Flexible query/update mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flexible-queryupdate-mapping) * [Context-wide split-query configuration](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#context-wide-split-query-configuration) * [PhysicalAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#physicaladdress-mapping) * [Add FieldInfo overload for NavigationBuilder](https://github.com/dotnet/efcore/issues/21539) * [Query generation for GroupBy with OwnsOne](https://github.com/dotnet/efcore/issues/14028) * [Support join after GroupByAggregate](https://github.com/dotnet/efcore/issues/10012) * [Generate a warning for multiple collection Includes](https://github.com/dotnet/efcore/issues/19933) * [Convert multiple equality on same column joined by Or/Else into SQL IN expression](https://github.com/dotnet/efcore/issues/20003) * [Make discriminator properties read-only be default](https://github.com/dotnet/efcore/issues/21154) * [Add an IDbContextFactory that pools context instances](https://github.com/dotnet/efcore/issues/21247) * [Cosmos: Allow PK with just the partition key](https://github.com/dotnet/efcore/issues/21396) * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-ef-core-5-rc2/) has installation instructions and full details. ## EF Core 3.1.9 EF Core 3.1.9 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.9). This is a patch release of containing only [critical bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.9+is%3Aclosed). ## EF Core 5.0 EF Core 5.0 is feature complete in the RC2 release. We are fixing bugs as they are found in the release candidates. See the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) for details. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-nav) | Done | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | Done | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | Done | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | Scoped/Done | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Scoped/Done | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | Scoped/Done | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | Done | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | Done ## Pull requests merged in the last week ### Community contributions * @RaymondHuy [implemented a `[Unicode]` mapping attribute](https://github.com/dotnet/efcore/pull/22514) * @nschonni [cleaned up markdown files](https://github.com/dotnet/EntityFramework.Docs/pull/2780) * @mrlife [corrected Blog to Tag in the What's New docs](https://github.com/dotnet/EntityFramework.Docs/pull/2798) Many thanks to all our contributors! ### EF Core * Miscellaneous * Improve [exception messages](https://github.com/dotnet/efcore/pull/23080) * Bump [Microsoft.AspNetCore.OData from 7.4.1 to 7.5.1](https://github.com/dotnet/efcore/pull/23127) * Update to [Microsoft.Azure.Cosmos 3.15.0-preview](https://github.com/dotnet/efcore/pull/23120) * Update to [Microsoft.Data.SqlClient 2.1.0-preview2](https://github.com/dotnet/efcore/pull/23119) * Documentation * Split [single/split query in it's own page](https://github.com/dotnet/EntityFramework.Docs/pull/2804) * Document [design-time services](https://github.com/dotnet/EntityFramework.Docs/pull/2802) * Migrations * (5.0) Don't [omit ALTER COLUMN when old type is unknown in SQL Server Migrations](https://github.com/dotnet/efcore/pull/23084) * (5.0) Stop [scaffolding included index columns when reverse-engineering from SQL Server](https://github.com/dotnet/efcore/pull/23083) * Testing * Test [using OData](https://github.com/dotnet/efcore/pull/22367) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/dotnet/efcore/blob/main/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 RC2](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-rc.2.20475.6) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.9](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 3 years ago

November 5, 2020

Expand to see status from this week...

## Highlights See that date up there? ā˜ ā˜ ā˜ It's November! That means EF Core 5.0 is released **next week**! Join Jeremy and Shay at .NET Conf on Tuesday, November 10, 11AM PST for lots of great unicorn goodness! Can't wait? Pass the time by taking the [EF Core survey](https://www.surveymonkey.com/r/RX6LCPF) and help decide the future direction of EF Core. ## EF Core 5.0 RC2 [EF Core 5.0 RC2](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-ef-core-5-rc2/) is [feature complete on NuGet](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-rc.2.20475.6) with a go-live license. New features in EF Core 5.0 include: * [Many-to-many relationships](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#many-to-many) * [Map entity types to queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#map-entity-types-to-queries) * [Event counters](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#event-counters) * [Property bags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#property-bags) * [SaveChanges interception and events](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savechanges-interception-and-events) * [Exclude tables from migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-tables-from-migrations) * [Required 1:1 dependents](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#required-11-dependents) * [Options for migration generation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#options-for-migration-generation) * [Migrations scripts with transactions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-scripts-with-transactions) * [See pending migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#see-pending-migrations) * [ModelBuilder API for value comparers](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#modelbuilder-api-for-value-comparers) * [EntityEntry TryGetValue methods](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#entityentry-trygetvalue-methods) * [Default max batch size for SQL Server](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#default-max-batch-size-for-sql-server) * [Default environment to Development](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#default-environment-to-development) * [Better migrations column ordering](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#better-migrations-column-ordering) * [Translation of is on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [User-mapped functions can now be annotated to control null propagation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Support for translation of GroupBy with conditional aggregates](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Translation of Distinct operator over group element before aggregate](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Model building for fields](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#model-building-for-fields) * [Table-per-type (TPT) mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-per-type-tpt-mapping) * [Migrations: Rebuild SQLite tables](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-rebuild-sqlite-tables) * [Table-valued functions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-valued-functions) * [Flexible query/update mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flexible-queryupdate-mapping) * [Context-wide split-query configuration](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#context-wide-split-query-configuration) * [PhysicalAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#physicaladdress-mapping) * [Add FieldInfo overload for NavigationBuilder](https://github.com/dotnet/efcore/issues/21539) * [Query generation for GroupBy with OwnsOne](https://github.com/dotnet/efcore/issues/14028) * [Support join after GroupByAggregate](https://github.com/dotnet/efcore/issues/10012) * [Generate a warning for multiple collection Includes](https://github.com/dotnet/efcore/issues/19933) * [Convert multiple equality on same column joined by Or/Else into SQL IN expression](https://github.com/dotnet/efcore/issues/20003) * [Make discriminator properties read-only be default](https://github.com/dotnet/efcore/issues/21154) * [Add an IDbContextFactory that pools context instances](https://github.com/dotnet/efcore/issues/21247) * [Cosmos: Allow PK with just the partition key](https://github.com/dotnet/efcore/issues/21396) * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-entity-framework-core-ef-core-5-rc2/) has installation instructions and full details. ## EF Core 3.1.9 EF Core 3.1.9 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.9). This is a patch release of containing only [critical bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.9+is%3Aclosed). ## Community Standups Learn about database collations and EF Core 5.0 in the latest [EF Core Community Standup](https://www.youtube.com/watch?v=YF1MbSYfiRY&list=PL1rZQsJPBU2St9-Mz1Kaa7rofciyrwWVx&index=2). The [EF Core Community Standups](https://www.youtube.com/playlist?list=PL1rZQsJPBU2Ry_KbYPklhVu0JhP0kOFbj) are live-streamed about once every two weeks. This is your opportunity to interact with the EF team and others from the .NET data community. The videos are all uploaded to YouTube, so you can enjoy the goodness even if you can't join us. [Comment on GitHub](https://github.com/dotnet/efcore/issues/22700) with ideas for guests, demos, or anything else you want to see. ## EF Core 5.0 EF Core 5.0 is feature complete in the RC2 release. We are fixing bugs as they are found in the release candidates. See the [EF Core 5.0 plan](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan) for details. Each high-level theme for EF Core 5.0 is linked in the table below together with its current high-level status. | EF Core 5.0 Theme | Status |:------------------|------- | [Many-to-many navigation properties (a.k.a "skip navigations")](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#many-to-many-nav) | Done | [Full many-to-many support](https://github.com/dotnet/efcore/issues/10508) | Done | [Table-per-type (TPT) inheritance mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#table-per-type-tpt-inheritance-mapping) | Done | [Filtered Include](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#filtered-include) | Done | [Split Includes](https://github.com/dotnet/efcore/issues/20892) | Done | [Rationalize ToTable, ToQuery, ToView, FromSql, etc.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#rationalize-totable-toquery-toview-fromsql-etc) | Done | [General query enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-query-enhancements) | Done | [Migrations and deployment experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#migrations-and-deployment-experience) | Scoped/Done | [EF Core platforms experience](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#ef-core-platforms-experience) | Scoped/Done | [Performance](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#performance) | Scoped/Done | [Architectural/contributor documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#architecturalcontributor-documentation) | Cut | [Microsoft.Data.Sqlite documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#microsoftdatasqlite-documentation) | Done | [General documentation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#general-documentation) | In-progress | [Fixing bugs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#fixing-bugs) | Done | [Small enhancements](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/plan#small-enhancements) | Done ## Pull requests merged in the last week ### Community contributions * @ralmsdeveloper contributed [query translation for ToString on SQLite](https://github.com/dotnet/efcore/pull/19473) * @scomert contributed [query translation for Regex.IsMatch on SQLite](https://github.com/dotnet/efcore/pull/22497) Many thanks to all our contributors! ### EF Core * Documentation * [Update docs for Migrations with Multiple Providers](https://github.com/dotnet/EntityFramework.Docs/pull/2819) * [Add EntityFrameworkCore.ConfigurationManager extension](https://github.com/dotnet/EntityFramework.Docs/pull/2817) * [Document passing design-time args](https://github.com/dotnet/EntityFramework.Docs/pull/2813) * [Add note to discourage seeding of large values](https://github.com/dotnet/EntityFramework.Docs/pull/2822) * [Update breaking change on TFM in EF Core 3.1](https://github.com/dotnet/EntityFramework.Docs/pull/2828) * [Document new support for virtual/stored computed columns](https://github.com/dotnet/EntityFramework.Docs/pull/2809) * [Clarify what happens in query when local changes/added entities](https://github.com/dotnet/EntityFramework.Docs/pull/2803) * Query * [Generate false predicate when skip/take are both zero](https://github.com/dotnet/efcore/pull/23192) * [Annotate query with nullable reference types](https://github.com/dotnet/efcore/pull/23126) * [Annotate query for NRT](https://github.com/dotnet/efcore/pull/23185) * [Another pass at query NRT](https://github.com/dotnet/efcore/pull/23185) * Miscellaneous * [Re-enable xUnit analyzers](https://github.com/dotnet/efcore/pull/23194) * [Add more tests for exceptions](https://github.com/dotnet/efcore/pull/23159) * [Make Helix PreCommand more restrictive](https://github.com/dotnet/efcore/pull/23141) * Model building * [First nullability work on metadata](https://github.com/dotnet/efcore/pull/23133) * [Nullable annotations for metadata 2](https://github.com/dotnet/efcore/pull/23147) * SaveChanges * [Delimit savepoint names as identifiers](https://github.com/dotnet/efcore/pull/23036) ### Burn-down for EF Core 5.0 This is the burn-down chart we use internally to track progress towards EF Core 5.0.

Burn-down
* The gray bar at the top represents all the issues already fixed for 5.0 * The 'Closed' category only includes issues that have been fixed, not issues closed for any other reason. * The 'Fixed' category includes issues that have been fixed, but where the change has not yet been merged. * We're aiming to be feature-complete by the beginning of September. ## Builds to use * The [daily builds](https://github.com/dotnet/efcore/blob/main/docs/DailyBuilds.md) are the most up-to-date available. * Preview: [EF Core 5.0 RC2](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.0-rc.2.20475.6) * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current and LTS: [EF Core 3.1.9](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 3 years ago

November 12, 2020

Expand to see status from this week...

## Highlights EF Core 5.0 is here! The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-the-release-of-ef-core-5-0/) has full details and also favorite 5.0 feature picks from top EF folks: [@julielerman](https://github.com/julielerman), [@divega](https://github.com/divega), [@JonPSmith](https://github.com/JonPSmith), and [@ErikEJ](https://github.com/ErikEJ). More? šŸ˜² Check out #dotnetconf sessions on EF Core 5.0 from [@jeremylikness](https://github.com/jeremylikness) and [@roji](https://github.com/roji), and the EF Core Power Tools from [@ErikEJ](https://github.com/ErikEJ). Yet more? šŸ˜²šŸ˜² An EF Core 5.0 [CODE Magazine article](https://www.codemag.com/Article/2010042/EF-Core-5-Building-on-the-Foundation?utm_source=jeliknes&utm_medium=twitter&utm_campaign=link&WT.mc_id=link-twitter-jeliknes) by [@julielerman](https://github.com/julielerman). Still not enough? šŸ˜²šŸ˜²šŸ˜² Mark your calendar: A special [extended EF Core Community Standup](https://www.youtube.com/watch?v=AkqRn2vr1lc) on Wednesday, Nov 18, 10am Pacific where **all these people** join us to discuss EF Core 5.0! And if you've got time for more still...then send us a PR for something. ;-) New features in EF Core 5.0 include: * [Many-to-many relationships](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#many-to-many) * [Map entity types to queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#map-entity-types-to-queries) * [Event counters](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#event-counters) * [Property bags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#property-bags) * [SaveChanges interception and events](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savechanges-interception-and-events) * [Exclude tables from migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-tables-from-migrations) * [Required 1:1 dependents](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#required-11-dependents) * [Options for migration generation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#options-for-migration-generation) * [Migrations scripts with transactions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-scripts-with-transactions) * [See pending migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#see-pending-migrations) * [ModelBuilder API for value comparers](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#modelbuilder-api-for-value-comparers) * [EntityEntry TryGetValue methods](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#entityentry-trygetvalue-methods) * [Default max batch size for SQL Server](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#default-max-batch-size-for-sql-server) * [Default environment to Development](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#default-environment-to-development) * [Better migrations column ordering](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#better-migrations-column-ordering) * [Translation of is on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [User-mapped functions can now be annotated to control null propagation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Support for translation of GroupBy with conditional aggregates](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Translation of Distinct operator over group element before aggregate](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Model building for fields](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#model-building-for-fields) * [Table-per-type (TPT) mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-per-type-tpt-mapping) * [Migrations: Rebuild SQLite tables](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-rebuild-sqlite-tables) * [Table-valued functions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-valued-functions) * [Flexible query/update mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flexible-queryupdate-mapping) * [Context-wide split-query configuration](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#context-wide-split-query-configuration) * [PhysicalAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#physicaladdress-mapping) * [Add FieldInfo overload for NavigationBuilder](https://github.com/dotnet/efcore/issues/21539) * [Query generation for GroupBy with OwnsOne](https://github.com/dotnet/efcore/issues/14028) * [Support join after GroupByAggregate](https://github.com/dotnet/efcore/issues/10012) * [Generate a warning for multiple collection Includes](https://github.com/dotnet/efcore/issues/19933) * [Convert multiple equality on same column joined by Or/Else into SQL IN expression](https://github.com/dotnet/efcore/issues/20003) * [Make discriminator properties read-only be default](https://github.com/dotnet/efcore/issues/21154) * [Add an IDbContextFactory that pools context instances](https://github.com/dotnet/efcore/issues/21247) * [Cosmos: Allow PK with just the partition key](https://github.com/dotnet/efcore/issues/21396) * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-the-release-of-ef-core-5-0/) has installation instructions and full details. ## EF Core 3.1.10 EF Core 3.1.10 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.10). This is a patch release of containing only [critical bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.10+is%3Aclosed). ## Community Standups **Mark your calendar** On Wednesday, November 18th at 10am Pacific Time, the EF Core team will host a [special edition of the EF Core Community Standup](https://www.youtube.com/watch?v=AkqRn2vr1lc). Our special guests are pillars of the EF community [@julielerman](https://github.com/julielerman), [@divega](https://github.com/divega), [@JonPSmith](https://github.com/JonPSmith), and [@ErikEJ](https://github.com/ErikEJ). Join us for a live panel discussion about the latest features. The [EF Core Community Standups](https://www.youtube.com/playlist?list=PL1rZQsJPBU2Ry_KbYPklhVu0JhP0kOFbj) are live-streamed about once every two weeks. This is your opportunity to interact with the EF team and others from the .NET data community. The videos are all uploaded to YouTube, so you can enjoy the goodness even if you can't join us. [Comment on GitHub](https://github.com/dotnet/efcore/issues/22700) with ideas for guests, demos, or anything else you want to see. ## EF Core 6.0 We have started the planning process for EF Core 6.0. More details soon... ## Pull requests merged in the last week ### Community contributions * @fagnercarvalho [added verification for non-nullable properties saved to the in-memory database](https://github.com/dotnet/efcore/pull/23094) * @dennisseders [fixed incomplete link text](https://github.com/dotnet/EntityFramework.Docs/pull/2839) * @dennisseders [updated EF Core repo URLs with actual location](https://github.com/dotnet/EntityFramework.Docs/pull/2845) * @dennisseders [updated occurrences of ORM to O/RM](https://github.com/dotnet/EntityFramework.Docs/pull/2848) * @khalidabuhakmeh [fixed typos in the breaking changes doc](https://github.com/dotnet/EntityFramework.Docs/pull/2858) Many thanks to all our contributors! ### EF Core * Documentation * [Add links to some community standup sessions](https://github.com/dotnet/EntityFramework.Docs/pull/2834) * [Add EF Core survey as card and TOC item](https://github.com/dotnet/EntityFramework.Docs/pull/2841) * [Add a sample that uses a separate Migrations project](https://github.com/dotnet/EntityFramework.Docs/pull/2840) * [Document two breaking changes for EF Core 5.0](https://github.com/dotnet/EntityFramework.Docs/pull/2846) * [Update Cosmos cross-partition limitation](https://github.com/dotnet/EntityFramework.Docs/pull/2833) * [Update table-of-contents](https://github.com/dotnet/EntityFramework.Docs/pull/2843) * [Fixing several doc issues](https://github.com/dotnet/EntityFramework.Docs/pull/2835) * [Add note about M2M scaffolding not yet implemented](https://github.com/dotnet/EntityFramework.Docs/pull/2852) * [Docs for logging, events, and diagnostics](https://github.com/dotnet/EntityFramework.Docs/pull/2787) * [Add a note about IX-Async in client eval](https://github.com/dotnet/EntityFramework.Docs/pull/2855) * [Update no-tracking docs for identity resolution](https://github.com/dotnet/EntityFramework.Docs/pull/2854) * [Add documentation for complete discriminator mapping](https://github.com/dotnet/EntityFramework.Docs/pull/2853) * [Update releases page for 5.0](https://github.com/dotnet/EntityFramework.Docs/pull/2857) * [Add doc for indexer property](https://github.com/dotnet/EntityFramework.Docs/pull/2860) * [Update versions to 5.0](https://github.com/dotnet/EntityFramework.Docs/pull/2863) * [Fix many-to-many SQL](https://github.com/dotnet/EntityFramework.Docs/pull/2864) * [Add database functions docs](https://github.com/dotnet/EntityFramework.Docs/pull/2705) * [New docs for context creation and initialization](https://github.com/dotnet/EntityFramework.Docs/pull/2849) * Query * (3.1.11) [Add missing Ordinal to parameter StartsWith comparison](https://github.com/dotnet/efcore/pull/23052) * [Fix is operator for InMemory](https://github.com/dotnet/efcore/pull/23217) * [Add support for set operations between 2 collection navs](https://github.com/dotnet/efcore/pull/23218) * [Remove test for unsupported scenario](https://github.com/dotnet/efcore/pull/23225) * [Re-enable in-memory test for optional navigation access](https://github.com/dotnet/efcore/pull/23216) * [SqlServer: date constant in DateAdd method is always datetime](https://github.com/dotnet/efcore/pull/23215) * [Re-enable previously failing test](https://github.com/dotnet/efcore/pull/23214) * [Cosmos: Add support for char literals](https://github.com/dotnet/efcore/pull/23213) * [Cosmos: Instance can be null for member translation ](https://github.com/dotnet/efcore/pull/23204) * Model building * [Add more tests for keyless entity types](https://github.com/dotnet/efcore/pull/23195) ## Builds to use * The [daily builds](https://github.com/dotnet/efcore/blob/main/docs/DailyBuilds.md) are the most up-to-date available. * Previews: we expect the first preview of EF Core 6.0 to be available in early 2021. * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current: [EF Core 5.0.0](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) * LTS: [EF Core 3.1.10](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.10) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 3 years ago

November 19, 2020

Expand to see status from this week...

## Highlights Wow! What a couple of weeks it has been! Already more than 130,000 NuGet downloads of EF Core 5.0. Plus lots of great content on [blogs](https://devblogs.microsoft.com/dotnet/announcing-the-release-of-ef-core-5-0/), at [.NET Conf](https://www.youtube.com/watch?v=BIImyq8qaD4&list=PLdo4fOcmZ0oVWop1HEOml2OdqbDs6IlcI&index=8&t=350s), and on the [community standup](https://www.youtube.com/watch?v=AkqRn2vr1lc). This week we have been fixing issues for 5.0.1 as they are filed, working on content, and adopting C# 9 nullable reference types (NRTs). New features in EF Core 5.0 include: * [Many-to-many relationships](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#many-to-many) * [Map entity types to queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#map-entity-types-to-queries) * [Event counters](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#event-counters) * [Property bags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#property-bags) * [SaveChanges interception and events](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savechanges-interception-and-events) * [Exclude tables from migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-tables-from-migrations) * [Required 1:1 dependents](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#required-11-dependents) * [Options for migration generation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#options-for-migration-generation) * [Migrations scripts with transactions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-scripts-with-transactions) * [See pending migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#see-pending-migrations) * [ModelBuilder API for value comparers](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#modelbuilder-api-for-value-comparers) * [EntityEntry TryGetValue methods](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#entityentry-trygetvalue-methods) * [Default max batch size for SQL Server](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#default-max-batch-size-for-sql-server) * [Default environment to Development](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#default-environment-to-development) * [Better migrations column ordering](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#better-migrations-column-ordering) * [Translation of is on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [User-mapped functions can now be annotated to control null propagation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Support for translation of GroupBy with conditional aggregates](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Translation of Distinct operator over group element before aggregate](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Model building for fields](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#model-building-for-fields) * [Table-per-type (TPT) mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-per-type-tpt-mapping) * [Migrations: Rebuild SQLite tables](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-rebuild-sqlite-tables) * [Table-valued functions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-valued-functions) * [Flexible query/update mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flexible-queryupdate-mapping) * [Context-wide split-query configuration](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#context-wide-split-query-configuration) * [PhysicalAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#physicaladdress-mapping) * [Add FieldInfo overload for NavigationBuilder](https://github.com/dotnet/efcore/issues/21539) * [Query generation for GroupBy with OwnsOne](https://github.com/dotnet/efcore/issues/14028) * [Support join after GroupByAggregate](https://github.com/dotnet/efcore/issues/10012) * [Generate a warning for multiple collection Includes](https://github.com/dotnet/efcore/issues/19933) * [Convert multiple equality on same column joined by Or/Else into SQL IN expression](https://github.com/dotnet/efcore/issues/20003) * [Make discriminator properties read-only be default](https://github.com/dotnet/efcore/issues/21154) * [Add an IDbContextFactory that pools context instances](https://github.com/dotnet/efcore/issues/21247) * [Cosmos: Allow PK with just the partition key](https://github.com/dotnet/efcore/issues/21396) * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-the-release-of-ef-core-5-0/) has installation instructions and full details. ## EF Core 3.1.10 EF Core 3.1.10 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.10). This is a patch release of containing only [critical bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.10+is%3Aclosed). ## Community Standups We had great fun at the last community standup--a special edition with pillars of the EF community: [@julielerman](https://github.com/julielerman), [@divega](https://github.com/divega), [@JonPSmith](https://github.com/JonPSmith), and [@ErikEJ](https://github.com/ErikEJ). Each of our guests shared their favorite feature of EF Core 5.0, as well as great chat and maybe some cake. If you missed it live, then there's still chance to [catch the recording on YouTube](https://www.youtube.com/watch?v=AkqRn2vr1lc). us to discuss EF Core 5.0! The [EF Core Community Standups](https://www.youtube.com/playlist?list=PL1rZQsJPBU2Ry_KbYPklhVu0JhP0kOFbj) are live-streamed about once every two weeks. This is your opportunity to interact with the EF team and others from the .NET data community. The videos are all uploaded to YouTube, so you can enjoy the goodness even if you can't join us. [Comment on GitHub](https://github.com/dotnet/efcore/issues/22700) with ideas for guests, demos, or anything else you want to see. ## EF Core 6.0 We have started the planning process for EF Core 6.0. More details soon... ## Pull requests merged in the last week ### Community contributions * @umitkavala made a fix to [unset EnableContentResponseOnWrite](https://github.com/dotnet/efcore/pull/23322) * @leonardoporro added [Detached Mapper to the external extensions docs](https://github.com/dotnet/EntityFramework.Docs/pull/2883) Many thanks to all our contributors! ### EF Core * Query * (5.0.1) [Match types in conditional during client evaluation](https://github.com/dotnet/efcore/pull/23323) * (5.0.1) [Don't clear projection mapping when adding single projection](https://github.com/dotnet/efcore/pull/23299) * (5.0.1) [Pushdown into subquery when applying group by over a group by](https://github.com/dotnet/efcore/pull/23297) * (5.0.1) [Properly generate expression to read from BufferedDataReader](https://github.com/dotnet/efcore/pull/23295) * (5.0.1) [InMemory: Copy correct value buffer data when doing LeftJoin](https://github.com/dotnet/efcore/pull/23292) * (5.0.1) [Correctly compute ordering to be copied from outer in collection join](https://github.com/dotnet/efcore/pull/23273) * (5.0.1) [Generate predicate correctly when expanding owned collections](https://github.com/dotnet/efcore/pull/23143) * [Improve optimization of "false==(expr)](https://github.com/dotnet/efcore/pull/23239) * [SQLite: Add glob, hex & substr functions](https://github.com/dotnet/efcore/pull/23182) * [Sqlite: Translate char.ToLower and ToUpper](https://github.com/dotnet/efcore/pull/23160) * [Assign nullability to entity shaper correctly for set operations](https://github.com/dotnet/efcore/pull/23227) * [Merge sync/async query tests into one](https://github.com/dotnet/efcore/pull/23383) * [Remove QueryFailed](https://github.com/dotnet/efcore/pull/23382) * [Enabled tests marked with sqlite bug](https://github.com/dotnet/efcore/pull/23384) * [Function and parameter names flipped for DbFunctionInvalidParameterName](https://github.com/dotnet/efcore/pull/23371) * [Add regression tests to several bugs that were fixed previously](https://github.com/dotnet/efcore/pull/23321) * Miscellaneous * (5.0.1) [Clear events when DbContext is disposed or returned to the pool](https://github.com/dotnet/efcore/pull/23288) * [Update codebase to use .NET 5 and C# 9](https://github.com/dotnet/efcore/pull/23296) * [Convert dependency objects to records](https://github.com/dotnet/efcore/pull/23376) * [Fix build break](https://github.com/dotnet/efcore/pull/23392) * [Allow missing headers and doc comments in developer builds](https://github.com/dotnet/efcore/pull/23324) * [Bump Microsoft.AspNetCore.OData from 7.5.1 to 7.5.2](https://github.com/dotnet/efcore/pull/23341) * Documentation * [Adjust highlight in m2m sample](https://github.com/dotnet/EntityFramework.Docs/pull/2866) * [Improve consistency when specifying when a feature was introduced](https://github.com/dotnet/EntityFramework.Docs/pull/2870) * [Add warning about savepoints not working on SQL Server with MARS](https://github.com/dotnet/EntityFramework.Docs/pull/2869) * [Added example for using single Include/ThenInclude method call to load multiple navigations](https://github.com/dotnet/EntityFramework.Docs/pull/2878) * [Remove EF Core Survey link](https://github.com/dotnet/EntityFramework.Docs/pull/2876) * SaveChanges * (5.0.1) [Disable savepoints on SQL Server when MARS is enabled](https://github.com/dotnet/efcore/pull/23305) * (5.0.1) [Use topological sort to detect identifying relationship cycles](https://github.com/dotnet/efcore/pull/23320) * (5.0.1) [Only accept non-default store-generated values](https://github.com/dotnet/efcore/pull/23186) * (5.0.1) [Generate the correct overload for excluding tables for owned types](https://github.com/dotnet/efcore/pull/23178) * Scaffolding * (5.0.1) [Call correct overload of HasIndex when scaffolding constraints without name](https://github.com/dotnet/efcore/pull/23277) * (3.1.11) [Disable NRTs in scaffolding](https://github.com/dotnet/efcore/pull/23060) * [Scaffold HasCollation instead of HasComment](https://github.com/dotnet/efcore/pull/23388) * Model building * (5.0.1) [Use default schema for view mappings](https://github.com/dotnet/efcore/pull/23278) * (5.0.1) [Fix issues with property called FooId on base type Foo in TPT](https://github.com/dotnet/efcore/pull/23112) * [Change some metadata extension methods into DIM properties and annotate for nullability](https://github.com/dotnet/efcore/pull/23361) * Migrations * (5.0.1) [Handle Z and M in spatial columns for SQLite migrations](https://github.com/dotnet/efcore/pull/23298) ### Microsoft.Data.Sqlite * (5.0.1) [Don't force decryption when password unset](https://github.com/dotnet/efcore/pull/23290) ## Builds to use * The [daily builds](https://github.com/dotnet/efcore/blob/main/docs/DailyBuilds.md) are the most up-to-date available. * Previews: we expect the first preview of EF Core 6.0 to be available in early 2021. * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current: [EF Core 5.0.0](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) * LTS: [EF Core 3.1.10](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.10) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.

ajcvickers commented 3 years ago

December 10, 2020

Expand to see status from this week...

## Highlights It's been a busy year! 5.0.0 has been out for a month and is going strong; **610,671** NuGet downloads so far! Building on this, 5.0.1 is [on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.1) with [26 important bug fixes](https://github.com/dotnet/efcore/releases/tag/v5.0.1)! This will be the last weekly update of the year; we'll come back in January with the plan for EF Core 6.0. Many thanks for all the contributions, feedback, and support from the community this year. You folks are awesome! Thanks for reading! ## EF Core 5.0.1 The first patch of EF Core 5.0 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/5.0.1). This release builds on all the features shipped in EF Core 5.0 with [26 important bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A5.0.1+is%3Aclosed). ## EF Core 5.0.0 New features in EF Core 5.0 include: * [Many-to-many relationships](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#many-to-many) * [Map entity types to queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#map-entity-types-to-queries) * [Event counters](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#event-counters) * [Property bags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#property-bags) * [SaveChanges interception and events](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savechanges-interception-and-events) * [Exclude tables from migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-tables-from-migrations) * [Required 1:1 dependents](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#required-11-dependents) * [Options for migration generation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#options-for-migration-generation) * [Migrations scripts with transactions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-scripts-with-transactions) * [See pending migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#see-pending-migrations) * [ModelBuilder API for value comparers](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#modelbuilder-api-for-value-comparers) * [EntityEntry TryGetValue methods](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#entityentry-trygetvalue-methods) * [Default max batch size for SQL Server](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#default-max-batch-size-for-sql-server) * [Default environment to Development](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#default-environment-to-development) * [Better migrations column ordering](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#better-migrations-column-ordering) * [Translation of is on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [User-mapped functions can now be annotated to control null propagation](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Support for translation of GroupBy with conditional aggregates](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Translation of Distinct operator over group element before aggregate](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-improvements) * [Model building for fields](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#model-building-for-fields) * [Table-per-type (TPT) mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-per-type-tpt-mapping) * [Migrations: Rebuild SQLite tables](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#migrations-rebuild-sqlite-tables) * [Table-valued functions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#table-valued-functions) * [Flexible query/update mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flexible-queryupdate-mapping) * [Context-wide split-query configuration](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#context-wide-split-query-configuration) * [PhysicalAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#physicaladdress-mapping) * [Add FieldInfo overload for NavigationBuilder](https://github.com/dotnet/efcore/issues/21539) * [Query generation for GroupBy with OwnsOne](https://github.com/dotnet/efcore/issues/14028) * [Support join after GroupByAggregate](https://github.com/dotnet/efcore/issues/10012) * [Generate a warning for multiple collection Includes](https://github.com/dotnet/efcore/issues/19933) * [Convert multiple equality on same column joined by Or/Else into SQL IN expression](https://github.com/dotnet/efcore/issues/20003) * [Make discriminator properties read-only be default](https://github.com/dotnet/efcore/issues/21154) * [Add an IDbContextFactory that pools context instances](https://github.com/dotnet/efcore/issues/21247) * [Cosmos: Allow PK with just the partition key](https://github.com/dotnet/efcore/issues/21396) * [Register a factory for DbContext instances in D.I.](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#dbcontextfactory) * [Clear all tracked entities to reset DbContext state](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#reset-dbcontext-state) * [New pattern for store-generated defaults](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-pattern-for-store-generated-defaults) * [Better support for Cosmos partition keys](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New Cosmos configuration options](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-configuration) * [Scaffold-DbContext now singularizes](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#scaffold-dbcontext-now-singularizes) * [Support for database savepoints](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#savepoints) * [Split queries for Include and projection of collections](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#split-queries-with-include) * [IndexAttribute](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexattribute) * [Improved query translation exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-query-translation-exceptions) * [Application-specified transaction IDs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-transaction-id) * [IPAddress mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#ipaddress-mapping) * [Option to exclude OnConfiguring when scaffolding](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#exclude-onconfiguring-when-scaffolding) * [Translations for FirstOrDefault, etc. on strings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#translations-for-firstordefault-on-strings) * [Simplification of case blocks in generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simplify-case-blocks) * [Database collations](https://docs.microsoft.com/ef/core/miscellaneous/collations-and-case-sensitivity) * [Flow arguments into IDesignTimeDbContextFactory](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#flow-arguments-into-idesigntimedbcontextfactory) * [No-tracking queries with identity resolution](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#no-tracking-queries-with-identity-resolution) * [Stored (persisted) computed columns](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#stored-persisted-computed-columns) * [SQLite computed columns](https://docs.microsoft.com/ef/core/modeling/generated-properties?tabs=data-annotations) * [Configure database precision/scale in model](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#configure-database-precisionscale-in-model) * [Specify SQL Server index fill factor](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#specify-sql-server-index-fill-factor) * [Filtered Include](https://docs.microsoft.com/ef/core/querying/related-data#filtered-include) * [Command-line parameters for namespaces when scaffolding a DbContext or generating migrations](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [Command-line support for passing a connection string to [dotnet ef database update]/[Update-Database]](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-command-line-parameters-for-namespaces-and-connection-strings) * [EnableDetailedErrors provides more information in query mapping exceptions](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enabledetailederrors-has-returned) * [Improved support for using Cosmos partition keys in queries](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-partition-keys) * [New ModelBuilder API for navigation properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#new-modelbuilder-api-for-navigation-properties) * [Support for the SQL Server DATALENGTH function](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#support-for-the-sql-server-datalength-function) * [Use a C# attribute to specify a property backing field](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-specify-a-property-backing-field) * [Complete discriminator mapping](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#complete-discriminator-mapping) * [Performance improvements in Microsoft.Data.Sqlite](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#performance-improvements-in-microsoftdatasqlite) * [Simple Logging](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-logging) * [Simple way to get generated SQL](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#simple-way-to-get-generated-sql) * [Use a C# attribute to indicate that an entity has no key](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#use-a-c-attribute-to-indicate-that-an-entity-has-no-key) * [Connection or connection string can be changed on initialized DbContext](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#connection-or-connection-string-can-be-changed-on-initialized-dbcontext) * [Change-tracking proxies](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#change-tracking-proxies) * [Enhanced debug views](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#enhanced-debug-views) * [Improved handling of database null semantics](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#improved-handling-of-database-null-semantics) * [Indexer properties](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#indexer-properties) * [Generation of check constraints for enum mappings](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#generation-of-check-constraints-for-enum-mappings) * [IsRelational method for differential model building](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#isrelational) * [Cosmos optimistic concurrency with ETags](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#cosmos-optimistic-concurrency-with-etags) * [Query translations for more DateTime constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-datetime-constructs) * [Query translations for more byte array constructs](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translations-for-more-byte-array-constructs) * [Query translation for Reverse](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-reverse) * [Query translation for bitwise operators](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-bitwise-operators) * [Query translation for strings on Cosmos](https://docs.microsoft.com/ef/core/what-is-new/ef-core-5.0/whatsnew#query-translation-for-strings-on-cosmos) The [.NET Blog announcement](https://devblogs.microsoft.com/dotnet/announcing-the-release-of-ef-core-5-0/) has installation instructions and full details. ## EF Core 3.1.10 EF Core 3.1.10 is [available on NuGet now](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.10). This is a patch release of containing only [critical bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A3.1.10+is%3Aclosed). ## Community Standups In case you missed it, check out the [latest EF community standup](https://www.youtube.com/watch?v=notUk3yR0mc&list=PLdo4fOcmZ0oX-DBuRG4u58ZTAJgBAeQ-t&index=4) in which we welcome guest Frans Bouma, who showed us how to graphically model a domain for any .NET ORM with the LLBLGen Pro designer. Frans is also a venerable .NET data and SqlServer figure, so we also chatted a bit about history and what's it's been like to make a commercial ORM in the Microsoft world. The [EF Core Community Standups](https://www.youtube.com/playlist?list=PL1rZQsJPBU2Ry_KbYPklhVu0JhP0kOFbj) are live-streamed about once every two weeks. This is your opportunity to interact with the EF team and others from the .NET data community. The videos are all uploaded to YouTube, so you can enjoy the goodness even if you can't join us. [Comment on GitHub](https://github.com/dotnet/efcore/issues/22700) with ideas for guests, demos, or anything else you want to see. ## EF Core 6.0 We are close to sharing a plan for EF Core 6.0. More details soon... ## Pull requests merged in the last few weeks ### Community contributions * @nmichels [added Default Timeout connection string keyword](https://github.com/dotnet/efcore/pull/23091) * (5.0.2) @CaringDev [added quoting for FROM table identifier when rewriting](https://github.com/dotnet/efcore/pull/23585) * @meggima [fixed missing event source logging](https://github.com/dotnet/efcore/pull/23605) * @KaloyanIT [implemented EntityTypeConfiguration annotation](https://github.com/dotnet/efcore/pull/23563) * @filipnavara [fixed SqliteDataRecord.GetStream on attached databases](https://github.com/dotnet/efcore/pull/23591) * @the-wazz [updated Migration.cs for typos/spelling](https://github.com/dotnet/efcore/pull/23551) * @josemiltonsampaio [fixed spelling in whatsnew.md](https://github.com/dotnet/EntityFramework.Docs/pull/2927) * @natashanikolic [fixed a typo in index.md](https://github.com/dotnet/EntityFramework.Docs/pull/2920) * @koenbeuk [added extension EntityFrameworkCore.Triggered](https://github.com/dotnet/EntityFramework.Docs/pull/2921) * @dan-giddins [added clarity to Entity Framework Core tools reference page](https://github.com/dotnet/EntityFramework.Docs/pull/2910) * @msawczyn [updated Entity Framework Visual Editor to add EFCore 5](https://github.com/dotnet/EntityFramework.Docs/pull/2917) * @MaxG117 [updated Teradata.EntityFrameworkCore to version 3.1](https://github.com/dotnet/EntityFramework.Docs/pull/2898) * @MSDN-WhiteKnight [formatted identifiers as code](https://github.com/dotnet/EntityFramework.Docs/pull/2887) * @ErikEJ [updated with support for EF Core 5](https://github.com/dotnet/EntityFramework.Docs/pull/2897) * @HSchwichtenberg [fixed typo: pluarlizer->pluralizer](https://github.com/dotnet/EntityFramework.Docs/pull/2894) Many thanks to all our contributors! ### EF Core * Miscellaneous * [Remove EF Core 5.0 daily build feed](https://github.com/dotnet/efcore/pull/23539) * [Remove .rd.xml files](https://github.com/dotnet/efcore/pull/23578) * [Enable nullable reference types in auto-generated code](https://github.com/dotnet/efcore/pull/23576) * [Reenable/remove flaky tests](https://github.com/dotnet/efcore/pull/23506) * [Added testing for various negative cases](https://github.com/dotnet/efcore/pull/23481) * [Create GraphUpdatesTests for owned entities](https://github.com/dotnet/efcore/pull/23212) * [Remove delta flaky test/Fix build break](https://github.com/dotnet/efcore/pull/23463) * [Bump Microsoft.Azure.Cosmos from 3.15.0-preview to 3.15.0](https://github.com/dotnet/efcore/pull/23433) * [Bump Microsoft.Data.SqlClient from 2.1.0-preview2.20297.7 to 2.1.0](https://github.com/dotnet/efcore/pull/23434) * Query * [Throw error for translating Lambda right away](https://github.com/dotnet/efcore/pull/23483) * [Add regression test for #21003](https://github.com/dotnet/efcore/pull/23480) * [Test: Implement entity sorters/asserts for Spatial test base](https://github.com/dotnet/efcore/pull/23466) * (5.0.1) [Don't terminate translation if indexer method does not bind to indexer property](https://github.com/dotnet/efcore/pull/23420) * (5.0.1) [Add null check in hash computation in SqlFunctionExpression](https://github.com/dotnet/efcore/pull/23350) * [InMemory: Add translation for object.Equals when object is null](https://github.com/dotnet/efcore/pull/23391) * [Annotate IsNiladic for nullability on Arguments](https://github.com/dotnet/efcore/pull/23409) * Documentation * [Link to version 5.0 of the API reference docs](https://github.com/dotnet/EntityFramework.Docs/pull/2908) * [Revert making saving samples async](https://github.com/dotnet/EntityFramework.Docs/pull/2882) * [Document comments](https://github.com/dotnet/EntityFramework.Docs/pull/2893) * [Update providers to version 5.0](https://github.com/dotnet/EntityFramework.Docs/pull/2912) * [Run Github Actions on Ubuntu 20.04](https://github.com/dotnet/EntityFramework.Docs/pull/2911) * [Documentation for event counters](https://github.com/dotnet/EntityFramework.Docs/pull/2881) * Model building * [Fixup for EntityTypeConfiguration attribute](https://github.com/dotnet/efcore/pull/23622) * [Use shared-type entity types instead of entity types with defining navigation](https://github.com/dotnet/efcore/pull/23586) * (5.0.1) [Avoid stack overflow in negative many-to-many cases](https://github.com/dotnet/efcore/pull/23455) * [Annotate metadata for nullability, leaving only builders and conventions](https://github.com/dotnet/efcore/pull/23381) * Cosmos * [Use logging infrastructure on Cosmos](https://github.com/dotnet/efcore/pull/23517) * [Interfaces for CosmosClientWrapper and SingletonCosmosClientWrapper](https://github.com/dotnet/efcore/pull/23508) * [Enable OptimisticConcurrencyTest on Cosmos](https://github.com/dotnet/efcore/pull/23326) * [Apply projection in post processor](https://github.com/dotnet/efcore/pull/23412) * Scaffolding * [Warn for FK with same required facets exists and skip it](https://github.com/dotnet/efcore/pull/23484) * (5.0.1) [Ignore column store index](https://github.com/dotnet/efcore/pull/23421) * (5.0.1) [Fix collation scaffolding](https://github.com/dotnet/efcore/pull/23414). Also [#23388](https://github.com/dotnet/efcore/pull/23388). * Migrations * (5.0.1) [Skip DbFunctionAttributeConvention when creating model for history repository](https://github.com/dotnet/efcore/pull/23452) ### Microsoft.Data.Sqlite * [Enable GetFieldValue() and TextReader](https://github.com/dotnet/efcore/pull/23609) * [Enable nullable reference types](https://github.com/dotnet/efcore/pull/23549) ## Builds to use * The [daily builds](https://github.com/dotnet/efcore/blob/main/docs/DailyBuilds.md) are the most up-to-date available. * Previews: we expect the first preview of EF Core 6.0 to be available in early 2021. * Using the daily builds or previews is a great way to find issues and provide feedback as early as possible. The sooner we get such feedback, the more likely it will be actionable before the next official release. * Current: [EF Core 5.0.1](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/) * LTS: [EF Core 3.1.10](https://www.nuget.org/packages/Microsoft.EntityFrameworkCore/3.1.10) ## Releases See [EF Core releases and planning (Roadmap)](https://docs.microsoft.com/ef/core/what-is-new/) in our documentation for full details. ## More Information See the top of this issue for links to more information. Comments are disabled on this issue to reduce noise. Please use [the related discussion issue](https://github.com/aspnet/EntityFrameworkCore/issues/15404) for any comments on these status updates.