Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

Already on GitHub? Sign in to your account

Use bundler to run test suites #423

merged 3 commits into from Nov 3, 2012


None yet
6 participants

alup commented Sep 2, 2012

I have provided a group called "extra" to help differentiating the extra test dependencies.
So, now one can issue:

bundle install --without extra
bundle exec rake test

and have the fast testsuite run.

This pull request passes (merged 8dd3068 into d084a14).


chneukirchen commented Sep 2, 2012

Does this add a dependency on bundler?


rkh commented Sep 2, 2012

@chneukirchen no, it just adds a Gemfile. ppl can ignore it if they don't feel like using bundler.


alup commented Sep 2, 2012

@chneukirchen no. As @rkh mentioned it just bootstraps the bundler integration in the development/testing procedure.
By using bundler we can remove a lot of custom code snippets and rely on common practices.


raggi commented Sep 2, 2012

@chneukirchen a little, you can't just use rubygems to install all dev deps after this, you have to get a copy of the code with the Gemfile and either parse it by hand or use bundler to install them.


yeban commented Sep 2, 2012

@raggi, @alup: To avoid that "little" dependency on Bundler, the Gemfile can be modified to just define source and say gemspec, while development dependencies reside in gemspec as 's.add_development_dependency'. Bundler automatically creates 'development' group for them 1.


alup commented Sep 3, 2012

@chneukirchen @raggi Now, rack.gemspec file includes only the important dependencies (the ones needed to run fast testsuite). The extra ones are kept in Gemfile and thery are accessible through bundler. Nowadays, most of the people depend on bundler so I believe this step will help contribution.


alup commented Sep 8, 2012

@chneukirchen @raggi any other thoughts on this?


raggi commented Oct 31, 2012

@alup I would prefer to start removing some of the extended items from code (specifically things like FCGI) from core, but that cannot happen until 2.0.

What I really don't understand about this, is that it's really achieved quite a lot of nothing. You can execute the fast tests without bundler, without doing any extra work, and you can install the full suite of dependencies using gem install --development.

I'd rather see a better approach than breaking the gemspec manifest. Ideally we can force those items into a group using duplicate entries in Bundler, but I doubt that's currently supported (with good reason, it's hard and complex). I'll have a chat with other folks at Rubyconf, and consider helping with a patch over that side, but honestly, getting a rack release out is a much higher priority.


alup commented Nov 1, 2012

@raggi Indeed, you can achieve everything without bundler. The benefit of using bundler is that you can manage your dependencies with a better and cleaner way. Feel free to close this if it doesn't fit to your approach :).


raggi commented Nov 2, 2012

Ok, I tested out and recent RG changes make gem install --development is not currently working well for us, as it's now recursive. I'll probably merge this shortly.

@raggi raggi added a commit that referenced this pull request Nov 3, 2012

@raggi raggi Merge pull request #423 from alup/master
Use bundler to run test suites

@raggi raggi merged commit c4fc616 into rack:master Nov 3, 2012

1 check passed

default The Travis build passed

raggi commented Nov 3, 2012



alup commented Nov 3, 2012

@raggi thnx bro :)!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment