You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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:
3
+
Use this workflow to create one PR per component release-notes file for a specific .NET Preview milestone.
4
4
5
-
- DOTNET_VERSION (major only, e.g. 10, 11)
6
-
- MILESTONE_KIND (`preview` or `rc`)
7
-
- MILESTONE_NUMBER (preview: 1–7, rc: 1–2)
5
+
This flow assumes the preview folder was scaffolded with only the two core files (`${DOTNET_VERSION}.0.0-preview.${PREVIEW_NUMBER}.md` and `README.md`) and the component files do not exist yet.
8
6
9
-
PR numbers and historical references remain concrete; only version and milestone values change per cycle.
7
+
Supply two inputs when you invoke it:
10
8
11
-
## Sample Inputs (Example)
9
+
- DOTNET_VERSION (major only, e.g. 10, 11)
10
+
- PREVIEW_NUMBER (1–7)
12
11
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.
12
+
PR numbers and historical references remain concrete; only version and preview values change per cycle.
14
13
15
-
## Runtime Inputs (provide these when invoking)
14
+
## Runtime inputs (provide these when invoking)
16
15
17
16
Required:
18
17
19
18
- DOTNET_VERSION (major) – e.g. 10
20
-
- MILESTONE_KIND – `preview` or `rc`
21
-
- MILESTONE_NUMBER – preview: 1–7, rc: 1–2
19
+
- PREVIEW_NUMBER – 1 to 7
22
20
23
-
Derived (logic performed mentally / by assistant at run time):
- Working Branch Pattern = `dotnet${DOTNET_VERSION}-p${PREVIEW_NUMBER}-{name-noext}`
31
28
32
-
Example (NOT to be edited into the file): DOTNET_VERSION=10, MILESTONE_KIND=rc, MILESTONE_NUMBER=2 ⇒ label `RC 2`, prefix `rc2`.
29
+
Example (not baked in): DOTNET_VERSION=10, PREVIEW_NUMBER=7 ⇒ label `Preview 7`, base branch `dotnet10-p7`, folder `release-notes/10.0/preview/preview7`.
33
30
34
-
## Process (assistant substitutes variables at execution time)
31
+
## Process (repeat for each file, one at a time)
35
32
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).
33
+
1. Create a new branch from the milestone base branch:
1. Switch back to `dotnet${DOTNET_VERSION}-p${PREVIEW_NUMBER}` and repeat for the next file.
70
+
71
+
## Important behavior change from older workflow
72
+
73
+
- Do not look for or replace existing placeholder text in component files.
74
+
- Do not duplicate/copy previous preview component files into this folder.
75
+
- In this workflow, each component file is created fresh in its own branch and PR.
62
76
63
77
## Notes
64
78
65
-
- All milestone release notes live under `release-notes/${DOTNET_VERSION}.0/preview/${MilestonePrefix}/`.
79
+
- All component files for the milestone live under `release-notes/${DOTNET_VERSION}.0/preview/preview${PREVIEW_NUMBER}/`.
66
80
- Keep the same file-to-assignee mapping unless explicitly changed.
67
81
- 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
82
- 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
83
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.
84
+
No need to edit this file between milestones. Provide DOTNET_VERSION and PREVIEW_NUMBER each time; assistant derives the rest.
73
85
74
86
## Assignment Table (updated using .NET 10 RC 1 assignees)
75
87
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.
88
+
Use these as default owners unless ownership changes.
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):
3
+
This prompt guides creating the next `.NET Preview` release-notes folder with only the core files needed to start milestone work.
4
+
5
+
Supply two inputs when invoking it (no file edits required between runs):
4
6
5
7
- DOTNET_VERSION (major, e.g. 10, 11)
6
-
- MILESTONE_KIND (`preview` or `rc`)
7
-
- MILESTONE_NUMBER (preview: 1–7, rc: 1–2)
8
+
- PREVIEW_NUMBER (1–7)
8
9
9
10
Only these values should change between cycles. Keep concrete links and historical references intact unless they genuinely change.
Example (not baked in): DOTNET_VERSION=10, PREVIEW_NUMBER=7 ⇒ folder `preview7`, main file `10.0.0-preview.7.md`.
21
23
22
24
## Steps
23
25
24
26
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)
27
+
1. Create `preview${PREVIEW_NUMBER}` if it does not exist.
1. Update the preview root README at `release-notes/${DOTNET_VERSION}.0/preview/README.md` by adding one row for the new preview release linking to `./preview${PREVIEW_NUMBER}/README.md`.
35
+
1. Update the version README at `release-notes/${DOTNET_VERSION}.0/README.md`:
36
+
- Add a new row for `Preview ${PREVIEW_NUMBER}` pointing at `preview/preview${PREVIEW_NUMBER}/README.md`.
-[What's new in ASP.NET Core in .NET ${DOTNET_VERSION}](https://learn.microsoft.com/aspnet/core/release-notes/aspnetcore-${DOTNET_VERSION}.0) documentation.
0 commit comments