Last week I was blown away by the response to a problem I was experiencing from maintainers of two of the larger open source projects in the Ruby world. And not just your average large Ruby projects, but implementations of Ruby itself.
I had trouble running the tests for envyable, my gem to manage environment variables in your projects, on Rubinius on TravisCI. After installing the version of Rubinius locally, I couldn’t reproduce the issue. So I tweeted.
Anyone seen this error on @travisci with @codeclimate coverage on @rubinius? https://t.co/fydiHoElCa. I can't repro locally and am confused.
— Phil Nash (@philnash) August 30, 2016
Not only did Brian Shirai, maintainer of Rubinius, reach out to suggest some ideas for how to fix it. He also forked the project and tried to get it working himself.
@philnash you're using an ancient version 3.29. Ensure you're using Trusty distro and 'rbx' in .travis.yml @travisci @codeclimate
— Rubinius (@rubinius) August 30, 2016
But that wasn’t all. I followed his advice but eventually had to settle with moving Rubinius to the allowed failures list in my TravisCI config. I’m still working with the TravisCI support team to try to fix the issue. We’re getting there as it turns out TravisCI was looking in the wrong place for the latest Rubinius binaries. That issue is fixed but I am now getting timeouts for my builds.
This affected JRuby too and when I mentioned that on Twitter, Charles Nutter from the JRuby core team also offered to help out if it was a JRuby bug.
@philnash @travisci @rubinius That JRuby failure looks like a timeout installing the base gemset in rvm. Happy to help if it is a JRuby bug.
— Charles Nutter (@headius) August 31, 2016
My project is not the biggest or the most important Ruby project. Not by a long way. The issues are also likely not with Rubinius or JRuby. But the willingness for Brian and Charles to reach out to help was amazing. I’m sure they are very busy people and just the response was appreciated.
Thank you
So thank you Brian and thank you Charles. Thank you for your work in the Ruby community and thank you specifically for offering your help to me. Acts like this maintain my belief in the power and the strength of the Ruby community.