All Versions
61
Latest Version
Avg Release Cycle
143 days
Latest Release
1134 days ago

Changelog History
Page 3

  • v1.4.4 Changes

    October 21, 2013
    • Allow 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 to send_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, 2013
    • Running 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, 2013
    • Fix 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, 2013
    • Add 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 for attachment. (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 to nil is treated like setting it to false. (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 a session key for force disabling/enabling session based protections. (Konstantin Haase)

    • Add x_cascade option to disable X-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 of header 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, 2013

    Backported 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, 2013
    • Fix for RubyGems 2.0 (Uchio KONDO)

    • Improve documentation (Konstantin Haase)

    • No longer override define_singleton_method. (Konstantin Haase)

  • v1.3.4 Changes

    January 26, 2013
    • Improve 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, 2012
    • Improved 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, 2011
    • Don't automatically add Rack::CommonLogger if Rack::Server is adding it, too. (Konstantin Haase)

    • Setting logging to nil will avoid setting up Rack::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)