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

Enhancement: support development/unreleased versions of glibc (e.g. Fedora Rawhide 38) #3423

Closed
josenobile opened this issue Nov 1, 2022 · 7 comments

Comments

@josenobile
Copy link

Feature request

What are you trying to achieve?

Install sharp on Fedora rawhide which is using glibc 2.36.9000.0

When you searched for similar feature requests, what did you find that might be related?

none

What would you expect the API to look like?

To support glibc 2.36.9000.0 AND be more descriptive about texr errors, I took a while to discover the text error is about glibc version

What alternatives have you considered?

Use a stable version of Fedora

Please provide sample image(s) that help explain this feature

root@JOSENOBILEmntcwampwwwFITCOFITCO-AUTH-MICROSERVICE

@lovell
Copy link
Owner

lovell commented Nov 1, 2022

I've created an upstream enhancement for this at lovell/detect-libc#16

Fedora 38 is scheduled for its first release in April 2023, so we've got a few months to address this.

@lovell lovell changed the title Support for recent glibc npm ERR! sharp: Installation error: Invalid Version: 2.36.9000.0 Enhancement: support development/unreleased versions of glibc (e.g. Fedora Rawhide 38) Nov 1, 2022
@kleisauke
Copy link
Contributor

Fedora 38 is scheduled for its first release in April 2023, so we've got a few months to address this.

Looking at the history of version.h in glibc, it seems that the trailing patch component is only included for development releases. Fedora 37 would ship with glibc 2.36, I expect Fedora 38 ship with glibc 2.37 rather than this yet-to-be-released version.

@lovell
Copy link
Owner

lovell commented Dec 9, 2022

Commit 0f1e7ef adds support for installation to flavours of Linux that include a patch in the version of glibc they report, which currently includes Fedora 38.

(The summary is that we will ignore the patch version as reported by the upstream detect-libc, which I think is the easiest/cleanest solution.)

@lovell lovell added this to the v0.31.3 milestone Dec 9, 2022
@lovell
Copy link
Owner

lovell commented Dec 21, 2022

v0.31.3 now available, thanks for the original report.

@lovell lovell closed this as completed Dec 21, 2022
@GavinRay97
Copy link

@lovell Might I suggest slightly tweaking the error message to say invalid GLIBC version or similar?

I almost opened another issue until finding this one by chance, I was super confused why the same repo with a frozen package.lock.json worked on one machine but didn't on another -- I thought I was going crazy! 😅

@lovell
Copy link
Owner

lovell commented Jan 1, 2023

@GavinRay97 As of v0.31.3 you should not see any error. The message itself came from the underlying semver library, so I'm not sure how much we can do other than perhaps prefix it, but hopefully the logic is much tighter around glibc version handling now and we won't see it again.

@GavinRay97
Copy link

Ah understood, my apologies for the ping then!

Damn Node.js ecosystem I swear, I program in half a dozen other languages and nothing is as much a tangled fragile mess, haha.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants