Update PreReleaseVersionLabel and StabilizePackageVersion#35520
Merged
Conversation
Contributor
|
🚀 Dogfood this PR with:
curl -fsSL https://raw.githubusercontent.com/dotnet/maui/main/eng/scripts/get-maui-pr.sh | bash -s -- 35520Or
iex "& { $(irm https://raw.githubusercontent.com/dotnet/maui/main/eng/scripts/get-maui-pr.ps1) } 35520" |
This was referenced May 20, 2026
PureWeen
added a commit
that referenced
this pull request
Jun 11, 2026
…xx-sr8 (#35810) <!-- Please let the below note in for people that find this PR --> > [!NOTE] > Are you waiting for the changes in this PR to be merged? > It would be very helpful if you could [test the resulting artifacts](https://github.com/dotnet/maui/wiki/Testing-PR-Builds) from this PR and let us know in a comment if this change resolves your issue. Thank you! ## Cut-then-merge step 2 of 2 SR8 was cut from `main` at [`e02d6b6dc2`](e02d6b6) (commit "Add gh-aw rerun review scanner (#35685)"). This PR pulls the SR7 stabilization work into SR8 so SR8 contains everything that's in SR7. - **Base:** `release/10.0.1xx-sr8` @ [`e02d6b6dc2`](e02d6b6) - **Merging in:** `release/10.0.1xx-sr7` @ [`9da598b4a1`](9da598b) (PatchVersion bump to 71) - **Merge base:** [`f8cb875e`](f8cb875eee) ("[Testing] The Windows WebView category is removed from CI…" #35335) - **Strategy:** non-fast-forward merge commit (preserves both branches' history) ## Conflict resolution Two trivial conflicts, both resolved by taking the SR8 (`HEAD`) side: | File | Why it conflicted | Resolution | | --- | --- | --- | | [`eng/Versions.props`](https://github.com/dotnet/maui/blob/release/10.0.1xx-sr8/eng/Versions.props) | SR7 bumped `PatchVersion` 70→71 (#35786); SR8 starts at 80 | Keep `PatchVersion=80` (SR8 is the higher patch band) | | `src/Controls/src/Core/Compatibility/Handlers/Shell/iOS/ShellSectionRenderer.cs` | Whitespace-only difference (`false; //` vs `false; //`) in two comments | Keep SR8's whitespace | No semantic conflicts. ## Inherited from SR7 26 SR7-only commits land in SR8 via this merge. The source PRs are: <details> <summary>Source PRs (43, deduped by commit)</summary> #35020, #35072, #35092, #35150, #35223, #35299, #35305, #35347, #35356, #35359, #35360, #35421, #35423, #35424, #35425, #35426, #35427, #35428, #35430, #35434, #35441, #35447, #35461, #35480, #35503, #35520, #35521, #35559, #35566, #35585, #35625, #35642, #35664, #35689, #35690, #35691, #35692, #35693, #35694, #35703, #35744, #35768, #35786 Includes the SR7 revert chain: - #35689 — Revert PR #30068 (FontImageSource centering on Windows) - #35694 — Revert TalkBack RadioButton fix - #35703 — Revert Shell.NavBarIsVisible fix - #35744 — Revert HybridWebView WebView fix - #35461, #35503 — additional Android reverts </details> After this lands, the release-readiness tracker can survey `release/10.0.1xx-sr8` directly instead of using `-Candidate -InheritFromPriorSr` mode against SR7.
PureWeen
added a commit
that referenced
this pull request
Jun 11, 2026
…enance
Three related correctness fixes to the release-readiness skill:
1. **Ship date anchoring (Get-ExpectedShipDate)**
The 2nd-Tuesday calculator used 'next 2nd Tuesday from today', which
silently slid into the NEXT SR's window once the current SR's calendar
month passed. For SR8 on 2026-06-11 (after June 9), the report said
'July 14' — that's SR9's date, not SR8's.
New: Get-MainBumpDateForCycle resolves the date origin/main was bumped
to this SR's cycle base (e.g. main 70→80 on 2026-05-13 anchors SR8 to
June 2026). The cadence anchor is bumpDate.Month + 1.
Careful: 'git log -S' matches BOTH 'add X' and 'remove X' commits, and
the same patch value recurs across major-version cycles. The helper
verifies the diff direction (added, not removed) and validates
MajorVersion at that commit. Also handles the [Object[]] return shape
of 'git show' (must join lines before matching multi-line patterns).
When the anchored date has passed, returns Cadence='second-tuesday-missed'
with MissedWindow=true so the report surfaces 'window passed N days ago'
instead of silently advancing.
2. **Future-SR scope guard precedence (Get-RegressionCandidates)**
Three signals now evaluate in the correct priority order:
(1) versioned 'regressed-in-X.Y.Z' label in scope wins outright —
milestone is subordinate (milestone often reflects where the FIX
will ship, not where the regression originated).
(2) milestone naming a different SR cycle → out-of-scope (only
checked when no versioned label is in scope).
(3) only 'regressed-in-inflight/current' label AND main bumped past
this SR's max patch → out-of-scope.
Fixes false-positive exclusion of #35771 / #35756 (both have
'regressed-in-10.0.70' label but milestone '.NET 10 SR9' because the
triager assigned the FIX month). Correctly excludes #35808 / #35806
(milestone signal) and #35615 (versioned-label signal).
3. **Servicing-flip provenance (servicing flip check)**
Previously reported READY whenever 'PreReleaseVersionLabel=servicing'
and 'StabilizePackageVersion=true' were present in the SR branch's
eng/Versions.props — without checking WHERE those values came from.
SR8 inherited both values from SR7 via the catch-up merge a11840b,
not from an SR-direct flip PR (the SR7 pattern was the deliberate
#35520 flip PR). The branch will functionally produce stable packages,
but the workflow deviated.
New: walks SR-only non-merge commits looking for one that added the
'servicing' label line. If none found, reports the merge that brought
the values in via inheritance. Status stays READY; details explain
provenance for the release captain.
Tests: +14 anchoring tests (T15-T19), 469 total passing.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
PureWeen
added a commit
that referenced
this pull request
Jun 15, 2026
…enance
Three related correctness fixes to the release-readiness skill:
1. **Ship date anchoring (Get-ExpectedShipDate)**
The 2nd-Tuesday calculator used 'next 2nd Tuesday from today', which
silently slid into the NEXT SR's window once the current SR's calendar
month passed. For SR8 on 2026-06-11 (after June 9), the report said
'July 14' — that's SR9's date, not SR8's.
New: Get-MainBumpDateForCycle resolves the date origin/main was bumped
to this SR's cycle base (e.g. main 70→80 on 2026-05-13 anchors SR8 to
June 2026). The cadence anchor is bumpDate.Month + 1.
Careful: 'git log -S' matches BOTH 'add X' and 'remove X' commits, and
the same patch value recurs across major-version cycles. The helper
verifies the diff direction (added, not removed) and validates
MajorVersion at that commit. Also handles the [Object[]] return shape
of 'git show' (must join lines before matching multi-line patterns).
When the anchored date has passed, returns Cadence='second-tuesday-missed'
with MissedWindow=true so the report surfaces 'window passed N days ago'
instead of silently advancing.
2. **Future-SR scope guard precedence (Get-RegressionCandidates)**
Three signals now evaluate in the correct priority order:
(1) versioned 'regressed-in-X.Y.Z' label in scope wins outright —
milestone is subordinate (milestone often reflects where the FIX
will ship, not where the regression originated).
(2) milestone naming a different SR cycle → out-of-scope (only
checked when no versioned label is in scope).
(3) only 'regressed-in-inflight/current' label AND main bumped past
this SR's max patch → out-of-scope.
Fixes false-positive exclusion of #35771 / #35756 (both have
'regressed-in-10.0.70' label but milestone '.NET 10 SR9' because the
triager assigned the FIX month). Correctly excludes #35808 / #35806
(milestone signal) and #35615 (versioned-label signal).
3. **Servicing-flip provenance (servicing flip check)**
Previously reported READY whenever 'PreReleaseVersionLabel=servicing'
and 'StabilizePackageVersion=true' were present in the SR branch's
eng/Versions.props — without checking WHERE those values came from.
SR8 inherited both values from SR7 via the catch-up merge a11840b,
not from an SR-direct flip PR (the SR7 pattern was the deliberate
#35520 flip PR). The branch will functionally produce stable packages,
but the workflow deviated.
New: walks SR-only non-merge commits looking for one that added the
'servicing' label line. If none found, reports the merge that brought
the values in via inheritance. Status stays READY; details explain
provenance for the release captain.
Tests: +14 anchoring tests (T15-T19), 469 total passing.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This file contains hidden or 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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.