Skip to content
New issue

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

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

Already on GitHub? Sign in to your account

Operating System support lists vendor unsupported versions #5444

Closed
5 of 6 tasks
MikeMcC399 opened this issue Aug 28, 2023 · 14 comments
Closed
5 of 6 tasks

Operating System support lists vendor unsupported versions #5444

MikeMcC399 opened this issue Aug 28, 2023 · 14 comments
Labels
content: rewrite triaged Issue has been routed to backlog. This is not a commitment to have it prioritized by the team.

Comments

@MikeMcC399
Copy link
Contributor

MikeMcC399 commented Aug 28, 2023

Subject

Getting Started > Installing Cypress > System requirements > Operating System

Description

System requirements > Operating System lists OS versions which are no longer under vendor support.

Should the current list below be updated to list only operating systems which are still supported by their respective vendors?

Current list

  • macOS 10.9 and above (Intel or Apple Silicon 64-bit (x64 or arm64))
  • Linux Ubuntu 12.04 20.04 and above, Fedora 21 and Debian 8 (x86_64 or Arm 64-bit (x64 or arm64)) (see Linux Prerequisites down below)
  • Windows 7 10 and above (64-bit only)

Vendor lifecycle information

Note: resolved OS entries in the list below are marked in the respective check-box:

GitHub current images

See GitHub Actions Runner Images for list of currently available images.

Notes

https://endoflife.date/ is also a convenient non-primary source for many end-of-life dates.

@nagash77 nagash77 added the triaged Issue has been routed to backlog. This is not a commitment to have it prioritized by the team. label Aug 28, 2023
@jaffrepaul
Copy link
Member

@jennifer-shehane can you weigh in? We can delegate the update if this is ✅

@MikeMcC399
Copy link
Contributor Author

It lists only "Debian 8" without saying "and above" so theoretically none of the current Cypress Docker images are supported if only Debian 8 (jessie), and not Debian 10 (buster) and 11 (bullseye), are supported.

@MikeMcC399
Copy link
Contributor Author

https://docs.cypress.io/guides/cloud/test-replay#Troubleshooting mentions CentOS, however this is not in the list of supported operating systems, although further down on the page with System requirements > Operating System in it "CentOS" and "Amazon Linux 2023" are listed under Linux Prerequisites without them appearing in the original list, so it's all a bit inconsistent and confusing!

CentOS Linux 7 has an end of life in 2024. We have had these users report issues when accessing Test Replay in Cypress Cloud. This could be due to GCC version compatibility with better-sqlite3. We recommend using CentOS 8 rather than 7, or try following the steps noted in this installing better-sqlite3 on Centos 7 Github Issue.

@MikeMcC399
Copy link
Contributor Author

@MikeMcC399
Copy link
Contributor Author

MikeMcC399 commented Sep 30, 2023

Node.js 18 is the earliest version which is not already in end-of-life status and it is the earliest version listed in the Cypress documentation under Getting Started > Installing Cypress > System requirements > Node.js.

Node.js 18 requires a minimum of GLIBC 2.28 on x64 Linux systems (see https://github.com/nodejs/node/blob/v18.0.0/BUILDING.md#unix-prerequisites). Node.js 18.0.0 and later versions output the error message:

node: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.28' not found (required by node)

and will not run.

This means that operating systems such as Ubuntu 18.04 where executing ldd --version shows an older version (ldd (Ubuntu GLIBC 2.27-3ubuntu1.6) 2.27), which does not meet the minimum GLIBC requirements of 2.28, should probably no longer be listed as supported by Cypress.

@MikeMcC399

This comment was marked as resolved.

@MikeMcC399
Copy link
Contributor Author

@jaffrepaul jaffrepaul removed their assignment Oct 2, 2023
@jaffrepaul
Copy link
Member

@jennifer-shehane can this be prioritized by the app team?

@MikeMcC399
Copy link
Contributor Author

MikeMcC399 commented Oct 3, 2023

For CentOS 7 there is a rebuild of Node.js 18 available on https://github.com/sbwml/node-latest-centos to resolve the GLIBC compatibility issue. I have no first-hand knowledge whether this works or not though.

@jennifer-shehane
Copy link
Member

@MikeMcC399 We're open to a pull request to update the OS list. It's just something that we update as necessary when we know our product absolutely does not work in an earlier version, it's not something we actively monitor to see what is EOL.

@MikeMcC399

This comment was marked as resolved.

@MikeMcC399
Copy link
Contributor Author

I will also submit a separate PR to update Fedora to a minimum of Fedora 38.

@MikeMcC399
Copy link
Contributor Author

@MikeMcC399
Copy link
Contributor Author

This issue is now resolved and all relevant minimum operating systems versions have been updated.

The issue about a missing Windows Server entry is a separate topic.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
content: rewrite triaged Issue has been routed to backlog. This is not a commitment to have it prioritized by the team.
Projects
None yet
Development

No branches or pull requests

4 participants