Working on the big PR Expose rubygem reverse depencencies #945, I extracted some patches that can be included on master directly.

Use select instead of pluck for reverse_dependencies #962

I had performance issues with the reverse depencencies calls, and I found that comes from SQL that took most of the time.

On the model Rubygem reverse depencencies was calculated by getting all IDs from Version with same rubygem_id.

Simple solution is to use select instead of pluck, this will create one SQL with a SELECT IN ....

Simple one, on the rubygems#show template there is list of links, so using a simple Array and public_send introduced in Ruby 1.9.1.


Refactoring and updating validate-website, had issue with RegexpOption that use to work on 3.6 version of slop.


I had added exit status to inch and only for suggest, for continuous integration. It will be released on 0.7.0 version, so it’s not yet available.


I like lint files and keep thing clean and consistant. I found ansible-lint really useful locally and on Travis-CI.

As you can see most of the fixes are « curl used in place of get_url module », « tar used in place of unarchive module », « Git checkouts must contain explicit version » and « rm used in place of argument state=absent to file module ». To test that I did not created issues, I used the vagrant provisioning and see that no changes has been created.