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
Can't be installed for Node v16 #1840
Comments
Maybe related to #1839 (or maybe that is just for electron),
But I'm experiencing problems with my CI on Windows with Node v15 and nodegit@next, might be unrelated to your issue. |
@garyking I'm having problems with that too |
We'll get this addressed in 0.28.0. |
I think I'm having the same problem, (was testing via node on osx, but when run in docker with)
dockerfile;
Edit: disregard this, my github action was installing with v12 (72). Dockerfile latest. Setting both to v12 fixed my problem. |
until nodegit/nodegit#1840 is resolved
I works for me, it just takes A LOT of time:
And in comparison with npm 7.15.0 on the current node LTS (14.17.0) on the same machine:
Not sure what is going on, but this is 16x increase in installation time. Also node 15 is the same as node 16 in this regard. |
I too am having an issue installing |
I can install in a node 16 docker container, I can not on my Mac Mojave 10.14.6
For me, it seems the issue is the bin is building from source with Node Gyp and the issue is in here, though I don't fully understand what leads to this (on mac). NVM could potentially have a part to play in the issue. It looks like pre-built binaries are missing that could potentially help here:
|
I wish nodegit wouldn't need native builds. Or at least not built with node-gyp. node-gyp has been a pain in the – you know, the place, where the sun doesn't shine. It's been problematic ever since its beginnings. It's complicated and the error messages and traces have never been any good. When using NPM, it's a nightmare and with yarn it's even worse. Alternatively, you might want to think about an option to allow simple spawned calls to the git-cli. I don't mind a few split seconds or maybe even seconds more, it would take nodegit to execute when running synchronously. That's still more efficient than spending half a day chasing these pesky node-gyp compile errors. |
@KyleTryon Seeing the same error with node v16.4.0, macOS 11.6, node-pre-gyp v0.13.0, node-gyp v4.0.0. You can see my full log here. The interesting bit however is
A little bit of googling confirmed that this is in fact a compatibility issue with node v16, and other packages have hit this same error: https://stackoverflow.com/questions/67241196/error-no-template-named-remove-cv-t-in-namespace-std-did-you-mean-remove |
|
Is that version stable? The repo hasn't been updated since that version, in June, so I wouldn't hold my breath for another version any time soon. |
I think it's stable enough. The only breaking change seems to be Cred being renamed to Credential (possibly some other minor api changes?). I've been using the alpha versions for a while and have not experienced any problems. |
Any word on when the next release will be cut? |
We're working on resolving some lingering context awareness issues. Once those are addressed, we'll cut another alpha release. Once that's been out without issue for a while, we'd like to cut a non-alpha release including these changes. |
@ianhattendorf any updates on if the current alpha release has met expectations? Conservative ETA for a 0.28.0 drop? |
I am having an issue installing Working in |
This isn't really relevant to this issue, but it might be worth considering targeting WASM instead of publishing native bindings, that way you can have all of the same functions and possibly reduce some if not all of these sorts of issues. |
@Toxicable There is already a WASM version of libgit2, the same git lib that nodegit uses: https://github.com/petersalomonsen/wasm-git Not sure what the performance difference is between WASM and Native version as I haven't measure it but maybe it won't be very much since git is more I/O intensive and not so much CPU IMHO. Other projects with more CPU intensive parsing are 3-5 times slower with WASM than Native, see: tree-sitter/node-tree-sitter#90 (comment) |
It looks like 0.28.0-alpha.10 is missing a prebuilt linux x64 binary for Node 16. |
try Example docker-compose.yamlversion: "3"
services:
wechat_devtools:
image: node:16.13.1-slim
volumes:
- .:/workspace
entrypoint: /workspace/docker/entrypoint entrypoint#!/bin/bash
cd /workspace
apt update
apt-get install -y python2 python3 libkrb5-dev gcc openssl libssh2-1-dev g++ make
echo "start"
npm install nodegit
npm uninstall nodegit |
Still in the works, we haven't noticed any major issues so far with the latest alpha.
I'll see what we can do about getting prebuilts out soon for Node 16. |
FYI, I needed the prebuilts ASAP so I forked the repo and added support for it to my fork. Other than adding nodegit/.github/workflows/tests.yml Line 56 in 2e63ec9
See npm/feedback#121. |
Thanks for your work on nodegit. Happy to help on this if needed 🙂 |
just in case anyone in need stumbles upon this, the current solution is:
or
but you have to compile it on linux and that could be a problem in a container image lacking required dependencies so add
to your build before installing nodegit |
@selfagency Thanks for the hint! Glad it works for you. Sadly, it does not work for me. The error changes to
But that is probably another topic. I will open a new ticket for that, when it still does not work after |
Like @KyleTryon, I also use nvm (node version manager). So my workaround is this:
|
Thanks for that, @DerZyklop , I was losing my mind here |
Hi there so it seems this is a big issue... In AWS ElasticBeanstralk deploy if you have the 1 of the 2 platforms (Node 16). You will have a failing deploy because unsafe-perm was deprecated and npm install may fail... |
I got this error on a Macbook M1 Max: $ yarn add nodegit
yarn add v1.22.19
[1/4] 🔍 Resolving packages...
[2/4] 🚚 Fetching packages...
[3/4] 🔗 Linking dependencies...
warning Workspaces can only be enabled in private projects.
warning Workspaces can only be enabled in private projects.
[4/4] 🔨 Building fresh packages...
[1/2] ⠐ esbuild
error /Users/m.manzanares/test/test-nodegit/node_modules/nodegit: Command failed.
Exit code: 1
Command: node lifecycleScripts/preinstall && node lifecycleScripts/install
Arguments:
Directory: /Users/m.manzanares/test/test-nodegit/node_modules/nodegit
Output:
[nodegit] Running pre-install script
[nodegit] Running install script
node-pre-gyp
info it worked if it ends with ok
node-pre-gyp info
using node-pre-gyp@1.0.9
node-pre-gyp info using
node@16.13.0 | darwin | arm64
node-pre-gyp info check checked for "/Users/m.manzanares/test/test-nodegit/node_modules/nodegit/build/Release/nodegit.node" (not found)
node-pre-gyp http GET https://axonodegit.s3.amazonaws.com/nodegit/nodegit/nodegit-v0.28.0-alpha.13-node-v93-darwin-arm64.tar.gz
node-pre-gyp
ERR! install response status 404 Not Found on https://axonodegit.s3.amazonaws.com/nodegit/nodegit/nodegit-v0.28.0-alpha.13-node-v93-darwin-arm64.tar.gz
node-pre-gyp WARN Pre-built binaries not installable for nodegit@0.28.0-alpha.13 and node@16.13.0 (node-v93 ABI, unknown) (falling back to source compile with node-gyp)
node-pre-gyp WARN Hit error response status 404 Not Found on https://axonodegit.s3.amazonaws.com/nodegit/nodegit/nodegit-v0.28.0-alpha.13-node-v93-darwin-arm64.tar.gz
gyp
info it worked if it ends with ok
gyp info
using
node-gyp@8.4.1
gyp info using
node@16.13.0 | darwin | arm64
gyp
info ok
gyp
info it worked if it ends with ok
gyp info using node-gyp@8.4.1
gyp info using node@16.13.0 | darwin | arm64
gyp info
find Python using Python version 3.8.9 found at "/Applications/Xcode.app/Contents/Developer/usr/bin/python3"
gyp
info spawn /Applications/Xcode.app/Contents/Developer/usr/bin/python3
gyp info spawn args [
gyp info spawn args '/Users/m.manzanares/test/test-nodegit/node_modules/node-gyp/gyp/gyp_main.py',
gyp info spawn args 'binding.gyp',
gyp info
spawn args '-f',
gyp info spawn args 'make',
gyp info spawn args '-I',
gyp info spawn args '/Users/m.manzanares/test/test-nodegit/node_modules/nodegit/build/config.gypi',
gyp info spawn args '-I',
gyp info spawn args '/Users/m.manzanares/test/test-nodegit/node_modules/node-gyp/addon.gypi',
gyp info spawn args '-I',
gyp
info spawn args '/Users/m.manzanares/Library/Caches/node-gyp/16.13.0/include/node/common.gypi',
gyp info spawn args '-Dlibrary=shared_library',
gyp
info spawn args '-Dvisibility=default',
gyp info spawn args '-Dnode_root_dir=/Users/m.manzanares/Library/Caches/node-gyp/16.13.0',
gyp info spawn args '-Dnode_gyp_dir=/Users/m.manzanares/test/test-nodegit/node_modules/node-gyp',
gyp info
spawn args '-Dnode_lib_file=/Users/m.manzanares/Library/Caches/node-gyp/16.13.0/<(target_arch)/node.lib',
gyp info spawn args '-Dmodule_root_dir=/Users/m.manzanares/test/test-nodegit/node_modules/nodegit',
gyp info spawn args '-Dnode_engine=v8',
gyp info spawn args '--depth=.',
gyp info spawn args '--no-parallel',
gyp info spawn args '--generator-output',
gyp info spawn args 'build',
gyp info spawn args '-Goutput_dir=.'
gyp info spawn args ]
gyp info
ok
gyp
info it worked if it ends with ok
gyp info using node-gyp@8.4.1
gyp
info using node@16.13.0 | darwin | arm64
gyp
info spawn make
gyp info spawn args [ 'BUILDTYPE=Release', '-C', 'build' ]
SOLINK_MODULE(target) Release/acquireOpenSSL.node
ACTION binding_gyp_configureLibssh2_target_configure .
[nodegit] Configuring libssh2.
SOLINK_MODULE(target) Release/configureLibssh2.node
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/allocators/failalloc.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/allocators/stdalloc.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/commit.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/commit_graph.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/custom_tls.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/alloc.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/annotated_commit.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/apply.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/attr_file.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/attr.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/attrcache.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/blame_git.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/blame.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/blob.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/branch.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/buf_text.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/buffer.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/cache.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/checkout.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/cherrypick.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/clone.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/commit_list.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/config_cache.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/config_entries.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/config_file.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/config_mem.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/config_parse.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/config_snapshot.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/config.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/crlf.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/date.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/delta.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/diff_driver.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/diff_file.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/diff_generate.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/diff_parse.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/diff_print.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/diff_stats.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/diff_tform.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/diff_xdiff.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/diff.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/errors.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/fetch.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/fetchhead.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/filebuf.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/futils.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/filter.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/graph.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/hash.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/hash/sha1/sha1dc/sha1.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/hash/sha1/sha1dc/ubc_check.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/hash/sha1/collisiondetect.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/hashsig.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/ident.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/idxmap.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/ignore.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/index.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/indexer.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/iterator.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/libgit2.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/mailmap.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/midx.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/merge_driver.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/merge_file.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/merge.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/message.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/mwindow.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/net.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/netops.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/notes.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/object_api.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/object.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/odb_loose.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/odb_mempack.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/odb_pack.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/odb.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/offmap.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/oid.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/oidarray.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/oidmap.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/pack-objects.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/pack.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/parse.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/patch_generate.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/patch_parse.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/patch.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/path.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/pathspec.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/pool.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/posix.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/pqueue.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/proxy.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/push.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/reader.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/rebase.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/refdb_fs.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/refdb.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/reflog.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/refs.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/refspec.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/regexp.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/remote.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/repository.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/reset.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/revert.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/revparse.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/revwalk.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/runtime.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/signature.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/streams/socket.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/sortedcache.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/stash.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/status.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/strarray.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/streams/mbedtls.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/streams/openssl.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/streams/registry.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/strmap.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/submodule.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/sysdir.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/tag.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/thread.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/threadstate.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/trace.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/trailer.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/transaction.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/transport.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/transports/credential_helpers.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/transports/credential.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/transports/git.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/transports/local.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/transports/httpclient.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/transports/smart_pkt.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/transports/smart_protocol.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/transports/smart.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/transports/ssh.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/tree-cache.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/tree.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/tsort.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/util.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/varint.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/vector.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/wildmatch.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/worktree.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/xdiff/xdiffi.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/xdiff/xemit.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/xdiff/xhistogram.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/xdiff/xmerge.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/xdiff/xpatience.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/xdiff/xprepare.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/xdiff/xutils.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/zstream.o
CC(target) Release/obj.target/libgit2/vendor/libgit2/src/streams/stransport.o
../vendor/libgit2/src/streams/stransport.c:12:10: fatal error: 'CoreFoundation/CoreFoundation.h' file not found
#include <CoreFoundation/CoreFoundation.h>
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 error generated.
make: *** [Release/obj.target/libgit2/vendor/libgit2/src/streams/stransport.o] Error 1
gyp
ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/Users/m.manzanares/test/test-nodegit/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack at ChildProcess.emit (node:events:390:28)
gyp ERR! stack at Process.ChildProcess._handle.onexit (node:internal/child_process:290:12)
gyp
ERR! System Darwin 21.5.0
gyp
ERR! command "/Users/m.manzanares/.nvm/versions/node/v16.13.0/bin/node" "/Users/m.manzanares/test/test-nodegit/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/Users/m.manzanares/test/test-nodegit/node_modules/nodegit/build/Release/nodegit.node" "--module_name=nodegit" "--module_path=/Users/m.manzanares/test/test-nodegit/node_modules/nodegit/build/Release" "--napi_version=8" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v93"
gyp ERR! cwd /Users/m.manzanares/test/test-nodegit/node_modules/nodegit
gyp ERR! node -v v16.13.0
gyp ERR! node-gyp -v
v8.4.1
gyp ERR! not ok
node-pre-gyp ERR!
build error
node-pre-gyp ERR! stack Error: Failed to execute '/Users/m.manzanares/.nvm/versions/node/v16.13.0/bin/node /Users/m.manzanares/test/test-nodegit/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/Users/m.manzanares/test/test-nodegit/node_modules/nodegit/build/Release/nodegit.node --module_name=nodegit --module_path=/Users/m.manzanares/test/test-nodegit/node_modules/nodegit/build/Release --napi_version=8 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v93' (1)
node-pre-gyp ERR! stack at ChildProcess.<anonymous> (/Users/m.manzanares/test/test-nodegit/node_modules/@mapbox/node-pre-gyp/lib/util/compile.js:89:23)
node-pre-gyp ERR! stack at ChildProcess.emit (node:events:390:28)
node-pre-gyp ERR! stack at maybeClose (node:internal/child_process:1064:16)
node-pre-gyp ERR! stack at Process.ChildProcess._handle.onexit (node:internal/child_process:301:5)
node-pre-gyp ERR! System Darwin 21.5.0
node-pre-gyp ERR! command "/Users/m.manzanares/.nvm/versions/node/v16.13.0/bin/node" "/Users/m.manzanares/test/test-nodegit/node_modules/nodegit/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
node-pre-gyp ERR! cwd /Users/m.manzanares/test/test-nodegit/node_modules/nodegit
node-pre-gyp
ERR! node -v v16.13.0
node-pre-gyp ERR! node-pre-gyp -v v1.0.9
node-pre-gyp ERR! not ok
Failed to execute '/Users/m.manzanares/.nvm/versions/node/v16.13.0/bin/node /Users/m.manzanares/test/test-nodegit/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/Users/m.manzanares/test/test-nodegit/node_modules/nodegit/build/Release/nodegit.node --module_name=nodegit --module_path=/Users/m.manzanares/test/test-nodegit/node_modules/nodegit/build/Release --napi_version=8 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v93' (1)
[nodegit] ERROR - Could not finish install
[nodegit] ERROR - finished with error code: 1 |
this does not work properly for me :( |
I have since upgraded to Node v18 and installed |
workaround for nodegit/nodegit#1840
Could we have prebuilds for node 18? It is now LTS. Node 16 will be EOL in less than a year, whereas node 18 will be supported through 2025, so I would really like to use node 18, but installing from source can be a pain (and slow). |
|
This nodegit version can also be installed with Node v16 on Mac M1 |
You may be able to install it, but you'll be compiling libgit2 from source. This bug is mainly about the fact that there are not prebuilt binaries available. |
I'm getting this error on my Mac intel 12.6.3. It fails for me on both Node16 and Node19 yarn add nodegit
I'm also getting an error installing the alpha version yarn add nodegit@v0.28.0-alpha.18
|
Downgrade to Node v12 works for |
This works! Thank you very much!! |
Figma is apparently (unofficially, for their own use, I assume) offering pre-built binaries that work with Node.js v18 on their fork: https://www.npmjs.com/package/@figma/nodegit Credit goes to Figma an @jfirebaugh (and the people at Figma) whose branch is the base for their current release. Thank you! |
Which version of NodeGit should be used now with Node JS v18.17.1? |
Experienced this issue with MacBook Air M1 (2020), Node v18.18.0. Using figma's nodegit (0.28.0-figma.4) worked. |
@seasonedfish Is (0.28.0-figma.4) a production ready version? |
Sorry, I don't know if they make any guarantees of their release being production ready. |
It seems like
nodegit
can't be installed for Node v16? Can anyone confirm if they can?The text was updated successfully, but these errors were encountered: