Skip to content

Switch to Standard Term Support (STS) releases - #7517

Merged
richlander merged 18 commits into
mainfrom
sts
Oct 27, 2022
Merged

Switch to Standard Term Support (STS) releases#7517
richlander merged 18 commits into
mainfrom
sts

Conversation

@richlander

@richlander richlander commented Jun 4, 2022

Copy link
Copy Markdown
Member

The "Current" term is switching to "Standard Term Support (STS)". It nicely and intuitively contrasts with "Long Term Support (LTS)". Nothing else is changing (beyond the name).

For more information, see: https://github.com/dotnet/core/blob/main/release-policies.md

Relates to:

@dcwhittaker dcwhittaker left a comment

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.

Thank for you for doing this - I think this is much clearer for folks to understand.

@richlander

Copy link
Copy Markdown
Member Author

That's the hope, for sure.

@richlander

Copy link
Copy Markdown
Member Author

I'll merge this in a bit. I'm going to publish a breaking change announcement, first.

@mairaw

mairaw commented Jun 6, 2022

Copy link
Copy Markdown
Contributor

We should coordinate. The support policies on dot.net should match.

@richlander

Copy link
Copy Markdown
Member Author

How about you be the one to merge this PR, @mairaw?

@richlander

Copy link
Copy Markdown
Member Author

I also need to update docs. I'll create a PR on that next week. We can merge that one coordinated with the website.

@mairaw

mairaw commented Jun 12, 2022

Copy link
Copy Markdown
Contributor

Sounds good @richlander. I didn't have time last week to create the PR.

@richlander

Copy link
Copy Markdown
Member Author

Not a problem. We're not in a rush. I'll get the docs PR in place first. That should set the stage for getting the website updated. I inserted a mention of STS in the Preview 5 blog post, which you may have seen in draft.

@leo-costa

Copy link
Copy Markdown

Good change. Too many folks thinking that LTS = Stable.

@mairaw

mairaw commented Jun 24, 2022

Copy link
Copy Markdown
Contributor

what is the plan for dotnet install scripts?
/cc @YuliiaKovalova

@mairaw

mairaw commented Jun 24, 2022

Copy link
Copy Markdown
Contributor

We probably need to do similar changes on docs /cc @adegeo

@richlander

Copy link
Copy Markdown
Member Author

@mairaw -- I already added STS on this page: https://docs.microsoft.com/dotnet/core/introduction#support.

Perhaps we can just do this as a rolling thunder type thing and merge this PR now?

Comment thread release-policies.md Outdated
Comment thread release-policies.md Outdated
mairaw and others added 2 commits October 13, 2022 16:23
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
@mairaw mairaw changed the title Switch to 'sts' for short term releases Oct 13, 2022

@gewarren gewarren left a comment

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.

I uncapitalized the support terms since they aren't product names or anything like that. From https://styleguides.azurewebsites.net/StyleGuide/Read?id=2696&topicid=25357:

"If it’s not a brand, product, service, or app it’s lowercase."

Comment thread release-notes/7.0/README.md Outdated

[.NET 7](https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-preview-2/) will be a [current release](../../release-policies.md) and will be supported for 18 months, from November 2022 to May 14, 2024. It is [supported by Microsoft](../../microsoft-support.md) on [multiple operating systems](supported-os.md).

[.NET 7](https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-preview-4/) is an [STS release](../../release-policies.md) and will be supported for 18 months, from November 8th, 2022 to May 14th, 2024. It is [supported by Microsoft](../../microsoft-support.md) on [multiple operating systems](supported-os.md).

@gewarren gewarren Oct 14, 2022

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.

