From 08e34d20002bab024e8686d3ac2e72cce47276a0 Mon Sep 17 00:00:00 2001 From: Mohini Date: Tue, 28 Jan 2025 15:22:19 -0500 Subject: [PATCH 1/8] Fixed the unsupported version notation and added support of dynamic fetching of supported and unsupported versions --- src/current/_data/supported_versions.csv | 6 ----- src/current/_data/unsupported_versions.csv | 14 ---------- .../_includes/sidebar-all-releases.json | 2 +- src/current/_includes/sidebar-releases.json | 2 +- src/current/releases/index.md | 27 ++++++++++++++++--- .../releases/release-support-policy.md | 2 +- src/current/releases/unsupported-versions.md | 23 +++++++++++++--- 7 files changed, 46 insertions(+), 30 deletions(-) delete mode 100644 src/current/_data/supported_versions.csv delete mode 100644 src/current/_data/unsupported_versions.csv diff --git a/src/current/_data/supported_versions.csv b/src/current/_data/supported_versions.csv deleted file mode 100644 index f3c991fb942..00000000000 --- a/src/current/_data/supported_versions.csv +++ /dev/null @@ -1,6 +0,0 @@ -major_version,release_date,maint_supp_exp_date,asst_supp_exp_date,last_ga_patch,initial_lts_patch,initial_lts_release_date,lts_maint_supp_exp_date,lts_asst_supp_exp_date,previous_version,crdb_branch_name -v23.2,2024-02-05,2025-02-05,2025-08-05,23.2.6,23.2.7,2024-07-08,2025-07-08,2026-07-08,v23.1,release-23.2 -v24.1,2024-05-20,2025-05-20,2025-11-20,24.1.5,24.1.6,2024-10-21,2025-10-21,2026-10-21,v23.2,release-24.1 -v24.2,2024-08-12,2025-02-12,N/A,N/A,N/A,N/A,N/A,N/A,v24.1,release-24.2 -v24.3,2024-11-18,2025-11-18,2026-05-18,N/A,N/A,N/A,N/A,N/A,v24.2,release-24.3 -v25.1,N/A,N/A,N/A,N/A,N/A,N/A,N/A,N/A,v24.2,release-24.3 \ No newline at end of file diff --git a/src/current/_data/unsupported_versions.csv b/src/current/_data/unsupported_versions.csv deleted file mode 100644 index 0412ade54a7..00000000000 --- a/src/current/_data/unsupported_versions.csv +++ /dev/null @@ -1,14 +0,0 @@ -major_version,release_date,maint_supp_exp_date,asst_supp_exp_date,last_ga_patch,initial_lts_patch,initial_lts_release_date,lts_maint_supp_exp_date,lts_asst_supp_exp_date,previous_version,crdb_branch_name -v1.0,2017-05-10,2018-05-10,2018-11-10,N/A,N/A,N/A,N/A,N/A,N/A,release-1.0 -v1.1,2017-10-12,2018-10-12,2019-04-12,N/A,N/A,N/A,N/A,N/A,v1.0,release-1.1 -v2.0,2018-04-04,2019-04-04,2019-10-04,N/A,N/A,N/A,N/A,N/A,v1.1,release-2.0 -v2.1,2018-10-30,2019-10-30,2020-04-30,N/A,N/A,N/A,N/A,N/A,v2.0,release-2.1 -v19.1,2019-04-30,2020-04-30,2020-10-30,N/A,N/A,N/A,N/A,N/A,v2.1,release-19.1 -v19.2,2019-11-12,2020-11-12,2021-05-12,N/A,N/A,N/A,N/A,N/A,v19.1,release-19.2 -v20.1,2020-05-12,2021-05-12,2021-11-12,N/A,N/A,N/A,N/A,N/A,v19.2,release-20.1 -v20.2,2020-11-10,2021-11-10,2022-05-10,N/A,N/A,N/A,N/A,N/A,v20.1,release-20.2 -v21.1,2021-05-18,2022-05-18,2022-11-18,N/A,N/A,N/A,N/A,N/A,v20.2,release-21.1 -v21.2,2021-11-16,2022-11-16,2023-05-16,N/A,N/A,N/A,N/A,N/A,v21.1,release-21.2 -v22.1,2022-05-24,2023-05-24,2023-11-24,N/A,N/A,N/A,N/A,N/A,v21.2,release-22.1 -v22.2,2022-12-05,2023-12-05,2024-06-05,N/A,N/A,N/A,N/A,N/A,v22.1,release-22.2 -v23.1,2023-05-15,2024-05-15,2024-11-15,23.1.11,23.1.12,2023-11-13,2024-11-13,2025-11-13,v22.2,release-23.1 \ No newline at end of file diff --git a/src/current/_includes/sidebar-all-releases.json b/src/current/_includes/sidebar-all-releases.json index d4df619a262..6074a7d3679 100644 --- a/src/current/_includes/sidebar-all-releases.json +++ b/src/current/_includes/sidebar-all-releases.json @@ -69,7 +69,7 @@ ] }, { - "title": "Unsupported versions", + "title": "Unsupported Versions", "urls": [ "/releases/unsupported-versions.html" ] diff --git a/src/current/_includes/sidebar-releases.json b/src/current/_includes/sidebar-releases.json index 0df726ab7c8..1484fbae75b 100644 --- a/src/current/_includes/sidebar-releases.json +++ b/src/current/_includes/sidebar-releases.json @@ -81,7 +81,7 @@ ] }, { - "title": "Unsupported versions", + "title": "Unsupported Versions", "urls": [ "/releases/unsupported-versions.html" ] diff --git a/src/current/releases/index.md b/src/current/releases/index.md index 1bc052c654c..d93ea8acac4 100644 --- a/src/current/releases/index.md +++ b/src/current/releases/index.md @@ -140,7 +140,7 @@ The following releases and their descriptions represent proposed plans that are {% assign released_versions = site.data.releases | map: "major_version" | uniq | reverse %} {% comment %} Fetch the list of the major versions of all releases that currently exist {% endcomment %} -{% assign versions = site.data.supported_versions | where_exp: "versions", "released_versions contains versions.major_version" | sort: "release_date" | reverse %} +{% assign versions = site.data.versions | where_exp: "versions", "released_versions contains versions.major_version" | sort: "release_date" | reverse %} {% comment %} Fetch all major versions (e.g., v21.2), sorted in reverse chronological order. {% endcomment %} {% assign latest_hotfix = site.data.releases | where_exp: "latest_hotfix", "latest_hotfix.major_version == site.versions['stable']" | where_exp: "latest_hotfix", "latest_hotfix.withdrawn != true" | sort: "release_date" | reverse | first %} @@ -152,7 +152,11 @@ The following releases and their descriptions represent proposed plans that are {% assign is_not_downloadable_message = "No longer available for download." %} -{% for v in versions %} {% comment %} Iterate through all major versions {% endcomment %} +{% assign current_date = "now" | date: "%Y-%m-%d" %} +{% for v in versions %} +{% comment %} Iterate through all major versions {% endcomment %} +{% assign maint_supp_exp_date = v.maint_supp_exp_date %} +{% assign asst_supp_exp_date = v.asst_supp_exp_date %} {% comment %} Determine if the major version is LTS and the patch component of the initial LTS patch, @@ -176,7 +180,21 @@ The following releases and their descriptions represent proposed plans that are {% assign lts_patch = lts_patch_string | times: 1 %}{% comment %}Cast string to integer {% endcomment %} {% endif %} {% endif %} + {% assign valid_release_date = false %} + {% if v.release_date != 'N/A' %} + {% assign valid_release_date = true %} + {% endif %} + + {% assign valid_maint_date = false %} + {% if v.maint_supp_exp_date != 'N/A' and v.maint_supp_exp_date >= current_date %} + {% assign valid_maint_date = true %} + {% endif %} + {% assign valid_asst_date = false %} + {% if v.asst_supp_exp_date == 'N/A' or v.asst_supp_exp_date >= current_date %} + {% assign valid_asst_date = true %} + {% endif %} + {% if valid_release_date and valid_maint_date and valid_asst_date %} ### {{ v.major_version }} {% if DEBUG == true %} @@ -400,7 +418,7 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi
- Windows 8 or higher is required. Windows downloads are **experimental**. Experimental downloads are not yet qualified for production use and not eligible for support or uptime SLA commitments, whether they are for testing releases or production releases. + Windows 8 or higher is required. Windows downloads are **experimental**. Experimental downloads are not yet qualified for production use and not eligible for support or uptime SLA commitments, whether they are for testing releases or production releases @@ -594,6 +612,7 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi {% endif %} {% comment %}if releases[0]{% endcomment %} {% endfor %} {% comment %}for s in sections {% endcomment %} + {% endif %} {% endfor %} {% comment %}for v in versions{% endcomment %} ## Licenses @@ -604,6 +623,6 @@ All binaries available on this page released prior to the release date of 24.3.0 To review the CCL, refer to the [CockroachDB Community License](https://www.cockroachlabs.com/cockroachdb-community-license) page. You can find the applicable Business Source License or third party licenses by reviewing these in the `licenses` folder for the applicable version of CockroachDB in the GitHub repository [cockroachdb/cockroach](https://github.com/cockroachdb/cockroach). See individual files for details. -## Unsupported versions +## Unsupported Versions [Here]({% link releases/unsupported-versions.md %}) are the versions of CockroachDB that are no longer supported diff --git a/src/current/releases/release-support-policy.md b/src/current/releases/release-support-policy.md index 14f82621070..ad6b51e4346 100644 --- a/src/current/releases/release-support-policy.md +++ b/src/current/releases/release-support-policy.md @@ -169,7 +169,7 @@ Innovation releases are not eligible for Assistance Support, and reach EOL at th *  : This major version will receive LTS patch releases, which will be listed on an additional row, upon their availability.
**  : This major version is an optional innovation release and will not receive receive LTS patch releases. Innovation releases are EOL when Maintenance Support ends.
-## Unsupported versions +## Unsupported Versions The following versions of CockroachDB are no longer supported. diff --git a/src/current/releases/unsupported-versions.md b/src/current/releases/unsupported-versions.md index 1e8cf9560b2..555cfd2e1d3 100644 --- a/src/current/releases/unsupported-versions.md +++ b/src/current/releases/unsupported-versions.md @@ -1,5 +1,5 @@ --- -title: Unsupported versions +title: Unsupported Versions summary: Versions of CockroachDB that are no longer supported toc: true docs_area: releases @@ -15,7 +15,7 @@ docs_area: releases {% assign released_versions = site.data.releases | map: "major_version" | uniq | reverse %} {% comment %} Fetch the list of the major versions of all releases that currently exist {% endcomment %} -{% assign versions = site.data.unsupported_versions | where_exp: "versions", "released_versions contains versions.major_version" | sort: "release_date" | reverse %} +{% assign versions = site.data.versions | where_exp: "versions", "released_versions contains versions.major_version" | sort: "release_date" | reverse %} {% comment %} Fetch all major versions (e.g., v21.2), sorted in reverse chronological order. {% endcomment %} {% assign latest_hotfix = site.data.releases | where_exp: "latest_hotfix", "latest_hotfix.major_version == site.versions['stable']" | where_exp: "latest_hotfix", "latest_hotfix.withdrawn != true" | sort: "release_date" | reverse | first %} @@ -26,8 +26,10 @@ docs_area: releases {% capture onclick_string %}onclick="{{ experimental_download_js }}"{% endcapture %} {% assign is_not_downloadable_message = "No longer available for download." %} - +{% assign current_date = "now" | date: "%Y-%m-%d" %} {% for v in versions %} {% comment %} Iterate through all major versions {% endcomment %} +{% assign maint_supp_exp_date = v.maint_supp_exp_date %} +{% assign asst_supp_exp_date = v.asst_supp_exp_date %} {% comment %} Determine if the major version is LTS and the patch component of the initial LTS patch, @@ -50,8 +52,22 @@ docs_area: releases {% capture lts_patch_string %}{{ v.initial_lts_patch | split: '.' | shift | shift }}{% endcapture %} {% assign lts_patch = lts_patch_string | times: 1 %}{% comment %}Cast string to integer {% endcomment %} {% endif %} + {% endif %} + {% assign valid_release_date = false %} + {% if v.release_date != 'N/A' %} + {% assign valid_release_date = true %} + {% endif %} + + {% assign invalid_maint_date = false %} + {% if v.maint_supp_exp_date != 'N/A' and v.maint_supp_exp_date <= current_date %} + {% assign invalid_maint_date = true %} {% endif %} + {% assign invalid_asst_date = false %} + {% if v.asst_supp_exp_date == 'N/A' or v.asst_supp_exp_date <= current_date %} + {% assign invalid_asst_date = true %} + {% endif %} + {% if valid_release_date and invalid_maint_date and invalid_asst_date %} ### {{ v.major_version }} {% if DEBUG == true %} @@ -469,4 +485,5 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi {% endif %} {% comment %}if releases[0]{% endcomment %} {% endfor %} {% comment %}for s in sections {% endcomment %} + {% endif %} {% endfor %} {% comment %}for v in versions{% endcomment %} From 4144342d0b0e065d43dbb28fa0bf4fd9bd204672 Mon Sep 17 00:00:00 2001 From: Mohini Date: Fri, 31 Jan 2025 06:29:20 -0500 Subject: [PATCH 2/8] added review changes --- src/current/releases/index.md | 41 ++++++++++++++----- .../releases/release-support-policy.md | 6 +-- src/current/releases/unsupported-versions.md | 25 ++++++++++- 3 files changed, 56 insertions(+), 16 deletions(-) diff --git a/src/current/releases/index.md b/src/current/releases/index.md index d93ea8acac4..59c3c0bb558 100644 --- a/src/current/releases/index.md +++ b/src/current/releases/index.md @@ -117,7 +117,7 @@ As of 2024, CockroachDB is released under a staged delivery process. New release | [v24.2](#v24-2) | Innovation | 2024-08-12 | | [v24.1](#v24-1) | Regular | 2024-05-20 | | [v23.2](#v23-2) | Regular | 2024-02-05 | -| [v23.1](https://www.cockroachlabs.com/docs/releases/unsupported-versions#v23-1) | Regular | 2023-05-15 | +| [v23.1](#v23-1) | Regular | 2023-05-15 | ### Upcoming releases @@ -181,20 +181,38 @@ The following releases and their descriptions represent proposed plans that are {% endif %} {% endif %} {% assign valid_release_date = false %} - {% if v.release_date != 'N/A' %} - {% assign valid_release_date = true %} + {% assign release_date_parsed = v.release_date | date: '%Y-%m-%d' %} + {% if release_date_parsed != '' and release_date_parsed != 'N/A' %} + {% assign valid_release_date = true %} {% endif %} {% assign valid_maint_date = false %} - {% if v.maint_supp_exp_date != 'N/A' and v.maint_supp_exp_date >= current_date %} - {% assign valid_maint_date = true %} + {% assign maint_date_parsed = v.maint_supp_exp_date | date: '%Y-%m-%d' %} + {% if maint_date_parsed != '' and maint_date_parsed != 'N/A' and maint_date_parsed >= current_date %} + {% assign valid_maint_date = true %} {% endif %} {% assign valid_asst_date = false %} - {% if v.asst_supp_exp_date == 'N/A' or v.asst_supp_exp_date >= current_date %} - {% assign valid_asst_date = true %} + {% assign asst_date_parsed = v.asst_supp_exp_date | date: '%Y-%m-%d' %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed >= current_date %} + {% assign valid_asst_date = true %} {% endif %} - {% if valid_release_date and valid_maint_date and valid_asst_date %} + + {% assign valid_lts_release = false %} + {% assign lts_maint_date_parsed = v.lts_maint_supp_exp_date | date: '%Y-%m-%d' %} + {% assign lts_asst_date_parsed = v.lts_asst_supp_exp_date | date: '%Y-%m-%d' %} + {% if lts_maint_date_parsed != '' and lts_maint_date_parsed != 'N/A' + and lts_asst_date_parsed != '' and lts_asst_date_parsed != 'N/A' + and (lts_maint_date_parsed >= current_date or lts_asst_date_parsed >= current_date) %} + {% assign valid_lts_release = true %} + {% endif %} + {% assign valid_normal_release = false %} + {% if valid_release_date and valid_maint_date and valid_asst_date %} + {% assign valid_normal_release = true %} + {% endif %} + + + {% if valid_normal_release or valid_lts_release %} ### {{ v.major_version }} {% if DEBUG == true %} @@ -418,7 +436,7 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi
- Windows 8 or higher is required. Windows downloads are **experimental**. Experimental downloads are not yet qualified for production use and not eligible for support or uptime SLA commitments, whether they are for testing releases or production releases + Windows 8 or higher is required. Windows downloads are **experimental**. Experimental downloads are not yet qualified for production use and not eligible for support or uptime SLA commitments, whether they are for testing releases or production releases.
@@ -623,6 +641,7 @@ All binaries available on this page released prior to the release date of 24.3.0 To review the CCL, refer to the [CockroachDB Community License](https://www.cockroachlabs.com/cockroachdb-community-license) page. You can find the applicable Business Source License or third party licenses by reviewing these in the `licenses` folder for the applicable version of CockroachDB in the GitHub repository [cockroachdb/cockroach](https://github.com/cockroachdb/cockroach). See individual files for details. -## Unsupported Versions -[Here]({% link releases/unsupported-versions.md %}) are the versions of CockroachDB that are no longer supported +## Unsupported versions + +Release notes for unsupported CockroachDB versions are found on [Unsupported Versions]({% link releases/unsupported-versions.md %}). diff --git a/src/current/releases/release-support-policy.md b/src/current/releases/release-support-policy.md index ad6b51e4346..4ea4e84d5e9 100644 --- a/src/current/releases/release-support-policy.md +++ b/src/current/releases/release-support-policy.md @@ -15,7 +15,7 @@ This page explains Cockroach Labs' policy for supporting [production releases]({ There are two major release types: [Regular and Innovation releases]({% link releases/index.md %}#release-types). Each offers a unique set of Support Types, which define the durations for each [support phase](#support-phases). -## Support Phases +## Support phases - **Maintenance Support**: Begins for a CockroachDB major version upon its [GA release]({% link releases/index.md %}#patch-releases). During this phase: - Cockroach Labs will produce regular patch releases that include critical security fixes and resolutions to problems identified by users. @@ -32,7 +32,7 @@ There are two major release types: [Regular and Innovation releases]({% link rel - A Regular release reaches unsupported at the Assistance Support phase's end date. - An Innovation releases reaches unsupported at the Maintenance Support phase's end date. -## Support Types +## Support types ### Regular releases @@ -169,7 +169,7 @@ Innovation releases are not eligible for Assistance Support, and reach EOL at th *  : This major version will receive LTS patch releases, which will be listed on an additional row, upon their availability.
**  : This major version is an optional innovation release and will not receive receive LTS patch releases. Innovation releases are EOL when Maintenance Support ends.
-## Unsupported Versions +## Unsupported versions The following versions of CockroachDB are no longer supported. diff --git a/src/current/releases/unsupported-versions.md b/src/current/releases/unsupported-versions.md index 555cfd2e1d3..80f0e44d3b9 100644 --- a/src/current/releases/unsupported-versions.md +++ b/src/current/releases/unsupported-versions.md @@ -4,7 +4,9 @@ summary: Versions of CockroachDB that are no longer supported toc: true docs_area: releases --- - +{{site.data.alerts.callout_danger}} +The CockroachDB versions on this page are no longer supported. For more information, refer to [Release Support Policy]({% link releases/release-support-policy.md %}#unsupported-versions). To download and learn about currently supported CockroachDB versions, refer to [CockroachDB Releases]({% link releases/index.md %}). +{{site.data.alerts.end}} ## Downloads {{ experimental_js_warning }} @@ -67,7 +69,26 @@ docs_area: releases {% if v.asst_supp_exp_date == 'N/A' or v.asst_supp_exp_date <= current_date %} {% assign invalid_asst_date = true %} {% endif %} - {% if valid_release_date and invalid_maint_date and invalid_asst_date %} + + {% assign is_not_lts_date = false %} + {% if v.lts_maint_supp_exp_date == 'N/A' and v.lts_asst_supp_exp_date == 'N/A' %} + {% assign is_not_lts_date = true %} + {% endif %} + + {% assign invalid_lts_release = false %} + {% assign lts_maint_date_parsed = v.lts_maint_supp_exp_date | date: '%Y-%m-%d' %} + {% assign lts_asst_date_parsed = v.lts_asst_supp_exp_date | date: '%Y-%m-%d' %} + {% if lts_maint_date_parsed != '' and lts_maint_date_parsed != 'N/A' + and lts_asst_date_parsed != '' and lts_asst_date_parsed != 'N/A' + and (lts_maint_date_parsed <= current_date and lts_asst_date_parsed <= current_date) %} + {% assign invalid_lts_release = true %} + {% endif %} + {% assign invalid_normal_release = false %} + {% if valid_release_date and invalid_maint_date and invalid_asst_date %} + {% assign invalid_normal_release = true %} + {% endif %} + + {% if (invalid_normal_release and is_not_lts_date) or invalid_lts_release %} ### {{ v.major_version }} {% if DEBUG == true %} From d73974e4f0497f2151faa48bd863e97b279fea51 Mon Sep 17 00:00:00 2001 From: Mohini Date: Fri, 31 Jan 2025 07:04:34 -0500 Subject: [PATCH 3/8] fixed liquid notation warning --- src/current/releases/index.md | 7 ++++++- src/current/releases/unsupported-versions.md | 13 +++++++++++-- 2 files changed, 17 insertions(+), 3 deletions(-) diff --git a/src/current/releases/index.md b/src/current/releases/index.md index 59c3c0bb558..4ebee81ed92 100644 --- a/src/current/releases/index.md +++ b/src/current/releases/index.md @@ -198,12 +198,17 @@ The following releases and their descriptions represent proposed plans that are {% assign valid_asst_date = true %} {% endif %} + {% assign maint_asst_date_valid = false %} + {% if lts_maint_date_parsed >= current_date or lts_asst_date_parsed >= current_date %} + {% assign maint_asst_date_valid = true %} + {% endif %} + {% assign valid_lts_release = false %} {% assign lts_maint_date_parsed = v.lts_maint_supp_exp_date | date: '%Y-%m-%d' %} {% assign lts_asst_date_parsed = v.lts_asst_supp_exp_date | date: '%Y-%m-%d' %} {% if lts_maint_date_parsed != '' and lts_maint_date_parsed != 'N/A' and lts_asst_date_parsed != '' and lts_asst_date_parsed != 'N/A' - and (lts_maint_date_parsed >= current_date or lts_asst_date_parsed >= current_date) %} + and maint_asst_date_valid %} {% assign valid_lts_release = true %} {% endif %} {% assign valid_normal_release = false %} diff --git a/src/current/releases/unsupported-versions.md b/src/current/releases/unsupported-versions.md index 80f0e44d3b9..7caf0967055 100644 --- a/src/current/releases/unsupported-versions.md +++ b/src/current/releases/unsupported-versions.md @@ -78,9 +78,13 @@ The CockroachDB versions on this page are no longer supported. For more informat {% assign invalid_lts_release = false %} {% assign lts_maint_date_parsed = v.lts_maint_supp_exp_date | date: '%Y-%m-%d' %} {% assign lts_asst_date_parsed = v.lts_asst_supp_exp_date | date: '%Y-%m-%d' %} + {% assign maint_asst_date_expired = false %} + {% if lts_maint_date_parsed <= current_date and lts_asst_date_parsed <= current_date %} + {% assign maint_asst_date_expired = true %} + {% endif %} {% if lts_maint_date_parsed != '' and lts_maint_date_parsed != 'N/A' and lts_asst_date_parsed != '' and lts_asst_date_parsed != 'N/A' - and (lts_maint_date_parsed <= current_date and lts_asst_date_parsed <= current_date) %} + and maint_asst_date_expired %} {% assign invalid_lts_release = true %} {% endif %} {% assign invalid_normal_release = false %} @@ -88,7 +92,12 @@ The CockroachDB versions on this page are no longer supported. For more informat {% assign invalid_normal_release = true %} {% endif %} - {% if (invalid_normal_release and is_not_lts_date) or invalid_lts_release %} + {% assign invalid_normal_release_not_lts = false %} + {% if invalid_normal_release and is_not_lts_date %} + {% assign invalid_normal_release_not_lts = true %} + {% endif %} + + {% if invalid_normal_release_not_lts or invalid_lts_release %} ### {{ v.major_version }} {% if DEBUG == true %} From 79ed49479379b161b691739a92e0e1207de55f99 Mon Sep 17 00:00:00 2001 From: Mohini Date: Mon, 3 Mar 2025 23:34:42 +0530 Subject: [PATCH 4/8] added LTS support condition --- src/current/releases/index.md | 324 +++++++++++-- src/current/releases/unsupported-versions.md | 475 ++++++++++++++----- 2 files changed, 630 insertions(+), 169 deletions(-) diff --git a/src/current/releases/index.md b/src/current/releases/index.md index 4ebee81ed92..f4ada7eeffa 100644 --- a/src/current/releases/index.md +++ b/src/current/releases/index.md @@ -169,12 +169,15 @@ The following releases and their descriptions represent proposed plans that are {% assign in_lts = false %} {% assign comparison = nil %} {% assign skippable = false %} + {% assign has_initial_lts_patch = false %} + {% if v.release_date != "N/A" and v.maint_supp_exp_date != "N/A" %} {% assign released = true %} {% if v.asst_supp_exp_date == "N/A" %} {% assign skippable = true %} {% elsif v.initial_lts_patch != "N/A" %} {% assign has_lts_releases = true %} + {% assign has_initial_lts_patch = true %} {% assign lts_link = ' (LTS) ' %} {% capture lts_patch_string %}{{ v.initial_lts_patch | split: '.' | shift | shift }}{% endcapture %} {% assign lts_patch = lts_patch_string | times: 1 %}{% comment %}Cast string to integer {% endcomment %} @@ -194,23 +197,29 @@ The following releases and their descriptions represent proposed plans that are {% assign valid_asst_date = false %} {% assign asst_date_parsed = v.asst_supp_exp_date | date: '%Y-%m-%d' %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed >= current_date %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} {% assign valid_asst_date = true %} {% endif %} - {% assign maint_asst_date_valid = false %} - {% if lts_maint_date_parsed >= current_date or lts_asst_date_parsed >= current_date %} - {% assign maint_asst_date_valid = true %} - {% endif %} - {% assign valid_lts_release = false %} {% assign lts_maint_date_parsed = v.lts_maint_supp_exp_date | date: '%Y-%m-%d' %} {% assign lts_asst_date_parsed = v.lts_asst_supp_exp_date | date: '%Y-%m-%d' %} + {% assign maint_asst_date_valid = false %} + + {% if lts_maint_date_parsed != '' and lts_maint_date_parsed != 'N/A' and lts_maint_date_parsed >= current_date %} + {% assign maint_asst_date_valid = true %} + {% endif %} + + {% if lts_asst_date_parsed != '' and lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} + {% assign maint_asst_date_valid = true %} + {% endif %} + {% if lts_maint_date_parsed != '' and lts_maint_date_parsed != 'N/A' and lts_asst_date_parsed != '' and lts_asst_date_parsed != 'N/A' and maint_asst_date_valid %} {% assign valid_lts_release = true %} {% endif %} + {% assign valid_normal_release = false %} {% if valid_release_date and valid_maint_date and valid_asst_date %} {% assign valid_normal_release = true %} @@ -254,7 +263,7 @@ Refer to [Major release types](#major-releases) before installing or upgrading f v.major_version == 'v22.1' or v.major_version == 'v22.2' or released == false %} -To learn what’s new in this release, refer to [Feature Highlights]({% link releases/{{ v.major_version }}.md %}#feature-highlights). +To learn what's new in this release, refer to [Feature Highlights]({% link releases/{{ v.major_version }}.md %}#feature-highlights). {% endunless %}
@@ -269,6 +278,56 @@ To learn what’s new in this release, refer to [Feature Highlights]({% link rel {% assign releases = site.data.releases | where_exp: "releases", "releases.major_version == v.major_version" | where_exp: "releases", "releases.release_type == s" | sort: "release_date" | reverse %} {% comment %} Fetch all releases for that major version based on release type (Production/Testing). {% endcomment %} + {% comment %} Filter and support check for individual releases {% endcomment %} + {% assign supported_releases = "" | split: "," %} + {% for r in releases %} + {% assign is_release_supported = false %} + + {% comment %} Extract patch version for comparison {% endcomment %} + {% assign release_version_parts = r.release_name | split: "." %} + {% assign release_patch_part = 0 %} + {% if release_version_parts.size > 2 %} + {% assign release_patch_part = release_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Extract LTS initial patch version for comparison {% endcomment %} + {% assign lts_version_parts = v.initial_lts_patch | split: "." %} + {% assign lts_patch_part = 0 %} + {% if lts_version_parts.size > 2 %} + {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Check if this is an LTS version with initial LTS patch defined {% endcomment %} + {% if has_initial_lts_patch %} + {% comment %} For versions from initial_lts_patch onward, check against lts_asst_supp_exp_date {% endcomment %} + {% if release_patch_part >= lts_patch_part %} + {% if lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} + {% assign is_release_supported = true %} + {% endif %} + {% else %} + {% comment %} For versions before initial_lts_patch, check against asst_supp_exp_date {% endcomment %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% assign is_release_supported = true %} + {% endif %} + {% endif %} + {% else %} + {% comment %} If no initial_lts_patch, just check against asst_supp_exp_date {% endcomment %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% assign is_release_supported = true %} + {% endif %} + {% endif %} + + {% comment %} Additional filtering criteria {% endcomment %} + {% if is_release_supported and + r.withdrawn != true and + r.cloud_only != true and + r.is_not_downloadable != true %} + {% assign supported_releases = supported_releases | push: r %} + {% endif %} + {% endfor %} + + {% comment %} Display supported releases for this version and section {% endcomment %} + {% comment %}Do a separate loop through the releases and for each release, copy some fields into some local v_ variables to use when we are not in a loop below{% endcomment %} {% assign v_linux_arm = false %} @@ -295,7 +354,7 @@ To learn what’s new in this release, refer to [Feature Highlights]({% link rel {% endif %} {% endfor %} - {% if releases[0] %} +{% if supported_releases.size > 0 %} #### {{ s }} Releases @@ -314,29 +373,54 @@ To learn what’s new in this release, refer to [Feature Highlights]({% link rel
{% for r in releases %} - - {% assign current_patch_string = '' %} - {% assign current_patch = nil %} - {% assign in_lts = false %} - {% if has_lts_releases == true and s == "Production" %} - {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} - {% assign current_patch = current_patch_string | times: 1 %}{% comment %}Cast string to integer {% endcomment %} - {% if current_patch == nil %} - Error: Could not determine the current patch. Giving up.
- {% break %}{% break %} + {% comment %} Determine if this release is supported based on our criteria {% endcomment %} + {% assign is_supported = false %} + + {% comment %} Extract patch version for comparison {% endcomment %} + {% assign release_version_parts = r.release_name | split: "." %} + {% assign release_patch_part = 0 %} + {% if release_version_parts.size > 2 %} + {% assign release_patch_part = release_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Extract LTS initial patch version for comparison {% endcomment %} + {% assign lts_version_parts = v.initial_lts_patch | split: "." %} + {% assign lts_patch_part = 0 %} + {% if lts_version_parts.size > 2 %} + {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} + {% endif %} + + {% assign is_lts_release = false %} + {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} + {% assign is_lts_release = true %} + {% endif %} + + {% if has_initial_lts_patch %} + {% if release_patch_part >= lts_patch_part %} + {% if lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} + {% else %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} + {% endif %} + {% else %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% assign is_supported = true %} {% endif %} - - {% assign comparison = current_patch | minus: lts_patch %} - {% unless comparison < 0 %} - {% assign in_lts = true %} - {% endunless %} + {% endif %} + + {% comment %} Skip releases that don't meet our criteria {% endcomment %} + {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true or is_supported == false %} + {% continue %} {% endif %} - {% if DEBUG == true %}{% endif %} + {% if DEBUG == true %}{% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% for r in releases %} + {% comment %} Determine if this release is supported based on our criteria {% endcomment %} + {% assign is_supported = false %} + + {% comment %} Extract patch version for comparison {% endcomment %} + {% assign release_version_parts = r.release_name | split: "." %} + {% assign release_patch_part = 0 %} + {% if release_version_parts.size > 2 %} + {% assign release_patch_part = release_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Extract LTS initial patch version for comparison {% endcomment %} + {% assign lts_version_parts = v.initial_lts_patch | split: "." %} + {% assign lts_patch_part = 0 %} + {% if lts_version_parts.size > 2 %} + {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} + {% endif %} + + {% assign is_lts_release = false %} + {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} + {% assign is_lts_release = true %} + {% endif %} + + {% if has_initial_lts_patch %} + {% if release_patch_part >= lts_patch_part %} + {% if lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} + {% else %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} + {% endif %} + {% else %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} + {% endif %} + + {% comment %} Skip releases that don't meet our criteria {% endcomment %} + {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true or is_supported == false %} + {% continue %} + {% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% for r in releases %} - + {% comment %} Determine if this release is supported based on our criteria {% endcomment %} + {% assign is_supported = false %} + + {% comment %} Extract patch version for comparison {% endcomment %} + {% assign release_version_parts = r.release_name | split: "." %} + {% assign release_patch_part = 0 %} + {% if release_version_parts.size > 2 %} + {% assign release_patch_part = release_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Extract LTS initial patch version for comparison {% endcomment %} + {% assign lts_version_parts = v.initial_lts_patch | split: "." %} + {% assign lts_patch_part = 0 %} + {% if lts_version_parts.size > 2 %} + {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} + {% endif %} + + {% assign is_lts_release = false %} + {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} + {% assign is_lts_release = true %} + {% endif %} + + {% if has_initial_lts_patch %} + {% if release_patch_part >= lts_patch_part %} + {% if lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} + {% else %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} + {% endif %} + {% else %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} + {% endif %} + + {% comment %} Skip releases that don't meet our criteria {% endcomment %} + {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true or is_supported == false %} + {% continue %} + {% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% for r in releases %} - - {% assign current_patch_string = '' %} - {% assign current_patch = nil %} - {% assign in_lts = false %} - {% if has_lts_releases == true and s == "Production" %} - {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} - {% assign current_patch = current_patch_string | times: 1 %}{% comment %}Cast string to integer {% endcomment %} - {% if current_patch == nil %} - Error: Could not determine the current patch. Giving up.
- {% break %}{% break %} + {% comment %} Determine if this release is supported based on our criteria {% endcomment %} + {% assign is_supported = false %} + + {% comment %} Extract patch version for comparison {% endcomment %} + {% assign release_version_parts = r.release_name | split: "." %} + {% assign release_patch_part = 0 %} + {% if release_version_parts.size > 2 %} + {% assign release_patch_part = release_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Extract LTS initial patch version for comparison {% endcomment %} + {% assign lts_version_parts = v.initial_lts_patch | split: "." %} + {% assign lts_patch_part = 0 %} + {% if lts_version_parts.size > 2 %} + {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} + {% endif %} + + {% assign is_lts_release = false %} + {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} + {% assign is_lts_release = true %} + {% endif %} + + {% if has_initial_lts_patch %} + {% if release_patch_part >= lts_patch_part %} + {% if lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} + {% else %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} {% endif %} - - {% assign comparison = current_patch | minus: lts_patch %} - {% unless comparison < 0 %} - {% assign in_lts = true %} - {% endunless %} + {% else %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} + {% endif %} + + {% comment %} Skip releases that don't meet our criteria {% endcomment %} + {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true or is_supported == false %} + {% continue %} {% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% comment %}Version column{% endcomment %} {% for r in releases %} + {% comment %} Determine if this release is supported based on our criteria {% endcomment %} + {% assign is_supported = false %} + + {% comment %} Extract patch version for comparison {% endcomment %} + {% assign release_version_parts = r.release_name | split: "." %} + {% assign release_patch_part = 0 %} + {% if release_version_parts.size > 2 %} + {% assign release_patch_part = release_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Extract LTS initial patch version for comparison {% endcomment %} + {% assign lts_version_parts = v.initial_lts_patch | split: "." %} + {% assign lts_patch_part = 0 %} + {% if lts_version_parts.size > 2 %} + {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} + {% endif %} + + {% assign is_lts_release = false %} + {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} + {% assign is_lts_release = true %} + {% endif %} + + {% if has_initial_lts_patch %} + {% if release_patch_part >= lts_patch_part %} + {% if lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} + {% else %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} + {% endif %} + {% else %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% assign is_supported = true %} + {% endif %} + {% endif %} + + {% comment %} Skip releases that don't meet our criteria {% endcomment %} + {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true or is_supported == false %} + {% continue %} + {% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% for r in releases %} - - {% assign current_patch_string = '' %} - {% assign current_patch = nil %} - {% assign in_lts = false %} - {% if has_lts_releases == true and s == "Production" %} - {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} - {% assign current_patch = current_patch_string | times: 1 %}{% comment %}Cast string to integer {% endcomment %} - {% if current_patch == nil %} - Error: Could not determine the current patch. Giving up.
- {% break %}{% break %} + {% comment %} Determine if this release is unsupported based on our criteria {% endcomment %} + {% assign is_unsupported = false %} + + {% comment %} Extract patch version for comparison {% endcomment %} + {% assign release_version_parts = r.release_name | split: "." %} + {% assign release_patch_part = 0 %} + {% if release_version_parts.size > 2 %} + {% assign release_patch_part = release_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Extract LTS initial patch version for comparison {% endcomment %} + {% assign lts_version_parts = v.initial_lts_patch | split: "." %} + {% assign lts_patch_part = 0 %} + {% if lts_version_parts.size > 2 %} + {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} + {% endif %} + + {% assign was_lts_release = false %} + {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} + {% assign was_lts_release = true %} + {% endif %} + + {% if has_initial_lts_patch %} + {% if release_patch_part >= lts_patch_part %} + {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% else %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% endif %} + {% else %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} {% endif %} - - {% assign comparison = current_patch | minus: lts_patch %} - {% unless comparison < 0 %} - {% assign in_lts = true %} - {% endunless %} {% endif %} - - {% if DEBUG == true %}{% endif %} + + {% comment %} Skip releases that don't meet our criteria {% endcomment %} + {% if is_unsupported == false %} + {% continue %} + {% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% comment %} Release date of the release. {% endcomment %} {% if r.withdrawn == true %} {% comment %} Suppress download links for withdrawn releases. {% endcomment %} @@ -275,13 +360,52 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi {% for r in releases %} + {% comment %} Determine if this release is unsupported based on our criteria {% endcomment %} + {% assign is_unsupported = false %} + + {% comment %} Extract patch version for comparison {% endcomment %} + {% assign release_version_parts = r.release_name | split: "." %} + {% assign release_patch_part = 0 %} + {% if release_version_parts.size > 2 %} + {% assign release_patch_part = release_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Extract LTS initial patch version for comparison {% endcomment %} + {% assign lts_version_parts = v.initial_lts_patch | split: "." %} + {% assign lts_patch_part = 0 %} + {% if lts_version_parts.size > 2 %} + {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} + {% endif %} + + {% assign was_lts_release = false %} + {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} + {% assign was_lts_release = true %} + {% endif %} + + {% if has_initial_lts_patch %} + {% if release_patch_part >= lts_patch_part %} + {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% else %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% endif %} + {% else %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% endif %} + + {% comment %} Skip releases that don't meet our criteria {% endcomment %} + {% if is_unsupported == false %} + {% continue %} + {% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% comment %} Release date of the release. {% endcomment %} {% if r.withdrawn == true %} {% comment %} Suppress withdrawn releases. {% endcomment %} @@ -333,14 +457,53 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi {% for r in releases %} - + {% comment %} Determine if this release is unsupported based on our criteria {% endcomment %} + {% assign is_unsupported = false %} + + {% comment %} Extract patch version for comparison {% endcomment %} + {% assign release_version_parts = r.release_name | split: "." %} + {% assign release_patch_part = 0 %} + {% if release_version_parts.size > 2 %} + {% assign release_patch_part = release_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Extract LTS initial patch version for comparison {% endcomment %} + {% assign lts_version_parts = v.initial_lts_patch | split: "." %} + {% assign lts_patch_part = 0 %} + {% if lts_version_parts.size > 2 %} + {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} + {% endif %} + + {% assign was_lts_release = false %} + {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} + {% assign was_lts_release = true %} + {% endif %} + + {% if has_initial_lts_patch %} + {% if release_patch_part >= lts_patch_part %} + {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% else %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% endif %} + {% else %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% endif %} + + {% comment %} Skip releases that don't meet our criteria {% endcomment %} + {% if is_unsupported == false %} + {% continue %} + {% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% comment %} Release date of the release. {% endcomment %} {% if r.withdrawn == true %} {% comment %} Suppress withdrawn releases. {% endcomment %} @@ -399,32 +562,55 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi {% for r in releases %} - - {% assign current_patch_string = '' %} - {% assign current_patch = nil %} - {% assign in_lts = false %} - {% if has_lts_releases == true and s == "Production" %} - {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} - {% assign current_patch = current_patch_string | times: 1 %}{% comment %}Cast string to integer {% endcomment %} - {% if current_patch == nil %} - Error: Could not determine the current patch. Giving up.
- {% break %}{% break %} + {% comment %} Determine if this release is unsupported based on our criteria {% endcomment %} + {% assign is_unsupported = false %} + + {% comment %} Extract patch version for comparison {% endcomment %} + {% assign release_version_parts = r.release_name | split: "." %} + {% assign release_patch_part = 0 %} + {% if release_version_parts.size > 2 %} + {% assign release_patch_part = release_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Extract LTS initial patch version for comparison {% endcomment %} + {% assign lts_version_parts = v.initial_lts_patch | split: "." %} + {% assign lts_patch_part = 0 %} + {% if lts_version_parts.size > 2 %} + {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} + {% endif %} + + {% assign was_lts_release = false %} + {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} + {% assign was_lts_release = true %} + {% endif %} + + {% if has_initial_lts_patch %} + {% if release_patch_part >= lts_patch_part %} + {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% else %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} {% endif %} - - {% assign comparison = current_patch | minus: lts_patch %} - {% unless comparison < 0 %} - {% assign in_lts = true %} - {% endunless %} + {% else %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% endif %} + + {% comment %} Skip releases that don't meet our criteria {% endcomment %} + {% if is_unsupported == false %} + {% continue %} {% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% comment %}Version column{% endcomment %} {% comment %}Release Date column{% endcomment %} @@ -452,6 +638,7 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi {% if show_notes_column == true %} {% comment %}Notes column{% endcomment %} {% for r in releases %} + {% comment %} Determine if this release is unsupported based on our criteria {% endcomment %} + {% assign is_unsupported = false %} + + {% comment %} Extract patch version for comparison {% endcomment %} + {% assign release_version_parts = r.release_name | split: "." %} + {% assign release_patch_part = 0 %} + {% if release_version_parts.size > 2 %} + {% assign release_patch_part = release_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Extract LTS initial patch version for comparison {% endcomment %} + {% assign lts_version_parts = v.initial_lts_patch | split: "." %} + {% assign lts_patch_part = 0 %} + {% if lts_version_parts.size > 2 %} + {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} + {% endif %} + + {% assign was_lts_release = false %} + {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} + {% assign was_lts_release = true %} + {% endif %} + + {% if has_initial_lts_patch %} + {% if release_patch_part >= lts_patch_part %} + {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% else %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% endif %} + {% else %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% endif %} + + {% comment %} Skip releases that don't meet our criteria {% endcomment %} + {% if is_unsupported == false %} + {% continue %} + {% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% comment %} Release date of the release. {% endcomment %} {% if r.withdrawn == true %} {% comment %} Suppress withdrawn releases. {% endcomment %} @@ -513,7 +740,7 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi - {% endif %} {% comment %}if releases[0]{% endcomment %} + {% endif %} {% comment %}if unsupported_releases.size > 0{% endcomment %} {% endfor %} {% comment %}for s in sections {% endcomment %} - {% endif %} -{% endfor %} {% comment %}for v in versions{% endcomment %} + {% endif %} +{% endfor %} {% comment %}for v in versions{% endcomment %} \ No newline at end of file From 1a69df37faec1935f1bdfd59dc13d75b1ac9d4f7 Mon Sep 17 00:00:00 2001 From: Mohini Date: Wed, 5 Mar 2025 15:07:46 +0530 Subject: [PATCH 5/8] added LTS condition to show only supported LTS version in downloads table --- src/current/releases/index.md | 514 +++------ src/current/releases/unsupported-versions.md | 1090 +++++++----------- 2 files changed, 613 insertions(+), 991 deletions(-) diff --git a/src/current/releases/index.md b/src/current/releases/index.md index f4ada7eeffa..8782b024fb3 100644 --- a/src/current/releases/index.md +++ b/src/current/releases/index.md @@ -130,6 +130,7 @@ The following releases and their descriptions represent proposed plans that are | v25.3 | Innovation | 2025 Q3 | | v25.4 | Regular | 2025 Q4 | + ## Downloads {{ experimental_js_warning }} @@ -151,82 +152,65 @@ The following releases and their descriptions represent proposed plans that are {% capture onclick_string %}onclick="{{ experimental_download_js }}"{% endcapture %} {% assign is_not_downloadable_message = "No longer available for download." %} +{% assign current_date = 'now' | date: '%Y-%m-%d' %} -{% assign current_date = "now" | date: "%Y-%m-%d" %} -{% for v in versions %} -{% comment %} Iterate through all major versions {% endcomment %} -{% assign maint_supp_exp_date = v.maint_supp_exp_date %} -{% assign asst_supp_exp_date = v.asst_supp_exp_date %} +{% for v in versions %} {% comment %} Iterate through all major versions {% endcomment %} {% comment %} - Determine if the major version is LTS and the patch component of the initial LTS patch, - or the major version is a skippable innovation release + Determine if the major version is supported and if it has LTS releases {% endcomment %} {% assign released = false %} {% assign has_lts_releases = false %} - {% assign lts_link_linux = '' %} + {% assign lts_link = '' %} {% assign lts_patch = nil %} - {% assign in_lts = false %} - {% assign comparison = nil %} - {% assign skippable = false %} - {% assign has_initial_lts_patch = false %} + {% assign is_supported = false %} + {% assign is_innovation = false %} + {% assign in_lts_period = false %} + {% assign ga_support_expired = false %} + {% comment %} Check if the version has been released {% endcomment %} {% if v.release_date != "N/A" and v.maint_supp_exp_date != "N/A" %} {% assign released = true %} + + {% comment %} Check if this is an innovation release {% endcomment %} {% if v.asst_supp_exp_date == "N/A" %} - {% assign skippable = true %} - {% elsif v.initial_lts_patch != "N/A" %} - {% assign has_lts_releases = true %} - {% assign has_initial_lts_patch = true %} - {% assign lts_link = ' (LTS) ' %} - {% capture lts_patch_string %}{{ v.initial_lts_patch | split: '.' | shift | shift }}{% endcapture %} - {% assign lts_patch = lts_patch_string | times: 1 %}{% comment %}Cast string to integer {% endcomment %} + {% assign is_innovation = true %} + + {% comment %} For innovation releases, check if still in maintenance support {% endcomment %} + {% if v.maint_supp_exp_date > current_date %} + {% assign is_supported = true %} + {% endif %} + {% else %} + {% comment %} For regular releases, check if in maintenance or assistance support {% endcomment %} + {% if v.asst_supp_exp_date > current_date %} + {% assign is_supported = true %} + {% else %} + {% assign ga_support_expired = true %} + {% endif %} + + {% comment %} Check if this version has LTS releases {% endcomment %} + {% if v.initial_lts_patch != "N/A" %} + {% assign has_lts_releases = true %} + {% assign lts_link = ' (LTS) ' %} + {% capture lts_patch_string %}{{ v.initial_lts_patch | split: '.' | shift | shift }}{% endcapture %} + {% assign lts_patch = lts_patch_string | times: 1 %} + + {% comment %} Check if we're in the LTS period for this version {% endcomment %} + {% if v.initial_lts_release_date != "N/A" and v.initial_lts_release_date <= current_date %} + {% assign in_lts_period = true %} + {% endif %} + + {% comment %} For LTS versions, update support based on LTS dates {% endcomment %} + {% if v.lts_asst_supp_exp_date != "N/A" and v.lts_asst_supp_exp_date > current_date %} + {% assign is_supported = true %} + {% endif %} + {% endif %} {% endif %} {% endif %} - {% assign valid_release_date = false %} - {% assign release_date_parsed = v.release_date | date: '%Y-%m-%d' %} - {% if release_date_parsed != '' and release_date_parsed != 'N/A' %} - {% assign valid_release_date = true %} - {% endif %} - - {% assign valid_maint_date = false %} - {% assign maint_date_parsed = v.maint_supp_exp_date | date: '%Y-%m-%d' %} - {% if maint_date_parsed != '' and maint_date_parsed != 'N/A' and maint_date_parsed >= current_date %} - {% assign valid_maint_date = true %} - {% endif %} - - {% assign valid_asst_date = false %} - {% assign asst_date_parsed = v.asst_supp_exp_date | date: '%Y-%m-%d' %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} - {% assign valid_asst_date = true %} - {% endif %} - - {% assign valid_lts_release = false %} - {% assign lts_maint_date_parsed = v.lts_maint_supp_exp_date | date: '%Y-%m-%d' %} - {% assign lts_asst_date_parsed = v.lts_asst_supp_exp_date | date: '%Y-%m-%d' %} - {% assign maint_asst_date_valid = false %} - - {% if lts_maint_date_parsed != '' and lts_maint_date_parsed != 'N/A' and lts_maint_date_parsed >= current_date %} - {% assign maint_asst_date_valid = true %} - {% endif %} - - {% if lts_asst_date_parsed != '' and lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} - {% assign maint_asst_date_valid = true %} - {% endif %} - - {% if lts_maint_date_parsed != '' and lts_maint_date_parsed != 'N/A' - and lts_asst_date_parsed != '' and lts_asst_date_parsed != 'N/A' - and maint_asst_date_valid %} - {% assign valid_lts_release = true %} - {% endif %} - - {% assign valid_normal_release = false %} - {% if valid_release_date and valid_maint_date and valid_asst_date %} - {% assign valid_normal_release = true %} - {% endif %} +{% comment %} Only display supported versions {% endcomment %} +{% if is_supported %} - {% if valid_normal_release or valid_lts_release %} ### {{ v.major_version }} {% if DEBUG == true %} @@ -239,17 +223,19 @@ The following releases and their descriptions represent proposed plans that are has_lts_releases: {{ has_lts_releases }}
v.release_date: {{ v.release_date }}
v.initial_lts_release_date: {{ v.initial_lts_release_date }}
- skippable: {{ skippable }}

+ is_innovation: {{ is_innovation }}
+ in_lts_period: {{ in_lts_period }}
+ ga_support_expired: {{ ga_support_expired }}

{% endif %} {% if released == false %} CockroachDB {{ page.major_version }} is in active development and is not yet supported. The following [testing releases]({% link releases/index.md %}#release-types) are intended for testing and experimentation only, and are not qualified for production environments or eligible for support or uptime SLA commitments. When CockroachDB {{ page.major_version }} is Generally Available (GA), production releases will also be announced on this page. {% else %} -CockroachDB {{ v.major_version }} is {% if skippable == true %}an [Innovation release]({% link releases/release-support-policy.md %}#innovation-releases) that is optional for CockroachDB {{ site.data.products.advanced }}, CockroachDB {{ site.data.products.standard }}, and CockroachDB {{ site.data.products.core }} but required for CockroachDB {{ site.data.products.basic }}.{% else %}a required [Regular release]({% link releases/release-support-policy.md %}#regular-releases).{% endif %}{% if released == false %} It is still in development and not yet supported.{% endif %}{% unless latest_full_production_version.release_name != v.major_version %} CockroachDB {{ latest_full_production_version.release_name }} is the latest supported version.{% endunless %} To learn more, refer to [CockroachDB {{ latest.major_version }} Release Notes]({% link releases/{{ v.major_version }}.md %}). +CockroachDB {{ v.major_version }} is {% if is_innovation == true %}an [Innovation release]({% link releases/release-support-policy.md %}#innovation-releases) that is optional for CockroachDB {{ site.data.products.advanced }}, CockroachDB {{ site.data.products.standard }}, and CockroachDB {{ site.data.products.core }} but required for CockroachDB {{ site.data.products.basic }}.{% else %}a required [Regular release]({% link releases/release-support-policy.md %}#regular-releases).{% endif %}{% if released == false %} It is still in development and not yet supported.{% endif %}{% unless latest_full_production_version.release_name != v.major_version %} CockroachDB {{ latest_full_production_version.release_name }} is the latest supported version.{% endunless %} To learn more, refer to [CockroachDB {{ latest.major_version }} Release Notes]({% link releases/{{ v.major_version }}.md %}). + {% endif %} Refer to [Major release types](#major-releases) before installing or upgrading for release support details. -{% comment %}Some old pages don't have feature highlights and won't get LTS{% endcomment %} {% unless v.major_version == 'v1.0' or v.major_version == 'v1.1' or v.major_version == 'v2.0' or @@ -278,60 +264,51 @@ To learn what's new in this release, refer to [Feature Highlights]({% link relea {% assign releases = site.data.releases | where_exp: "releases", "releases.major_version == v.major_version" | where_exp: "releases", "releases.release_type == s" | sort: "release_date" | reverse %} {% comment %} Fetch all releases for that major version based on release type (Production/Testing). {% endcomment %} - {% comment %} Filter and support check for individual releases {% endcomment %} - {% assign supported_releases = "" | split: "," %} - {% for r in releases %} - {% assign is_release_supported = false %} - - {% comment %} Extract patch version for comparison {% endcomment %} - {% assign release_version_parts = r.release_name | split: "." %} - {% assign release_patch_part = 0 %} - {% if release_version_parts.size > 2 %} - {% assign release_patch_part = release_version_parts[2] | times: 1 %} - {% endif %} - - {% comment %} Extract LTS initial patch version for comparison {% endcomment %} - {% assign lts_version_parts = v.initial_lts_patch | split: "." %} - {% assign lts_patch_part = 0 %} - {% if lts_version_parts.size > 2 %} - {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} - {% endif %} + {% comment %} Filter the releases to only include supported ones {% endcomment %} + {% assign supported_releases = "" | split: "" %} + {% for r in releases %} + {% assign is_release_supported = false %} + + {% comment %} For versions with LTS {% endcomment %} + {% if has_lts_releases and s == "Production" %} + {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} + {% assign current_patch = current_patch_string | times: 1 %} - {% comment %} Check if this is an LTS version with initial LTS patch defined {% endcomment %} - {% if has_initial_lts_patch %} - {% comment %} For versions from initial_lts_patch onward, check against lts_asst_supp_exp_date {% endcomment %} - {% if release_patch_part >= lts_patch_part %} - {% if lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} - {% assign is_release_supported = true %} - {% endif %} - {% else %} - {% comment %} For versions before initial_lts_patch, check against asst_supp_exp_date {% endcomment %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% if in_lts_period and ga_support_expired %} + {% comment %} We are in LTS period, only show LTS releases {% endcomment %} + {% if current_patch >= lts_patch %} + {% comment %} This is an LTS release, check against LTS dates {% endcomment %} + {% if v.lts_asst_supp_exp_date > current_date %} {% assign is_release_supported = true %} {% endif %} {% endif %} {% else %} - {% comment %} If no initial_lts_patch, just check against asst_supp_exp_date {% endcomment %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% comment %} Not yet in LTS period, check regular support dates {% endcomment %} + {% if v.asst_supp_exp_date > current_date %} {% assign is_release_supported = true %} {% endif %} {% endif %} - - {% comment %} Additional filtering criteria {% endcomment %} - {% if is_release_supported and - r.withdrawn != true and - r.cloud_only != true and - r.is_not_downloadable != true %} - {% assign supported_releases = supported_releases | push: r %} + {% elsif is_innovation %} + {% comment %} For innovation releases, only show if within maintenance support {% endcomment %} + {% if v.maint_supp_exp_date > current_date %} + {% assign is_release_supported = true %} {% endif %} - {% endfor %} - - {% comment %} Display supported releases for this version and section {% endcomment %} - -{% comment %}Do a separate loop through the releases and for each release, copy some fields into some local v_ variables to use when we are not in a loop below{% endcomment %} + {% else %} + {% comment %} For regular releases, show if within assistance support {% endcomment %} + {% if v.asst_supp_exp_date > current_date %} + {% assign is_release_supported = true %} + {% endif %} + {% endif %} + + {% comment %} Don't include withdrawn releases in the supported list {% endcomment %} + {% if r.withdrawn != true and is_release_supported %} + {% assign supported_releases = supported_releases | push: r %} + {% endif %} + {% endfor %} + {% comment %}Do a separate loop through the filtered releases and for each release, copy some fields into some local v_ variables to use when we are not in a loop below{% endcomment %} {% assign v_linux_arm = false %} - {% for r in releases %} + {% for r in supported_releases %} {% if r.linux.linux_arm == true %} {% assign v_linux_arm = true %} {% break %} @@ -339,7 +316,7 @@ To learn what's new in this release, refer to [Feature Highlights]({% link relea {% endfor %} {% assign v_mac_arm = false %} - {% for r in releases %} + {% for r in supported_releases %} {% if r.mac.mac_arm == true %} {% assign v_mac_arm = true %} {% break %} @@ -347,14 +324,14 @@ To learn what's new in this release, refer to [Feature Highlights]({% link relea {% endfor %} {% assign v_docker_arm = false %} - {% for r in releases %} - {% if r.docker.docker_arm == true %} + {% for r in supported_releases %} + {% if r.docker.docker_arm == true %} {% assign v_docker_arm = true %} {% break %} {% endif %} {% endfor %} -{% if supported_releases.size > 0 %} + {% if supported_releases.size > 0 %} #### {{ s }} Releases @@ -372,68 +349,43 @@ To learn what's new in this release, refer to [Feature Highlights]({% link relea
- {% for r in releases %} - {% comment %} Determine if this release is supported based on our criteria {% endcomment %} - {% assign is_supported = false %} - - {% comment %} Extract patch version for comparison {% endcomment %} - {% assign release_version_parts = r.release_name | split: "." %} - {% assign release_patch_part = 0 %} - {% if release_version_parts.size > 2 %} - {% assign release_patch_part = release_version_parts[2] | times: 1 %} - {% endif %} - - {% comment %} Extract LTS initial patch version for comparison {% endcomment %} - {% assign lts_version_parts = v.initial_lts_patch | split: "." %} - {% assign lts_patch_part = 0 %} - {% if lts_version_parts.size > 2 %} - {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} - {% endif %} - - {% assign is_lts_release = false %} - {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} - {% assign is_lts_release = true %} - {% endif %} - - {% if has_initial_lts_patch %} - {% if release_patch_part >= lts_patch_part %} - {% if lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} - {% else %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} - {% endif %} - {% else %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} - {% assign is_supported = true %} + {% for r in supported_releases %} + + {% assign current_patch_string = '' %} + {% assign current_patch = nil %} + {% assign in_lts = false %} + {% if has_lts_releases == true and s == "Production" %} + {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} + {% assign current_patch = current_patch_string | times: 1 %}{% comment %}Cast string to integer {% endcomment %} + {% if current_patch == nil %} + Error: Could not determine the current patch. Giving up.
+ {% break %}{% break %} {% endif %} - {% endif %} - - {% comment %} Skip releases that don't meet our criteria {% endcomment %} - {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true or is_supported == false %} - {% continue %} + + {% assign comparison = current_patch | minus: lts_patch %} + {% unless comparison < 0 %} + {% assign in_lts = true %} + {% endunless %} {% endif %} - {% if DEBUG == true %}{% endif %} + {% if DEBUG == true %}{% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% comment %} Release date of the release. {% endcomment %} {% if r.withdrawn == true %} {% comment %} Suppress download links for withdrawn releases. {% endcomment %} - {% comment %}covers both Intel and ARM columns {% endcomment %} + {% comment %}covers both Intel and ARM columns {% endcomment %} {% continue %} {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} - + {% continue %} {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} - + {% continue %} {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} - {% for r in releases %} - {% comment %} Determine if this release is supported based on our criteria {% endcomment %} - {% assign is_supported = false %} - - {% comment %} Extract patch version for comparison {% endcomment %} - {% assign release_version_parts = r.release_name | split: "." %} - {% assign release_patch_part = 0 %} - {% if release_version_parts.size > 2 %} - {% assign release_patch_part = release_version_parts[2] | times: 1 %} - {% endif %} - - {% comment %} Extract LTS initial patch version for comparison {% endcomment %} - {% assign lts_version_parts = v.initial_lts_patch | split: "." %} - {% assign lts_patch_part = 0 %} - {% if lts_version_parts.size > 2 %} - {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} - {% endif %} - - {% assign is_lts_release = false %} - {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} - {% assign is_lts_release = true %} - {% endif %} - - {% if has_initial_lts_patch %} - {% if release_patch_part >= lts_patch_part %} - {% if lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} - {% else %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} - {% endif %} - {% else %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} - {% endif %} - - {% comment %} Skip releases that don't meet our criteria {% endcomment %} - {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true or is_supported == false %} - {% continue %} + {% for r in supported_releases %} + {% assign current_patch_string = '' %} + {% assign current_patch = nil %} + {% assign in_lts = false %} + {% if has_lts_releases == true and s == "Production" %} + {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} + {% assign current_patch = current_patch_string | times: 1 %} + {% assign comparison = current_patch | minus: lts_patch %} + {% unless comparison < 0 %} + {% assign in_lts = true %} + {% endunless %} {% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% comment %} Release date of the release. {% endcomment %} {% if r.withdrawn == true %} {% comment %} Suppress withdrawn releases. {% endcomment %} - {% comment %}covers both Intel and ARM columns {% endcomment %} + {% comment %}covers both Intel and ARM columns {% endcomment %} {% continue %} {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} - + {% continue %} {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} - + {% continue %} {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} - {% for r in releases %} - {% comment %} Determine if this release is supported based on our criteria {% endcomment %} - {% assign is_supported = false %} - - {% comment %} Extract patch version for comparison {% endcomment %} - {% assign release_version_parts = r.release_name | split: "." %} - {% assign release_patch_part = 0 %} - {% if release_version_parts.size > 2 %} - {% assign release_patch_part = release_version_parts[2] | times: 1 %} - {% endif %} - - {% comment %} Extract LTS initial patch version for comparison {% endcomment %} - {% assign lts_version_parts = v.initial_lts_patch | split: "." %} - {% assign lts_patch_part = 0 %} - {% if lts_version_parts.size > 2 %} - {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} - {% endif %} - - {% assign is_lts_release = false %} - {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} - {% assign is_lts_release = true %} - {% endif %} - - {% if has_initial_lts_patch %} - {% if release_patch_part >= lts_patch_part %} - {% if lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} - {% else %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} - {% endif %} - {% else %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} - {% endif %} - - {% comment %} Skip releases that don't meet our criteria {% endcomment %} - {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true or is_supported == false %} - {% continue %} + {% for r in supported_releases %} + {% assign current_patch_string = '' %} + {% assign current_patch = nil %} + {% assign in_lts = false %} + {% if has_lts_releases == true and s == "Production" %} + {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} + {% assign current_patch = current_patch_string | times: 1 %} + {% assign comparison = current_patch | minus: lts_patch %} + {% unless comparison < 0 %} + {% assign in_lts = true %} + {% endunless %} {% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% comment %} Release date of the release. {% endcomment %} {% if r.withdrawn == true %} {% comment %} Suppress withdrawn releases. {% endcomment %} - {% comment %}covers both Intel and ARM columns {% endcomment %} + {% continue %} {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} - + {% continue %} {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} - + {% continue %} {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} - {% for r in releases %} - {% comment %} Determine if this release is supported based on our criteria {% endcomment %} - {% assign is_supported = false %} - - {% comment %} Extract patch version for comparison {% endcomment %} - {% assign release_version_parts = r.release_name | split: "." %} - {% assign release_patch_part = 0 %} - {% if release_version_parts.size > 2 %} - {% assign release_patch_part = release_version_parts[2] | times: 1 %} - {% endif %} - - {% comment %} Extract LTS initial patch version for comparison {% endcomment %} - {% assign lts_version_parts = v.initial_lts_patch | split: "." %} - {% assign lts_patch_part = 0 %} - {% if lts_version_parts.size > 2 %} - {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} - {% endif %} - - {% assign is_lts_release = false %} - {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} - {% assign is_lts_release = true %} - {% endif %} - - {% if has_initial_lts_patch %} - {% if release_patch_part >= lts_patch_part %} - {% if lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} - {% else %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} + {% for r in supported_releases %} + + {% assign current_patch_string = '' %} + {% assign current_patch = nil %} + {% assign in_lts = false %} + {% if has_lts_releases == true and s == "Production" %} + {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} + {% assign current_patch = current_patch_string | times: 1 %} + {% if current_patch == nil %} + Error: Could not determine the current patch. Giving up.
+ {% break %}{% break %} {% endif %} - {% else %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} - {% endif %} - - {% comment %} Skip releases that don't meet our criteria {% endcomment %} - {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true or is_supported == false %} - {% continue %} + + {% assign comparison = current_patch | minus: lts_patch %} + {% unless comparison < 0 %} + {% assign in_lts = true %} + {% endunless %} {% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} {% comment %}Version column{% endcomment %} - {% for r in releases %} - {% comment %} Determine if this release is supported based on our criteria {% endcomment %} - {% assign is_supported = false %} - - {% comment %} Extract patch version for comparison {% endcomment %} - {% assign release_version_parts = r.release_name | split: "." %} - {% assign release_patch_part = 0 %} - {% if release_version_parts.size > 2 %} - {% assign release_patch_part = release_version_parts[2] | times: 1 %} - {% endif %} - - {% comment %} Extract LTS initial patch version for comparison {% endcomment %} - {% assign lts_version_parts = v.initial_lts_patch | split: "." %} - {% assign lts_patch_part = 0 %} - {% if lts_version_parts.size > 2 %} - {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} - {% endif %} - - {% assign is_lts_release = false %} - {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} - {% assign is_lts_release = true %} - {% endif %} - - {% if has_initial_lts_patch %} - {% if release_patch_part >= lts_patch_part %} - {% if lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} - {% else %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} - {% endif %} - {% else %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} - {% assign is_supported = true %} - {% endif %} - {% endif %} - - {% comment %} Skip releases that don't meet our criteria {% endcomment %} - {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true or is_supported == false %} - {% continue %} + {% for r in supported_releases %} + {% assign current_patch_string = '' %} + {% assign current_patch = nil %} + {% assign in_lts = false %} + {% if has_lts_releases == true and s == "Production" %} + {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} + {% assign current_patch = current_patch_string | times: 1 %} + {% assign comparison = current_patch | minus: lts_patch %} + {% unless comparison < 0 %} + {% assign in_lts = true %} + {% endunless %} {% endif %} {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} + {% if v_linux_arm == true %} @@ -258,489 +181,354 @@ CockroachDB {{ v.major_version }} is no longer supported as of {{ v.asst_supp_ex - {% for r in releases %} - {% comment %} Determine if this release is unsupported based on our criteria {% endcomment %} - {% assign is_unsupported = false %} - - {% comment %} Extract patch version for comparison {% endcomment %} - {% assign release_version_parts = r.release_name | split: "." %} - {% assign release_patch_part = 0 %} - {% if release_version_parts.size > 2 %} - {% assign release_patch_part = release_version_parts[2] | times: 1 %} - {% endif %} - - {% comment %} Extract LTS initial patch version for comparison {% endcomment %} - {% assign lts_version_parts = v.initial_lts_patch | split: "." %} - {% assign lts_patch_part = 0 %} - {% if lts_version_parts.size > 2 %} - {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} - {% endif %} - - {% assign was_lts_release = false %} - {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} - {% assign was_lts_release = true %} - {% endif %} - - {% if has_initial_lts_patch %} - {% if release_patch_part >= lts_patch_part %} - {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} - {% assign is_unsupported = true %} + {% for r in unsupported_releases %} + + {% assign current_patch_string = '' %} + {% assign current_patch = nil %} + {% assign in_lts = false %} + {% if has_lts_releases == true and s == "Production" %} + {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} + {% assign current_patch = current_patch_string | times: 1 %}{% comment %}Cast string to integer {% endcomment %} + {% if current_patch == nil %} + Error: Could not determine the current patch. Giving up.
+ {% break %}{% break %} + {% endif %} + + {% assign comparison = current_patch | minus: lts_patch %} + {% unless comparison < 0 %} + {% assign in_lts = true %} + {% endunless %} {% endif %} - {% else %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} - {% assign is_unsupported = true %} + + + + + {% comment %} Release date of the release. {% endcomment %} + {% if r.withdrawn == true %} {% comment %} Suppress download links for withdrawn releases. {% endcomment %} + {% comment %}covers both Intel and ARM columns {% endcomment %} + {% continue %} + {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} + + {% continue %} + {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} + + {% continue %} + {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} + {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} - - {% comment %} Release date of the release. {% endcomment %} - {% if r.withdrawn == true %} {% comment %} Suppress download links for withdrawn releases. {% endcomment %} - {% comment %}covers both Intel and ARM columns {% endcomment %} - {% continue %} - {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} - - {% continue %} - {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} - - {% continue %} - {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} - + {% endif %} {% endif %} - - {% endif %} + + {% endfor %} {% comment %}Releases {% endcomment %} + +
current_patch: {{ current_patch }}
lts_patch: {{ lts_patch }}
r.release_name: {{ r.release_name }}
lts_link: {{ lts_link }}
in_lts: {{ in_lts }}
current_patch: {{ release_patch_part }}
lts_patch: {{ lts_patch_part }}
r.release_name: {{ r.release_name }}
lts_link: {{ lts_link }}
is_lts_release: {{ is_lts_release }}
- {{ r.release_name }}{% if in_lts == true %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r, decorate with link about LTS if applicable. {% endcomment %} + {{ r.release_name }}{% if is_lts_release %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r, decorate with link about LTS if applicable. {% endcomment %} {% if r.release_name == latest_hotfix.release_name %} Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} {% endif %} @@ -395,10 +479,52 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi
- {{ r.release_name }} {% comment %} Add link to each release r. {% endcomment %} + {{ r.release_name }}{% if is_lts_release %}{{ lts_link }}{% endif %} {% comment %} Add link to each release r and LTS indicator if applicable. {% endcomment %} {% if r.release_name == latest_hotfix.release_name %} Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} {% endif %} @@ -453,11 +579,52 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi
- {{ r.release_name }} {% comment %} Add link to each release r. {% endcomment %} + {{ r.release_name }}{% if is_lts_release %}{{ lts_link }}{% endif %} {% comment %} Add link to each release r and LTS indicator if applicable. {% endcomment %} {% if r.release_name == latest_hotfix.release_name %} Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} {% endif %} @@ -519,29 +686,54 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi
{{ r.release_name }}{% if in_lts == true %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r.{% endcomment %} +".", "-" }}" class="binary-link">{{ r.release_name }}{% if is_lts_release %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r with LTS indicator if applicable.{% endcomment %} {% if r.release_name == latest_hotfix.release_name %} Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} {% endif %} @@ -599,10 +791,52 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi
- {{ r.release_name }}{% comment %} Add link to each release r {% endcomment %} + {{ r.release_name }}{% if is_lts_release %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r and LTS indicator if applicable {% endcomment %} {% if r.release_name == latest_hotfix.release_name %} Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} {% endif %} diff --git a/src/current/releases/unsupported-versions.md b/src/current/releases/unsupported-versions.md index 7caf0967055..f16b734c722 100644 --- a/src/current/releases/unsupported-versions.md +++ b/src/current/releases/unsupported-versions.md @@ -7,7 +7,7 @@ docs_area: releases {{site.data.alerts.callout_danger}} The CockroachDB versions on this page are no longer supported. For more information, refer to [Release Support Policy]({% link releases/release-support-policy.md %}#unsupported-versions). To download and learn about currently supported CockroachDB versions, refer to [CockroachDB Releases]({% link releases/index.md %}). {{site.data.alerts.end}} -## Downloads +## Unsupported Downloads {{ experimental_js_warning }} @@ -28,8 +28,10 @@ The CockroachDB versions on this page are no longer supported. For more informat {% capture onclick_string %}onclick="{{ experimental_download_js }}"{% endcapture %} {% assign is_not_downloadable_message = "No longer available for download." %} + {% assign current_date = "now" | date: "%Y-%m-%d" %} -{% for v in versions %} {% comment %} Iterate through all major versions {% endcomment %} +{% for v in versions %} +{% comment %} Iterate through all major versions {% endcomment %} {% assign maint_supp_exp_date = v.maint_supp_exp_date %} {% assign asst_supp_exp_date = v.asst_supp_exp_date %} @@ -44,98 +46,114 @@ The CockroachDB versions on this page are no longer supported. For more informat {% assign in_lts = false %} {% assign comparison = nil %} {% assign skippable = false %} + {% assign has_initial_lts_patch = false %} + {% if v.release_date != "N/A" and v.maint_supp_exp_date != "N/A" %} {% assign released = true %} {% if v.asst_supp_exp_date == "N/A" %} {% assign skippable = true %} {% elsif v.initial_lts_patch != "N/A" %} {% assign has_lts_releases = true %} + {% assign has_initial_lts_patch = true %} {% assign lts_link = ' (LTS) ' %} {% capture lts_patch_string %}{{ v.initial_lts_patch | split: '.' | shift | shift }}{% endcapture %} {% assign lts_patch = lts_patch_string | times: 1 %}{% comment %}Cast string to integer {% endcomment %} {% endif %} {% endif %} - {% assign valid_release_date = false %} - {% if v.release_date != 'N/A' %} - {% assign valid_release_date = true %} - {% endif %} - - {% assign invalid_maint_date = false %} - {% if v.maint_supp_exp_date != 'N/A' and v.maint_supp_exp_date <= current_date %} - {% assign invalid_maint_date = true %} + {% assign valid_release_date = false %} + {% assign release_date_parsed = v.release_date | date: '%Y-%m-%d' %} + {% if release_date_parsed != '' and release_date_parsed != 'N/A' %} + {% assign valid_release_date = true %} {% endif %} - {% assign invalid_asst_date = false %} - {% if v.asst_supp_exp_date == 'N/A' or v.asst_supp_exp_date <= current_date %} - {% assign invalid_asst_date = true %} + {% assign valid_maint_date = false %} + {% assign maint_date_parsed = v.maint_supp_exp_date | date: '%Y-%m-%d' %} + {% if maint_date_parsed != '' and maint_date_parsed != 'N/A' and maint_date_parsed >= current_date %} + {% assign valid_maint_date = true %} {% endif %} - {% assign is_not_lts_date = false %} - {% if v.lts_maint_supp_exp_date == 'N/A' and v.lts_asst_supp_exp_date == 'N/A' %} - {% assign is_not_lts_date = true %} + {% assign valid_asst_date = false %} + {% assign asst_date_parsed = v.asst_supp_exp_date | date: '%Y-%m-%d' %} + {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} + {% assign valid_asst_date = true %} {% endif %} - {% assign invalid_lts_release = false %} + {% assign valid_lts_release = false %} {% assign lts_maint_date_parsed = v.lts_maint_supp_exp_date | date: '%Y-%m-%d' %} {% assign lts_asst_date_parsed = v.lts_asst_supp_exp_date | date: '%Y-%m-%d' %} - {% assign maint_asst_date_expired = false %} - {% if lts_maint_date_parsed <= current_date and lts_asst_date_parsed <= current_date %} - {% assign maint_asst_date_expired = true %} + {% assign maint_asst_date_valid = false %} + + {% if lts_maint_date_parsed != '' and lts_maint_date_parsed != 'N/A' and lts_maint_date_parsed >= current_date %} + {% assign maint_asst_date_valid = true %} + {% endif %} + + {% if lts_asst_date_parsed != '' and lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} + {% assign maint_asst_date_valid = true %} {% endif %} + {% if lts_maint_date_parsed != '' and lts_maint_date_parsed != 'N/A' and lts_asst_date_parsed != '' and lts_asst_date_parsed != 'N/A' - and maint_asst_date_expired %} - {% assign invalid_lts_release = true %} - {% endif %} - {% assign invalid_normal_release = false %} - {% if valid_release_date and invalid_maint_date and invalid_asst_date %} - {% assign invalid_normal_release = true %} - {% endif %} - - {% assign invalid_normal_release_not_lts = false %} - {% if invalid_normal_release and is_not_lts_date %} - {% assign invalid_normal_release_not_lts = true %} + and maint_asst_date_valid %} + {% assign valid_lts_release = true %} {% endif %} + + {% assign has_any_unsupported_releases = false %} + {% for r in site.data.releases %} + {% if r.major_version == v.major_version %} + {% comment %} Check if this release is unsupported {% endcomment %} + {% assign is_unsupported = false %} + + {% comment %} Extract patch version for comparison {% endcomment %} + {% assign release_version_parts = r.release_name | split: "." %} + {% assign release_patch_part = 0 %} + {% if release_version_parts.size > 2 %} + {% assign release_patch_part = release_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Extract LTS initial patch version for comparison {% endcomment %} + {% assign lts_version_parts = v.initial_lts_patch | split: "." %} + {% assign lts_patch_part = 0 %} + {% if lts_version_parts.size > 2 %} + {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} + {% endif %} + + {% if has_initial_lts_patch %} + {% if release_patch_part >= lts_patch_part %} + {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% else %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% endif %} + {% else %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% endif %} + + {% if is_unsupported %} + {% assign has_any_unsupported_releases = true %} + {% break %} + {% endif %} + {% endif %} + {% endfor %} - {% if invalid_normal_release_not_lts or invalid_lts_release %} + {% if has_any_unsupported_releases or v.release_date == "N/A" %} ### {{ v.major_version }} -{% if DEBUG == true %} - released: {{ released }}
- has_lts_releases: {{ has_lts_releases }}
- lts_patch_string: {{ lts_patch_string }}
- lts_patch: {{ lts_patch }}
- v.initial_lts_patch: {{ v.initial_lts_patch }}
- v.major_version: {{ v.major_version }}
- has_lts_releases: {{ has_lts_releases }}
- v.release_date: {{ v.release_date }}
- v.initial_lts_release_date: {{ v.initial_lts_release_date }}
- skippable: {{ skippable }}

-{% endif %} - -{% if released == false %} -CockroachDB {{ page.major_version }} is in active development and is not yet supported. The following [testing releases]({% link releases/index.md %}#release-types) are intended for testing and experimentation only, and are not qualified for production environments or eligible for support or uptime SLA commitments. When CockroachDB {{ page.major_version }} is Generally Available (GA), production releases will also be announced on this page. +{% if v.release_date == "N/A" %} +This version is no longer supported. For information about CockroachDB's support policy, see [Release Support Policy]({% link releases/release-support-policy.md %}). {% else %} -CockroachDB {{ v.major_version }} is {% if skippable == true %}an [Innovation release]({% link releases/release-support-policy.md %}#innovation-releases) that is optional for CockroachDB {{ site.data.products.advanced }}, CockroachDB {{ site.data.products.standard }}, and CockroachDB {{ site.data.products.core }} but required for CockroachDB {{ site.data.products.basic }}.{% else %}a required [Regular release]({% link releases/release-support-policy.md %}#regular-releases).{% endif %}{% if released == false %} It is still in development and not yet supported.{% endif %}{% unless latest_full_production_version.release_name != v.major_version %} CockroachDB {{ latest_full_production_version.release_name }} is the latest supported version.{% endunless %} To learn more, refer to [CockroachDB {{ latest.major_version }} Release Notes]({% link releases/{{ v.major_version }}.md %}). +{% if has_initial_lts_patch %} +CockroachDB {{ v.major_version }} is partially unsupported: +- Versions before {{ v.initial_lts_patch }} are no longer supported as their support expired on {{ v.asst_supp_exp_date }} +- LTS versions ({{ v.initial_lts_patch }} and later) are {% if lts_asst_date_parsed < current_date %}no longer supported as of {{ v.lts_asst_supp_exp_date }}{% else %}supported until {{ v.lts_asst_supp_exp_date }}{% endif %} +{% else %} +CockroachDB {{ v.major_version }} is no longer supported as of {{ v.asst_supp_exp_date }}. For information about CockroachDB's support policy, see [Release Support Policy]({% link releases/release-support-policy.md %}). +{% endif %} {% endif %} - -Refer to [Major release types](https://www.cockroachlabs.com/docs/releases#major-releases) before installing or upgrading for release support details. -{% comment %}Some old pages don't have feature highlights and won't get LTS{% endcomment %} -{% unless v.major_version == 'v1.0' or - v.major_version == 'v1.1' or - v.major_version == 'v2.0' or - v.major_version == 'v2.1' or - v.major_version == 'v19.1' or - v.major_version == 'v19.2' or - v.major_version == 'v20.1' or - v.major_version == 'v20.2' or - v.major_version == 'v21.1' or - v.major_version == 'v21.2' or - v.major_version == 'v22.1' or - v.major_version == 'v22.2' or - released == false %} -To learn what’s new in this release, refer to [Feature Highlights]({% link releases/{{ v.major_version }}.md %}#feature-highlights). -{% endunless %}
@@ -149,6 +167,53 @@ To learn what’s new in this release, refer to [Feature Highlights]({% link rel {% assign releases = site.data.releases | where_exp: "releases", "releases.major_version == v.major_version" | where_exp: "releases", "releases.release_type == s" | sort: "release_date" | reverse %} {% comment %} Fetch all releases for that major version based on release type (Production/Testing). {% endcomment %} + {% comment %} Filter for unsupported releases {% endcomment %} + {% assign unsupported_releases = "" | split: "," %} + {% for r in releases %} + {% assign is_unsupported = false %} + + {% comment %} Extract patch version for comparison {% endcomment %} + {% assign release_version_parts = r.release_name | split: "." %} + {% assign release_patch_part = 0 %} + {% if release_version_parts.size > 2 %} + {% assign release_patch_part = release_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Extract LTS initial patch version for comparison {% endcomment %} + {% assign lts_version_parts = v.initial_lts_patch | split: "." %} + {% assign lts_patch_part = 0 %} + {% if lts_version_parts.size > 2 %} + {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} + {% endif %} + + {% comment %} Check if this is an LTS version with initial LTS patch defined {% endcomment %} + {% if has_initial_lts_patch %} + {% comment %} For versions from initial_lts_patch onward, check against lts_asst_supp_exp_date {% endcomment %} + {% if release_patch_part >= lts_patch_part %} + {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% else %} + {% comment %} For versions before initial_lts_patch, check against asst_supp_exp_date {% endcomment %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% endif %} + {% else %} + {% comment %} If no initial_lts_patch, just check against asst_supp_exp_date {% endcomment %} + {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% endif %} + + {% comment %} Add to unsupported releases if it meets the criteria {% endcomment %} + {% if is_unsupported %} + {% assign unsupported_releases = unsupported_releases | push: r %} + {% endif %} + {% endfor %} + + {% comment %} Display unsupported releases for this version and section {% endcomment %} + {% comment %}Do a separate loop through the releases and for each release, copy some fields into some local v_ variables to use when we are not in a loop below{% endcomment %} {% assign v_linux_arm = false %} @@ -169,13 +234,13 @@ To learn what’s new in this release, refer to [Feature Highlights]({% link rel {% assign v_docker_arm = false %} {% for r in releases %} - {% if r.docker.docker_arm == true %} + {% if r.docker.docker_arm == true %} {% assign v_docker_arm = true %} {% break %} {% endif %} {% endfor %} - {% if releases[0] %} +{% if unsupported_releases.size > 0 %} #### {{ s }} Releases @@ -194,32 +259,52 @@ To learn what’s new in this release, refer to [Feature Highlights]({% link rel
current_patch: {{ current_patch }}
lts_patch: {{ lts_patch }}
r.release_name: {{ r.release_name }}
lts_link: {{ lts_link }}
in_lts: {{ in_lts }}
- {{ r.release_name }}{% if in_lts == true %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r, decorate with link about LTS if applicable. {% endcomment %} - {% if r.release_name == latest_hotfix.release_name %} - Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} - {% endif %} + {{ r.release_name }}{% if was_lts_release %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r, decorate with link about LTS if applicable. {% endcomment %} {{ r.release_date }}
- {{ r.release_name }} {% comment %} Add link to each release r. {% endcomment %} - {% if r.release_name == latest_hotfix.release_name %} - Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} - {% endif %} + {{ r.release_name }}{% if was_lts_release %}{{ lts_link }}{% endif %} {% comment %} Add link to each release r and LTS indicator if applicable. {% endcomment %} {{ r.release_date }}
- {{ r.release_name }} {% comment %} Add link to each release r. {% endcomment %} - {% if r.release_name == latest_hotfix.release_name %} - Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} - {% endif %} + {{ r.release_name }}{% if was_lts_release %}{{ lts_link }}{% endif %} {% comment %} Add link to each release r and LTS indicator if applicable. {% endcomment %} + {{ r.release_date }}
{{ r.release_name }}{% if in_lts == true %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r.{% endcomment %} - {% if r.release_name == latest_hotfix.release_name %} - Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} - {% endif %} +".", "-" }}" class="binary-link">{{ r.release_name }}{% if was_lts_release %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r with LTS indicator if applicable.{% endcomment %} + +
{% if r.docker.docker_arm_limited_access == true %} **Intel**: Production
**ARM**: Limited Access {% elsif r.docker.docker_arm_experimental == true %} @@ -479,13 +666,53 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi
- {{ r.release_name }}{% comment %} Add link to each release r {% endcomment %} - {% if r.release_name == latest_hotfix.release_name %} - Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} - {% endif %} + {{ r.release_name }}{% if was_lts_release %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r and LTS indicator if applicable {% endcomment %} + {{ r.release_date }}
current_patch: {{ release_patch_part }}
lts_patch: {{ lts_patch_part }}
r.release_name: {{ r.release_name }}
lts_link: {{ lts_link }}
is_lts_release: {{ is_lts_release }}
current_patch: {{ current_patch }}
lts_patch: {{ lts_patch }}
r.release_name: {{ r.release_name }}
lts_link: {{ lts_link }}
in_lts: {{ in_lts }}
- {{ r.release_name }}{% if is_lts_release %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r, decorate with link about LTS if applicable. {% endcomment %} + {{ r.release_name }}{% if in_lts %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r, decorate with link about LTS if applicable. {% endcomment %} {% if r.release_name == latest_hotfix.release_name %} Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} {% endif %} {{ r.release_date }}WithdrawnWithdrawn{{ r.cloud_only_message_short }}{{ r.cloud_only_message_short }}{{ is_not_downloadable_message }}{{ is_not_downloadable_message }} @@ -442,7 +394,7 @@ To learn what's new in this release, refer to [Feature Highlights]({% link relea
SQL Shell Binary{% if r.has_sha256sum == true %} (SHA256{% endif %})
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} {% endif %} {% endif %} - {% if r.linux.linux_arm == true %} + {% if r.linux.linux_arm == true and v_linux_arm == true %} {% comment %}Don't print column because of previous colspan=2{% endcomment %} {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true %} {% break %} @@ -478,66 +430,35 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi
- {{ r.release_name }}{% if is_lts_release %}{{ lts_link }}{% endif %} {% comment %} Add link to each release r and LTS indicator if applicable. {% endcomment %} - {% if r.release_name == latest_hotfix.release_name %} + {{ r.release_name }}{% if in_lts %}{{ lts_link }}{% endif %} {% comment %} Add link to each release r and LTS indicator if applicable. {% endcomment %} + {% if r.release_name == latest_hotfix.release_name %} Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} - {% endif %} + {% endif %} {{ r.release_date }}WithdrawnWithdrawn{{ r.cloud_only_message_short }}{{ r.cloud_only_message_short }}{{ is_not_downloadable_message }}{{ is_not_downloadable_message }} @@ -546,7 +467,7 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi
SQL shell Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} {% endif %} {% endif %} - {% if r.mac.mac_arm == true %} + {% if r.mac.mac_arm == true and v_mac_arm == true %} {% comment %}Don't print column because of previous colspan=2{% endcomment %} {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true %} {% break %} @@ -578,66 +499,35 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi
- {{ r.release_name }}{% if is_lts_release %}{{ lts_link }}{% endif %} {% comment %} Add link to each release r and LTS indicator if applicable. {% endcomment %} + {{ r.release_name }}{% if in_lts %}{{ lts_link }}{% endif %} {% comment %} Add link to each release r and LTS indicator if applicable. {% endcomment %} {% if r.release_name == latest_hotfix.release_name %} Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} {% endif %} {{ r.release_date }}WithdrawnWithdrawn{{ r.cloud_only_message_short }}{{ r.cloud_only_message_short }}{{ is_not_downloadable_message }}{{ is_not_downloadable_message }} @@ -685,55 +575,30 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi
{{ r.release_name }}{% if is_lts_release %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r with LTS indicator if applicable.{% endcomment %} +".", "-" }}" class="binary-link">{{ r.release_name }}{% if in_lts %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r with LTS indicator if applicable.{% endcomment %} {% if r.release_name == latest_hotfix.release_name %} Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} {% endif %} @@ -790,53 +655,22 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi
- {{ r.release_name }}{% if is_lts_release %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r and LTS indicator if applicable {% endcomment %} + {{ r.release_name }}{% if in_lts %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r and LTS indicator if applicable {% endcomment %} {% if r.release_name == latest_hotfix.release_name %} Latest {% comment %} Add "Latest" badge to release if it's the latest release. {% endcomment %} {% endif %} @@ -867,9 +701,9 @@ macOS downloads are **experimental**. Experimental downloads are not yet qualifi - {% endif %} {% comment %}if releases[0]{% endcomment %} + {% endif %} {% comment %}if supported_releases.size > 0{% endcomment %} {% endfor %} {% comment %}for s in sections {% endcomment %} - {% endif %} +{% endif %} {% comment %}if is_supported{% endcomment %} {% endfor %} {% comment %}for v in versions{% endcomment %} ## Licenses diff --git a/src/current/releases/unsupported-versions.md b/src/current/releases/unsupported-versions.md index f16b734c722..0081e8897ef 100644 --- a/src/current/releases/unsupported-versions.md +++ b/src/current/releases/unsupported-versions.md @@ -7,7 +7,7 @@ docs_area: releases {{site.data.alerts.callout_danger}} The CockroachDB versions on this page are no longer supported. For more information, refer to [Release Support Policy]({% link releases/release-support-policy.md %}#unsupported-versions). To download and learn about currently supported CockroachDB versions, refer to [CockroachDB Releases]({% link releases/index.md %}). {{site.data.alerts.end}} -## Unsupported Downloads +## Downloads {{ experimental_js_warning }} @@ -28,132 +28,78 @@ The CockroachDB versions on this page are no longer supported. For more informat {% capture onclick_string %}onclick="{{ experimental_download_js }}"{% endcapture %} {% assign is_not_downloadable_message = "No longer available for download." %} +{% assign current_date = 'now' | date: '%Y-%m-%d' %} -{% assign current_date = "now" | date: "%Y-%m-%d" %} -{% for v in versions %} -{% comment %} Iterate through all major versions {% endcomment %} -{% assign maint_supp_exp_date = v.maint_supp_exp_date %} -{% assign asst_supp_exp_date = v.asst_supp_exp_date %} +{% for v in versions %} {% comment %} Iterate through all major versions {% endcomment %} {% comment %} - Determine if the major version is LTS and the patch component of the initial LTS patch, - or the major version is a skippable innovation release + Determine if the major version is unsupported or has unsupported releases {% endcomment %} {% assign released = false %} {% assign has_lts_releases = false %} - {% assign lts_link_linux = '' %} + {% assign lts_link = '' %} {% assign lts_patch = nil %} - {% assign in_lts = false %} - {% assign comparison = nil %} - {% assign skippable = false %} - {% assign has_initial_lts_patch = false %} + {% assign is_unsupported = false %} + {% assign has_unsupported_releases = false %} + {% assign is_innovation = false %} + {% assign in_lts_period = false %} + {% assign ga_support_expired = false %} + {% comment %} Check if the version has been released {% endcomment %} {% if v.release_date != "N/A" and v.maint_supp_exp_date != "N/A" %} {% assign released = true %} + + {% comment %} Check if this is an innovation release {% endcomment %} {% if v.asst_supp_exp_date == "N/A" %} - {% assign skippable = true %} - {% elsif v.initial_lts_patch != "N/A" %} - {% assign has_lts_releases = true %} - {% assign has_initial_lts_patch = true %} - {% assign lts_link = ' (LTS) ' %} - {% capture lts_patch_string %}{{ v.initial_lts_patch | split: '.' | shift | shift }}{% endcapture %} - {% assign lts_patch = lts_patch_string | times: 1 %}{% comment %}Cast string to integer {% endcomment %} - {% endif %} - {% endif %} - {% assign valid_release_date = false %} - {% assign release_date_parsed = v.release_date | date: '%Y-%m-%d' %} - {% if release_date_parsed != '' and release_date_parsed != 'N/A' %} - {% assign valid_release_date = true %} - {% endif %} - - {% assign valid_maint_date = false %} - {% assign maint_date_parsed = v.maint_supp_exp_date | date: '%Y-%m-%d' %} - {% if maint_date_parsed != '' and maint_date_parsed != 'N/A' and maint_date_parsed >= current_date %} - {% assign valid_maint_date = true %} - {% endif %} - - {% assign valid_asst_date = false %} - {% assign asst_date_parsed = v.asst_supp_exp_date | date: '%Y-%m-%d' %} - {% if asst_date_parsed != 'N/A' and asst_date_parsed >= current_date %} - {% assign valid_asst_date = true %} - {% endif %} - - {% assign valid_lts_release = false %} - {% assign lts_maint_date_parsed = v.lts_maint_supp_exp_date | date: '%Y-%m-%d' %} - {% assign lts_asst_date_parsed = v.lts_asst_supp_exp_date | date: '%Y-%m-%d' %} - {% assign maint_asst_date_valid = false %} - - {% if lts_maint_date_parsed != '' and lts_maint_date_parsed != 'N/A' and lts_maint_date_parsed >= current_date %} - {% assign maint_asst_date_valid = true %} - {% endif %} - - {% if lts_asst_date_parsed != '' and lts_asst_date_parsed != 'N/A' and lts_asst_date_parsed >= current_date %} - {% assign maint_asst_date_valid = true %} - {% endif %} - - {% if lts_maint_date_parsed != '' and lts_maint_date_parsed != 'N/A' - and lts_asst_date_parsed != '' and lts_asst_date_parsed != 'N/A' - and maint_asst_date_valid %} - {% assign valid_lts_release = true %} - {% endif %} - - {% assign has_any_unsupported_releases = false %} - {% for r in site.data.releases %} - {% if r.major_version == v.major_version %} - {% comment %} Check if this release is unsupported {% endcomment %} - {% assign is_unsupported = false %} - - {% comment %} Extract patch version for comparison {% endcomment %} - {% assign release_version_parts = r.release_name | split: "." %} - {% assign release_patch_part = 0 %} - {% if release_version_parts.size > 2 %} - {% assign release_patch_part = release_version_parts[2] | times: 1 %} - {% endif %} + {% assign is_innovation = true %} - {% comment %} Extract LTS initial patch version for comparison {% endcomment %} - {% assign lts_version_parts = v.initial_lts_patch | split: "." %} - {% assign lts_patch_part = 0 %} - {% if lts_version_parts.size > 2 %} - {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} - {% endif %} - - {% if has_initial_lts_patch %} - {% if release_patch_part >= lts_patch_part %} - {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} - {% assign is_unsupported = true %} - {% endif %} - {% else %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} - {% assign is_unsupported = true %} - {% endif %} - {% endif %} - {% else %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} + {% comment %} For innovation releases, check if past maintenance support {% endcomment %} + {% if v.maint_supp_exp_date <= current_date %} + {% assign is_unsupported = true %} + {% endif %} + {% else %} + {% comment %} For regular releases, check if past assistance support {% endcomment %} + {% if v.asst_supp_exp_date <= current_date %} + {% assign ga_support_expired = true %} + + {% comment %} If no LTS or LTS has also expired, it's completely unsupported {% endcomment %} + {% if v.lts_asst_supp_exp_date == "N/A" or v.lts_asst_supp_exp_date <= current_date %} {% assign is_unsupported = true %} {% endif %} {% endif %} - {% if is_unsupported %} - {% assign has_any_unsupported_releases = true %} - {% break %} + {% comment %} Check if this version has LTS releases {% endcomment %} + {% if v.initial_lts_patch != "N/A" %} + {% assign has_lts_releases = true %} + {% assign lts_link = ' (LTS) ' %} + {% capture lts_patch_string %}{{ v.initial_lts_patch | split: '.' | shift | shift }}{% endcapture %} + {% assign lts_patch = lts_patch_string | times: 1 %} + + {% comment %} Check if we're in the LTS period for this version {% endcomment %} + {% if v.initial_lts_release_date != "N/A" and v.initial_lts_release_date <= current_date %} + {% assign in_lts_period = true %} + + {% comment %} In LTS period with expired GA support means pre-LTS patches are unsupported {% endcomment %} + {% if ga_support_expired %} + {% assign has_unsupported_releases = true %} + {% endif %} + {% endif %} {% endif %} {% endif %} - {% endfor %} - - {% if has_any_unsupported_releases or v.release_date == "N/A" %} + {% endif %} + + {% comment %} Only handle released versions (ignore future versions) {% endcomment %} + {% if released %} + {% comment %} Show this major version if it's unsupported or has unsupported releases {% endcomment %} + {% if is_unsupported or has_unsupported_releases %} + ### {{ v.major_version }} -{% if v.release_date == "N/A" %} -This version is no longer supported. For information about CockroachDB's support policy, see [Release Support Policy]({% link releases/release-support-policy.md %}). -{% else %} -{% if has_initial_lts_patch %} -CockroachDB {{ v.major_version }} is partially unsupported: -- Versions before {{ v.initial_lts_patch }} are no longer supported as their support expired on {{ v.asst_supp_exp_date }} -- LTS versions ({{ v.initial_lts_patch }} and later) are {% if lts_asst_date_parsed < current_date %}no longer supported as of {{ v.lts_asst_supp_exp_date }}{% else %}supported until {{ v.lts_asst_supp_exp_date }}{% endif %} -{% else %} -CockroachDB {{ v.major_version }} is no longer supported as of {{ v.asst_supp_exp_date }}. For information about CockroachDB's support policy, see [Release Support Policy]({% link releases/release-support-policy.md %}). -{% endif %} -{% endif %} + {% if is_unsupported %} +CockroachDB {{ v.major_version }} is completely unsupported. {% if is_innovation %}This was an Innovation release{% else %}This was a Regular release{% endif %} that reached end-of-support on {% if is_innovation %}{{ v.maint_supp_exp_date }}{% else %}{{ v.asst_supp_exp_date }}{% endif %}. + {% else %} +CockroachDB {{ v.major_version }} is partially supported. Pre-LTS patches (before {{ v.initial_lts_patch }}) are no longer supported, but LTS patches ({{ v.initial_lts_patch }} and later) are still covered under the LTS support policy until {{ v.lts_asst_supp_exp_date }}. + {% endif %}
@@ -163,85 +109,61 @@ CockroachDB {{ v.major_version }} is no longer supported as of {{ v.asst_supp_ex
- {% for s in sections %} {% comment %} For each major version, iterate through the sections. {% endcomment %} - - {% assign releases = site.data.releases | where_exp: "releases", "releases.major_version == v.major_version" | where_exp: "releases", "releases.release_type == s" | sort: "release_date" | reverse %} {% comment %} Fetch all releases for that major version based on release type (Production/Testing). {% endcomment %} - - {% comment %} Filter for unsupported releases {% endcomment %} - {% assign unsupported_releases = "" | split: "," %} - {% for r in releases %} - {% assign is_unsupported = false %} - - {% comment %} Extract patch version for comparison {% endcomment %} - {% assign release_version_parts = r.release_name | split: "." %} - {% assign release_patch_part = 0 %} - {% if release_version_parts.size > 2 %} - {% assign release_patch_part = release_version_parts[2] | times: 1 %} - {% endif %} - - {% comment %} Extract LTS initial patch version for comparison {% endcomment %} - {% assign lts_version_parts = v.initial_lts_patch | split: "." %} - {% assign lts_patch_part = 0 %} - {% if lts_version_parts.size > 2 %} - {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} - {% endif %} - - {% comment %} Check if this is an LTS version with initial LTS patch defined {% endcomment %} - {% if has_initial_lts_patch %} - {% comment %} For versions from initial_lts_patch onward, check against lts_asst_supp_exp_date {% endcomment %} - {% if release_patch_part >= lts_patch_part %} - {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} - {% assign is_unsupported = true %} - {% endif %} - {% else %} - {% comment %} For versions before initial_lts_patch, check against asst_supp_exp_date {% endcomment %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} - {% assign is_unsupported = true %} + {% for s in sections %} {% comment %} For each major version, iterate through the sections. {% endcomment %} + + {% assign releases = site.data.releases | where_exp: "releases", "releases.major_version == v.major_version" | where_exp: "releases", "releases.release_type == s" | sort: "release_date" | reverse %} {% comment %} Fetch all releases for that major version based on release type (Production/Testing). {% endcomment %} + + {% comment %} Filter the releases to only include unsupported ones {% endcomment %} + {% assign unsupported_releases = "" | split: "" %} + {% for r in releases %} + {% assign is_release_unsupported = false %} + + {% if is_unsupported %} + {% comment %} If the whole version is unsupported, all releases are unsupported {% endcomment %} + {% assign is_release_unsupported = true %} + {% elsif has_lts_releases and s == "Production" and in_lts_period and ga_support_expired %} + {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} + {% assign current_patch = current_patch_string | times: 1 %} + + {% if current_patch < lts_patch %} + {% comment %} Pre-LTS patches are unsupported in LTS period if GA support expired {% endcomment %} + {% assign is_release_unsupported = true %} {% endif %} {% endif %} - {% else %} - {% comment %} If no initial_lts_patch, just check against asst_supp_exp_date {% endcomment %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} - {% assign is_unsupported = true %} + + {% comment %} Don't include withdrawn releases in the unsupported list {% endcomment %} + {% if r.withdrawn != true and is_release_unsupported %} + {% assign unsupported_releases = unsupported_releases | push: r %} {% endif %} - {% endif %} - - {% comment %} Add to unsupported releases if it meets the criteria {% endcomment %} - {% if is_unsupported %} - {% assign unsupported_releases = unsupported_releases | push: r %} - {% endif %} - {% endfor %} - - {% comment %} Display unsupported releases for this version and section {% endcomment %} - -{% comment %}Do a separate loop through the releases and for each release, copy some fields into some local v_ variables to use when we are not in a loop below{% endcomment %} - - {% assign v_linux_arm = false %} - {% for r in releases %} - {% if r.linux.linux_arm == true %} - {% assign v_linux_arm = true %} - {% break %} - {% endif %} - {% endfor %} - - {% assign v_mac_arm = false %} - {% for r in releases %} - {% if r.mac.mac_arm == true %} - {% assign v_mac_arm = true %} - {% break %} - {% endif %} - {% endfor %} - - {% assign v_docker_arm = false %} - {% for r in releases %} - {% if r.docker.docker_arm == true %} - {% assign v_docker_arm = true %} - {% break %} - {% endif %} - {% endfor %} - -{% if unsupported_releases.size > 0 %} - + {% endfor %} + + {% comment %}Do a separate loop through the filtered releases and for each release, copy some fields into some local v_ variables to use when we are not in a loop below{% endcomment %} + {% assign v_linux_arm = false %} + {% for r in unsupported_releases %} + {% if r.linux.linux_arm == true %} + {% assign v_linux_arm = true %} + {% break %} + {% endif %} + {% endfor %} + + {% assign v_mac_arm = false %} + {% for r in unsupported_releases %} + {% if r.mac.mac_arm == true %} + {% assign v_mac_arm = true %} + {% break %} + {% endif %} + {% endfor %} + + {% assign v_docker_arm = false %} + {% for r in unsupported_releases %} + {% if r.docker.docker_arm == true %} + {% assign v_docker_arm = true %} + {% break %} + {% endif %} + {% endfor %} + + {% if unsupported_releases.size > 0 %} + #### {{ s }} Releases
@@ -250,6 +172,7 @@ CockroachDB {{ v.major_version }} is no longer supported as of {{ v.asst_supp_ex
VersionDate Intel 64-bit Downloads
+ {{ r.release_name }}{% if in_lts %}{{ lts_link }}{% endif %} + {{ r.release_date }}Withdrawn{{ r.cloud_only_message_short }}{{ is_not_downloadable_message }} +
Full Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} + {% if r.has_sql_only == true %} +
SQL Shell Binary{% if r.has_sha256sum == true %} (SHA256{% endif %})
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} + {% endif %} {% endif %} - {% endif %} - {% else %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} - {% assign is_unsupported = true %} - {% endif %} - {% endif %} - - {% comment %} Skip releases that don't meet our criteria {% endcomment %} - {% if is_unsupported == false %} - {% continue %} - {% endif %} - -
- {{ r.release_name }}{% if was_lts_release %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r, decorate with link about LTS if applicable. {% endcomment %} - {{ r.release_date }}Withdrawn{{ r.cloud_only_message_short }}{{ is_not_downloadable_message }} -
Full Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} - {% if r.has_sql_only == true %} -
SQL Shell Binary{% if r.has_sha256sum == true %} (SHA256{% endif %})
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} - {% endif %} - {% endif %} - {% if r.linux.linux_arm == true %} - {% comment %}Don't print column because of previous colspan=2{% endcomment %} - {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true %} - {% break %} - {% else %} -
- {% if r.linux.linux_arm_experimental == true %}Experimental:{% endif %} -
Full Binary{% if r.has_sha256sum == true %} (SHA256{% endif %})
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} - {% if r.has_sql_only == true %} -
SQL shell Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} + {% if r.linux.linux_arm == true and v_linux_arm == true %} + {% comment %}Don't print column because of previous colspan=2{% endcomment %} + {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true %} + {% break %} + {% else %} +
+ {% if r.linux.linux_arm_experimental == true %}Experimental:{% endif %} +
Full Binary{% if r.has_sha256sum == true %} (SHA256{% endif %})
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} + {% if r.has_sql_only == true %} +
SQL shell Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} + {% endif %} +
+
+ +
+ + macOS downloads are **experimental**. Experimental downloads are not yet qualified for production use and not eligible for support or uptime SLA commitments, whether they are for testing releases or production releases. + + + + + + + + + {% if v_mac_arm == true %} + {% endif %} - - {% endfor %} {% comment %}Releases {% endcomment %} - -
VersionDateIntel 64-bit (Experimental) DownloadsARM 64-bit (Experimental) Downloads
-
- -
- -macOS downloads are **experimental**. Experimental downloads are not yet qualified for production use and not eligible for support or uptime SLA commitments, whether they are for testing releases or production releases. - - - - - - - - {% if v_mac_arm == true %} - - {% endif %} - - - - {% for r in releases %} - {% comment %} Determine if this release is unsupported based on our criteria {% endcomment %} - {% assign is_unsupported = false %} - - {% comment %} Extract patch version for comparison {% endcomment %} - {% assign release_version_parts = r.release_name | split: "." %} - {% assign release_patch_part = 0 %} - {% if release_version_parts.size > 2 %} - {% assign release_patch_part = release_version_parts[2] | times: 1 %} - {% endif %} - - {% comment %} Extract LTS initial patch version for comparison {% endcomment %} - {% assign lts_version_parts = v.initial_lts_patch | split: "." %} - {% assign lts_patch_part = 0 %} - {% if lts_version_parts.size > 2 %} - {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} - {% endif %} - - {% assign was_lts_release = false %} - {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} - {% assign was_lts_release = true %} - {% endif %} - - {% if has_initial_lts_patch %} - {% if release_patch_part >= lts_patch_part %} - {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} - {% assign is_unsupported = true %} + + + + {% for r in unsupported_releases %} + {% assign current_patch_string = '' %} + {% assign current_patch = nil %} + {% assign in_lts = false %} + {% if has_lts_releases == true and s == "Production" %} + {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} + {% assign current_patch = current_patch_string | times: 1 %} + {% assign comparison = current_patch | minus: lts_patch %} + {% unless comparison < 0 %} + {% assign in_lts = true %} + {% endunless %} {% endif %} - {% else %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} - {% assign is_unsupported = true %} + + + + + {% comment %} Release date of the release. {% endcomment %} + {% if r.withdrawn == true %} {% comment %} Suppress withdrawn releases. {% endcomment %} + {% comment %}covers both Intel and ARM columns {% endcomment %} + {% continue %} + {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} + + {% continue %} + {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} + + {% continue %} + {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} + {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} - - {% comment %} Release date of the release. {% endcomment %} - {% if r.withdrawn == true %} {% comment %} Suppress withdrawn releases. {% endcomment %} - {% comment %}covers both Intel and ARM columns {% endcomment %} - {% continue %} - {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} - - {% continue %} - {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} - - {% continue %} - {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} - + {% endif %} {% endif %} - {% endif %} - {% if r.mac.mac_arm == true %} - {% comment %}Don't print column because of previous colspan=2{% endcomment %} - {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true %} - {% break %} - {% else %} - + {% endfor %} + +
VersionDateIntel 64-bit (Experimental) DownloadsARM 64-bit (Experimental) Downloads
+ {{ r.release_name }}{% if in_lts %}{{ lts_link }}{% endif %} + {{ r.release_date }}Withdrawn{{ r.cloud_only_message_short }}{{ is_not_downloadable_message }} +
Full Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} + {% if r.has_sql_only == true %} +
SQL shell Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} + {% endif %} {% endif %} - {% endif %} - {% else %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} - {% assign is_unsupported = true %} - {% endif %} - {% endif %} - - {% comment %} Skip releases that don't meet our criteria {% endcomment %} - {% if is_unsupported == false %} - {% continue %} - {% endif %} - -
- {{ r.release_name }}{% if was_lts_release %}{{ lts_link }}{% endif %} {% comment %} Add link to each release r and LTS indicator if applicable. {% endcomment %} - {{ r.release_date }}Withdrawn{{ r.cloud_only_message_short }}{{ is_not_downloadable_message }} -
Full Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} - {% if r.has_sql_only == true %} -
SQL shell Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} + {% if r.mac.mac_arm == true and v_mac_arm == true %} + {% comment %}Don't print column because of previous colspan=2{% endcomment %} + {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true %} + {% break %} + {% else %} +
+
Full Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
+ {% if r.has_sql_only == true %} +
SQL shell Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
+ {% endif %} +
-
Full Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
- {% if r.has_sql_only == true %} -
SQL shell Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
+
+ +
+ +
+ Windows 8 or higher is required. Windows downloads are **experimental**. Experimental downloads are not yet qualified for production use and not eligible for support or uptime SLA commitments, whether they are for testing releases or production releases. + + + + + + + + + + + + {% for r in unsupported_releases %} + {% assign current_patch_string = '' %} + {% assign current_patch = nil %} + {% assign in_lts = false %} + {% if has_lts_releases == true and s == "Production" %} + {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} + {% assign current_patch = current_patch_string | times: 1 %} + {% assign comparison = current_patch | minus: lts_patch %} + {% unless comparison < 0 %} + {% assign in_lts = true %} + {% endunless %} {% endif %} - + + + + + {% comment %} Release date of the release. {% endcomment %} + {% if r.withdrawn == true %} {% comment %} Suppress withdrawn releases. {% endcomment %} + + {% continue %} + {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} + + {% continue %} + {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} + + {% continue %} + {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} + + + {% endfor %} + +
VersionDateIntel 64-bit (Experimental) Downloads
+ {{ r.release_name }}{% if in_lts %}{{ lts_link }}{% endif %} + {{ r.release_date }}Withdrawn{{ r.cloud_only_message_short }}{{ is_not_downloadable_message }} + {% if r.windows == true %} +
Full Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} + {% if r.has_sql_only == true %} +
SQL shell Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} + {% endif %} + {% else %} + N/A + {% endif %} + {% endif %} +
+
+ +
+ + {% comment %}Prepare to show the Notes column in v22.2 and v23.1{% endcomment %} + {% assign show_notes_column = false %} + {% if v.major_version == "v23.1" or v.major_version == "v22.2" %} + {% assign show_notes_column = true %} {% endif %} - {% endif %} - - {% endfor %} - - - -
- -
- Windows 8 or higher is required. Windows downloads are **experimental**. Experimental downloads are not yet qualified for production use and not eligible for support or uptime SLA commitments, whether they are for testing releases or production releases. - - - - - - - - - - - {% for r in releases %} - {% comment %} Determine if this release is unsupported based on our criteria {% endcomment %} - {% assign is_unsupported = false %} - - {% comment %} Extract patch version for comparison {% endcomment %} - {% assign release_version_parts = r.release_name | split: "." %} - {% assign release_patch_part = 0 %} - {% if release_version_parts.size > 2 %} - {% assign release_patch_part = release_version_parts[2] | times: 1 %} - {% endif %} - - {% comment %} Extract LTS initial patch version for comparison {% endcomment %} - {% assign lts_version_parts = v.initial_lts_patch | split: "." %} - {% assign lts_patch_part = 0 %} - {% if lts_version_parts.size > 2 %} - {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} - {% endif %} - - {% assign was_lts_release = false %} - {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} - {% assign was_lts_release = true %} - {% endif %} - - {% if has_initial_lts_patch %} - {% if release_patch_part >= lts_patch_part %} - {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} - {% assign is_unsupported = true %} - {% endif %} - {% else %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} - {% assign is_unsupported = true %} + + {% if s == "Production" %}{% comment %}Print this only for the Production section{% endcomment %} + Docker images for CockroachDB are published on [Docker Hub](https://hub.docker.com/r/cockroachdb/cockroach/tags). + + {% if show_notes_column == true %} + [Multi-platform images](https://docs.docker.com/build/building/multi-platform/) include support for both Intel and ARM. + {% else %} + All Docker images for {{ v.major_version }} are [Multi-platform images](https://docs.docker.com/build/building/multi-platform/) with support for both Intel and ARM. {% endif %} {% endif %} - {% else %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} - {% assign is_unsupported = true %} - {% endif %} - {% endif %} - - {% comment %} Skip releases that don't meet our criteria {% endcomment %} - {% if is_unsupported == false %} - {% continue %} - {% endif %} - - {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} - - {% comment %} Release date of the release. {% endcomment %} - {% if r.withdrawn == true %} {% comment %} Suppress withdrawn releases. {% endcomment %} - {% comment %}covers both Intel and ARM columns {% endcomment %} - {% continue %} - {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} - - {% continue %} - {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} - - {% continue %} - {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} - + {% endfor %} {% comment %}for release in releases{% endcomment %} + +
VersionDateIntel 64-bit (Experimental) Downloads
- {{ r.release_name }}{% if was_lts_release %}{{ lts_link }}{% endif %} {% comment %} Add link to each release r and LTS indicator if applicable. {% endcomment %} - - {{ r.release_date }}Withdrawn{{ r.cloud_only_message_short }}{{ is_not_downloadable_message }} - {% if r.windows == true %} -
Full Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} - {% if r.has_sql_only == true %} -
SQL shell Binary{% if r.has_sha256sum == true %} (SHA256){% endif %}
{% comment %} If a sha256sum is available for a particular release, we display a link to the file containing the sha256sum alongside the download link of the release. {% endcomment %} + + + + + + + + + {% if show_notes_column == true %}{% endif %} + + + + {% for r in unsupported_releases %} + + {% assign current_patch_string = '' %} + {% assign current_patch = nil %} + {% assign in_lts = false %} + {% if has_lts_releases == true and s == "Production" %} + {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} + {% assign current_patch = current_patch_string | times: 1 %} + {% if current_patch == nil %} + Error: Could not determine the current patch. Giving up.
+ {% break %}{% break %} {% endif %} - {% else %} - N/A + + {% assign comparison = current_patch | minus: lts_patch %} + {% unless comparison < 0 %} + {% assign in_lts = true %} + {% endunless %} {% endif %} - {% endif %} - - - {% endfor %} - -
VersionDateDocker image tagNotes
- - -
- - {% comment %}Prepare to show the Notes column in v22.2 and v23.1{% endcomment %} - {% assign show_notes_column = false %} - {% if v.major_version == "v23.1" or v.major_version == "v22.2" %} - {% assign show_notes_column = true %} - {% endif %} - - {% if s == "Production" %}{% comment %}Print this only for the Production section{% endcomment %} - Docker images for CockroachDB are published on [Docker Hub](https://hub.docker.com/r/cockroachdb/cockroach/tags). - - {% if show_notes_column == true %} - [Multi-platform images](https://docs.docker.com/build/building/multi-platform/) include support for both Intel and ARM. - {% else %} - All Docker images for {{ v.major_version }} are [Multi-platform images](https://docs.docker.com/build/building/multi-platform/) with support for both Intel and ARM. - {% endif %} - {% endif %} - - - - - - - - {% if show_notes_column == true %}{% endif %} - - - - {% for r in releases %} - {% comment %} Determine if this release is unsupported based on our criteria {% endcomment %} - {% assign is_unsupported = false %} - - {% comment %} Extract patch version for comparison {% endcomment %} - {% assign release_version_parts = r.release_name | split: "." %} - {% assign release_patch_part = 0 %} - {% if release_version_parts.size > 2 %} - {% assign release_patch_part = release_version_parts[2] | times: 1 %} - {% endif %} - - {% comment %} Extract LTS initial patch version for comparison {% endcomment %} - {% assign lts_version_parts = v.initial_lts_patch | split: "." %} - {% assign lts_patch_part = 0 %} - {% if lts_version_parts.size > 2 %} - {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} - {% endif %} - - {% assign was_lts_release = false %} - {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} - {% assign was_lts_release = true %} - {% endif %} - - {% if has_initial_lts_patch %} - {% if release_patch_part >= lts_patch_part %} - {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} - {% assign is_unsupported = true %} + + + + {% comment %}Version column{% endcomment %} + + + {% comment %}Support Status column{% endcomment %} + + + {% comment %}Release Date column{% endcomment %} + {% comment %} Release date of the release. {% endcomment %} + + {% comment %}Docker Image Tag column{% endcomment %} + {% comment %} Suppress download links for withdrawn releases, spans Intel and ARM columns {% endcomment %} + {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases, spans Intel and ARM columns {% endcomment %} + {{ r.cloud_only_message_short }} + {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} + {{ is_not_downloadable_message }} + {% continue %} + {% else %} + {% if r.source == false %} + N/A + {% else %} + {% if show_notes_column == true %}{% comment %}Show Intel and ARM details only for major versions with a mix{% endcomment %} + {% if r.docker.docker_arm == false %}Intel:
{% else %}Multi-platform:
{% endif %} + {% endif %}{{ r.docker.docker_image }}:{{ r.release_name }} + {% endif %} {% endif %} - {% else %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} - {% assign is_unsupported = true %} + + {% if show_notes_column == true %} + {% comment %}Notes column{% endcomment %} + {% endif %} - {% endif %} - {% else %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} - {% assign is_unsupported = true %} - {% endif %} - {% endif %} - - {% comment %} Skip releases that don't meet our criteria {% endcomment %} - {% if is_unsupported == false %} - {% continue %} - {% endif %} - - {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} - - {% comment %}Version column{% endcomment %} - - - {% comment %}Release Date column{% endcomment %} - {% comment %} Release date of the release. {% endcomment %} - - {% comment %}Docker Image Tag column{% endcomment %} - {% comment %} Suppress download links for withdrawn releases, spans Intel and ARM columns {% endcomment %} - {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases, spans Intel and ARM columns {% endcomment %} - {{ r.cloud_only_message_short }} - {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} - {{ is_not_downloadable_message }} - {% continue %} - {% else %} - {% if r.source == false %} - N/A - {% else %} - {% if show_notes_column == true %}{% comment %}Show Intel and ARM details only for major versions with a mix{% endcomment %} - {% if r.docker.docker_arm == false %}Intel:
{% else %}Multi-platform:
{% endif %} - {% endif %}{{ r.docker.docker_image }}:{{ r.release_name }} - {% endif %} - {% endif %} - - {% if show_notes_column == true %} - {% comment %}Notes column{% endcomment %} - - {% endif %} - - {% endfor %} - -
VersionDateDocker image tagNotes
{{ r.release_name }}{% if in_lts %}{{ lts_link }}{% endif %} + {{ r.release_date }} + {% if r.withdrawn == true %} + Withdrawn + {% if r.docker.docker_arm_limited_access == true %} + **Intel**: Production
**ARM**: Limited Access + {% elsif r.docker.docker_arm_experimental == true %} + **Intel**: Production
**ARM**: Experimental + {% else %} + Production + {% endif %} +
{{ r.release_name }}{% if was_lts_release %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r with LTS indicator if applicable.{% endcomment %} - - {{ r.release_date }} - {% if r.withdrawn == true %} - Withdrawn -
- {% if r.docker.docker_arm_limited_access == true %} - **Intel**: Production
**ARM**: Limited Access - {% elsif r.docker.docker_arm_experimental == true %} - **Intel**: Production
**ARM**: Experimental - {% else %} - Production - {% endif %} -
-
- -
-

The source code for CockroachDB is hosted in the cockroachdb/cockroach repository on Github.

- - - - - - - - - - {% for r in releases %} - {% comment %} Determine if this release is unsupported based on our criteria {% endcomment %} - {% assign is_unsupported = false %} - - {% comment %} Extract patch version for comparison {% endcomment %} - {% assign release_version_parts = r.release_name | split: "." %} - {% assign release_patch_part = 0 %} - {% if release_version_parts.size > 2 %} - {% assign release_patch_part = release_version_parts[2] | times: 1 %} - {% endif %} - - {% comment %} Extract LTS initial patch version for comparison {% endcomment %} - {% assign lts_version_parts = v.initial_lts_patch | split: "." %} - {% assign lts_patch_part = 0 %} - {% if lts_version_parts.size > 2 %} - {% assign lts_patch_part = lts_version_parts[2] | times: 1 %} - {% endif %} - - {% assign was_lts_release = false %} - {% if has_initial_lts_patch and release_patch_part >= lts_patch_part %} - {% assign was_lts_release = true %} - {% endif %} - - {% if has_initial_lts_patch %} - {% if release_patch_part >= lts_patch_part %} - {% if lts_asst_date_parsed == 'N/A' or lts_asst_date_parsed < current_date %} - {% assign is_unsupported = true %} + + {% endfor %} + +
VersionDateSource
+
+ +
+

The source code for CockroachDB is hosted in the cockroachdb/cockroach repository on Github.

+ + + + + + + + + + + {% for r in unsupported_releases %} + {% assign current_patch_string = '' %} + {% assign current_patch = nil %} + {% assign in_lts = false %} + {% if has_lts_releases == true and s == "Production" %} + {% capture current_patch_string %}{{ r.release_name | split: '.' | shift | shift }}{% endcapture %} + {% assign current_patch = current_patch_string | times: 1 %} + {% assign comparison = current_patch | minus: lts_patch %} + {% unless comparison < 0 %} + {% assign in_lts = true %} + {% endunless %} {% endif %} - {% else %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} - {% assign is_unsupported = true %} + + + + + {% comment %} Release date of the release. {% endcomment %} + {% if r.withdrawn == true %} {% comment %} Suppress withdrawn releases. {% endcomment %} + + {% continue %} + {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} + + {% continue %} + {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} + + {% continue %} + {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} + {% endif %} - {% endif %} - {% else %} - {% if asst_date_parsed == 'N/A' or asst_date_parsed < current_date %} - {% assign is_unsupported = true %} - {% endif %} - {% endif %} - - {% comment %} Skip releases that don't meet our criteria {% endcomment %} - {% if is_unsupported == false %} - {% continue %} - {% endif %} - - {% comment %} Add "Latest" class to release if it's the latest release. {% endcomment %} - - {% comment %} Release date of the release. {% endcomment %} - {% if r.withdrawn == true %} {% comment %} Suppress withdrawn releases. {% endcomment %} - - {% continue %} - {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} - - {% continue %} - {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} - - {% continue %} - {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} - - {% endif %} - - {% endfor %} {% comment %}for release in releases{% endcomment %} - -
VersionDateSource
+ {{ r.release_name }}{% if in_lts %}{{ lts_link }}{% endif %} + {{ r.release_date }}Withdrawn{{ r.cloud_only_message_short }}{{ is_not_downloadable_message }} + {% if r.source == true %} + View on Github + {% else %} + N/A + {% endif %} +
- {{ r.release_name }}{% if was_lts_release %}{{ lts_link }}{% endif %}{% comment %} Add link to each release r and LTS indicator if applicable {% endcomment %} - - {{ r.release_date }}Withdrawn{{ r.cloud_only_message_short }}{{ is_not_downloadable_message }} - {% if r.source == true %} - View on Github - {% else %} - N/A - {% endif %} -
-
- - - {% endif %} {% comment %}if unsupported_releases.size > 0{% endcomment %} - {% endfor %} {% comment %}for s in sections {% endcomment %} - {% endif %} +
+
+ + + {% endif %} {% comment %}if unsupported_releases.size > 0{% endcomment %} + {% endfor %} {% comment %}for s in sections {% endcomment %} + {% endif %} {% comment %}if is_unsupported or has_unsupported_releases{% endcomment %} + {% endif %} {% comment %}if released{% endcomment %} {% endfor %} {% comment %}for v in versions{% endcomment %} \ No newline at end of file From 8cd8382112a80803102ccbee404b85c72849ab81 Mon Sep 17 00:00:00 2001 From: Mohini Date: Wed, 5 Mar 2025 15:30:35 +0530 Subject: [PATCH 6/8] fixed link check --- src/current/releases/index.md | 1 - 1 file changed, 1 deletion(-) diff --git a/src/current/releases/index.md b/src/current/releases/index.md index 8782b024fb3..9d4417be120 100644 --- a/src/current/releases/index.md +++ b/src/current/releases/index.md @@ -114,7 +114,6 @@ As of 2024, CockroachDB is released under a staged delivery process. New release | Version | Release Type | GA date | | :---: | :---: | :---: | | [v24.3](#v24-3) | Regular | 2024-11-18 | -| [v24.2](#v24-2) | Innovation | 2024-08-12 | | [v24.1](#v24-1) | Regular | 2024-05-20 | | [v23.2](#v23-2) | Regular | 2024-02-05 | | [v23.1](#v23-1) | Regular | 2023-05-15 | From 1edaba1535d994c5bf3bf611713d8381e21c139e Mon Sep 17 00:00:00 2001 From: Mohini Date: Fri, 7 Mar 2025 20:59:07 +0530 Subject: [PATCH 7/8] change: added support of automated addition of unsupported text on unsupported page when a version reaches its unsupported date --- src/current/_data/versions.csv | 38 ++++++++++---------- src/current/releases/unsupported-versions.md | 20 +++++++---- 2 files changed, 32 insertions(+), 26 deletions(-) diff --git a/src/current/_data/versions.csv b/src/current/_data/versions.csv index 19c2cfb5935..db3374899e4 100644 --- a/src/current/_data/versions.csv +++ b/src/current/_data/versions.csv @@ -1,19 +1,19 @@ -major_version,release_date,maint_supp_exp_date,asst_supp_exp_date,last_ga_patch,initial_lts_patch,initial_lts_release_date,lts_maint_supp_exp_date,lts_asst_supp_exp_date,previous_version,crdb_branch_name -v1.0,2017-05-10,2018-05-10,2018-11-10,N/A,N/A,N/A,N/A,N/A,N/A,release-1.0 -v1.1,2017-10-12,2018-10-12,2019-04-12,N/A,N/A,N/A,N/A,N/A,v1.0,release-1.1 -v2.0,2018-04-04,2019-04-04,2019-10-04,N/A,N/A,N/A,N/A,N/A,v1.1,release-2.0 -v2.1,2018-10-30,2019-10-30,2020-04-30,N/A,N/A,N/A,N/A,N/A,v2.0,release-2.1 -v19.1,2019-04-30,2020-04-30,2020-10-30,N/A,N/A,N/A,N/A,N/A,v2.1,release-19.1 -v19.2,2019-11-12,2020-11-12,2021-05-12,N/A,N/A,N/A,N/A,N/A,v19.1,release-19.2 -v20.1,2020-05-12,2021-05-12,2021-11-12,N/A,N/A,N/A,N/A,N/A,v19.2,release-20.1 -v20.2,2020-11-10,2021-11-10,2022-05-10,N/A,N/A,N/A,N/A,N/A,v20.1,release-20.2 -v21.1,2021-05-18,2022-05-18,2022-11-18,N/A,N/A,N/A,N/A,N/A,v20.2,release-21.1 -v21.2,2021-11-16,2022-11-16,2023-05-16,N/A,N/A,N/A,N/A,N/A,v21.1,release-21.2 -v22.1,2022-05-24,2023-05-24,2023-11-24,N/A,N/A,N/A,N/A,N/A,v21.2,release-22.1 -v22.2,2022-12-05,2023-12-05,2024-06-05,N/A,N/A,N/A,N/A,N/A,v22.1,release-22.2 -v23.1,2023-05-15,2024-05-15,2024-11-15,23.1.11,23.1.12,2023-11-13,2024-11-13,2025-11-13,v22.2,release-23.1 -v23.2,2024-02-05,2025-02-05,2025-08-05,23.2.6,23.2.7,2024-07-08,2025-07-08,2026-07-08,v23.1,release-23.2 -v24.1,2024-05-20,2025-05-20,2025-11-20,24.1.5,24.1.6,2024-10-21,2025-10-21,2026-10-21,v23.2,release-24.1 -v24.2,2024-08-12,2025-02-12,N/A,N/A,N/A,N/A,N/A,N/A,v24.1,release-24.2 -v24.3,2024-11-18,2025-11-18,2026-05-18,N/A,N/A,N/A,N/A,N/A,v24.2,release-24.3 -v25.1,2025-02-18,2026-08-18,N/A,N/A,N/A,N/A,N/A,N/A,v24.3,release-25.1 +major_version,release_date,maint_supp_exp_date,asst_supp_exp_date,last_ga_patch,initial_lts_patch,initial_lts_release_date,lts_maint_supp_exp_date,lts_asst_supp_exp_date,previous_version,crdb_branch_name,unsupported_date +v1.0,2017-05-10,2018-05-10,2018-11-10,N/A,N/A,N/A,N/A,N/A,N/A,release-1.0,2024-01-01 +v1.1,2017-10-12,2018-10-12,2019-04-12,N/A,N/A,N/A,N/A,N/A,v1.0,release-1.1,2024-01-01 +v2.0,2018-04-04,2019-04-04,2019-10-04,N/A,N/A,N/A,N/A,N/A,v1.1,release-2.0,2024-01-01 +v2.1,2018-10-30,2019-10-30,2020-04-30,N/A,N/A,N/A,N/A,N/A,v2.0,release-2.1,2024-01-01 +v19.1,2019-04-30,2020-04-30,2020-10-30,N/A,N/A,N/A,N/A,N/A,v2.1,release-19.1,2024-01-01 +v19.2,2019-11-12,2020-11-12,2021-05-12,N/A,N/A,N/A,N/A,N/A,v19.1,release-19.2,2024-01-01 +v20.1,2020-05-12,2021-05-12,2021-11-12,N/A,N/A,N/A,N/A,N/A,v19.2,release-20.1,2025-05-12 +v20.2,2020-11-10,2021-11-10,2022-05-10,N/A,N/A,N/A,N/A,N/A,v20.1,release-20.2,2025-05-12 +v21.1,2021-05-18,2022-05-18,2022-11-18,N/A,N/A,N/A,N/A,N/A,v20.2,release-21.1,2025-05-18 +v21.2,2021-11-16,2022-11-16,2023-05-16,N/A,N/A,N/A,N/A,N/A,v21.1,release-21.2,2025-11-16 +v22.1,2022-05-24,2023-05-24,2023-11-24,N/A,N/A,N/A,N/A,N/A,v21.2,release-22.1,2026-05-24 +v22.2,2022-12-05,2023-12-05,2024-06-05,N/A,N/A,N/A,N/A,N/A,v22.1,release-22.2,2026-12-05 +v23.1,2023-05-15,2024-05-15,2024-11-15,23.1.11,23.1.12,2023-11-13,2024-11-13,2025-11-13,v22.2,release-23.1,N/A +v23.2,2024-02-05,2025-02-05,2025-08-05,23.2.6,23.2.7,2024-07-08,2025-07-08,2026-07-08,v23.1,release-23.2,N/A +v24.1,2024-05-20,2025-05-20,2025-11-20,24.1.5,24.1.6,2024-10-21,2025-10-21,2026-10-21,v23.2,release-24.1,N/A +v24.2,2024-08-12,2025-02-12,N/A,N/A,N/A,N/A,N/A,N/A,v24.1,release-24.2,2028-08-12 +v24.3,2024-11-18,2025-11-18,2026-05-18,N/A,N/A,N/A,N/A,N/A,v24.2,release-24.3,N/A +v25.1,2025-02-18,2026-08-18,N/A,N/A,N/A,N/A,N/A,N/A,v24.3,release-25.1,N/A diff --git a/src/current/releases/unsupported-versions.md b/src/current/releases/unsupported-versions.md index 0081e8897ef..5a6b4638e98 100644 --- a/src/current/releases/unsupported-versions.md +++ b/src/current/releases/unsupported-versions.md @@ -44,6 +44,12 @@ The CockroachDB versions on this page are no longer supported. For more informat {% assign is_innovation = false %} {% assign in_lts_period = false %} {% assign ga_support_expired = false %} + {% assign version_past_unsupported_date = false %} + + {% comment %} Check if the version is past its unsupported date {% endcomment %} + {% if v.unsupported_date != "N/A" and v.unsupported_date <= current_date %} + {% assign version_past_unsupported_date = true %} + {% endif %} {% comment %} Check if the version has been released {% endcomment %} {% if v.release_date != "N/A" and v.maint_supp_exp_date != "N/A" %} @@ -212,7 +218,7 @@ CockroachDB {{ v.major_version }} is partially supported. Pre-LTS patches (befor {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} {{ r.cloud_only_message_short }} {% continue %} - {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} + {% elsif version_past_unsupported_date == true %} {% comment %} Suppress download links for outdated versions or if past unsupported date. {% endcomment %} {{ is_not_downloadable_message }} {% continue %} {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} @@ -224,7 +230,7 @@ CockroachDB {{ v.major_version }} is partially supported. Pre-LTS patches (befor {% endif %} {% if r.linux.linux_arm == true and v_linux_arm == true %} {% comment %}Don't print column because of previous colspan=2{% endcomment %} - {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true %} + {% if r.withdrawn == true or r.cloud_only == true or version_past_unsupported_date == true %} {% break %} {% else %} @@ -284,7 +290,7 @@ CockroachDB {{ v.major_version }} is partially supported. Pre-LTS patches (befor {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} {{ r.cloud_only_message_short }} {% continue %} - {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} + {% elsif version_past_unsupported_date == true %} {% comment %} Suppress download links for outdated versions or if past unsupported date. {% endcomment %} {{ is_not_downloadable_message }} {% continue %} {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} @@ -296,7 +302,7 @@ CockroachDB {{ v.major_version }} is partially supported. Pre-LTS patches (befor {% endif %} {% if r.mac.mac_arm == true and v_mac_arm == true %} {% comment %}Don't print column because of previous colspan=2{% endcomment %} - {% if r.withdrawn == true or r.cloud_only == true or r.is_not_downloadable == true %} + {% if r.withdrawn == true or r.cloud_only == true or version_past_unsupported_date == true %} {% break %} {% else %} @@ -352,7 +358,7 @@ CockroachDB {{ v.major_version }} is partially supported. Pre-LTS patches (befor {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} {{ r.cloud_only_message_short }} {% continue %} - {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} + {% elsif version_past_unsupported_date == true %} {% comment %} Suppress download links for outdated versions or if past unsupported date. {% endcomment %} {{ is_not_downloadable_message }} {% continue %} {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} @@ -440,7 +446,7 @@ CockroachDB {{ v.major_version }} is partially supported. Pre-LTS patches (befor Withdrawn{% comment %} Suppress download links for withdrawn releases, spans Intel and ARM columns {% endcomment %} {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases, spans Intel and ARM columns {% endcomment %} {{ r.cloud_only_message_short }} - {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} + {% elsif version_past_unsupported_date == true %} {% comment %} Suppress download links for outdated versions or if past unsupported date. {% endcomment %} {{ is_not_downloadable_message }} {% continue %} {% else %} @@ -508,7 +514,7 @@ CockroachDB {{ v.major_version }} is partially supported. Pre-LTS patches (befor {% elsif r.cloud_only == true %} {% comment %} Suppress download links for Cloud-first releases {% endcomment %} {{ r.cloud_only_message_short }} {% continue %} - {% elsif r.is_not_downloadable == true %} {% comment %} Suppress download links for outdated versions. {% endcomment %} + {% elsif version_past_unsupported_date == true %} {% comment %} Suppress download links for outdated versions or if past unsupported date. {% endcomment %} {{ is_not_downloadable_message }} {% continue %} {% else %} {% comment %} Add download links for all non-withdrawn versions. {% endcomment %} From 3d7dbd178fbc2916a6cc59d35e4718b778a9f3c5 Mon Sep 17 00:00:00 2001 From: Mohini Date: Fri, 7 Mar 2025 21:08:08 +0530 Subject: [PATCH 8/8] changes column name --- src/current/_data/versions.csv | 2 +- src/current/releases/unsupported-versions.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/current/_data/versions.csv b/src/current/_data/versions.csv index db3374899e4..36137f5c523 100644 --- a/src/current/_data/versions.csv +++ b/src/current/_data/versions.csv @@ -1,4 +1,4 @@ -major_version,release_date,maint_supp_exp_date,asst_supp_exp_date,last_ga_patch,initial_lts_patch,initial_lts_release_date,lts_maint_supp_exp_date,lts_asst_supp_exp_date,previous_version,crdb_branch_name,unsupported_date +major_version,release_date,maint_supp_exp_date,asst_supp_exp_date,last_ga_patch,initial_lts_patch,initial_lts_release_date,lts_maint_supp_exp_date,lts_asst_supp_exp_date,previous_version,crdb_branch_name,binaries_unsupported_date v1.0,2017-05-10,2018-05-10,2018-11-10,N/A,N/A,N/A,N/A,N/A,N/A,release-1.0,2024-01-01 v1.1,2017-10-12,2018-10-12,2019-04-12,N/A,N/A,N/A,N/A,N/A,v1.0,release-1.1,2024-01-01 v2.0,2018-04-04,2019-04-04,2019-10-04,N/A,N/A,N/A,N/A,N/A,v1.1,release-2.0,2024-01-01 diff --git a/src/current/releases/unsupported-versions.md b/src/current/releases/unsupported-versions.md index 5a6b4638e98..d39081eda35 100644 --- a/src/current/releases/unsupported-versions.md +++ b/src/current/releases/unsupported-versions.md @@ -47,7 +47,7 @@ The CockroachDB versions on this page are no longer supported. For more informat {% assign version_past_unsupported_date = false %} {% comment %} Check if the version is past its unsupported date {% endcomment %} - {% if v.unsupported_date != "N/A" and v.unsupported_date <= current_date %} + {% if v.binaries_unsupported_date != "N/A" and v.binaries_unsupported_date <= current_date %} {% assign version_past_unsupported_date = true %} {% endif %}