-
Notifications
You must be signed in to change notification settings - Fork 3k
Specific combination of dependencies causes npm install to skip building native modules #5400
Comments
Possibly the same issue as #6679. |
also #6533 |
+1 on this issue. |
That is totally freaky. Also fixed npm/npm#multi-stage, so I'm closing the issue now. |
@smikes: All the code relating to it was rewritten, so you won't find a specific commit. The fix in multi-stage was to change everything. 😜 |
And yes, I'm pretty sure this is the same as 7074, FWIW. |
Ahh.. you took off and nuked the site from orbit. Nice. |
I'm pretty sure that this has the same underlying cause as #7074, and so should be fixed in |
I experienced similar symptoms on |
This bug is so weird that it's even a bit difficult to describe, so I'll illustrate with an example. Basically what happens is that a certain combination of modules prevents native modules from being built. The modules in question are
zmq
andsinon-chai
.(Note that you'll have to
brew install zeromq
before running the examples)Example. This works like it should, and produces zmq.node:
However, if I also install
sinon-chai
at the same time, zmq.node will not get built: (rm -rf node_modules
before running):➜ test npm install zmq sinon-chai zmq@2.7.0 node_modules/zmq ├── bindings@1.1.1 └── nan@0.8.0 chai@1.9.1 node_modules/chai ├── assertion-error@1.0.0 └── deep-eql@0.1.3 (type-detect@0.1.1) sinon@1.10.2 node_modules/sinon ├── util@0.10.3 (inherits@2.0.1) └── formatio@1.0.2 (samsam@1.1.1) sinon-chai@2.5.0 node_modules/sinon-chai
Any other combination works. For example, installing
sinon
andchai
(the dependencies ofsinon-chai
) withzmq
works like it should:This is the only failing combination I have managed to find (and in an actual app using package.json, too).
The problem occurs on every machine we have tried so far, including my developer machine (version information below) and a production build server running node v0.10.28 with the default NPM.
Any ideas?
The text was updated successfully, but these errors were encountered: