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

Add exceptional versions #2

Open
wants to merge 1 commit into
base: fix-supported-os
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 35 additions & 0 deletions release-notes/6.0/supported-os.json
Original file line number Diff line number Diff line change
Expand Up @@ -189,6 +189,12 @@
],
"unsupported-versions": [
"10"
],
"exceptional-versions": [
{
"version": "11",
"note": "Debian 11 is continued to be supported after EOL as it's used as [container base](https://github.com/dotnet/dotnet-docker/discussions/5710)."
}
]
},
{
Expand Down Expand Up @@ -356,6 +362,12 @@
"8.1",
"7-sp1"
],
"exceptional-versions": [
{
"version": "10-1507-e-lts",
"note": "Windows 10 1507 was explicitly never supported."
}
],
"notes": [
"The x64 emulator is supported on Windows 11 Arm64."
]
Expand All @@ -381,6 +393,16 @@
"20H2",
"2004"
],
"exceptional-versions": [
{
"version": "2012",
"note": "Windows Server 2012 is supported with ESU."
},
{
"version": "2012-R2",
"note": "Windows Server 2012 R2 is supported with ESU."
}
],
"notes": [
"Windows Server 2012 and 2012 R2 are supported with [Extended Security Updates](https://learn.microsoft.com/windows-server/get-started/extended-security-updates-overview)."
]
Expand All @@ -405,6 +427,19 @@
"20H2",
"2004",
"1607"
],
"exceptional-versions": [
{
"version": "2012",
"note": "Windows Server 2012 is supported with ESU."
},
{
"version": "2012-R2",
"note": "Windows Server 2012 R2 is supported with ESU."
}
],
"notes": [
"Windows Server 2012 and 2012 R2 are supported with [Extended Security Updates](https://learn.microsoft.com/windows-server/get-started/extended-security-updates-overview)."
]
}
]
Expand Down
35 changes: 35 additions & 0 deletions release-notes/7.0/supported-os.json
Original file line number Diff line number Diff line change
Expand Up @@ -184,6 +184,12 @@
],
"unsupported-versions": [
"10"
],
"exceptional-versions": [
{
"version": "11",
"note": "Debian 11 is continued to be supported after EOL as it's used as [container base](https://github.com/dotnet/dotnet-docker/discussions/5710)."
}
Comment on lines +187 to +192
Copy link
Owner Author

Choose a reason for hiding this comment

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

@richlander This is based on my assumption/understanding that the container image was based off from Debian 11 similar to .NET 6, so this would also have been true at EOL state.

Choose a reason for hiding this comment

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

This one looks good for 6.0 but not 7.0. 7.0 was already EOL when Debian 11 went EOL.

Copy link
Owner Author

@Falco20019 Falco20019 Aug 26, 2024

Choose a reason for hiding this comment

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

Ok, so the container images for .NET 7 were based on Debian 12 then? Thought I saw 11 somewhere. I know that .NET 6 uses Debian 11 and .NET 8 uses Debian 12.

11 is still listed as supported. So this exceptional entry is less about it changing at some point but about giving users context that there was something special about Debian 11/12 to begin with.

Choose a reason for hiding this comment

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

They were based on Debian 11, but since Debian 11 went EOL after .NET 7, this exception isn't important.

Copy link
Owner Author

@Falco20019 Falco20019 Aug 27, 2024

Choose a reason for hiding this comment

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

I see the field more as "noteworthy version" with added information about what makes this special, not just about "this has an effect on the lifecycle". Therefore, I would expect this to been there right from the get-go of the .NET version, not just when Debian 11 went EOL. Same reason why I added it to .NET 8 while Debian 12 is still in support.

Toolwise, it makes no difference for me, as I would not see a difference when checking for the EOL point in time, especially since I'm not checking EOL .NET versions anymore.

I agree with you that it's not important. So if you dislike it, I can also remove it. I only thought it might give people more background information on .NET that they might not otherwise find related to supported OS.

Choose a reason for hiding this comment

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

This is the same case as dotnet#9481 (comment).

When .NET 7 went EOL, Debian 11 was still supported by Debian maintainers. That's the final state of .NET 7 support, so no extra information is needed.

The tool should not check if "supported" OSes are actually still supported for EOL .NET versions.

Copy link
Owner Author

Choose a reason for hiding this comment

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

This comment is IMO not about a state that applied AFTER EOL but applied to that version even starting with 8.0.0. See

"exceptional-versions": [
{
"version": "12",
"note": "Debian 12 is continued to be supported after EOL as it's used as [container base](https://github.com/dotnet/dotnet-docker/discussions/5710)."
}
]
where we also show Debian 12 (which is currently Active, not EOL). The one in .NET 7 is also not for checking "supported" OSes (as .NET 7 is EOL itself) but about reflecting the file as it SHOULD have been when .NET 7 became EOL.

But I have no strong feelings on that, we can also just keep it as is.

Copy link

@richlander richlander Sep 6, 2024

Choose a reason for hiding this comment

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

Sorry ... I've been travelling so short on time.

The 8.0 example/change makes good sense. Fully on board.

It's the .NET 7 one that is different since Debian 11 was not supported after it's EOL since .NET 7 EOL came first. The big question is whether we would have needed to at this exception at .NET 7 EOL. I believe we would not have. Similarly, will we need to add the same exception, for Debian 12, at .NET 9 EOL. Also, likely not.

]
},
{
Expand Down Expand Up @@ -335,6 +341,12 @@
"8.1",
"7-sp1"
],
"exceptional-versions": [
{
"version": "10-1507-e-lts",
"note": "Windows 10 1507 was explicitly never supported."
}
],
"notes": [
"The x64 emulator is supported on Windows 11 Arm64."
]
Expand All @@ -358,6 +370,16 @@
"2012-R2",
"2012"
],
"exceptional-versions": [
{
"version": "2012",
"note": "Windows Server 2012 is supported with ESU."
},
{
"version": "2012-R2",
"note": "Windows Server 2012 R2 is supported with ESU."
}
],
"notes": [
"Windows Server 2012 and 2012 R2 are supported with [Extended Security Updates](https://learn.microsoft.com/windows-server/get-started/extended-security-updates-overview)."
]
Expand All @@ -377,6 +399,19 @@
"2016",
"2012-R2",
"2012"
],
"exceptional-versions": [
{
"version": "2012",
"note": "Windows Server 2012 is supported with ESU."
},
{
"version": "2012-R2",
"note": "Windows Server 2012 R2 is supported with ESU."
}
],
"notes": [
"Windows Server 2012 and 2012 R2 are supported with [Extended Security Updates](https://learn.microsoft.com/windows-server/get-started/extended-security-updates-overview)."
]
}
]
Expand Down
47 changes: 46 additions & 1 deletion release-notes/8.0/supported-os.json
Original file line number Diff line number Diff line change
Expand Up @@ -131,11 +131,16 @@
"Arm64",
"ppc64le",
"s390x",

