Padrino

Padrino 0.10.6 - ActiveSupport 3.2, MiniRecord, HTML5 Helpers and bug fixes

For the last few months, our team has been quite busy so there has been less activity then usual on the Padrino codebase. The other reason for this is that as we have continued to stabilize the scope and the core code, there has been less need for urgent changes. Our core team uses Padrino for most of our projects and Padrino continues to serve as a stable foundation for our applications.

Still, with the official release of ActiveSupport 3.2, several contributions to our codebase and some useful bug fixes, we figured the time had come for a new release. Today, we are announcing the release of Padrino 0.10.6 with ActiveSupport 3.2 compatibility, MiniRecord generator support, HTML5 Helpers, along with many compatibility upgrades and bug fixes. Full details for this release are below.

ActiveRecord and ActiveSupport 3.2 Upgrade

We have upgraded Padrino to use ActiveSupport 3.2 and to enable support for ActiveRecord 3.2. We believe that Padrino should support the latest version of these components as they become officially available. There shouldn't be any breaking changes between ActiveRecord 3.1 and the new version release.

MiniRecord Generators

In this release, we have added generators for the excellent MiniRecord gem created by Padrino core team member DAddYE. MiniRecord is a gem that makes working with ActiveRecord much easier including automatic migrations and schema definitions in the model themselves. Commit here.

HTML 5 Helpers

Cirex contributed many useful HTML5 Helper changes including support for number_field, telephone_field, email_field, search_field, and url_field! He also cleaned up the apis for tag and content_tag for better HTML5 support. The changes shouldn't break existing applications.

  • Helpers for tag and content_tag are now HTML5 friendly: commit
  • Support HTML5 based tags for helpers: commit
  • Added support for a few of the new HTML 5 form inputs: commit

Thanks to Cirex for putting these together! Check out the Application Helpers guide for details about these HTML5 inputs.

In addition fnordfish added support for hash options for tags. For instance:

tag(:div, :data => {:dojo => {:type => 'dijit.form.TextBox', :props => 'readOnly: true'}})

Now properly sets up the data-dojo-type and the data-dojo-props attributes on a tag. Thanks to fnordfish: commit, commit

Logging

One of our core team members, skade has introduced changes to the logger to allow for custom loggers in a much easier way! Now, you can use a custom logger simply by re-assigning the logger to your own logging instance:

# app/app.rb
Padrino.logger = Lumberjack::Logger.new
Padrino.logger.colorize!
Padrino.logger.debug("Hooray, a colorized Lumberjack logger!")

By default the Padrino logger should work as expected. Commit here, here.

Component Upgrades

  • Adds Trinidad support to padrino start for use with JRuby applications, commit Thanks skade.
  • Use latest datamapper version (v1.2): commit
  • Changes Sequel to use new migration style: commit, Thanks funny-falcon.
  • Removes incorrect require when using AR with pg gem: commit, Thanks udzura.
  • Fixes error with less component: commit, Thanks commit
  • Writes css into the correct public stylesheets path,

Bug Fixes and Miscellaneous

  • Fixes issues with the routes after the reloader: commit
  • Use binread for file cache on 1.9.X: commit
  • Added setting to change model name for admin: commit here, here and here, Thanks aereal
  • Adds regexp route generation support: commit, Thanks joshbuddy
  • Translation fixes: commits here, here, and here
  • Set PADRINO_LOG_LEVEL constant by default: commit, Thanks marcosdsanchez
  • Fix app.app_name is not set error in padrino-cache: commit, Thanks modeverv
  • Mailer generator now handles hyphens: commit
  • Replace Sinatra quote with Godfather movie reference on server exit: commit, Thanks danishkhan
  • Correctly parse arguments to padrino binary: commit
  • Cache now stores response and content_type: commit, Thanks sumskyi

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 or open an issue on GitHub.

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.


comments powered by Disqus