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

Make a node 18 pre-compiled binary available #25

Closed
Klaitos opened this issue Dec 19, 2022 · 10 comments
Closed

Make a node 18 pre-compiled binary available #25

Klaitos opened this issue Dec 19, 2022 · 10 comments

Comments

@Klaitos
Copy link

Klaitos commented Dec 19, 2022

Hello,

As node 18 is now in LTS since october, do you know if there is plan to make this binary precompiled for by any chance ?

Using alpine as base image make it difficult to built this on my own.

#8 42.64 npm ERR! node-pre-gyp WARN Hit error response status 404 Not Found on https://supabase-public-artifacts-bucket.s3.amazonaws.com/libpg-query-node/queryparser-v13.3.0-node-v108-linux-x64.tar.gz

Thanks

@pyramation
Copy link
Collaborator

Hey just to clarify, the build is working, but it takes longer?

As far as pre-compiles @darora can potentially let us know about pushing to the supabase bucket.

@Klaitos
Copy link
Author

Klaitos commented Dec 20, 2022

Yes the build is working fine.
But as i am using the image node:18-alpine for my web container, node-gyp requires to add g++ make python3 bash git in my multi-stage docker builder image.

@Klaitos Klaitos changed the title Node 18 support Make a node 18 pre-compiled binary available Dec 20, 2022
@Klaitos
Copy link
Author

Klaitos commented Jan 9, 2023

Hello, @darora any chance to get this :) ?

@karlhorky
Copy link
Contributor

Node.js 20 is now LTS since 24 Oct 2023, so I guess also doing Node.js v20 as well would be good

cc @darora

@nykula
Copy link

nykula commented Nov 10, 2023

On Fedora Silverblue 39 in a Node.js 20 toolbox, building libpg-query-node (transitive dependency of @supabase/postgres-meta) from source during npm install fails, complaining about conflicting strchrnul return types const char * and char * in postgres source and system header:

npm ERR! node-pre-gyp WARN Hit error response status 404 Not Found on https://supabase-public-artifacts-bucket.s3.amazonaws.com/libpg-query-node/queryparser-v13.3.1-node-v115-linux-x64.tar.gz 
...
npm ERR! src/postgres/src_port_snprintf.c:374:1: помилка: конфліктуючі типи для «strchrnul»; маємо «const char *(const char *, int)»
npm ERR!   374 | strchrnul(const char *s, int c)
npm ERR!       | ^~~~~~~~~
npm ERR! У файлі, включеному з ./src/postgres/include/c.h:61,
npm ERR!                  з src/postgres/src_port_snprintf.c:62:
npm ERR! /usr/include/string.h:286:14: примітка: попереднє оголошення «strchrnul» з типом «char *(const char *, int)»
npm ERR!   286 | extern char *strchrnul (const char *__s, int __c)
npm ERR!       |              ^~~~~~~~~
npm ERR! make[1]: *** [Makefile:171: src/postgres/src_port_snprintf.o] Помилка 1
npm ERR! make: *** [queryparser.target.mk:13: libpg_query/include/pg_query.h] Помилка 1
npm ERR! gyp ERR! build error 
npm ERR! gyp ERR! stack Error: `make` failed with exit code: 2
npm ERR! gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules_20/npm/node_modules/node-gyp/lib/build.js:203:23)
npm ERR! gyp ERR! stack     at ChildProcess.emit (node:events:514:28)
npm ERR! gyp ERR! stack     at ChildProcess._handle.onexit (node:internal/child_process:294:12)
npm ERR! gyp ERR! System Linux 6.5.6-300.fc39.x86_64
...
npm ERR! gyp ERR! node -v v20.8.1
npm ERR! gyp ERR! node-gyp -v v9.4.0

A new pre-compiled binary wouldn't solve the build issue but could help work around it.

@maschwenk
Copy link
Contributor

maschwenk commented Nov 15, 2023

Bumping this issue as well. We're excited about a massive memory leak in Jest that is fixed by upgrading to Node 20

jestjs/jest#11956 (comment)

But we can't compile this from source on Node 20 and would appreciate a precompiled binary ❤️ @darora

If there's anything I can do to help get the precompiled binary uploaded let me know.

@maschwenk
Copy link
Contributor

I was able to get the Linux version building on a Digital Ocean Droplet after making some changes

I can also separately compile a Mac ARM version on this machine, but not on the Droplet. If someone gave me the creds I could upload this version into supabase.

@darora
Copy link
Collaborator

darora commented Jan 2, 2024

I'll take a look at having the node20 binaries published over the next week or so. Node18 binaries have been available since Jan 2023.

@maschwenk
Copy link
Contributor

@darora 🙏🏼 thank you!

@darora
Copy link
Collaborator

darora commented Jan 9, 2024

Have published binaries for Node20 for linux/amd64, linux/arm64, darwin/arm64.

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

No branches or pull requests

6 participants