Greenkeeper is creating a huge amount of PRs which, while in most cases, would be useful to keep dependencies up to date, in the case of a project using ember-cli, often cause unnecessary work.
The problem is, ember-cli is a bundle of packages and greenkeeper creates an update PR for each individual package in that bundle. An example is
We do not want to update ember-source directly. We want to update ember-cli and then, if ember-cli decides we also need to update ember-source as we run ember init that's fine. Otherwise, ember-cli is the one telling us which packages it's dependent on. If anything, updating cli dependencies ourselves might cause issues.
In addition to that, greenkeeper is not setup to work with yarn. For each PR it creates we need to
pull latest develop
run git rebase origin/develop
run yarn install (this modifies yarn.lock)
commit amend the modified file
run git push --force-with-lease
wait for the build
review-approve and merge, or force merge
And really, the reasoning is, we want package updates as soon as possible. I don't really see the benefit in it.
I believe, if we opted to use a package, the assumption is, that package was desirable "as is", not in some soon to be updated version. Sure, we want our stuff up to date, but jumping on every minor version as soon as it's out more often than not means we instead get bugs.
Proposal 1 - Abandon greenkeeper
I believe a more cost-effective flow is:
keep ember-cli up to date, with its dependencies
if a non-core cli addon has deprecations after ember-cli is up to date, create an issue for it and keep updating it as now versions come out, until the deprecation is resolved
for non-cli addons, if we're using them as they are, they're good enough. we periodically can update if there's a benefit, but otherwise, there's no need.
Proposal 2 - Change the way we use greenkeeper
I'm hoping there is a way to configure greenkeeper to not update specified packages. If we went in that direction, we could make a list of ember-cli packages greenkeeper could then ignore, so we'd sort of get the "best of both worlds".
That being said, I'm not finding anything on the site or in the repository that could enable us to do so.
Problem
Greenkeeper is creating a huge amount of PRs which, while in most cases, would be useful to keep dependencies up to date, in the case of a project using ember-cli, often cause unnecessary work.
The problem is, ember-cli is a bundle of packages and greenkeeper creates an update PR for each individual package in that bundle. An example is
https://github.com/code-corps/code-corps-ember/pull/1269
We do not want to update ember-source directly. We want to update ember-cli and then, if ember-cli decides we also need to update ember-source as we run
ember init
that's fine. Otherwise, ember-cli is the one telling us which packages it's dependent on. If anything, updating cli dependencies ourselves might cause issues.In addition to that, greenkeeper is not setup to work with yarn. For each PR it creates we need to
git rebase origin/develop
yarn install
(this modifiesyarn.lock
)git push --force-with-lease
And really, the reasoning is, we want package updates as soon as possible. I don't really see the benefit in it.
I believe, if we opted to use a package, the assumption is, that package was desirable "as is", not in some soon to be updated version. Sure, we want our stuff up to date, but jumping on every minor version as soon as it's out more often than not means we instead get bugs.
Proposal 1 - Abandon greenkeeper
I believe a more cost-effective flow is:
Proposal 2 - Change the way we use greenkeeper
I'm hoping there is a way to configure greenkeeper to not update specified packages. If we went in that direction, we could make a list of ember-cli packages greenkeeper could then ignore, so we'd sort of get the "best of both worlds".
That being said, I'm not finding anything on the site or in the repository that could enable us to do so.