Merged
Conversation
Update our distros to remove old, EOL versions and add new versions.
The versions of SUSE and OpenSUSE 15 that are supported are actually quite modern, with things like glibc 2.31. It's safe to assume that the Rocky 8 packages will function just fine on these versions and this has been confirmed by installing the v3.4.1 Rocky 8 packages on SUSE 15.5. Leave OpenSUSE 12 on CentOS 7, since it's a much older version. Note that this update becomes relevant in the next release after v3.5, when we'll almost certainly have hit end of life for CentOS 7 and will want to remove it.
chrisd8088
approved these changes
Feb 9, 2024
chrisd8088
added a commit
to chrisd8088/git-lfs
that referenced
this pull request
Nov 11, 2024
We maintain a compatibility matrix of Linux distributions and versions in the DistroMap Ruby class in our script/lib/distro.rb source file, which is utilized by several scripts run by our GitHub Actions release workflow jobs when building and naming the Linux packages we publish on Packagecloud. In commit 5ed62ba in PR git-lfs#5647 we revised this matrix so as to reassign openSUSE Leap 15.5 and 15.6 as well as SUSE Linux Enterprise Server (SLES) 15 SP5 to the set of distribution versions that we consider to be compatible with the RPM packages we build for Red Hat Enterprise Linux (RHEL) 8, CentOS 8, and Rocky Linux 8. This works because the version of the GNU C library (glibc) provided by the RHEL 8 family of distributions is 2.28, while the version of glibc available on the more recent SUSE distributions is at least 2.31. The GNU C library keeps its ABI backwards-compatible, so any Git LFS binary we build against glibc v2.28 on RHEL/CentOS 8 should also be functional on the SUSE releases with glibc v2.31 or higher. In a subsequent commit in this PR we will update the matrix in our DistroMap Ruby class to remove Linux distribution versions that have reached the end of their regular support lifecycle and to add new versions of several distributions, including SLES 15 SP6. Prior to making these changes, though, we first reassign OpenSUSE Leap 15.6 to the set of distribution versions that we consider to be compatible with the RPM packages we build for RHEL 9 and Rocky Linux 9, as we would like to also include SLES 15 SP6 in the same set. Both of these recent SUSE distributions versions provide glibc version 2.38, which is newer than the glibc version 2.34 included in the RHEL 9 family of distributions. Thus a Git LFS binary we build against the ABI of glibc v2.34 on RHEL/Rocky Linux 9 should be functional on the latest SUSE releases as well. We have confirmed that this is the case by successfully running the full Git LFS test suite on both openSUSE Leap 15.6 and SLES 15 SP6 using a Git LFS v3.5.1 binary installed from the RPM we built RHEL 9 and Rocky Linux 9. Based on these results, we can move openSUSE Leap 15.6 into the set of distribution versions for which the RPM package we build for RHEL 9 and Rocky Linux 9 will be compatible.
chrisd8088
added a commit
to chrisd8088/git-lfs
that referenced
this pull request
Nov 11, 2024
We maintain a compatibility matrix of Linux distributions and versions
in the DistroMap Ruby class in our script/lib/distro.rb source file,
which is utilized by several scripts run by our GitHub Actions release
workflow jobs when building and naming the Linux packages we publish
on Packagecloud.
As we anticipate making a v3.6.0 release of the Git LFS client in
the near future, we first update the list of Linux distribution
versions for which we will build RPM and Debian packages, removing
those which have reached the end of their regular support lifecycles
and adding those which have become available since our v3.5.0 release.
As noted in a previous commit in this PR, we are adding SUSE Linux
Enterprise Server (SLES) 15 SP6 to the set of distribution versions
that we consider to be compatible with the RPM packages we build
for Red Hat Enterprise Linux (RHEL) 9 and Rocky Linux 9. This is
because the version of the GNU C library (glibc) provided by the
RHEL 9 family of distributions is 2.34, while the version of glibc
available on SLES 15 SP6 is 2.38, and any Git LFS binary we build
for the former will be functional with the latter as well.
While most of our updates are unexceptional, there are two notable
distribution versions that have reached the end of their regular support
lifecycles but which we leave in our matrix for the time being.
First, we leave the Debian 10 ("buster") release in our matrix
because it is the base for a number of other distribution versions
that have not yet reached the end of their regular support lifecycles.
In particular, Ubuntu 20.04 LTS (Focal Fossa) and the Linux Mint 20.x
series of releases will only reach the end of their regular support
periods in April 2025. Since our scripts generate Git LFS release
notes and links to the Packagecloud service which depend on the
name of the base component of each set of related distribution versions,
if we removed the "debian/buster" entry we would also have to rename
various other fields and or generate a "Debian 10" link in our release
notes which did not refer to a "debian/*" package. Hence we simply
leave the "debian/buster" entry in place until after April 2025, at
which point we will remove all the distribution versions based on
Debian 10.
Second, we do not remove the entire set of distribution versions
based on RHEL 7 because the last one to reach the end of its regular
support lifecycle, SLES 12 SP5, only did so very recently at the end
of last month. Further, other than a brief mention in PR git-lfs#5647,
we have not announced that we would no longer build any packages for
the RHEL 7 family of distributions. For this reason, we will leave
the SLES 12 SP5 entry and the base RHEL 7 entry in place for one final
Git LFS minor release cycle, after which they will be removed.
To clarify that further, we revise our comment tracking the support
lifecycle of SLES 12 SP5, which has previously included both the end
of the regular support period and the end of SUSE's Long Term Service
Pack Support (LTSS) for the release. However, our practice for all
other Linux distributions has been to only provide packages during the
regular support period, and not during any form of extended support as
may be offered by some commercial vendors. For instance, we stopped
providing packages for Ubuntu 18.04 LTS (Bionic Beaver) after the end
of its normal long-term support in May 2023, although ESM (Expanded
Security Maintenance) support is still available through April 2028.
We therefore we now remove any suggestion that we will continue to
support SLES 12 SP5 throughout its extended LTSS period.
chrisd8088
added a commit
to chrisd8088/git-lfs
that referenced
this pull request
Nov 11, 2024
We maintain a compatibility matrix of Linux distributions and versions
in the DistroMap Ruby class in our script/lib/distro.rb source file,
which is utilized by several scripts run by our GitHub Actions release
workflow jobs when building and naming the Linux packages we publish
on Packagecloud.
As we anticipate making a v3.6.0 release of the Git LFS client in
the near future, we first update the list of Linux distribution
versions for which we will build RPM and Debian packages, removing
those which have reached the end of their regular support lifecycles
and adding those which have become available since our v3.5.0 release.
As noted in a previous commit in this PR, we are adding SUSE Linux
Enterprise Server (SLES) 15 SP6 to the set of distribution versions
that we consider to be compatible with the RPM packages we build
for Red Hat Enterprise Linux (RHEL) 9 and Rocky Linux 9. This is
because the version of the GNU C library (glibc) provided by the
RHEL 9 family of distributions is 2.34, while the version of glibc
available on SLES 15 SP6 is 2.38, and any Git LFS binary we build
for the former will be functional with the latter as well.
While most of our updates are unexceptional, there are two notable
distribution versions that have reached the end of their regular support
lifecycles but which we leave in our matrix for the time being.
First, we leave the Debian 10 ("buster") release in our matrix
because it is the base for a number of other distribution versions
that have not yet reached the end of their regular support lifecycles.
In particular, Ubuntu 20.04 LTS (Focal Fossa) and the Linux Mint 20.x
series of releases will only reach the end of their regular support
periods in April 2025. Since our scripts generate Git LFS release
notes and links to the Packagecloud service which depend on the
name of the base component of each set of related distribution versions,
if we removed the "debian/buster" entry we would also have to rename
various other fields and or generate a "Debian 10" link in our release
notes which did not refer to a "debian/*" package. Hence we simply
leave the "debian/buster" entry in place until after April 2025, at
which point we will remove all the distribution versions based on
Debian 10.
Second, we do not remove the entire set of distribution versions
similar to RHEL 7 because the last one to reach the end of its regular
support lifecycle, SLES 12 SP5, only did so very recently at the end
of last month. Further, other than a brief mention in PR git-lfs#5647,
we have not announced that we would no longer build any packages for
this family of distributions. For this reason, we will leave the
SLES 12 SP5 entry and the base RHEL 7 entry in place for one final
Git LFS minor release cycle, after which they will be removed.
To clarify that further, we revise our comment tracking the support
lifecycle of SLES 12 SP5, which has previously included both the end
of the regular support period and the end of SUSE's Long Term Service
Pack Support (LTSS) for the release. However, our practice for all
other Linux distributions has been to only provide packages during the
regular support period, and not during any form of extended support as
may be offered by some commercial vendors. For instance, we stopped
providing packages for Ubuntu 18.04 LTS (Bionic Beaver) after the end
of its normal long-term support in May 2023, although ESM (Expanded
Security Maintenance) support is still available through April 2028.
We therefore we now remove any suggestion that we will continue to
support SLES 12 SP5 throughout its extended LTSS period.
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.
Update our distros to remove old, EOL versions and add new versions.
As part of this work, move our SLES and OpenSUSE 15 RPMs to use the Rocky 8 versions in preparation for a future CentOS 7 EOL.
/cc #5627