2.0.1 2018/02/17
* avoid prefix duplication
* get rid of unnecessary assignment expression
the `base` does not respond to `conditions` permanently.
* documentation improvement
## 2.0.0 / 2017-04-10
* Use Mustermann for patterns #1086 by Konstantin Haase
* Server now provides `-q` flag for quiet mode, which disables start/stop messages #1153 by Vasiliy.
* Session middleware can now be specified with `:session_store` setting #1161 by Jordan Owens.
* `APP_ENV` is now preferred and recommended over `RACK_ENV` for setting environment #984 by Damien Mathieu.
* Add Reel support #793 by Patricio Mac Adden.
* Make route params available during error handling #895 by Jeremy Evans.
* Unify `not_found` and `error` 404 behavior #896 by Jeremy Evans.
* Enable Ruby 2.3 `frozen_string_literal` feature #1076 by Vladimir Kochnev.
* Add Sinatra::ShowExceptions::TEMPLATE and patched Rack::ShowExceptions to prefer Sinatra template by Zachary Scott.
* Sinatra::Runner is used internally for integration tests #840 by Nick Sutterer.
* Fix case-sensitivity issue in `uri` method #889 by rennex.
* Use `Rack::Utils.status_code` to allow `status` helper to use symbol as well as numeric codes #968 by Tobias H. Michaelsen.
* Improved error handling for invalid params through Rack #1070 by Jordan Owens.
* Ensure template is cached only once #1021 by Patrik Rak.
* Rack middleware is initialized at server runtime rather than after receiving first request #1205 by Itamar Turner-Trauring.
* Improve Session Secret documentation to encourage better security practices #1218 by Glenn Rempe
* Exposed global and per-route options for Mustermann route parsing #1233 by Mike Pastore
* Use same `session_secret` for classic and modular apps in development #1245 by Marcus Stollsteimer
* Make authenticity token length a fixed value of 32 #1181 by Jordan Owens
* Modernize Rack::Protection::ContentSecurityPolicy with CSP Level 2 and 3 Directives #1202 by Glenn Rempe
* Adds preload option to Rack:Protection:StrictTransport #1209 by Ed Robinson
* Improve BadRequest logic. Raise and handle exceptions if status is 400 #1212 by Mike Pastore
* Make Rack::Test a development dependency #1232 by Mike Pastore
* Capture exception messages of raised NotFound and BadRequest #1210 by Mike Pastore
* Add explicit set method to contrib/cookies to override cookie settings #1240 by Andrew Allen
* Avoid executing filters even if prefix matches with other namespace #1253 by namusyaka
* Make `#has_key?` also indifferent in access, can accept String or Symbol #1262 by John Hope
* Add `allow_if` option to bypass json csrf protection #1265 by Jordan Owens
* rack-protection: Bundle StrictTransport, CookieTossing, and CSP #1267 by Mike Pastore
* Add `:strict_paths` option for managing trailing slashes #1273 by namusyaka
* Add full IndifferentHash implementation to params #1279 by Mike Pastore
* only assign kcode if ruby version is < 1.9.0
* Fix typo in test description [skip ci]
* Modify deploy task's git details
* lock libv8 to 3.16.14.7 for 1.8.7
Collection of common Sinatra extensions, semi-officially supported.
# Goals
* For every future Sinatra release, have at least one fully compatible release
* High code quality, high test coverage
* Include plugins people usually ask for a lot