Padrino 0.10.7 - Reloader, JRuby, Helpers and Other Bug Fixes
Several months ago, Padrino 0.10.6 was released which included HTML5 support, improved stability and compatibility patches. Today after some unfortunate delays, we are releasing Padrino 0.10.7 which is a major bug fix and compatibility release. We investigated all major issues reported since the release of 0.10.6 and have addressed the most important issues including renewed JRuby support, a better reloader, activesupport loading, and many other improvements. Full details for this release are below. We look forward to getting back to a quicker release cycle going forward.
Bug Fixes, Translations and Miscellaneous
- Fix reloader issue with class name resolution: commit
- Added support for activerecord-jdbcmysql-adapter: commit, Thanks rameshpy
- Fix options_for_select result in a corner case: commit, Thanks whitequark
- Remove redundant tlsmail dependency: commit, Thanks trevor
- Adds an options attribute to ProjectModule: commit, Thanks simonc
- Respect configured model name in admin generator: commit, Thanks joelcuevas
- Patched to fix rake use in padrino templates, Thanks jasonm23
- Fix error_message_on for empty array, Thanks sshaw
- Adds Swedish localization support, Thanks Lejdborg
- Adds Romanian localization support, Thanks relu
- Prevent JRuby reloading bug, Thanks dn2k
- Fix admin generator to understand model_name, Thanks fnordfish
- Add CLI shortcut with just ‘c’, Thanks joslinm
- Adds a catch all method to the redis cache
- Make mysql2 alias of mysql when DataMapper is selected
- Add require ActiveSupport::TimeWithZone class for helpers
- Change boolean helper attributes to conform to xhtml strict
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
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.