> On 19 Jan 2015, at 05:49, Damon Smith <[email protected]> wrote:
> 
> I just tried to use npm to install server-jsx and I got an error message 
> saying:
> 
> The package envify does not satisfy its siblings' peerDependencies 
> requirements!
> 
> and I wonder if there is a way to improve this error message, because this 
> one is just no use to me. It seems to me, from reading this: 
> http://blog.nodejs.org/2013/02/07/peer-dependencies/ 
> that peer dependencies are basically saying "I'm not going to do dependency 
> management for you on this package, you'll need to do it yourself". Now, I 
> don't know, this probably isn't the case really but at the moment I have a 
> different problem to get started on and I don't really want to know the 
> massively complex detail of the npm dependency system. Yet. I'm sure I will 
> soon enough, whether I like it or not, but I just want to put it off for now 
> and try out react-jsx rendering on the server side.

That's not exactly what it does: peerDependencies are what every other 
dependency management system calls dependencies. It's the model where 
dependencies can conflict, in unresolvable ways: foo peerDepends on bar@2, baz 
peerDepends on bar@1: not resolvable. One of them would have to be broken.

Normal dependencies, because they're scoped in node, don't have this problem: 
if foo and baz need different bar modules, they each get a copy in node. 

However, this can't express a "plugin" pattern dependency. If someone's made 
those, you're stuck with peerDependencies.

> 
> So, can anyone tell me, would it be better for the error message to say 
> something like:
> 
> Package server-jsx has a peer dependency on envify@~1.2.0 which has not been 
> satisfied, which means you must manually include the envify package to be 
> able to install server-jsx.

That's not really a general solution: The solution is to use modules that 
depend on compatible versions of envify. If the requirements of a package are 
too narrow, that's a bug in that package.

> 
> Or is that just not really what's happening here? Either way, I'm all about 
> the error messages, and that one that needs some work.

Yeah. It's terrible, but explaining what's going on in the abstract often 
doesn't explain what's going on in any specific case. Suggestions are welcome, 
but it's not going to be easy!

Aria

-- 
Job board: http://jobs.nodejs.org/
New group rules: 
https://gist.github.com/othiym23/9886289#file-moderation-policy-md
Old group rules: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
--- 
You received this message because you are subscribed to the Google Groups 
"nodejs" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/nodejs/8D3C4DF4-1D09-46F6-8786-191EC5F53552%40dinhe.net.
For more options, visit https://groups.google.com/d/optout.

Attachment: smime.p7s
Description: S/MIME cryptographic signature

Reply via email to