-
Notifications
You must be signed in to change notification settings - Fork 21.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Track Gemfile.lock at the repository #18992
Conversation
aeb3e25
to
9c6da15
Compare
The main reason is to make bisect easier. In some points, we have a lot of git dependencies. Since we don't have the information of which commit we are referring to, bundler get the latest commit of the master branch of the dependency. This sometimes returns a version that is not compatible with Rails anymore, making the tests fail and the harder to identify the commit that introduced a bug. Also this will make sure that a contributor will always get a set of dependencies that are passing with our tests. In our CI server we delete the lock file to make sure we are always testing against the newest release of our dependencies.
9c6da15
to
b1edc37
Compare
cc @rails/rails-committers @rails/rails-issues |
👍 |
I like anything that makes bisecting easier 😁 Thanks @rafaelfranca! |
I'm 👍 on this :) |
I weighed in before understand the issue on the other ticket, but after Rafael educating me, I'm 👍 |
I'm in! 👍 On Wed, Feb 18, 2015 at 6:38 PM, David Heinemeier Hansson <
|
❤️ |
💚💛❤️💙💜 |
💯 |
Track Gemfile.lock at the repository
Track Gemfile.lock at the repository
🎉 |
We should document, whats acceptable when updating the file in contributing guide. |
Only issue I see about this is:
The test will still fail on travis-ci, and it would be still hard to identify the problem. |
Track Gemfile.lock at the repository
@arthurnn at CI side it will still fail but if it is passing locally we will at least know it is because of of the dependencies. @vipulnsward good point about documenting. I'll write something. |
👍 |
🚀 |
🤘 |
And what was the reason Gemfile.lock not to be under version control? P.S. Apologies for extending the topic further... |
@rafaelfranca Thanks! |
This establishes a consistent environment for contributors. See rails/rails#18992 for more details.
The main reason is to make bisect easier.
In some points, we have a lot of git dependencies. Since we don't have
the information of which commit we are referring to, bundler get the
latest commit of the master branch of the dependency. This sometimes
returns a version that is not compatible with Rails anymore, making the
tests fail and the harder to identify the commit that introduced a bug.
Also this will make sure that a contributor will always get a set of
dependencies that are passing with our tests.
In our CI server we delete the lock file to make sure we are always
testing against the newest release of our dependencies.