shama / napa

:wine_glass: A helper for installing stuff without a package.json with npm.
MIT License
412 stars 34 forks source link

No warning on 404 #32

Open tomek-he-him opened 9 years ago

tomek-he-him commented 9 years ago

Downloading from a github repo, try to make a typo in the reference – everything will pass smooth and error-less, yet the package isn't installed.

It would be great to:

till commented 9 years ago

@tomekwi Looks like the warning is there:

till:napa-playground/ $ ./node_modules/.bin/napa till/foobar-jsjsjd
info git git://github.com/till/foobar-jsjsjd into foobar-jsjsjd
ERR! fatal: remote error: 
  Repository not found.

Exit code is broken:

till:napa-playground/ $ echo $?
0
tomek-he-him commented 9 years ago

If I remember well I meant the reference – as in till/easybib-cookbooks#foobar-jsjsjd

till commented 9 years ago

@tomekwi Ah, I see. I tried to do a patch for it, but I gave up yesterday. Got confused with the callbacks.

caseyWebb commented 8 years ago

https://www.dropbox.com/s/3i54o071wecfi86/Screenshot%202015-10-29%2011.46.42.png?dl=0

tomek-he-him commented 8 years ago

Wow! Looks neat!

But @caseyWebb you know what I meant through reference don’t you? I meant napa 'jquery/jquery#revision-that-is-not-there'.

caseyWebb commented 8 years ago

I don't doubt that I'm misunderstanding, but the format in that screenshot is package@ref location/installed, simply because that's the way npm does it.

ex: https://www.dropbox.com/s/yzgxfd7dfd5kexb/Screenshot%202015-11-06%2013.19.13.png?dl=0

EDIT: I now realize that screenshot is confusing. nonexistent-branch is the literal name of the branch in this case. So w/ your example above, it would say fatal: couldn't find remote ref foobar-jsjsjd

caseyWebb commented 8 years ago

I'm totally ok with changing the format, though. I was aiming to make it as npm-like as possible.

tomek-he-him commented 8 years ago

When I try to install jquery/jquery#<reference>, npm v3.3.12 does the following:

$ npm install jquery/jquery\#master
…/
└── jquery@3.0.0-pre  extraneous (git://github.com/jquery/jquery.git#67fa2eab6ef323b1d894e9e7f054c6e8c844d304)

$ npm install jquery/jquery\#non-existent
npm ERR! git rev-list -n1 non-existent: fatal: ambiguous argument 'non-existent': unknown revision or path not in the working tree.
npm ERR! git rev-list -n1 non-existent: Use '--' to separate paths from revisions, like this:
npm ERR! git rev-list -n1 non-existent: 'git <command> [<revision>...] -- [<file>...]'
npm ERR! git rev-list -n1 non-existent: fatal: ambiguous argument 'non-existent': unknown revision or path not in the working tree.
npm ERR! git rev-list -n1 non-existent: Use '--' to separate paths from revisions, like this:
npm ERR! git rev-list -n1 non-existent: 'git <command> [<revision>...] -- [<file>...]'

# Keeps trying forever…

Whereas napa v2.0.0 pretends as if everything where alright:

$ napa jquery/jquery\#master
info download https://github.com/jquery/jquery/archive/master.tar.gz into jquery#master

$ napa jquery/jquery\#non-existent
info download https://github.com/jquery/jquery/archive/non-existent.tar.gz into jquery#non-existent

$ echo $?
0
caseyWebb commented 8 years ago

That above screenshot is speculative, not in any released version yet. I've been working on a pretty significant update that will make upgrading packages more npm-like. The branch this currently lives in is version-tracking, if you're interested.

tomek-he-him commented 8 years ago

Sounds great! Thanks for the clarification!

By the way, in my current projects I don’t need napa – so I won’t be contributing much in the near future.

But it’s great to see that this great project is alive again! Thanks, @caseyWebb!

gvandyk-r7 commented 8 years ago

+1