Skip to content

Commit 32e794c

Browse files
jongallowayT-Groadegeorojibaronfel
authored
Add release notes for .NET 10 RC 2 across various components (#10112)
* Add release notes for .NET 10 RC 2 across various components * Clarify scaffold replacement instructions for RC2 PR generation * chore: clean markdownlint issues in preview/RC automation prompt files * [RC2] F# release notes (#10095) * Update fsharp.md for RC 2 scaffold * Update release-notes/10.0/preview/rc2/fsharp.md --------- Co-authored-by: Tomas Grosup <[email protected]> * [RC2] WPF release notes (#10101) * Add RC2 scaffold to WPF release notes * Nothing for WPF * Adjust wording with WinForms and WPF to match --------- Co-authored-by: Andy (Steve) De George <[email protected]> * [RC2] ASP.NET Core release notes (#10089) * [RC2] EF Core release notes (#10094) * Update efcore.md for RC 2 scaffold * EF Core release notes for rc.2 --------- Co-authored-by: Shay Rojansky <[email protected]> * Update libraries.md for RC 2 scaffold (#10096) * Update runtime.md for RC 2 scaffold (#10097) * [RC2] SDK release notes (#10098) * Add RC2 scaffold to SDK release notes and normalize list markers * Add notes for .NET TaskHost * Fix linting --------- Co-authored-by: Chet Husk <[email protected]> * [RC2] .NET MAUI release notes (#10093) * Update dotnetmaui.md for RC 2 scaffold * Update .NET MAUI release notes for RC 2 This update includes new features and improvements for .NET MAUI in the .NET 10 RC 2 release, such as microphone permission handling, SafeAreaEdges support, and XAML source generation enhancements. * Update release-notes/10.0/preview/rc2/dotnetmaui.md Co-authored-by: Rolf Bjarne Kvinge <[email protected]> * Update dotnetmaui.md with Android API 36.1 details Added details about Android API 36.1 bindings, usage instructions, and installation steps. --------- Co-authored-by: David Ortinau <[email protected]> Co-authored-by: Rolf Bjarne Kvinge <[email protected]> Co-authored-by: Jonathan Peppers <[email protected]> * Update release-notes/10.0/preview/rc2/README.md --------- Co-authored-by: Tomas Grosup <[email protected]> Co-authored-by: Andy (Steve) De George <[email protected]> Co-authored-by: Shay Rojansky <[email protected]> Co-authored-by: Chet Husk <[email protected]> Co-authored-by: David Ortinau <[email protected]> Co-authored-by: Rolf Bjarne Kvinge <[email protected]> Co-authored-by: Jonathan Peppers <[email protected]> Co-authored-by: James Montemagno <[email protected]>
1 parent acce489 commit 32e794c

File tree

15 files changed

+452
-66
lines changed

15 files changed

+452
-66
lines changed
Lines changed: 89 additions & 52 deletions
Original file line numberDiff line numberDiff line change
@@ -1,62 +1,94 @@
1-
# Create PRs for .NET 10 RC 1
1+
# Create PRs for .NET Preview or RC
22

3-
Use this workflow to create one PR per release-notes file for .NET 10 RC 1.
3+
Use this workflow to create one PR per release-notes file for a specific .NET Preview or RC milestone. You will supply three inputs when you invoke it:
44

5-
Fixed settings:
5+
- DOTNET_VERSION (major only, e.g. 10, 11)
6+
- MILESTONE_KIND (`preview` or `rc`)
7+
- MILESTONE_NUMBER (preview: 1–7, rc: 1–2)
68

7-
- Version Major: 10
8-
- Version Path: 10.0
9-
- Milestone Kind: `rc`
10-
- Milestone Number: `1`
9+
PR numbers and historical references remain concrete; only version and milestone values change per cycle.
1110

12-
Derived values:
11+
## Sample Inputs (Example)
1312

14-
- Release notes folder: `release-notes/10.0/preview/rc1`
15-
- Base branch: `dotnet10-rc1`
16-
- Per-file working branch: `dotnet10-rc1-{name}`
17-
- Milestone label: `RC 1`
13+
Example below uses: DOTNET_VERSION=10, MILESTONE_KIND=rc, MILESTONE_NUMBER=2 (".NET 10 RC 2"). Replace these values when running for a different milestone.
1814

19-
Process (repeat per file in the RC1 folder):
15+
## Runtime Inputs (provide these when invoking)
2016

21-
1. Create a new branch from the base branch `dotnet10-rc1` with name `dotnet10-rc1-{name}`
22-
1. Modify the corresponding file by replacing any "TBD" placeholder text with: `Something about the feature`.
23-
1. Validate markdown formatting using markdownlint with the repository's settings (`.github/linters/.markdown-lint.yml`).
24-
1. Commit with message: `Update {name} for RC 1`.
25-
1. Push the branch to the remote repository.
26-
1. Create a pull request with:
17+
Required:
2718

28-
- Title: `Update {name} for RC 1`
29-
- Body: `Please update the release notes here as needed for RC 1.\n\n/cc @{assignees}`
19+
- DOTNET_VERSION (major) – e.g. 10
20+
- MILESTONE_KIND – `preview` or `rc`
21+
- MILESTONE_NUMBER – preview: 1–7, rc: 1–2
3022

31-
1. Assign the PR using GitHub CLI: `gh pr edit <PR_NUMBER> --add-assignee <username>` (use the first listed person for files with multiple assignees)
32-
1. Switch back to the base branch `dotnet10-rc1` and repeat for the next file.
23+
Derived (logic performed mentally / by assistant at run time):
3324

34-
Notes:
25+
- Version Path = `${DOTNET_VERSION}.0`
26+
- Milestone Label = if preview → `Preview ${MILESTONE_NUMBER}` else `RC ${MILESTONE_NUMBER}`
27+
- Milestone Prefix = preview → `p${MILESTONE_NUMBER}` ; rc → `rc${MILESTONE_NUMBER}`
28+
- Base Branch = `dotnet${DOTNET_VERSION}-${MilestonePrefix}` (example: `dotnet10-rc2`)
29+
- Working Branch Pattern = `dotnet${DOTNET_VERSION}-${MilestonePrefix}-{name}`
30+
- Release Notes Folder = `release-notes/${DOTNET_VERSION}.0/preview/${MilestonePrefix}` (historical path keeps `preview/rcX` for RC)
3531

36-
- All RC 1 release notes are in the `release-notes/10.0/preview/rc1/` directory.
32+
Example (NOT to be edited into the file): DOTNET_VERSION=10, MILESTONE_KIND=rc, MILESTONE_NUMBER=2 ⇒ label `RC 2`, prefix `rc2`.
33+
34+
## Process (assistant substitutes variables at execution time)
35+
36+
1. Create a new branch from the base branch: `git switch -c dotnet${DOTNET_VERSION}-${MilestonePrefix}-{name} origin/dotnet${DOTNET_VERSION}-${MilestonePrefix}`
37+
1. Modify the file content. If the file contains a neutral/no-new-features sentence such as `This ${Milestone Label} release does not contain new ...` (or the equivalent for a specific RC) replace that entire sentence block with the scaffold below. If no neutral sentence exists, insert the scaffold directly below the heading (only once; do not duplicate it).
38+
39+
```markdown
40+
Here's a summary of what's new in <Product/Area> in this ${Milestone Label} release:
41+
42+
- [Feature](#feature)
43+
44+
## Feature
45+
46+
Feature summary
47+
```
48+
49+
1. Run markdown lint: `npx markdownlint --config .github/linters/.markdown-lint.yml release-notes/${DOTNET_VERSION}.0/preview/${MilestonePrefix}/{name}`
50+
1. Commit: `Update {name} for ${Milestone Label}`
51+
1. Push the branch
52+
1. Create a pull request with title `Update {name} for ${Milestone Label}` and body:
53+
54+
```text
55+
Please update the release notes here as needed for ${Milestone Label}.
56+
57+
/cc @{assignees}
58+
```
59+
60+
1. Assign the PR (first listed person if multiple): `gh pr edit <PR_NUMBER> --add-assignee <username>`
61+
1. Switch back to `dotnet${DOTNET_VERSION}-${MilestonePrefix}` and continue with the next file.
62+
63+
## Notes
64+
65+
- All milestone release notes live under `release-notes/${DOTNET_VERSION}.0/preview/${MilestonePrefix}/`.
3766
- Keep the same file-to-assignee mapping unless explicitly changed.
38-
- Use GitHub CLI for assignments as it's more reliable than the API: `gh pr edit <PR_NUMBER> --add-assignee <username>`
39-
- For files with multiple assignees, assign to the first listed person only.
40-
- Replace "TBD" placeholders rather than adding content to avoid duplication.
41-
- Run markdownlint validation before committing: The repository uses `.github/linters/.markdown-lint.yml` for linting rules.
42-
- Ensure all markdown files have proper trailing newlines and follow the established formatting standards.
43-
44-
## Assignment Table (based on Preview 7 PRs)
45-
46-
| File | Assignee(s) | Based on Preview 7 PR |
47-
|------|-------------|-----------------------|
48-
| aspnetcore.md | @danroth27 | #10023 |
49-
| containers.md | @lbussell | #9995 |
50-
| csharp.md | @BillWagner @MadsTorgersen @jcouv | #9996 |
51-
| dotnetmaui.md | @davidortinau | #9997 |
52-
| efcore.md | @roji | #9998 |
53-
| fsharp.md | @T-Gro | #9999 |
54-
| libraries.md | @richlander @tarekgh | #10000 |
55-
| runtime.md | @ericstj @kunalspathak @AndyAyersMS | #10001 |
56-
| sdk.md | @baronfel @mariam-abdulla @nohwnd @DamianEdwards | #10002 |
57-
| visualbasic.md | @BillWagner | #10003 |
58-
| winforms.md | @merriemcgaw @KlausLoeffelmann | #10004 |
59-
| wpf.md | @harshit7962 @adegeo | #10005 |
67+
- Use GitHub CLI for assignee setting; it's more reliable than reviewer assignment for this workflow.
68+
- Always replace placeholders rather than appending text to avoid duplicates.
69+
- Ensure trailing newline, consistent heading style, and no stray whitespace.
70+
- Optional: for JSON meta changes run `npx prettier --check "release-notes/${DOTNET_VERSION}.0/**/*.json"` (do not auto-fix when only reporting).
71+
72+
No need to edit this file between milestones. Provide DOTNET_VERSION, MILESTONE_KIND, MILESTONE_NUMBER each time; assistant derives the rest. Leave PR number references and assignment history intact unless ownership changes.
73+
74+
## Assignment Table (updated using .NET 10 RC 1 assignees)
75+
76+
The table below reflects the assignee(s) actually used on the most recent component PRs for .NET 10 RC 1 (PRs #10049#10060). Use these as the current default owners for upcoming milestones unless ownership changes again. Notable change: libraries and runtime primary owners effectively swapped compared to Preview 7 (libraries → @ericstj, runtime → @richlander). Additional previously listed secondary owners were trimmed where they were not present as assignees on the RC 1 PR.
77+
78+
| File | Assignee(s) | .NET 10 RC 1 PR |
79+
|------|-------------|-----------------|
80+
| aspnetcore.md | @danroth27 | #10049 |
81+
| containers.md | @lbussell | #10050 |
82+
| csharp.md | @BillWagner | #10051 |
83+
| dotnetmaui.md | @davidortinau | #10052 |
84+
| efcore.md | @roji | #10053 |
85+
| fsharp.md | @T-Gro | #10054 |
86+
| libraries.md | @ericstj @artl93 | #10055 |
87+
| runtime.md | @richlander | #10056 |
88+
| sdk.md | @baronfel | #10057 |
89+
| visualbasic.md | @BillWagner | #10058 |
90+
| winforms.md | @KlausLoeffelmann @merriemcgaw | #10059 |
91+
| wpf.md | @harshit7962 @adegeo | #10060 |
6092

6193
Here are the files to process one at a time:
6294

@@ -75,9 +107,14 @@ Here are the files to process one at a time:
75107

76108
## Master Consolidation PR
77109

78-
After creating all individual component PRs, create a master consolidation PR:
110+
After all component PRs are opened for the milestone, create a consolidation PR:
111+
112+
1. Source: `dotnet${DOTNET_VERSION}-${MilestonePrefix}` → Target: `main`
113+
2. Title: `Add release notes for .NET ${DOTNET_VERSION} ${Milestone Label} across various components`
114+
3. Body sections:
115+
- Intro sentence
116+
- Bullet list of component PRs (e.g. `- ASP.NET Core: #<PR>`)
117+
- CC release management (e.g. `@leecow @rbhanda @victorisr`)
118+
4. Match the structure used previously (see Preview 7 consolidation PR #10006) for consistency.
79119

80-
1. Create a PR from `dotnet10-rc1` to `main` with:
81-
- Title: `Add release notes for .NET 10 RC 1 across various components`
82-
- Body: Include references to all component PRs and cc the release management team
83-
- Pattern: Follow the same structure as the Preview 7 master PR (#10006)
120+
When adapting for another milestone, update only the branch name, title milestone label, and intro sentence.
Lines changed: 52 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,63 @@
1-
# Scaffold Preview
1+
# Scaffold Release Notes Folder (Preview or RC)
22

3-
Create a new folder in the releasenotes/10.0/preview folder for preview7. Inside of it duplicate the folder structure and files that are in the preview6 folder and for each of the files use the following template based on the names of the product that the file is in. You can use the previous file as a reference for the content. Ignore the api-diff folder. Ignore the release.json file.
3+
This prompt guides creating the next milestone release-notes folder for a .NET Preview or RC. Supply three inputs when invoking it (no file edits required between runs):
44

5-
Here is a sample of what aspnetcore.md should look like:
5+
- DOTNET_VERSION (major, e.g. 10, 11)
6+
- MILESTONE_KIND (`preview` or `rc`)
7+
- MILESTONE_NUMBER (preview: 1–7, rc: 1–2)
68

7-
```markdown
8-
# ASP.NET Core in .NET 10 Preview 7 - Release Notes
9+
Only these values should change between cycles. Keep concrete links and historical references intact unless they genuinely change.
910

10-
Here's a summary of what's new in ASP.NET Core in this preview release:
11+
## Runtime Derivations
1112

12-
- [Feature](#feature)
13+
Given inputs:
1314

14-
ASP.NET Core updates in .NET 10:
15+
- Milestone Label = if MILESTONE_KIND=preview → `Preview ${MILESTONE_NUMBER}` else `RC ${MILESTONE_NUMBER}`
16+
- Milestone Prefix = preview → `p${MILESTONE_NUMBER}` ; rc → `rc${MILESTONE_NUMBER}`
17+
- Base Branch = `dotnet${DOTNET_VERSION}-${MilestonePrefix}`
18+
- Target Folder = `release-notes/${DOTNET_VERSION}.0/preview/${MilestonePrefix}`
1519

16-
- [What's new in ASP.NET Core in .NET 10](https://learn.microsoft.com/aspnet/core/release-notes/aspnetcore-10.0) documentation.
17-
- [Breaking changes](https://docs.microsoft.com/dotnet/core/compatibility/10.0#aspnet-core)
18-
- [Roadmap](https://github.com/dotnet/aspnetcore/issues/59443)
20+
Example (not baked in): DOTNET_VERSION=10, MILESTONE_KIND=rc, MILESTONE_NUMBER=2 ⇒ Label `RC 2`, Prefix `rc2`.
21+
22+
## Steps
23+
24+
1. Navigate to `release-notes/${DOTNET_VERSION}.0/preview/`.
25+
1. Duplicate the previous milestone folder (prior prefix → new prefix, e.g. `rc1``${MilestonePrefix}` or `p6``${MilestonePrefix}`).
26+
1. Remove (do NOT copy):
27+
- `api-diff` directory (if present) – will be regenerated later.
28+
- `release.json` – create a fresh one if required by process.
29+
1. For each component markdown file, update the heading and milestone label only; preserve existing anchor structure.
30+
1. If there are no new feature items yet, insert a neutral placeholder sentence (e.g. `This ${Milestone Label} release does not introduce new ${Product} features.`) instead of a generic "Something about the feature" line. Avoid duplicating placeholder lines.
31+
1. Run markdown lint: `npx markdownlint --config .github/linters/.markdown-lint.yml release-notes/${DOTNET_VERSION}.0/preview/${MilestonePrefix}/*.md`.
32+
1. Commit on the base milestone branch (`dotnet${DOTNET_VERSION}-${MilestonePrefix}`) with message: `Scaffold .NET ${DOTNET_VERSION} ${Milestone Label} release notes folder`.
33+
34+
## Sample File Template (aspnetcore.md – dynamic)
35+
36+
```markdown
37+
# ASP.NET Core in .NET ${DOTNET_VERSION} ${Milestone Label} - Release Notes
1938

20-
## Feature
39+
Here's a summary of what's new in ASP.NET Core in this release (add or remove sections as needed).
2140

22-
Something about the feature
41+
ASP.NET Core updates in .NET ${DOTNET_VERSION}:
2342

43+
- [What's new in ASP.NET Core in .NET ${DOTNET_VERSION}](https://learn.microsoft.com/aspnet/core/release-notes/aspnetcore-${DOTNET_VERSION}.0) documentation.
44+
- [Breaking changes](https://docs.microsoft.com/dotnet/core/compatibility/${DOTNET_VERSION}.0#aspnet-core)
45+
- [Roadmap](https://github.com/dotnet/aspnetcore/issues/59443)
46+
47+
This ${Milestone Label} release does not contain new ASP.NET Core feature additions.
2448
```
49+
50+
## Conventions (stable across milestones)
51+
52+
- Top-level heading: `# <Product> in .NET <Major> <Milestone Label> - Release Notes`
53+
- Use sentence case for section headings after the H1.
54+
- Keep relative links; avoid hardcoding version unless the doc page is versioned (as above for 10.0 links).
55+
- One blank line between blocks; file ends with a newline.
56+
57+
## After Scaffolding
58+
59+
- Proceed with per-file PR creation using the separate PR creation prompt.
60+
- Do not add real feature text until component owners update their individual PRs.
61+
- Run a Prettier check if any JSON metadata was added: `npx prettier --check "release-notes/${DOTNET_VERSION}.0/**/*.json"`.
62+
63+
No file edits needed between milestones—provide inputs at execution. Leave roadmap issue numbers unless they genuinely change upstream.

release-notes/10.0/preview/rc2/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# .NET 10 RC 2 - Release Notes
22

3-
.NET 10 RC 2 released on October 14, 2025. Find more information on new features released in .NET 10 RC 2 by browsing through the release notes below:
3+
.NET 10 RC 2 released on October 14th, 2025. Find more information on new features released in .NET 10 RC 2 by browsing through the release notes below:
44

55
- [Libraries](./libraries.md)
66
- [Runtime](./runtime.md)
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# ASP.NET Core in .NET 10 RC 2 - Release Notes
2+
3+
This release was focused on bug fixes and other quality improvements.
4+
5+
ASP.NET Core updates in .NET 10 RC2:
6+
7+
- [What's new in ASP.NET Core in .NET 10](https://learn.microsoft.com/aspnet/core/release-notes/aspnetcore-10.0) documentation.
8+
- [Breaking changes](https://docs.microsoft.com/dotnet/core/compatibility/10.0#aspnet-core)
9+
- [Roadmap](https://aka.ms/aspnet/roadmap)
10+
11+
.NET 10 RC2:
12+
13+
- [Discussion](https://aka.ms/dotnet/10/rc2)
14+
- [Release notes](README.md)
15+
16+
## Community contributors
17+
18+
Thank you everyone who tested and provided feedback on the .NET 10 Release Candidate!
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# Containers in .NET 10 RC 2 - Release Notes
2+
3+
This RC 2 release does not contain new Container image features.
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# C# 14 updates in .NET 10 RC 2 - Release Notes
2+
3+
This RC 2 release does not contain new C# features.
4+
5+
C# 14 updates:
6+
7+
- [What's new in C# 14](https://learn.microsoft.com/dotnet/csharp/whats-new/csharp-14) documentation
8+
- [Breaking changes in C# 14](https://learn.microsoft.com/dotnet/csharp/whats-new/breaking-changes/compiler%20breaking%20changes%20-%20dotnet%2010)
Lines changed: 107 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,107 @@
1+
# .NET MAUI in .NET 10 RC 2 - Release Notes
2+
3+
Here's a summary of what's new in .NET MAUI in this RC 2 release:
4+
5+
- .NET MAUI
6+
- [Microphone permission](#microphone-permission)
7+
- [SafeAreaEdges](#safeareaedges)
8+
- [XAML Source Generation](#xaml-source-generation)
9+
- [.NET for Android](#net-for-android)
10+
- [Android API 36.1](#android-api-36.1)
11+
- [.NET for iOS, Mac Catalyst, macOS, tvOS](#net-for-ios-mac-catalyst-macos-tvos)
12+
- [Xcode 26](#xcode-26)
13+
14+
## Feature
15+
16+
Feature summary
17+
18+
.NET MAUI updates in .NET 10:
19+
20+
- [What's new in .NET MAUI in .NET 10](https://learn.microsoft.com/dotnet/maui/whats-new/dotnet-10) documentation.
21+
22+
## .NET MAUI
23+
24+
This release has been focused on stabilizing the SDK.
25+
26+
### Microphone permission
27+
28+
We have added the Windows implementation for `Permissions.RequestAsync<Permissions.Microphone>()` to request and check access permission for the device microphone.
29+
30+
### SafeAreaEdges
31+
32+
Support for `SafeAreaEdges` has been added to Android for supporting edge-to-edge and managing content relative to keyboard and unsafe areas of the device display.
33+
34+
### XAML Source Generation
35+
36+
This release includes improvements to XAML source generation with notable improvements to debug time view inflation. To enable this in your project add the following to your project file.
37+
38+
```xml
39+
<PropertyGroup>
40+
<MauiXamlInflator>SourceGen</MauiXamlInflator>
41+
</PropertyGroup>
42+
```
43+
44+
## .NET for Android
45+
46+
This release includes continued integration with multiple .NET runtimes, and several bug fixes.
47+
48+
### Android API 36.1
49+
50+
Android API 36.1 bindings are now available thanks to the contribution and collaboration of the [Uno Platform](https://platform.uno/) team.
51+
52+
To try out the new APIs, you can opt your project into the new `net10.0-android36.1` target framework:
53+
54+
```xml
55+
<Project Sdk="Microsoft.NET.Sdk">
56+
<PropertyGroup>
57+
<TargetFramework>net10.0-android36.1</TargetFramework>
58+
<EnablePreviewFeatures>true</EnablePreviewFeatures>
59+
<!-- Remainder of your .csproj -->
60+
```
61+
62+
Note that if omitted, `net10.0-android` will default to API 36.0. `$(EnablePreviewFeatures)` will not be required in future .NET 10 releases.
63+
64+
To *use* an Android 36.1-only API you can use the `OperatingSystem` class to check the Android version at runtime:
65+
66+
```csharp
67+
if (OperatingSystem.IsAndroidVersionAtLeast(36, 1))
68+
{
69+
// Call some Android 36.1 API here
70+
}
71+
else
72+
{
73+
// Fallback for older OS versions
74+
ShowToast("Android 36.1+ is required for this feature");
75+
}
76+
```
77+
78+
For a full sample using Android 36.1 APIs, see our [Pdf Annotator sample on GitHub](https://github.com/dotnet/android-samples/tree/main/PdfAnnotator).
79+
80+
To install the Android 36.1 platform, you can go to **Tools** > **Android** > **Android SDK Manager**. Under the gear icon in the bottom right, change **Repository*** to **Full List**. This allows you to install `Android SDK Platform 36.1`.
81+
82+
### (Experimental) CoreCLR
83+
84+
We continue to work on enabling Android apps to run on the CoreCLR runtime (instead of Mono). To use it, add the following to your project file for Android builds:
85+
86+
```xml
87+
<!-- Use CoreCLR on Android -->
88+
<PropertyGroup Condition="$([MSBuild]::GetTargetPlatformIdentifier('$(TargetFramework)')) == 'android'">
89+
<UseMonoRuntime>false</UseMonoRuntime>
90+
</PropertyGroup>
91+
```
92+
93+
Please try this in your applications and report any issues; when filing feedback, state that you are using UseMonoRuntime=false. Expect that application size is currently larger than with Mono and that debugging and some runtime diagnostics are not fully functional yet; these areas are actively being improved. This is an experimental feature and not intended for production use.
94+
95+
A detailed list of Android changes can be found on the [dotnet/android GitHub releases](https://github.com/dotnet/android/releases/).
96+
97+
## .NET for iOS, Mac Catalyst, macOS, tvOS
98+
99+
This release includes continued integration with multiple .NET runtimes, and several bug fixes.
100+
101+
### Xcode 26
102+
103+
Xcode 26 bindings have been updated and are available now for both for targeting .NET 9 and .NET 10 RC2. This is compatible with Xcode 26.0 and 26.1.
104+
105+
## Contributors
106+
107+
Thank you contributors! ❤️

0 commit comments

Comments
 (0)