JCMais / node-libcurl

libcurl bindings for Node.js
https://npmjs.org/package/node-libcurl
MIT License
660 stars 117 forks source link

Add prebuilt binaries for nodejs 20 LTS #399

Closed bchew closed 7 months ago

bchew commented 10 months ago

nodejs 20 has just been moved to active LTS and we have just realised there were no prebuilt binaries after upgrading as per snippet below (similar to the issue with nodejs 18 last year):

npm ERR! node-pre-gyp info using node@20.9.0 | linux | x64
npm ERR! node-pre-gyp info check checked for "/home/node/e2e/node_modules/node-libcurl/lib/binding/node_libcurl.node" (not found)
npm ERR! node-pre-gyp http GET https://github.com/JCMais/node-libcurl/releases/download/v3.0.0/node_libcurl-v3.0.0-node-v115-linux-x64-glibc.tar.gz
npm ERR! node-pre-gyp ERR! install response status 404 Not Found on https://github.com/JCMais/node-libcurl/releases/download/v3.0.0/node_libcurl-v3.0.0-node-v115-linux-x64-glibc.tar.gz 
npm ERR! node-pre-gyp WARN Pre-built binaries not installable for node-libcurl@3.0.0 and node@20.9.0 (node-v115 ABI, glibc) (falling back to source compile with node-gyp) 
npm ERR! node-pre-gyp WARN Hit error response status 404 Not Found on https://github.com/JCMais/node-libcurl/releases/download/v3.0.0/node_libcurl-v3.0.0-node-v115-linux-x64-glibc.tar.gz

Would it be possible to have prebuilt binaries for 20 as well? That would be appreciated, thanks.

JCMais commented 10 months ago

Hey!

I will try to add the prebuilt binaries next weekend, I will update this if I am able to do so

ddolcimascolo commented 10 months ago

Excellent @JCMais !

Just ask if you need any help :)

Cheers, David

ddolcimascolo commented 10 months ago

Hi @JCMais,

Did you manage to build the library for Node 20?

Thanks, David

JCMais commented 10 months ago

No, there are some build issues that I will have to fix throughout the week

ddolcimascolo commented 10 months ago

Yeah, for zlib I see that Node 20 returns a weird version number that makes the build fail because no corresponding tag exists in the zlib repo...

$ node -e "console.log(process.versions.zlib)"
1.2.13.1-motley
ddolcimascolo commented 10 months ago

Hi all,

For the record, I did setup a build of the native addon using zlib 1.2.13 (as per my comment above) and libcurl 7.86.0 using a private, custom CI job on a Linux x64 container (based on Debian 11, my primary target). Build passed with a few warnings and our test suite is all green.

David

pankaz commented 9 months ago

Hi @JCMais

Really looking forward to the support for NodeJS 20.

Thanks, Pankaj

JCMais commented 8 months ago

I released a pre-release version of node-libcurl that has prebuilt binaries Node.js v20, it is available through node-libcurl@next, feel free to try it out and report any issues.

This pre-release version will probably become the v4 version of the package, there are no API-breaking changes thus far, and the only reason for the new major version will be the drop of support for old node versions.

pankaz commented 8 months ago

@JCMais, thank you so much for this fix. I will check this out and revert if I come across any issues.

bchew commented 8 months ago

@JCMais we've tested the pre-release version and it's working as expected. Thanks again for sorting this out, much appreciated.

kdev commented 7 months ago

Hey @JCMais, how is the progress on bumping the next version to latest?

nktnet1 commented 7 months ago

@kdev looks like 4.0.0 has just dropped 🎉:

bchew commented 7 months ago

https://github.com/JCMais/node-libcurl/releases/tag/v4.0.0