Today marks a milestone for the Travis CI project: it launched a crowd-funding campaign titled love.travis-ci.org to finance a slew of new features. Among the planned additions are private build support, pre-tested Github pull requests, build artifacts, and more language support.
Bendyworks is proud to be a platinum sponsor of this effort. We sincerely believe Travis CI is ushering in a renaissance of software authorship, doing for testing what Github did for source code management.
Why do we believe this? If you look at the proposed feature list, Travis CI is looking to turn a simple continuous integration server that simply reports “red” or “green” into a complete service that takes the guesswork out of a project’s health. And once you can see a project’s health, you can start improving it. Here are a few of the planned additions that will make Travis more that just a community CI server:
Private Build Support
Not only will private build support generate revenue to sustain Travis CI, it will introduce a huge segment of programmers to the concept of practical continuous integration. While many of us developers might consider continuous integration a “nice to have,” using Travis on internal projects will transform CI into a necessity for every project… open source or not.
Pre-Tested Github Pull Requests
Oh, pretty green button… it would be so very nice to just click you and be done with it. But there’s that nagging suspicion that the world will break if we so much as go near that “Merge Pull Request” button. With Travis’ planned pre-tested pull requests to the rescue, however, we can mash those delicious green buttons with impunity.
I love metrics. Perhaps not as much as Coda Hale (PDF), but I am a bit of a data nerd. And while Coda is a huge proponent of gathering metrics while in production1, I do love me some code metrics. Enter metric_fu. In addition to the standard rcov, metric_fu bundles such goodies as flog (complexity), flay (repetition), reek (code smells), roodi (code design), and saikuro (cyclomatic complexity). But that’s not it. If your tests produce other artifacts like screenshots, compilations (if you’re into that kind of thing), or other reports, you’ll get those too.
At Bendyworks, we’re currently a Ruby and Objective-C shop, with a little Clojure sprinkled in. And while we love our particular tools, we’re true polyglots at heart, so we’re excited to see language support expanding.
We love open source. We love testing. And we love Travis CI. Hell, we even wrote a native iOS app for Travis CI. We’re not done with it yet… we plan to add “Favorites” to the app soon! Bendyworks is thrilled to be part of such an important project, and we hope you consider donating to Travis CI.
1 I’m not, of course, claiming that Mr. Hale would scoff at metrics gathered outside of production.