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

Latest Development is Default #50

Open
kodypeterson opened this issue Mar 6, 2014 · 4 comments
Open

Latest Development is Default #50

kodypeterson opened this issue Mar 6, 2014 · 4 comments

Comments

@kodypeterson
Copy link
Contributor

When running "npm install express" it is fetching 4.0.0-rc2 - This is the development version. When running "npm install express" against default registry I get version 3.4.8 - the latest stable as expected.

@rlidwka
Copy link
Owner

rlidwka commented Mar 7, 2014

A few months ago it was a deliberate choice to work around an npm update bug that actually downgrades versions:

$ npm install express@4
$ npm ls | grep express@
└─┬ express@4.0.0-rc2
$ npm update
$ npm ls | grep express@
└─┬ express@3.5.0

Bug exists in my npm@1.3.11, but can't reproduce it with latest npm, so it's probably fixed. So I'll probably be ok with reverting that.


Anyway, most people expect to install the highest version instead of the latest one (see npm/npm#3397). So it seem to be a desirable behaviour.

@kodypeterson
Copy link
Contributor Author

Hmm, this is interesting.

Can you point me in the direction for backing out this change? Maybe the PR for the change?

@rlidwka
Copy link
Owner

rlidwka commented Mar 7, 2014

I think you can remove just two lines: one, two, and this particular issue will be gone.

But it might not be a complete solution due to the fact that sinopia is designed to provide some useful fallback in case npm registry is down.

So it deals with tags a bit differently. They are stored as the arrays, and highest available one is returned. It is done because tagged version may not always be available (i.e. latest is 3.5.0, but npm registry is down, so we should return another tag).

So in theory if express maintainers mark 4.0.0-rc as the latest, but switch tag to 3.5.0 after that, sinopia will assume that both versions are tagged, and return the highest one.

@rlidwka
Copy link
Owner

rlidwka commented Apr 1, 2014

Okay, starting from sinopia@0.8.0 "latest" tag now works like all other tags.

If somebody has old npm version and wants to ignore it like it was before, set "ignore_latest_tag" to "true".

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

2 participants