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

update prerelease versions #51

Closed
travi opened this issue Sep 21, 2016 · 2 comments
Closed

update prerelease versions #51

travi opened this issue Sep 21, 2016 · 2 comments

Comments

@travi
Copy link

travi commented Sep 21, 2016

while i wouldn't want a stable version upgraded to a prerelease version or a prerelease version downgraded to a stable version, it would be valuable to have a prerelease version upgraded to a newer prerelease version.

@jhnns jhnns mentioned this issue Apr 25, 2017
jhnns added a commit that referenced this issue May 8, 2017
### Changes

- A batch update is attempted for all **non-breaking** updates according to semver
- All **breaking** updates are still performed in a sequential manner
- If the batch update fails, the failed update tasks are performed sequentially to find out, which module was breaking
- During a rollback, the next module update is installed in parallel
- The `package.json` is now written in the end after the whole operation
- The updtr tries to preserve the semver range style. If the style can not be preserved, it falls back to caret ranges.
- This behavior can be changed by specifying a `--save` option
- By specifying the `update-to=non-breaking` option, you can now choose to install non-breaking updates. It replaces the old `--wanted` flag
- Re-design of the default reporter (it's now called `dense`)
- Missing dependencies are now installed automatically before running `npm outdated`

### Fixes

- Fixes #14 #47 #46 #13 #51 #58
- Provides a workaround for #48 by sorting all dependencies

BREAKING CHANGE: New and changed CLI options

``` 
  --use, -u             Specify the package manager to use  [choices: "npm", "yarn"] [default: "npm"]
  --exclude, --ex       Space separated list of module names that should not be updated  [array]
  --update-to, --to     Specify which updates you want to install  [choices: "latest", "non-breaking", "wanted"] [default: "latest"]
  --save, -s            Specify how updated versions should be saved to the package.json  [choices: "smart", "caret", "exact"] [default: "smart"]
  --reporter, -r        Choose a reporter for the console output  [choices: "dense", "none"] [default: "dense"]
  --test, -t            Specify a custom test command. Surround with quotes.
  --test-stdout, --out  Show test stdout if the update fails  [boolean]
  --registry, --reg     Specify a custom registry to use
  --version             Show version number  [boolean]
  --help                Show help  [boolean]
```
@jhnns
Copy link
Member

jhnns commented Mar 25, 2018

Has been fixed with the rewrite

@jhnns jhnns closed this as completed Mar 25, 2018
@travi
Copy link
Author

travi commented Mar 28, 2018

i don't think we mean the same thing if this is considered closed. i just verified that with updtr v2.0.0, i'm not getting updates for pre-releases published on non-latest channels, even when I am already depending on a pre-release.

in this case, the details are as follows:

  • npm outdated shows
    Package                         Current       Wanted  Latest 
    husky                       0.15.0-rc.8  0.15.0-rc.8  0.14.3
    
  • npm dist-tags ls husky shows
    latest: 0.14.3
    next: 0.15.0-rc.13
    
  • running updtr outputs ● husky not-wanted and does not update husky to 0.15.0-rc.13

i'm not sure that this is a simple problem to solve, but the current behavior does not handle pre-releases like this as i was hoping.

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