Skip to content

MaximeD/gem_updater

Folders and files

NameName
Last commit message
Last commit date

Latest commit

9d249a4 · Feb 21, 2025
Dec 26, 2024
Jun 29, 2020
Dec 26, 2024
Nov 9, 2024
May 31, 2024
Feb 25, 2015
Feb 21, 2025
Feb 17, 2025
Jan 3, 2025
Jul 14, 2021
Feb 21, 2025
Mar 15, 2015
Sep 16, 2023
Sep 30, 2023
May 1, 2019
Dec 26, 2024
Mar 13, 2017

Repository files navigation

Version Build Status Maintainability Codacy Quality Badge Codacy Coverage Badge Inline docs

GemUpdater: update your gemfile and retrieve changelogs

Every week or so, you wish to update your Gemfile, to do so, you just have to launch bundle update.

Problem is updates may break things. And obviously you need to know what may have broke before pushing your code to production. Before running your test suite and checking everything is fine, the first thing you do is probably to look for the changelogs of updated gems.

This process can be quite time consumming: you need to check on the internet for every updated gems, find where their changelog is hosted, and probably link to it in your commit message so that other developers will have a chance to review it too.

gem_update will do exactly that for you. It updates your Gemfile (via bundle update) and finds links for changelogs of updated gems. All you have to do is to copy paste the output to the commit message, and you're done! Obviously, you still have to read changelogs and adapt your code though ;)

Installation and usage

gem install gem_updater
gem_update
<copy paste of output to commit message>

If you prefer to, you can ask gem_update to commit straight away:

gem_update --commit

This will use the generated message as a commit message template, allowing you to edit before commit.

Diff format

By default, diff for your gems will look like the following:

* gem_1 0.1 → 0.2
[changelog](https://github.com/maintainer/gem_1/CHANGELOG.md#02)

* gem_2 3.4.2 → 3.4.3
[changelog](https://github.com/maintainer/gem_2/CHANGELOG.md#343)

You can change it if you like by writing you own template .gem_updater_template.erb in your home directory. Look at default template for an example on how to do it.

Troubleshooting

Changelog not found?

This project relies on the gem’s metadata to find the changelog url. If a changelog was not found, check if the gem’s authors declared its uri in its gemspec, like here.

Contributing

PRs are always welcome! If you wish to contribute, do not hesitate to submit an issue or to open a pull request.