Quantcast
Channel: Blog - Padrino Ruby Web Framework
Viewing all articles
Browse latest Browse all 17

Padrino 0.14.0 - cascading option for Rack applications, no ruby default encodings, erubi support, bug fixes

$
0
0

Enable cascading with Rack application

In prior versions of Padrino, the core router would cascade from one application to the next on a 404 response even when the application explicitly specified cascade: false. With this release, this has been corrected and Padrino will not cascade even if the specified Rack application returns 404.

Padrino.mount('RackApp',cascade: false).to('/api')# this will not be cascaded even if returning 404.Padrino.mount('PadrinoApp::App',app_file: Padrino.root('app/app.rb')).to('/')

Stop managing Ruby default encodings

Default Encoding.default_internal is now nil (Ruby default) instead of UTF-8 (Padrino < 0.14 default)

Erubi support

Padrino has now Erubi support. Erubi is a ERB template engine for Ruby. The most significant changes are:

  • Handles postfix conditionals when using escaping (e.g. <%= foo if bar %>)
  • Supports frozenstringliteral: true in templates via :freeze option
  • Automatically freezes strings for template text when ruby optimizes it (on ruby 2.1+)
  • Has 6x faster escaping on ruby 2.3+ by using cgi/escape
  • Has 86% smaller memory footprint

More details can be found under erubi.

All the credit for the implementation goes to @adam12 - thank you so much for your hard work.

Bug Fixes and Miscellaneous Things

There are several bug fixes and other updates:

  • Removal of requiring activesupport - see details
  • Removal of lib from $LOAD_PATH - see details
  • FIX #2105 run bundle with --binstubs on -b switch (@adam12)
  • FIX #2097 use exe folder for application executables (@adam12)
  • FIX #2109 change the format of session_id for Padrino Admin AccessControl (thanks @fnordfish for reporting this problem)
  • FIX #2111 disallow conflicting project names (thanks @leemour for reporting this problem)
  • FIX #2113 properly override default values in route definitions if parameter is present (@fidalgo)
  • FIX #2116 fix plugin list padrino g plugin -l (@fnordfish)
  • FIX #2119 add rake gem tasks to gem project Rakefile (@grasp)
  • FIX #2125 do not load in cycle files excluded from reloading (thanks @fnordfish for reporting this problem)
  • FIX handle nil database passwords for create_db and drop_db (@phallstrom)
  • FIX lock rake < 11.0 to avoid last_comment error (@namusyaka)

Viewing all articles
Browse latest Browse all 17

Trending Articles