Google Summer of Code 2015: Wrapping Up

This year marked our fourth participation in Google’s Summer of Code (GSoC). In this post we’d like to tell you a bit about this year’s projects:

Asset Source Maps (Andrei Istratii)

Andrei has added support for several types of Source Maps to Sprockets 4. With Source Maps users can see a readable version of their code inside Developer Tools (Javascript, CSS, etc.) after it’s been minified or compiled. Check out Andrei’s sprockets and sass-rails contributions to find out more about the project status.

Test Failure Prediction (Genki Sugimoto)

Inspired by Aaron Patterson’s ideas on testing, Genki Sugimoto created a testing library called ttnt. It tells you which tests are relevant to a particular commit inside your application, giving you the option of skipping full test-suite runs.

Web Console (Hiroyuki Sano)

The Rails Web Console helps Rails developers debug running applications inside the browser. This project was created in 2013 by Genadi Samokovarov as part of that year’s GSoC. In 2015 Hiroyuki Sano improved it by creating a browser extension so you can use the console inside the Developer Tools.

Performance Enhancements for the Asset Pipeline (Martha De Luque)

Martha focused on finding and addressing performance issues inside our asset generation pipeline. With her work we now have support for faster asset compilation libraries, and thanks to her benchmarks we now know where to focus future optimization efforts.

Evented File System Monitoring (Puneet Agarwal)

Rails monitors application files when running in development mode, if any change is detected the application code is reloaded on the next request. Currently Rails walks the application tree to detect said changes, Puneet’s contribution implements an alternative using native operating system events.

Siddharth worked on laying the infrastructure for a more robust implementation of cookies in Rails. Some of his changes include support for JSON Web Encryption (JWE) and JSON Web Signatures (JWS). With these changes in place we can add cool features like cookie purposes and coherent expiration.

Wrapping Up

We want to thank all the students and mentors involved in this year’s Summer of Code, we hope it was a good experience for everyone. We also want to thank Google for supporting the projects, and José Valim, Pat Shaughnessy and O’Reilly Media for helping out with learning resources for our students.

See you next year!