code-corps / code-corps-ember

Ember web application for Code Corps.
https://www.codecorps.org
MIT License
123 stars 78 forks source link

Proposal: Abandon or change the way we use greenkeeper #1291

Open begedin opened 7 years ago

begedin commented 7 years ago

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

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.

snewcomer commented 7 years ago

I agree with #1. Greenkeeper seems great for some things but also doesn't fit my personal workflow for managing ember projects.