Padrino 0.9.10 Released - Built for speed!

Our team is pleased to announce the 0.9.10 release of the Padrino Framework!

We have been working hard on Padrino since our first ‘public’ announcement and we have gotten a lot of amazing feedback and suggestions! This new release contains three major types of changes:

1) Performance Optimizations
2) Added Features
3) Bug Fixes

In the full post below, we will take you through a detailed tour of the biggest changes in this release (for a more compact view, see our changelog). Also, the full post contains benchmarks comparing Padrino to other popular ruby frameworks!

Performance Optimizations

Right after announcing Padrino, many developers began to request benchmarks to give them a better understanding of how our framework compared in terms of performance with the existing ruby web frameworks.

Personally, no one on our team is a big fan of benchmarks since they can often be misleading and real world usage is generally quite different. However, we thought that providing a set of simple benchmarking results would help people get at least a basic sense of Padrino’s speed.

According to our benchmarks, Padrino is now about as fast as Sinatra (and in some cases actually a bit faster!).

For our benchmarks, we chose to test three different sample applications. The first test was a bare minimum app as a baseline where a response is just rendered with a short inline string. The second test is a simple app where we render a small erb template. The third test was the most comprehensive with a more ‘full-stack’ application including sessions, haml, layouts, templates, flash, and helpers.

As you can see Padrino is very competitive in terms of speed in 0.9.10! In every case, Padrino is on par speed-wise with the equivalent Sinatra application. Be sure to check out the code for our benchmarks and let us know how we can improve them!

New Localized Translations

We added four new languages to the admin, helpers and error message translations:

Scoped Filters and Layouts

Padrino now scopes both filters and layouts for each controller. This means that layouts and/or route filters defined in a controller do not interfere with those defined in the main application or in other controllers.

Summary

As you can see there are some important fixes and new features but we want to point out a few things:

Padrino is already quite stable (remember that since version 0.7 our team has been using it in the real world)

This project is very actively contributed to and our team is committed to this framework and fix bugs quickly.

And what is next for Padrino?

We can anticipate right now that our team will soon be completing padrino templates and plugins, the tiny app generator and the padrino-cache gem.

After we complete these items and fix any bugs that crop up, Padrino can be ready for ONE-DOT-ZERO release!

Contribute

Please report any issues you encounter with this release! We are working very actively on Padrino and want to make the framework as stable and reliable as possible. That concludes the changelog for this release. As always if you want to keep up with Padrino updates, be sure to follow us on twitter: @padrinorb, join us on IRC at “#padrino” on freenode, open an issue, or discuss on gitter.