"x64"
],
"supported-versions": [
"9"
],
"exceptional-versions": [
{
"version": "8",
"note": "CentOS Stream 8 was explicitly never supported."
}
Comment on lines +139 to +143
Copy link
Owner Author

Choose a reason for hiding this comment

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

@omajid From dotnet#9382 I am not fully sure why CentOS Stream 8 was not officially supported. Maybe you want to help here with giving a better reason besides what I was able to come up with.

Choose a reason for hiding this comment

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

We have a policy to not support an OS if it will go EOL within 6 months (or so) after a given .NET version ships. That rule is at play here.

https://blog.centos.org/2023/04/end-dates-are-coming-for-centos-stream-8-and-centos-linux-7/

]
},
{
Expand All @@ -154,6 +159,11 @@
"unsupported-versions": [
"11"
],
"exceptional-versions": [
{
"version": "12",
"note": "Debian 12 is continued to be supported after EOL as it's used as [container base](https://github.com/dotnet/dotnet-docker/discussions/5710)."
}
]
},
{
Expand Down Expand Up @@ -207,6 +217,12 @@
"9",
"8"
],
"exceptional-versions": [
{
"version": "7",
"note": "Red Hat Enterprise Linux 7 was explicitly never supported."
}
],
Comment on lines +220 to +225
Copy link
Owner Author

Choose a reason for hiding this comment

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

@richlander Maybe we want to give a better explanation here.

Choose a reason for hiding this comment

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

It was explicitly not supported due to glibc compatibility. When we moved from CentOS 7 to Ubuntu 16.04 as the compilation target, we dropped RHEL 7, CentOS 7, and any other distro in that version family.

Context: dotnet/runtime#83428

"notes": [
"RHEL-compatible derivatives are supported per [.NET Support](../../support.md)."
]
Expand Down Expand Up @@ -292,6 +308,12 @@
"unsupported-versions": [
"10-21h2-e"
],
"exceptional-versions": [
{
"version": "10-1507-e-lts",
"note": "Windows 10 1507 was explicitly never supported."
}
],
"notes": [
"The x64 emulator is supported on Windows 11 Arm64."
]
Expand All @@ -313,6 +335,16 @@
"2012-R2",
"2012"
],
"exceptional-versions": [
{
"version": "2012",
"note": "Windows Server 2012 is supported with ESU."
},
{
"version": "2012-R2",
"note": "Windows Server 2012 R2 is supported with ESU."
}
],
"notes": [
"Windows Server 2012 and 2012 R2 are supported with [Extended Security Updates](https://learn.microsoft.com/windows-server/get-started/extended-security-updates-overview)."
]
Expand All @@ -332,6 +364,19 @@
"2016",
"2012-R2",
"2012"
],
"exceptional-versions": [
{
"version": "2012",
"note": "Windows Server 2012 is supported with ESU."
},
{
"version": "2012-R2",
"note": "Windows Server 2012 R2 is supported with ESU."
}
],
"notes": [
"Windows Server 2012 and 2012 R2 are supported with [Extended Security Updates](https://learn.microsoft.com/windows-server/get-started/extended-security-updates-overview)."
]
}
]
Expand Down
23 changes: 23 additions & 0 deletions release-notes/9.0/supported-os.json
Original file line number Diff line number Diff line change
Expand Up @@ -281,6 +281,16 @@
"2012-R2",
"2012"
],
"exceptional-versions": [
{
"version": "2012",
"note": "Windows Server 2012 is supported with ESU."
},
{
"version": "2012-R2",
"note": "Windows Server 2012 R2 is supported with ESU."
}
],
"notes": [
"Windows Server 2012 and 2012 R2 are supported with [Extended Security Updates](https://learn.microsoft.com/windows-server/get-started/extended-security-updates-overview)."
]
Expand All @@ -300,6 +310,19 @@
"2016",
"2012-R2",
"2012"
],
"exceptional-versions": [
{
"version": "2012",
"note": "Windows Server 2012 is supported with ESU."
},
{
"version": "2012-R2",
"note": "Windows Server 2012 R2 is supported with ESU."
}
],
"notes": [
"Windows Server 2012 and 2012 R2 are supported with [Extended Security Updates](https://learn.microsoft.com/windows-server/get-started/extended-security-updates-overview)."
]
}
]
Expand Down