[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

[ANN] Sinatra 0.9.1 released!

Ryan Tomayko

3/3/2009 12:34:00 AM

Sinatra 0.9.1 is a feature release. Highlights include support for
running on Ruby 1.9.1, a shiny new API for extensions/plugins, and
better support for building Rack middleware. This release is backward
compatible with 0.9.0 and 0.3.x.

gem install sinatra

For more information, see:

http://www.sin...

From the CHANGES file:

* Sinatra now runs under Ruby 1.9.1 [#61]

* Route patterns (splats, :named, or Regexp captures) are now passed
as arguments to the block. [#140]

* The "helpers" method now takes a variable number of modules along
with the normal block syntax. [#133]

* New request-level #forward method for middleware components: passes
the env to the downstream app and merges the response status, headers,
and body into the current context. [#126]

* Requests are now automatically forwarded to the downstream app when
running as middleware and no matching route is found or all routes
pass.

* New simple API for extensions/plugins to add DSL-level and
request-level methods. Use Sinatra.register(mixin) to extend the DSL
with all public methods defined in the mixin module; use
Sinatra.helpers(mixin) to make all public methods defined in the mixin
module available at the request level. [#138] See
http://www.sin.../extensions.html for details.

* Named parameters in routes now capture the "." character. This
makes routes like "/:path/:filename" match against requests like
"/foo/bar.txt"; in this case, "params[:filename]" is "bar.txt".
Previously, the route would not match at all.

* Added request-level "redirect back" to redirect to the referring URL.

* Added a new "clean_trace" option that causes backtraces dumped to
rack.errors and displayed on the development error page to omit
framework and core library backtrace lines. The option is enabled by
default. [#77]

* The ERB output buffer is now available to helpers via the @_out_buf
instance variable.

* It's now much easier to test sessions in unit tests by passing a
":session" option to any of the mock request methods. e.g.,
get '/', {}, :session =3D> { 'foo' =3D> 'bar' }

* The testing framework specific files ('sinatra/test/spec',
'sinatra/test/bacon', 'sinatra/test/rspec', etc.) have been
deprecated. See http://sinatrarb.com/te... for instructions on
setting up a testing environment with these frameworks.

* The request-level #send_data method from Sinatra 0.3.3 has been
added for compatibility but is deprecated.

* Fix :provides causing crash on any request when request has no
Accept header [#139]

* Fix that ERB templates were evaluated twice per "erb" call.

* Fix app-level middleware not being run when the Sinatra application
is run as middleware.

* Fixed some issues with running under Rack's CGI handler caused by
writing informational stuff to stdout.

* Fixed that reloading was sometimes enabled when starting from a
rackup file [#110]

* Fixed that "." in route patterns erroneously matched any character
instead of a literal ".". [#124]

All together, a little over 60 tickets were filed away in lighthouse,
making this one of the most active releases to date:

http://sinatra.lighthouseapp.com/projects/9779/tickets/...

Commit history:

http://github.com/sinatra/sinatra/com...

A large amount of energy was spent on documentation. Sinatra's website
was shuffled around a bit and we've begun documenting... everything.
Here's the first fruits of that labor:

http://www.sin.../documentation.html

http://www.sin.../configuration.html
http://www.sin.../testing.html
http://www.sin.../extensions.html

These people contributed code and/or doc patches to this release: Ryan
Tomayko (133), Simon Rozet (44), Blake Mizerany (33), Markus Prinz
(7), Nicolas Sanguinetti (4), Karel Minarik (4), raggi (2), Brandon
Dimcheff (2), Harry Vanberg (2), Neal Lindsay (2), Kevin Fullerton
(2), Jon Maddox (2), Scott Wisely (2), Widi Harsojo (1), Sam Roberts
(1), S. Brent Faulkner (1), Pat Nakajima (1), Matias K=C3=A4kel=C3=A4 (1), =
Julio
Capote (1), Devlin Daley (1), Aupajo (1), Andreas Haller (1), zapnap
(1), foca (1), beenimble (1), Victor Igumnov (1), Brian Deterling (1),
and Chris Schneider (1). Thanks!

1 Answer

Gregory Brown

3/3/2009 1:17:00 AM

0

On Mon, Mar 2, 2009 at 7:34 PM, Ryan Tomayko <rtomayko@gmail.com> wrote:
> Sinatra 0.9.1 is a feature release. Highlights include support for
> running on Ruby 1.9.1, a shiny new API for extensions/plugins, and
> better support for building Rack middleware. This release is backward
> compatible with 0.9.0 and 0.3.x.
>
> These people contributed code and/or doc patches to this release: Ryan
> Tomayko (133), Simon Rozet (44), Blake Mizerany (33), Markus Prinz
> (7), Nicolas Sanguinetti (4), Karel Minarik (4), raggi (2), Brandon
> Dimcheff (2), Harry Vanberg (2), Neal Lindsay (2), Kevin Fullerton
> (2), Jon Maddox (2), Scott Wisely (2), Widi Harsojo (1), Sam Roberts
> (1), S. Brent Faulkner (1), Pat Nakajima (1), Matias K=E4kel=E4 (1), Juli=
o
> Capote (1), Devlin Daley (1), =A0Aupajo (1), Andreas Haller (1), zapnap
> (1), foca (1), beenimble (1), Victor Igumnov (1), Brian Deterling (1),
> and Chris Schneider (1). Thanks!

Thanks to all these folks. Sinatra rocks solid, and is a ton of fun to use=