Safely update your gem dependencies, e.g.
bundle update but safe :) (e.g. by running tests between each gem update).
- It updates each gem one by one and runs any command to make sure everything works (a subset of tests for instance)
- It saves every update as a git commit and reverts to the previous commit when the tests fails
In a git-versioned directory with a
safe-bundle-update [cmd ...]
safe-bundle-update "rake db:reset" "rspec spec/features" will reset the database and run features specs to make sure every gem update succeds indepedently.
gem install safe-bundle-update # or in your Gemfile gem 'safe-bundle-update'
- File comparaison instead of relying on git
- Dependency tree from rubygems api (update leafs first / update top dependencies first)
- Log report of errors for each gem
- Same for removing lines to any file (e.g. config/routes.rb, db/schema.rb, etc.)