I have Ruby gem with tests, and it has a dependency on another gem.
Recently there was a new release of that other gem, which broke my gem's test suite due to a change in behaviour.
I know which minor version bump of the other gem is to blame, but I want to find out the exact commit (there are several hundred commits between the point releases) so that I can understand where the problem is.
I've used git bisect
before to narrow down a bad commit in my repo, but can I do something similar for a dependency?
You can do this with a little fiddling:
In your app's directory run
Your app should now be loading that gem from your checkout and you should be able to run git bisect on that repo. Things like zeus, spring may need to be restarted after each revision is checked out - they tend to watch gemfile.lock so may not notice if the gem itself changes.
When you are done, revert the change to your gemfile and edit
.bundle/config
to remove the override.