Changelog History
Page 3
-
v1.4.4 Changes
October 21, 2013Allow setting layout to false specifically for a single rendering engine. (Matt Wildig)
Allow using wildcard in argument passed to
request.accept?
. (wilkie)Treat missing Accept header like wild card. (Patricio Mac Adden)
Improve tests and documentation. (Darío Javier Cravero, Armen P., michelc, Patricio Mac Adden, Matt Wildig, Vipul A M, utenmiki, George Timoschenko, Diogo Scudelletti)
Fix Ruby warnings. (Vipul A M, Patricio Mac Adden)
Improve self-hosted server started by
run!
method or in classic mode. (Tobias Bühlmann)Reduce objects allocated per request. (Vipul A M)
Drop unused, undocumented options hash from Sinatra.new. (George Timoschenko)
Keep Content-Length header when response is a
Rack::File
or when streaming. (Patricio Mac Adden, George Timoschenko)Use reel if it's the only server available besides webrick. (Tobias Bühlmann)
Add
disable :traps
so setting up signal traps for self hosted server can be skipped. (George Timoschenko)The
status
option passed tosend_file
may now be a string. (George Timoschenko)Reduce file size of dev mode images for 404 and 500 pages. (Francis Go)
-
v1.4.3 Changes
June 07, 2013Running a Sinatra file directly or via
run!
it will now ignore an empty $PORT env variable. (noxqsgit)Improve documentation. (burningTyger, Patricio Mac Adden, Konstantin Haase, Diogo Scudelletti, Dominic Imhof)
Expose matched pattern as env["sinatra.route"]. (Aman Gupta)
Fix warning on Ruby 2.0. (Craig Little)
Improve running subset of tests in isolation. (Viliam Pucik)
Reorder private/public methods. (Patricio Mac Adden)
Loosen version dependency for rack, so it runs with Rails 3.2. (Konstantin Haase)
Request#accept? now returns true instead of a truthy value. (Alan Harris)
-
v1.4.2 Changes
March 21, 2013Fix parsing error for case where both the pattern and the captured part contain a dot. (Florian Hanke, Konstantin Haase)
Missing Accept header is treated like /. (Greg Denton)
Improve documentation. (Patricio Mac Adden, Joe Bottigliero)
-
v1.4.1 Changes
March 15, 2013- Make delegated methods available in config.ru (Konstantin Haase)
-
v1.4.0 Changes
March 15, 2013Add support for LINK and UNLINK requests. (Konstantin Haase)
Add support for Yajl templates. (Jamie Hodge)
Add support for Rabl templates. (Jesse Cooke)
Add support for Wlang templates. (Bernard Lambeau)
Add support for Stylus templates. (Juan David Pastas, Konstantin Haase)
You can now pass a block to ERb, Haml, Slim, Liquid and Wlang templates, which will be used when calling
yield
in the template. (Alexey Muranov)When running in classic mode, no longer include Sinatra::Delegator in Object, instead extend the main object only. (Konstantin Haase)
Improved route parsing: "/:name.?:format?" with "/foo.png" now matches to {name: "foo", format: "png"} instead of {name: "foo.png"}. (Florian Hanke)
Add :status option support to send_file. (Konstantin Haase)
The
provides
condition now respects an earlier set content type. (Konstantin Haase)Exception#code is only used when :use_code is enabled. Moreover, it will be ignored if the value is not between 400 and 599. You should use Exception#http_status instead. (Konstantin Haase)
Status, headers and body will be set correctly in an after filter when using halt in a before filter or route. (Konstantin Haase)
Sinatra::Base.new now returns a Sinatra::Wrapper instance, exposing
#settings
and#helpers
, yet going through the middleware stack on#call
. It also implements a nice#inspect
, so it plays nice with Rails'rake routes
. (Konstantin Haase)In addition to WebRick, Thin and Mongrel, Sinatra will now automatically pick up Puma, Trinidad, ControlTower or Net::HTTP::Server when installed. The logic for picking the server has been improved and now depends on the Ruby implementation used. (Mark Rada, Konstantin Haase, Patricio Mac Adden)
"Sinatra doesn't know this ditty" pages now show the app class when running a modular application. This helps detecting where the response came from when combining multiple modular apps. (Konstantin Haase)
When port is not set explicitly, use $PORT env variable if set and only default to 4567 if not. Plays nice with foreman. (Konstantin Haase)
Allow setting layout on a per engine basis. (Zachary Scott, Konstantin Haase)
You can now use
register
directly in a classic app. (Konstantin Haase)redirect
now accepts URI or Addressable::URI instances. (Nicolas Sanguinetti)Have Content-Disposition header also include file name for
inline
, not just forattachment
. (Konstantin Haase)Better compatibility to Rack 1.5. (James Tucker, Konstantin Haase)
Make route parsing regex more robust. (Zoltan Dezso, Konstantin Haase)
Improve Accept header parsing, expose parameters. (Pieter van de Bruggen, Konstantin Haase)
Add
layout_options
render option. Allows you, amongst other things, to render a layout from a different folder. (Konstantin Haase)Explicitly setting
layout
tonil
is treated like setting it tofalse
. (richo)Properly escape attributes in Content-Type header. (Pieter van de Bruggen)
Default to only serving localhost in development mode. (Postmodern)
Setting status code to 404 in error handler no longer triggers not_found handler. (Konstantin Haase)
The
protection
option now takes asession
key for force disabling/enabling session based protections. (Konstantin Haase)Add
x_cascade
option to disableX-Cascade
header on missing route. (Konstantin Haase)Improve documentation. (Kashyap, Stanislav Chistenko, Zachary Scott, Anthony Accomazzo, Peter Suschlik, Rachel Mehl, ymmtmsys, Anurag Priyam, burningTyger, Tony Miller, akicho8, Vasily Polovnyov, Markus Prinz, Alexey Muranov, Erik Johnson, Vipul A M, Konstantin Haase)
Convert documentation to Markdown. (Kashyap, Robin Dupret, burningTyger, Vasily Polovnyov, Iain Barnett, Giuseppe Capizzi, Neil West)
Don't set not_found content type to HTML in development mode with custom not_found handler. (Konstantin Haase)
Fix mixed indentation for private methods. (Robin Dupret)
Recalculate Content-Length even if hard coded if body is reset. Relevant mostly for error handlers. (Nathan Esquenazi, Konstantin Haase)
Plus sign is once again kept as such when used for URL matches. (Konstantin Haase)
Take views option into account for template caching. (Konstantin Haase)
Consistent use of
headers
instead ofheader
internally. (Patricio Mac Adden)Fix compatibility to RDoc 4. (Bohuslav Kabrda)
Make chat example work with latest jQuery. (loveky, Tony Miller)
Make tests run without warnings. (Patricio Mac Adden)
Make sure value returned by
mime_type
is a String or nil, even when a different object is passed in, like an AcceptEntry. (Konstantin Haase)Exceptions in
after
filter are now handled like any other exception. (Nathan Esquenazi)
-
v1.3.6 Changes
March 15, 2013Backported from 1.4.0:
Take views option into account for template caching. (Konstantin Haase)
Improve documentation (Konstantin Haase)
No longer override
define_singleton_method
. (Konstantin Haase)
-
v1.3.5 Changes
February 25, 2013Fix for RubyGems 2.0 (Uchio KONDO)
Improve documentation (Konstantin Haase)
No longer override
define_singleton_method
. (Konstantin Haase)
-
v1.3.4 Changes
January 26, 2013Improve documentation. (Kashyap, Stanislav Chistenko, Konstantin Haase, ymmtmsys, Anurag Priyam)
Adjustments to template system to work with Tilt edge. (Konstantin Haase)
Fix streaming with latest Rack release. (Konstantin Haase)
Fix default content type for Sinatra::Response with latest Rack release. (Konstantin Haase)
Fix regression where + was no longer treated like space. (Ross Boucher)
Status, headers and body will be set correctly in an after filter when using halt in a before filter or route. (Konstantin Haase)
-
v1.3.3 Changes
August 19, 2012Improved documentation. (burningTyger, Konstantin Haase, Gabriel Andretta, Anurag Priyam, michelc)
No longer modify the load path. (Konstantin Haase)
When keeping a stream open, set up callback/errback correctly to deal with clients closing the connection. (Konstantin Haase)
Fix bug where having a query param and a URL param by the same name would concatenate the two values. (Konstantin Haase)
Prevent duplicated log output when application is already wrapped in a
Rack::CommonLogger
. (Konstantin Haase)Fix issue where
Rack::Link
and Rails were preventing indefinite streaming. (Konstantin Haase)No longer cause warnings when running Ruby with
-w
. (Konstantin Haase)HEAD requests on static files no longer report a Content-Length of 0, but instead the proper length. (Konstantin Haase)
When protecting against CSRF attacks, drop the session instead of refusing the request. (Konstantin Haase)
-
v1.3.2 Changes
December 30, 2011Don't automatically add
Rack::CommonLogger
ifRack::Server
is adding it, too. (Konstantin Haase)Setting
logging
tonil
will avoid setting upRack::NullLogger
. (Konstantin Haase)Route specific params are now available in the block passed to #stream. (Konstantin Haase)
Fix bug where rendering a second template in the same request, after the first one raised an exception, skipped the default layout. (Nathan Baum)
Fix bug where parameter escaping got enabled when disabling a different protection. (Konstantin Haase)
Fix regression: Filters without a pattern may now again manipulate the params hash. (Konstantin Haase)
Added examples directory. (Konstantin Haase)
Improved documentation. (Gabriel Andretta, Markus Prinz, Erick Zetta, Just Lest, Adam Vaughan, Aleksander Dąbrowski)
Improved MagLev support. (Tim Felgentreff)