Message from discussion Sinatra 1.0.a pre-release
Received: by 10.114.215.3 with SMTP id n3ls791478wag.2.p; Fri, 29 Jan 2010
15:50:42 -0800 (PST)
Received: by 10.115.44.10 with SMTP id w10mr315399waj.27.1264809041902;
Fri, 29 Jan 2010 15:50:41 -0800 (PST)
Received: by 10.115.44.10 with SMTP id w10mr315398waj.27.1264809041874;
Fri, 29 Jan 2010 15:50:41 -0800 (PST)
Received: from mail-px0-f191.google.com (mail-px0-f191.google.com [184.108.40.206])
by gmr-mx.google.com with ESMTP id 25si706879pzk.15.2010.01.29.15.50.40;
Fri, 29 Jan 2010 15:50:40 -0800 (PST)
Received-SPF: pass (google.com: domain of blake.mizer...@gmail.com designates 220.127.116.11 as permitted sender) client-ip=18.104.22.168;
Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of blake.mizer...@gmail.com designates 22.214.171.124 as permitted sender) smtp.mail=blake.mizer...@gmail.com; dkim=pass (test mode) header...@gmail.com
Received: by pxi29 with SMTP id 29so1977529pxi.1
for <firstname.lastname@example.org>; Fri, 29 Jan 2010 15:50:40 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
DomainKey-Signature: a=rsa-sha1; c=nofws;
Received: by 10.142.119.41 with SMTP id r41mr1016228wfc.150.1264809038820;
Fri, 29 Jan 2010 15:50:38 -0800 (PST)
Date: Fri, 29 Jan 2010 15:50:38 -0800
Subject: Re: [ANN] Sinatra 1.0.a pre-release
From: Blake Mizerany <blake.mizer...@gmail.com>
Content-Type: text/plain; charset=ISO-8859-1
Using `pass` with a block will execute the block as the route handler if no
subsequent route matches.
On Fri, Jan 29, 2010 at 3:19 PM, Ryan Tomayko <r...@tomayko.com> wrote:
> Sinatra 1.0 is very close. We still need to tidy up some documentation
> and cut one more 0.9.x release to introduce some deprecation warnings.
> In the meantime, we're making a 1.0 pre-release available so that
> people can start testing their apps under the 1.0 codebase. If you
> vendor or have a local git clone, fetch the latest and use the 1.0.a
> tag. Or, install the pre-release gem with:
> =A0 =A0gem install --pre sinatra
> Sinatra 1.0 is NOT backward compatible with any prior release. This is
> the first time we've broken backward compatibility since Sinatra was
> introduced. Please see the Sinatra 1.0 FAQ for more information on the
> goals and implications of the 1.0 release:
> =A0 =A0http://www.sinatrarb.com/one-oh-faq
> A list of all commits with a diff of changes made between the the
> current 0.9.4 release and the 1.0.a release can be found here:
> =A0 =A0http://github.com/sinatra/sinatra/compare/0.9.4...1.0.a
> Please test your apps with the 1.0 code and report any issues right
> here on this thread or to the issue tracker. If everything goes well,
> we should be able to cut the official 1.0 release within the next week
> or two.
> From the CHANGES file <http://www.sinatrarb.com/changes>:
> =3D 1.0 / 2010-01-28 (prerelease)
> * It's now possible to register blocks to run after each request using
> after filters. After filters run at the end of each request, after
> routes and error handlers. (Jimmy Schementi)
> * Sinatra now uses Tilt <http://github.com/rtomayko/tilt> for
> rendering templates. This adds support for template caching,
> consistent template backtraces, and support for new template engines,
> like mustache and liquid. (Ryan Tomayko)
> * New 'settings' method gives access to options in both class and
> request scopes. This replaces the 'options' method. (Chris Wanstrath)
> * New boolean 'reload_templates' setting controls whether template
> files are reread from disk and recompiled on each request. Template
> read/compile is cached by default in all environments except
> development. (Ryan Tomayko)
> * New 'erubis' helper method for rendering ERB template with Erubis.
> The erubis gem is required. (Dylan Egan)
> * New 'cache_control' helper method provides a convenient way of
> setting the Cache-Control response header. Takes a variable number of
> boolean directives followed by a hash of value directives =A0(Ryan
> Tomayko), like this:
> =A0 =A0cache_control :public, :must_revalidate, :max_age =3D> 60
> * New 'expires' helper method is like cache_control but takes an
> integer number of seconds or Time object =A0(Ryan Tomayko), like this:
> =A0 =A0expires 300, :public, :must_revalidate
> * New 'request.secure?' method for checking for an SSL connection.
> (Adam Wiggins)
> * Sinatra apps can now be run with a '-h ADDR' argument to specify the
> address to bind to. (Ryan Tomayko)
> * Rack::Session::Cookie is now added to the middleware pipeline when
> running in test environments if the :sessions option is set. =A0(Simon
> * Route handlers, before filters, templates, error mappings, and
> middleware are now resolved dynamically up the inheritance hierarchy
> when needed instead of duplicating the superclass's version when a new
> Sinatra::Base subclass is created. This should fix a variety of issues
> with extensions that need to add any of these things to the base
> class. (Ryan Tomayko)
> * The X-Cascade response header is set to 'pass' when no matching
> route is found or all routes pass. (Josh Peek)
> The following Sinatra features have been obsoleted (removed entirely)
> in the 1.0 release:
> * The 'sinatra/test' library is obsolete. This includes the
> Sinatra::Test module, the Sinatra::TestHarness class, and the get_it,
> post_it, put_it, delete_it, and head_it helper methods. The Rack::Test
> library should be used instead.
> * Test framework specific libraries ('sinatra/test/spec',
> 'sinatra/test/bacon','sinatra/test/rspec', etc.) are obsolete. See
> http://www.sinatrarb.com/testing.html for instructions on setting up a
> testing environment under each of these frameworks.
> * Sinatra::Default is obsolete; use Sinatra::Base instead.
> Sinatra::Base acts more like Sinatra::Default in development mode.
> For example, static file serving and sexy development error pages are
> enabled by default.
> * Auto-requiring template libraries in the 'erb', 'builder', 'haml',
> and 'sass' methods is obsolete due to thread-safety issues. You must
> require the template libraries explicitly in your app.
> * The ':views_directory' option to rendering methods is obsolete; use
> ':views' instead.
> * The ':haml' and ':sass' options to rendering methods are obsolete.
> Template engine options should be passed in the second Hash argument
> * The use_in_file_templates method is obsolete. Use 'enable
> :inline_templates' or 'set :inline_templates, 'path/to/file''
> * The 'media_type' helper method is obsolete. Use 'mime_type' instead.
> * The 'mime' main and class method is obsolete. Use 'mime_type' instead.
> * The request-level 'send_data' method is no longer supported.
> * The Sinatra::Event and Sinatra::EventContext classes are no longer
> supported. This may effect extensions written for versions prior to
> 0.9.2. =A0See [Writing Sinatra
> Extensions](http://www.sinatrarb.com/extensions.html) for the
> officially supported extensions API.
> * The 'set_option' and 'set_options' methods are obsolete; use 'set' inst=
> * The ':env' setting ('settings.env') is obsolete; use ':environment' ins=
> * The request level 'stop' method is obsolete; use 'halt' instead.
> * The request level 'entity_tag' method is obsolete; use 'etag' instead.
> * The request level 'headers' method (HTTP response headers) is
> obsolete; use response['Header-Name'] instead.
> * Sinatra.application is obsolete; use Sinatra::Application instead.
> * Using 'Sinatra.application =3D nil' to reset an application is
> obsolete. =A0This should no longer be necessary.
> * Using 'Sinatra.default_options' to set base configuration items is
> obsolete; use 'Sinatra::Base.set(key, value)' instead.
> * The Sinatra::ServerError exception is obsolete. All exceptions
> raised within a request are now treated as internal server errors and
> result in a 500 response status.
> You received this message because you are subscribed to the Google Groups=
> To post to this group, send email to email@example.com.
> To unsubscribe from this group, send email to sinatrarb+unsubscribe@googl=
> For more options, visit this group at http://groups.google.com/group/sina=