Skip to content

Disable .NET SDK rollForward in global.json - #236

Draft
brettshearer with Copilot wants to merge 2 commits into
masterfrom
copilot/disable-dotnet-rollforward
Draft

Disable .NET SDK rollForward in global.json#236
brettshearer with Copilot wants to merge 2 commits into
masterfrom
copilot/disable-dotnet-rollforward

Conversation

Copilot AI commented Mar 4, 2026

Copy link
Copy Markdown
Contributor

The SDK was configured with rollForward: latestMinor, allowing automatic upgrades to newer minor SDK versions. This change locks the SDK to the pinned version.

Change

// global.json
"rollForward": "disabled"  // was "latestMinor"
Original prompt

Create a PR on branch BAS/disable-dotnet-rollforward for repository WiseTechGlobal/WTG.Analyzers to ensure the .NET SDK global.json disables roll-forward.

File: global.json
Current content (from

{
"sdk": {
"version": "8.0.300",
"rollForward": "latestMinor"
}
}
):

{
  "sdk": {
    "version": "8.0.300",
    "rollForward": "latestMinor"
  }
}

Requirements:

  • Set sdk.rollForward to exactly "disabled".
  • Ensure property name is exactly rollForward (camelCase) per .NET SDK documentation (fix casing if needed).
  • If rollForward is missing, add it and set to disabled.
  • Preserve JSON validity and do not change other fields.

PR title: Disable .NET SDK rollForward in global.json
Branch: BAS/disable-dotnet-rollforward

This pull request was created from Copilot chat.


💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Co-authored-by: brettshearer <9043790+brettshearer@users.noreply.github.com>
Copilot AI changed the title [WIP] Disable .NET SDK rollForward in global.json Disable .NET SDK rollForward in global.json Mar 4, 2026
Comment thread global.json
{
"sdk": {
"version": "8.0.300",
"rollForward": "latestMinor"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

WTG.Analyzers is built & tested in a GitHub workflow, not on DAT. So the set of installed SDKs is determined by configuration within this repository.

dotnet-version: 8.0.300

So this will only affect people trying to build locally.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Note: this is a public repository.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think these days we can take out lines 26 and 27 from the GitHub Actions workflow, and actions/setup-dotnet will act based upon the root global.json by default.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also lines 53-54. Then release.yaml lines 28-29.

Should probably remove them just so we don't have so may places to update when updating the SDK.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm happy to restrict to only those repositories based on QGL/DAT too.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants