greenkeeper
greenkeeper copied to clipboard
minor/patch updates only for a package
Right now it seems as though greenkeeper pushes updates that skip major versions.
Under semver, major releases break APIs, and so my code will likely break because of this.
Is it possible to tell greenkeeper to only push patch and minors updates, and leave the major version as-is?
I wish that there was a way to have Greenkeeper stop trying to upgrade us to Vue 2.x when we're still on Vue 1.1.x as we're not in a place to upgrade yet.
I need to stay on @types/node
6.x.x
since I need to support v6, but I don't want to ignore it completely (the version is pinned because they may break in patch versions)
Seeing that the motivation behind Greenkeeper is to keep your dependencies up to date, it makes sense for Greenkeeper to send in PRs for breaking semver releases. The motivation here is that you will update your source with the new API so you can use the latest version of the dependency.
If you only want minor/patch updates then this defeats the purpose of Greenkeeper. Just specify a carat in your dependency's version range; all clients will by default install the latest version within the major release version.
@LINKIWI no, it doesn't. Greenkeeper is also for detecting in-range semver breakages and also already offers the ignore
option. A dependency can have a peerDependency
on another dependency or on your environment, and then the version you need is dictated by that other version which needs to be upgraded first. Upgrading just the peer dependent, e.g. @types/node
without updating the actual Node version in Travis and production serves no purpose, but you still want Greenkeeper to be aware of minor and patch releases.
The use-case of this was to be able to put specific non-caret dependencies in a project and let greenkeeper manage the upgrades.
This means that we can bump dependencies explicitly rather than having everyone in our user community get packages automatically.
Since raising this ticket we've started using yarn; it's lock features are reliable enough to serve this use-case.
I wish that there was a way to have Greenkeeper stop trying to upgrade us to Vue 2.x when we're still on Vue 1.1.x as we're not in a place to upgrade yet.
Would it be helpful if we would allow to not only ignore package names, but package names with version numbers? E.g. something like this?
"greenkeeper": {
"ignore": ["vue > 1"]
}
Not making any promises, just gathering more opinions :)