-
Notifications
You must be signed in to change notification settings - Fork 4.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Artifacts for .NET 9.0 Preview 3 Release (#9268)
* Artifacts for .NET 9.0 Preview 3 Release * Update releases-index.json
- Loading branch information
Showing
17 changed files
with
1,951 additions
and
14 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
# .NET 9 Preview 3 - Release Notes | ||
|
||
.NET 9 Preview 3 released on April 11th, 2024. Find more information on new features released in .NET 9 Preview 3 by browsing through the release notes below: | ||
|
||
* [Libraries](libraries.md) | ||
* [Runtime](./runtime.md) | ||
* [SDK](./sdk.md) | ||
|
||
### Feature Release Notes | ||
|
||
* [.NET Data and EF Core](./efcoreanddata.md) | ||
* [.NET MAUI](./dotnetmaui.md) | ||
* [ASP.NET Core](./aspnetcore.md) | ||
|
||
## Get Started | ||
|
||
Instructions on getting started with .NET 9 can be found in the [getting started guide](../../get-started.md). Installers and binaries for .NET 9 Preview 3 can be found [here on GitHub](./9.0.0-preview.3.md). | ||
|
||
|
||
## Stay up-to-date | ||
|
||
You can find a detailed overview of all new features in .NET 9: | ||
|
||
* [What's new in .NET 9](https://learn.microsoft.com/dotnet/core/whats-new/dotnet-9/overview) | ||
* [What's new in ASP.NET Core](https://learn.microsoft.com/aspnet/core/release-notes/aspnetcore-9.0) | ||
* [What's new in .NET MAUI](https://learn.microsoft.com/dotnet/maui/whats-new/dotnet-9) | ||
* [What's new in EF Core](https://learn.microsoft.com/ef/core/what-is-new/ef-core-9.0/whatsnew) | ||
|
||
The latest .NET 9 release is always available at [dotnet.microsoft.com](https://dotnet.microsoft.com/download/dotnet/9.0) and [.NET 9 Releases](../../README.md). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,63 @@ | ||
# ASP.NET Core in .NET 9 Preview 3 - Release Notes | ||
|
||
Here's a summary of what's new in ASP.NET Core in this preview release: | ||
|
||
- Endpoint metadata on the developer exception page | ||
- Added `InternalServerError` and `InternalServerError<TValue>` to `TypedResults` | ||
- Handle keyboard composition events in Blazor | ||
|
||
ASP.NET Core updates in .NET 9 Preview 3: | ||
|
||
- [What's new in ASP.NET Core in .NET 9](https://learn.microsoft.com/aspnet/core/release-notes/aspnetcore-9.0) documentation. | ||
- [Breaking changes](https://docs.microsoft.com/dotnet/core/compatibility/9.0#aspnet-core) | ||
- [Roadmap](https://aka.ms/aspnet/roadmap) | ||
|
||
.NET 9 Preview 3: | ||
|
||
- [Discussion](https://aka.ms/dotnet/9/preview3) | ||
- [Release notes](./README.md) | ||
|
||
## Endpoint metadata on the developer exception page | ||
|
||
ASP.NET Core endpoints have associated metadata that can be used for a variety of purposes, like configuring routing, authentication and authorization, response caching, rate limiting, OpenAPI generation, and much more. The Routing tab of the ASP.NET Core [developer exception page](https://learn.microsoft.com/aspnet/core/fundamentals/error-handling#developer-exception-page) now desplays endpoint metadata alongside other routing information to facilitate debugging. | ||
|
||
![image](media/aspnetcore-dev-page-endpoint-metadata.png) | ||
|
||
Thank you [@Kahbazi](https://github.com/Kahbazi) for this contribution! | ||
|
||
## Added `InternalServerError` and `InternalServerError<TValue>` to `TypedResults` | ||
|
||
`TypedResults` are a helpful vehicle for returning strongly-typed HTTP status code-based responses from a minimal API. The `TypedResults` class now includes factory methods and types for returning "500 Internal Server Error" responses from your endpoints. | ||
|
||
```csharp | ||
var app = WebApplication.Create(); | ||
|
||
app.MapGet("/", () => TypedResults.InternalServerError("Something went wrong!")); | ||
|
||
app.Run(); | ||
``` | ||
|
||
Thank you [@onurmicoogullari](https://github.com/onurmicoogullari) for this contribution! | ||
|
||
## Handle keyboard composition events in Blazor | ||
|
||
The new `KeyboardEventArgs.IsComposing` property indicates if the keyboard event [is part of a composition session](https://w3c.github.io/uievents/#dom-keyboardevent-iscomposing). This is useful for tracking the composition state of keyboard events, which is crucial for handling international character input methods. | ||
|
||
Thank you [@BattlefieldDuck](https://github.com/BattlefieldDuck) for this contribution! | ||
|
||
## Community contributors | ||
|
||
Thank you contributors! ❤️ | ||
|
||
- [omajid](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A9.0-preview3+author%3Aomajid) | ||
- [tcortega](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A9.0-preview3+author%3Atcortega) | ||
- [marcin-burak](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A9.0-preview3+author%3Amarcin-burak) | ||
- [BattlefieldDuck](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A9.0-preview3+author%3ABattlefieldDuck) | ||
- [JamieMagee](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A9.0-preview3+author%3AJamieMagee) | ||
- [khellang](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A9.0-preview3+author%3Akhellang) | ||
- [MythoclastBM](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A9.0-preview3+author%3AMythoclastBM) | ||
- [merijndejonge](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A9.0-preview3+author%3Amerijndejonge) | ||
- [onurmicoogullari](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A9.0-preview3+author%3Aonurmicoogullari) | ||
- [johatuni](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A9.0-preview3+author%3Ajohatuni) | ||
- [andrewjsaid](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A9.0-preview3+author%3Aandrewjsaid) | ||
- [Kahbazi](https://github.com/dotnet/aspnetcore/pulls?q=is%3Apr+is%3Amerged+milestone%3A9.0-preview3+author%3AKahbazi) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,77 @@ | ||
# .NET MAUI in .NET 9 Preview 3 - Release Notes | ||
|
||
The team is continuing work on core fundamentals of the .NET MAUI SDK to improve overall product quality. This includes expanding test coverage, end to end scenario testing, and bug fixing. | ||
|
||
Here's a summary of what's new in .NET MAUI in this preview release: | ||
|
||
- Multi-target versions of .NET for iOS bindings | ||
- Android Asset Packs | ||
|
||
.NET MAUI updates in .NET 9 Preview 3: | ||
|
||
* [What's new in .NET MAUI in .NET 9](https://learn.microsoft.com/dotnet/maui/whats-new/dotnet-9) documentation | ||
* [GitHub Release](https://aka.ms/maui9p3) | ||
|
||
.NET 9 Preview 3: | ||
* [Discussion](https://aka.ms/dotnet/9/preview3) | ||
* [Release notes](./README.md) | ||
|
||
## .NET for Android | ||
|
||
### Asset packs | ||
|
||
.NET Android 9 Preview 3 introduces the ability to place assets into a separate package, known as an *asset pack*. This enables you to upload games and apps that would normally be larger than the basic package size allowed by Google Play. By putting these assets into a separate package you gain the ability to upload a package which is up to 2Gb in size, rather than the basic package size of 200Mb. | ||
|
||
> [!IMPORTANT] | ||
> Asset packs can only contain assets. In the case of .NET Android this means items that have the `AndroidAsset` build action. | ||
.NET MAUI apps define assets via the `MauiAsset` build action. An asset pack can be specified via the `AssetPack` attribute: | ||
|
||
```xml | ||
<MauiAsset | ||
Include="Resources\Raw\**" | ||
LogicalName="%(RecursiveDir)%(Filename)%(Extension)" | ||
AssetPack="myassetpack" /> | ||
``` | ||
|
||
> [!NOTE] | ||
> The additional metadata will be ignored by other platforms. | ||
If you have specific items you want to place in an asset pack you can use the `Update` attribute to define the `AssetPack` metadata: | ||
|
||
```xml | ||
<MauiAsset Update="Resources\Raw\MyLargeAsset.txt" AssetPack="myassetpack" /> | ||
``` | ||
|
||
Asset packs can have different delivery options, which control when your assets will install on the device: | ||
|
||
- Install time packs are installed at the same time as the app. This pack type can be up to 1Gb in size, but you can only have one of them. This delivery type is specified with `InstallTime` metadata. | ||
- Fast follow packs will install at some point shortly after the app has finished installing. The app will be able to start while this type of pack is being installed so you should check it has finished installing before trying to use the assets. This kind of asset pack can be up to 512Mb in size. This delivery type is specified with `FastFollow` metadata. | ||
- On demand packs will never be downloaded to the device unless the app specifically requests it. The total size of all your asset packs can't exceed 2Gb, and you can have up to 50 separate asset packs. This delivery type is specified with `OnDemand` metadata. | ||
|
||
In .NET MAUI apps, the delivery type can be specified with the `DeliveryType` attribute on a `MauiAsset`: | ||
|
||
```xml | ||
<MauiAsset Update="Resources\Raw\myvideo.mp4" AssetPack="myassetpack" DeliveryType="FastFollow" /> | ||
``` | ||
|
||
- [Android Asset Packs](https://github.com/xamarin/xamarin-android/blob/main/Documentation/guides/AndroidAssetPacks.md) | ||
- [GitHub Release](https://github.com/xamarin/xamarin-android/releases/) | ||
|
||
## .NET for iOS | ||
|
||
Projects can now multi-target versions of .NET for iOS bindings. For example, a library project may need to build for 2 distinct versions. | ||
|
||
```xml | ||
<TargetFrameworks>net9.0-ios17.0;net9.0-ios17.2</TargetFrameworks> | ||
``` | ||
|
||
This will produce 2 libraries, one using iOS 17.0 bindings, and one using iOS 17.2 bindings. An app project should always target the latest iOS SDK. | ||
|
||
- [Multi-targeting iOS](https://github.com/xamarin/xamarin-macios/blob/main/docs/multi-target-framework.md) documentation | ||
- [GitHub Release](https://github.com/xamarin/xamarin-macios/releases/) | ||
- [Known issues](https://github.com/xamarin/xamarin-macios/wiki/Known-issues-in-.NET9) | ||
|
||
## Community Contributions | ||
|
||
Thanks to contributors [@wcoder](https://github.com/wcoder), [@rpendleton](https://github.com/rpendleton), [@filipnavara](https://github.com/filipnavara), [@snechaev](https://github.com/snechaev), [@symbiogenesis](https://github.com/symbiogenesis), [@bradencohen](https://github.com/bradencohen), [@licon4812](https://github.com/licon4812), [@kubaflo](https://github.com/kubaflo). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
# Entity Framework Core 9 Preview 3 - Release Notes | ||
|
||
Here's a summary of what's new in Entity Framework Core in this preview release: | ||
|
||
- Auto-compiled models | ||
- Sugar for `HierarchyId` path generation | ||
|
||
Entity Framework Core 9: | ||
|
||
- [What's new in Entity Framework Core](https://learn.microsoft.com/ef/core/what-is-new/ef-core-9.0/whatsnew) documentation. | ||
- [Discussion](https://github.com/dotnet/efcore/issues/33030) | ||
|
||
.NET 9 Preview 3: | ||
|
||
- [Discussion](https://aka.ms/dotnet/9/preview3) | ||
- [Release notes](./README.md) | ||
|
||
|
||
## Auto-compiled models | ||
Auto-compiled models allow the [EF Core compiled model](https://learn.microsoft.com/ef/core/performance/advanced-performance-topics#compiled-models) to be automatically regenerated when the model project is built. This means you no longer need to remember to re-run the `dotnet ef dbcontext optimize` command after your EF model changes. See [Auto-compiled models](https://learn.microsoft.com/ef/core/what-is-new/ef-core-9.0/whatsnew#auto-compiled-models) in the _What's New_ docs for more information. | ||
|
||
## Sugar for `HierarchyId` path generation | ||
First class support for the SQL Server `HierarchyId` type was [added in EF8](https://learn.microsoft.com/ef/core/providers/sql-server/hierarchyid). In EF9, a sugar method has been added to make it easier to create new child nodes in the tree structure. See [Sugar for HierarchyId path generation](https://learn.microsoft.com/ef/core/what-is-new/ef-core-9.0/whatsnew#hierarchyid-path-generation) in the _What's New_ docs for more information. | ||
|
||
## Everything else in Preview 3 | ||
Preview 3 contains: | ||
|
||
* [6 enhancements](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A9.0.0-preview3+is%3Aclosed+label%3Atype-enhancement+) | ||
* [5 bug fixes](https://github.com/dotnet/efcore/issues?q=is%3Aissue+milestone%3A9.0.0-preview3+is%3Aclosed+label%3Atype-bug) | ||
|
||
EF Core 9 preview 3 (and Microsoft.Data.Sqlite) contains work from the EF Team at Microsoft (@roji @AndriySvyryd @maumar @ajcvickers @cincuranet @SamMonoRT @luisquintanilla) as well as contributions from the EF Core community. The community PRs in EF9 Preview 3 are: | ||
|
||
* @lauxjpn: [Cleanup duplicate tests (same test ID)](https://github.com/dotnet/efcore/pull/33185) | ||
* @clement911: [Fixed typo in getting-and-building-the-code.md](https://github.com/dotnet/efcore/pull/33166) | ||
* @Rezakazemi890: [32943-Sugar for HierarchyId path generation](https://github.com/dotnet/efcore/pull/33062) | ||
* @lauxjpn: [Change Where_math(f)_log_new_base queries, so they fail if LOG() parameters are swapped](https://github.com/dotnet/efcore/pull/33342) | ||
* @SteSinger: [33196 command timeout allow zero](https://github.com/dotnet/efcore/pull/33198) |
Oops, something went wrong.