Suggested change
[.NET 7](https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-preview-4/) is an [STS release](../../release-policies.md) and will be supported for 18 months, from November 8th, 2022 to May 14th, 2024. It is [supported by Microsoft](../../microsoft-support.md) on [multiple operating systems](supported-os.md).
[.NET 7](https://devblogs.microsoft.com/dotnet/announcing-dotnet-7-preview-4/) is a [Standard Support release](../../release-policies.md) and will be supported for 18 months, from November 8, 2022 to May 14, 2024. It is [supported by Microsoft](../../microsoft-support.md) on [multiple operating systems](supported-os.md).

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

Note that Windows also does caps for LTSC -> https://learn.microsoft.com/en-us/windows/whats-new/ltsc/

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.

They are wrong too 😂

Comment thread release-notes/7.0/supported-os.md Outdated
# .NET 7 - Supported OS versions

[.NET 7](README.md) [is supported](https://github.com/dotnet/core/blob/main/microsoft-support.md) on multiple operating systems per their [lifecycle policy](../../os-lifecycle-policy.md).
[.NET 7](README.md) is an [STS release](../../release-policies.md) and [is supported](../../microsoft-support.md) on multiple operating systems per their lifecycle policy.

@gewarren gewarren Oct 14, 2022

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.

Suggested change
[.NET 7](README.md) is an [STS release](../../release-policies.md) and [is supported](../../microsoft-support.md) on multiple operating systems per their lifecycle policy.
[.NET 7](README.md) is a [Standard Support release](../../release-policies.md) and [is supported](../../microsoft-support.md) on multiple operating systems per their lifecycle policy.
Comment thread release-policies.md Outdated
## Release types

LTS and Current releases have many similarities. The .NET team follows the same software engineering and release processes for both release types, including for security, compatibility, and reliability. Both releases may contain major new features and breaking changes. The .NET team aspires to enable straightforward migration from one release to another (LTS or Current, in either direction), and has processes in place to achieve that intention.
Each .NET release is defined as either **Standard Support** or **Long Term Support (LTS)**, at the beginning of the release.

@gewarren gewarren Oct 14, 2022

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.

Suggested change
Each .NET release is defined as either **Standard Support** or **Long Term Support (LTS)**, at the beginning of the release.
Each .NET release is defined as either **Standard Support** or **Long Term Support (LTS)**, at the beginning of the release.
Comment thread release-policies.md Outdated
Note: **Standard** releases were previously called **Current**.

Improvements are released as "patches". Patch releases are cumulative. Patches are released on the Microsoft "Patch Tuesday" (second Tuesday of each month), however there is no guarantee that there will be a .NET release on any given Patch Tuesday. Patches are announced on the [.NET blog](https://devblogs.microsoft.com/dotnet/). A digest of monthly releases is published to [dotnet/announcements](https://github.com/dotnet/announcements/labels/Monthly-Update).
LTS and Standard releases differ only by support duration. The .NET team follows the same software engineering and release processes for both release types, including for security, compatibility, and reliability. Both releases may contain major new features and breaking changes. The .NET team aspires to enable straightforward migration from one release to another, independent of release type.

@gewarren gewarren Oct 14, 2022

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.

Suggested change
LTS and Standard releases differ only by support duration. The .NET team follows the same software engineering and release processes for both release types, including for security, compatibility, and reliability. Both releases may contain major new features and breaking changes. The .NET team aspires to enable straightforward migration from one release to another, independent of release type.
LTS and Standard Support releases differ only by support duration. The .NET team follows the same software engineering and release processes for both release types, including for security, compatibility, and reliability. Both releases may contain major new features and breaking changes. The .NET team aspires to enable straightforward migration from one release to another, independent of release type.
Comment thread release-policies.md Outdated

Functional improvements are typically very targeted, and may address the following:
* **Preview** releases are not supported but are offered for public testing and for the opportunity to give feedback.
* **Go-live** support enables users to deploy a pre-release build in production, and are supported by Microsoft. These are typically Release Candidate (RC) releases.

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.

Suggested change
* **Go-live** support enables users to deploy a pre-release build in production, and are supported by Microsoft. These are typically Release Candidate (RC) releases.
* **Go-live** support enables users to deploy a pre-release build in production, and are supported by Microsoft. These are typically release candidate (RC) releases.
Comment thread release-policies.md Outdated
Comment thread releases.md Outdated
@mairaw

mairaw commented Oct 14, 2022

Copy link
Copy Markdown
Contributor

I think standardizing on title case or all lowercase would be a question for @jamshedd and @richlander. Let me know the preference and I'll adjust accordingly on all PRs. It needs to be consistent.

@jamshedd

Copy link
Copy Markdown
Member

I think standardizing on title case or all lowercase would be a question for @jamshedd and @richlander. Let me know the preference and I'll adjust accordingly on all PRs. It needs to be consistent.

I think we need to keep this Long Term Support (LTS) and Standard Support with that capitalization in our content/website/etc. the one exception to this is the releases.json where the enums already use all lower case, so we'd keep that to be consistent with the rest of the file.

@gewarren

Copy link
Copy Markdown
Contributor

I think we need to keep this Long Term Support (LTS) and Standard Support with that capitalization in our content/website/etc. the one exception to this is the releases.json where the enums already use all lower case, so we'd keep that to be consistent with the rest of the file.

I'll go with that, but it does go against the Cloud & AI style guide. Also if we lower-case "standard support" it becomes less of a confusion with ".NET Standard", which is always capitalized.

@mairaw

mairaw commented Oct 14, 2022

Copy link
Copy Markdown
Contributor

Thanks for sharing that guidance @gewarren. We can standardize on lowercase across all materials. We just need to do a pass to ensure is all consistent. But I'll give the final word to @jamshedd.

@jamshedd

Copy link
Copy Markdown
Member

I think we need to keep this Long Term Support (LTS) and Standard Support with that capitalization in our content/website/etc. the one exception to this is the releases.json where the enums already use all lower case, so we'd keep that to be consistent with the rest of the file.

I'll go with that, but it does go against the Cloud & AI style guide. Also if we lower-case "standard support" it becomes less of a confusion with ".NET Standard", which is always capitalized.

Thanks for the pointer Genevieve. I don't think there's a real risk of anyone confusion .NET Standard (the target) and Standard Support (the support policy). I would stick with the capitalization as it exists.

mairaw and others added 4 commits October 19, 2022 18:02
Co-authored-by: Genevieve Warren <24882762+gewarren@users.noreply.github.com>
Comment thread release-notes/6.0/supported-os.md Outdated
# .NET 6 - Supported OS versions

[.NET 6](README.md) [is supported](https://github.com/dotnet/core/blob/main/microsoft-support.md) on multiple operating systems per their [lifecycle policy](../../os-lifecycle-policy.md).
[.NET 6](README.md) is an [LTS release](../../release-policies.md) and [is supported](../../microsoft-support.md) on multiple operating systems per their lifecycle policy.

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.

"per their lifecycle policy" is incorrect because it implies we follow the OS lifecycle (like Framework) which we don't. In reality we support the OS as long as the OS and .NET are both in support, whichever is shorter.
So I would recommend replacing this phrase with something like "per the OS support matrix defined for the release"

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I don't see it that way. The wording seems accurate and intuitive.

implies we follow the OS lifecycle (like Framework) which we don't

Almost no reader will come to this conclusion.

Comment thread release-policies.md Outdated
* **Release Candidate** releases have a go-live support that enables users to deploy a pre-release build in production and are supported by Microsoft.
* **Active** support is provided for the majority of the period after a release is generally available (GA). Functional and security improvements will be provided, including support for new operating system versions.
* **Maintenance** support is provided for the last six months of support. Improvements are limited to security fixes. Support for new operating system versions will be provided on a best-effort basis.
* **End of support** or end-of-life (EOL) marks the point where a release is no longer supported.

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.

Suggested change
* **End of support** or end-of-life (EOL) marks the point where a release is no longer supported.
* **End of support** or end-of-life (EOL) marks the point where a release no longer receives servicing updates and is no longer supported.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

I don't see that this addition is necessary. It is fully implied and called out in full detail in a later section.

Comment thread release-policies.md Outdated
Patches are announced in [release notes](release-notes/README.md), on the [.NET blog](https://devblogs.microsoft.com/dotnet/category/maintenance-and-updates/), and [dotnet/announcements](https://github.com/dotnet/announcements/labels/Monthly-Update).

The maintenance support period is the final 6 months of support for any release (Current or LTS). After the maintenance period ends, the release is out of support.
Breaking changes are not accepted during servicing, except (in the very rare case) to resolve critical issues, such as a security vulnerability.

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.

Suggested change
Breaking changes are not accepted during servicing, except (in the very rare case) to resolve critical issues, such as a security vulnerability.
Breaking changes are not accepted during servicing, except (in the very rare case) to resolve critical issues, such as a security vulnerability. Breaking changes are documented.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

This doesn't make much sense.

"We don't make breaking changes"

"Breaking changes are documented".

Comment thread release-policies.md Outdated
Comment thread release-policies.md Outdated

Functional improvements are typically very targeted, and may address the following:
* **Preview** releases are not supported but are offered for public testing and for the opportunity to give feedback.
* **Release Candidate** releases have a go-live support that enables users to deploy a pre-release build in production and are supported by Microsoft.

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.

"Release Candidate" should be changed to "Go-Live"

Comment thread release-policies.md Outdated
* **Release Candidate** releases have a go-live support that enables users to deploy a pre-release build in production and are supported by Microsoft.
* **Active** support is provided for the majority of the period after a release is generally available (GA). Functional and security improvements will be provided, including support for new operating system versions.
* **Maintenance** support is provided for the last six months of support. Improvements are limited to security fixes. Support for new operating system versions will be provided on a best-effort basis.
* **End of support** or end-of-life (EOL) marks the point where a release is no longer supported.

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.

"End of support" should be "End of life"

Comment thread release-policies.md Outdated
Co-authored-by: Jamshed Damkewala <jamshedd@users.noreply.github.com>
Comment thread release-policies.md Outdated
Comment thread release-notes/7.0/README.md Outdated
Comment thread release-notes/7.0/supported-os.md Outdated
Comment thread release-policies.md Outdated
Comment thread release-policies.md Outdated
Comment thread release-policies.md Outdated
Comment thread release-policies.md Outdated
Comment thread releases.md Outdated
@richlander richlander changed the title Switch to standard support releases Oct 27, 2022
@richlander
richlander merged commit e349085 into main Oct 27, 2022
@richlander
richlander deleted the sts branch October 27, 2022 17:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

8 participants