cloudfoundry-attic / cf-abacus

CF usage metering and aggregation
Apache License 2.0
98 stars 86 forks source link

Update dependencies to enable Greenkeeper 🌴 #1040

Closed greenkeeper[bot] closed 6 years ago

greenkeeper[bot] commented 6 years ago

Let’s get started with automated dependency management for cf-abacus :muscle:

⚠️ Greenkeeper has found a npm-shrinkwrap.json file in this repository. Please use greenkeeper-lockfile to make sure this gets updated as well.

This pull request updates all your dependencies to their latest version. Having them all up to date really is the best starting point for keeping up with new releases. Greenkeeper will look out for further dependency updates and make sure to handle them in isolation and in real-time, but only after you merge this pull request.

Important: Greenkeeper will only start watching this repository’s dependency updates after you merge this initial pull request.

📦 📦 Greenkeeper has detected multiple package.json files. They have all been added to a new greenkeeper.json config file. They’ve been collected in a group called default, meaning that all of them will receive updates together. You can rename, add and remove groups and freely assign each package.json to whichever group you like. It’s common, for example, to have one frontend group and one backend group, each with a couple of package.json files. In any case, all files in a group will have their updates collected into single PRs and issues.


💥 Tests on this branch are failing. Here’s how to proceed. To solve the issue, first find out which of the dependency’s updates is causing the problem. Then fix your code to accomodate the changes in the updated dependency. [next-update](https://www.npmjs.com/package/next-update) is a really handy tool to help you with this. Then push your changes to this branch and merge it.
🏗 How to configure Travis CI Greenkeeper has added a rule to your `.travis.yml` that whitelists Greenkeeper branches, which are created when your dependencies are updated. Travis CI will run your tests on these branches automatically to see if they still pass. No additional setup is required 😊
🙈 How to ignore certain dependencies You may have good reasons for not wanting to update to a certain dependency right now. In this case, you can [change the dependency’s version string in the `package.json` file back to whatever you prefer](https://github.com/cloudfoundry-incubator/cf-abacus/edit/greenkeeper/initial/package.json). To make sure Greenkeeper doesn’t nag you again on the next update, add a `greenkeeper.ignore` field to your `package.json`, containing a list of dependencies you don’t want to update. ```js // package.json { … "greenkeeper": { "ignore": [ "package-names", "you-want-me-to-ignore" ] } } ```
👩‍💻 How to update this pull request ```bash # Change into your repository’s directory git fetch --all git checkout greenkeeper/initial npm install-test # Adapt your code until everything works again git commit -m 'chore: adapt code to updated dependencies' git push https://github.com/cloudfoundry-incubator/cf-abacus.git greenkeeper/initial ```
✨ How do dependency updates work with Greenkeeper? After you merge this pull request, **Greenkeeper will create a new branch whenever a dependency is updated**, with the new version applied. The branch creation should trigger your testing services and check whether your code still works with the new dependency version. Depending on the the results of these tests Greenkeeper will try to open meaningful and helpful pull requests and issues, so your dependencies remain working and up-to-date. ```diff - "underscore": "^1.6.0" + "underscore": "^1.7.0" ``` The above example shows an in-range update. `1.7.0` is included in the old `^1.6.0` range, because of the [caret `^` character ](https://docs.npmjs.com/misc/semver#ranges). When the test services report success Greenkeeper will silently delete the branch again, because no action needs to be taken – everything is fine. However, should the tests fail, Greenkeeper will create an issue to inform you about the problem immediately. This way, you’ll never be surprised by a dependency breaking your code. As long as everything still works, Greenkeeper will stay out of your way, and as soon as something goes wrong, you’ll be the first to know. ```diff - "lodash": "^3.0.0" + "lodash": "^4.0.0" ``` In this example, the new version `4.0.0` is _not_ included in the old `^3.0.0` range. For version updates like these – let’s call them “out of range” updates – you’ll receive a pull request. This means that **you no longer need to check for new versions manually** – Greenkeeper will keep you up to date automatically. These pull requests not only serve as reminders to update: If you have solid tests and good coverage, and the pull requests passes those tests, you can very likely just merge it and release a new version of your software straight away :shipit: To get a better idea of which ranges apply to which releases, check out the extremely useful [semver calculator](https://semver.npmjs.com/) provided by npm.
FAQ and help There is a collection of [frequently asked questions](https://greenkeeper.io/faq.html). If those don’t help, you can always [ask the humans behind Greenkeeper](https://github.com/greenkeeperio/greenkeeper/issues/new).

Good luck with your project and see you soon :sparkles:

Your Greenkeeper bot :palm_tree:

cf-gitbot commented 6 years ago

We have created an issue in Pivotal Tracker to manage this:

https://www.pivotaltracker.com/story/show/160510291

The labels on this github issue will be updated when the story is started.