Ruby製のシンプルなWebフレームワーク「Sinatra」の最新版v2.0.0が5月7日に公開されました。現在最新版ソースコードを公式サイトやrubygems.orgからダウンロードすることができます。
最新版ではserverに対する"-q"フラグの追加や、APP_ENV環境変数の推奨設定への変更を始め、細かな不具合の修正やセキュリティ関連の改良などさまざまな変更が行われています。
v2.0.0の変更点は以下の通り:
-
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 overRACK_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
anderror
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 allowstatus
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