Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Install .NET LTS instead of STS #5047

Merged
merged 1 commit into from
Dec 27, 2023
Merged

Install .NET LTS instead of STS #5047

merged 1 commit into from
Dec 27, 2023

Conversation

adamralph
Copy link
Contributor

@adamralph adamralph commented Dec 23, 2023

Proposed Changes

  1. Switch to the LTS .NET release channel to allow .NET 8 to be installed. This is required because some new C# language features, such as collection expressions, cause dotnet format in .NET 7 to get confused, and it reports false problems.

STS restricts the version the latest Standard Term Support release, which is currently 7.0.404:

% ./dotnet-install.sh --dry-run --channel STS
dotnet-install: Payload URLs:
dotnet-install: URL #0 - aka.ms: https://dotnetcli.azureedge.net/dotnet/Sdk/7.0.404/dotnet-sdk-7.0.404-osx-arm64.tar.gz

LTS allows latest Long Term Support release, which is currently 8.0.100:

% ./dotnet-install.sh --dry-run --channel LTS
dotnet-install: Payload URLs:
dotnet-install: URL #0 - aka.ms: https://dotnetcli.azureedge.net/dotnet/Sdk/8.0.100/dotnet-sdk-8.0.100-osx-arm64.tar.gz

Unfortunately, there is no way to say "STS or LTS, whichever is newer":

  -c,--channel <CHANNEL>         Download from the channel specified, Defaults to `LTS`.
      -Channel
          Possible values:
          - STS - the most recent Standard Term Support release
          - LTS - the most recent Long Term Support release
          - 2-part version in a format A.B - represents a specific release
              examples: 2.0; 1.0
          - 3-part version in a format A.B.Cxx - represents a specific SDK release
              examples: 5.0.1xx, 5.0.2xx.
              Supported since 5.0 release
          Warning: Value 'Current' is deprecated for the Channel parameter. Use 'STS' instead.
          Note: The version parameter overrides the channel parameter when any version other than 'latest' is used.

Another option is to state the actual version:

% ./dotnet-install.sh --dry-run --channel 8.0 
dotnet-install: Payload URLs:
dotnet-install: URL #0 - aka.ms: https://dotnetcli.azureedge.net/dotnet/Sdk/8.0.100/dotnet-sdk-8.0.100-osx-arm64.tar.gz

Readiness Checklist

In order to have this pull request merged, complete the following tasks.

Pull request author tasks

  • I included all the needed documentation for this change.
  • I provided the necessary tests.
  • I squashed all the commits into a single commit.
  • I followed the Conventional Commit v1.0.0 spec.

Super-linter maintainer tasks

  • Label as breaking if this change breaks compatibility with the previous released version.
  • Label as either: automation, bug, documentation, enhancement, infrastructure.

@ferrarimarco ferrarimarco self-assigned this Dec 24, 2023
@ferrarimarco ferrarimarco added O: backlog 🤖 Backlog, stale ignores this label dependencies Pull requests that update a dependency file labels Dec 24, 2023
@ferrarimarco
Copy link
Collaborator

Hi @adamralph ! Thanks for this PR.

Until we put automated dependency updates in place for .NET, this seems like a good change.

Copy link
Collaborator

@ferrarimarco ferrarimarco left a comment

Choose a reason for hiding this comment

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

Minor changes:

  • Can you refactor the commit heading to say: feat: install .NET LTS instead of STS
  • Can you add a description of the change in the commit body? Basically a summary of what you explained in the PR.

Thanks a lot!

@ferrarimarco ferrarimarco changed the title update to latest .NET Install .NET LTS instead of STS Dec 24, 2023
@adamralph
Copy link
Contributor Author

Minor changes:

  • Can you refactor the commit heading to say: feat: install .NET LTS instead of STS
  • Can you add a description of the change in the commit body? Basically a summary of what you explained in the PR.

Thanks a lot!

@ferrarimarco done

Switch to the LTS .NET release channel to allow .NET 8 to be installed. STS restricts to .NET 7.
@ferrarimarco ferrarimarco merged commit 5a175c2 into super-linter:main Dec 27, 2023
4 of 5 checks passed
@adamralph adamralph deleted the latest-dotnet branch December 27, 2023 09:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
dependencies Pull requests that update a dependency file O: backlog 🤖 Backlog, stale ignores this label
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants