Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Commits on Mar 13, 2012
  1. @rkh

    do not modify load path

    rkh authored
Commits on Dec 23, 2009
  1. @sr

    Deprecate use_in_file_templates!

    sr authored
    Use enable :inline_templates instead
  2. @sr

    Revert "closes #308 - Depricate use_in_file_templates! in favor of sl…

    sr authored
    …urp_file_templates"
    
    This reverts commit 056bd7b.
Commits on Dec 18, 2009
  1. closes #308 - Depricate use_in_file_templates! in favor of slurp_file…

    Blake Mizerany authored
    …_templates
Commits on Jun 6, 2009
  1. @rtomayko
Commits on Mar 26, 2009
  1. @rtomayko
  2. @mnoble @rtomayko

    Awesome ShowException template

    mnoble authored rtomayko committed
Commits on Jan 18, 2009
  1. @rtomayko

    Minor tweaks to use_in_file_templates! auto loading

    rtomayko authored
    1. Don't add the sinatra lib dir to $: on each reload.
    2. Don't remove sinatra.rb from $LOADED_FEATURES unless we're
       reloading.
  2. @bmizerany

    In-file-templates are automaticly loaded for you.

    bmizerany authored
    Sinatra will now load you in-file-templates from the file
    that required sinatra.
    
    If you need to use in-file-templates outside this you will need
    to explicitly call use_in_file_templates! in that file.
Commits on Jan 14, 2009
  1. @adamwiggins
Commits on Dec 21, 2008
  1. @rtomayko

    I knew I shoulda taken that left turn at Hoboken

    rtomayko authored
    This is a fairly large reworking of Sinatra's innards. Although
    most of the internal implementation has been modified, it
    provides the same basic feature set and is meant to be compatible
    with Sinatra 0.3.2.
    
    * The Event and EventContext classes have been removed. Sinatra
      applications are now defined within the class context of a
      Sinatra::Base subclass; each request is processed within a new
      instance.
    
    * Sinatra::Base can be used as a base class for multiple
      Rack applications within a single process and can be used as
      Rack middleware.
    
    * The routing and result type processing implementation has been
      simplified and enhanced a bit. There's a new route conditions
      system for things like :agent/:host matching and a request
      level #pass method has been added to allow an event handler to
      exit immediately, passing control to the next matching route.
    
    * Regular expressions may now be used in route patterns. Captures
      are available as an array from "params[:captures]".
    
    * The #body helper method now takes a block. The block is not
      evaluated until an attempt is made to read the body.
    
    * Options are now dynamically generated class attributes on the
      Sinatra::Base subclass (instead of OpenStruct); options are
      inherited by subclasses and may be overridden up the
      inheritance hierarchy. The Base.set manages all option related
      stuff.
    
    * The application file (app_file) detection heuristics are bit
      more sane now. This fixes some bugs with reloading and
      public/views directory detection. All thin / passenger issues
      of these type should be better now.
    
    * Error mappings are now split into to distinct layers: exception
      mappings and custom error pages. Exception mappings are registered
      with 'error(Exception)' and are run only when the app raises an
      exception. Custom error pages are registered with error(status_code)
      and are run any time the response has the status code specified.
      It's also possible to register an error page for a range of status
      codes: 'error(500..599)'.
    
    * The spec and unit testing extensions have been modified to take
      advantage of the ability to have multiple Sinatra applications.
      The Sinatra::Test module must be included within the TestCase
      in order to take advantage of these methods (unless the
      'sinatra/compat' library has been required).
    
    * Rebuilt specs from scratch for better coverage and
      organization. Sinatra 3.2 unit tests have been retained
      under ./compat to ensure a baseline level of compatibility with
      previous versions; use the 'rake compat' task to run these.
    
    A large number of existing Sinatra idioms have been deprecated but
    continue to be supported through the 'sinatra/compat' library.
    
    * The "set_option" and "set_options" methods have been deprecated
      due to redundancy; use "set".
    
    * The "env" option (Sinatra::Base.env) has been renamed to "environment"
      and deprecated because it's too easy to confuse with the request-level
      Rack environment Hash (Sinatra::Base#env).
    
    * The request level "stop" method has been renamed "halt" and
      deprecated. This is for consistency with `throw :halt`.
    
    * The request level "entity_tag" method has been renamed "etag" and
      deprecated. Both versions were previously supported.
    
    * The request level "headers" method has been deprecated. Use
      response['Header-Name'] to access and modify response headers.
    
    * Sinatra.application is deprecated. Use Sinatra::Application instead.
    
    * Setting Sinatra.application = nil to reset an application is
      deprecated. You shouldn't have to reset objects anymore.
    
    * The Sinatra.default_options Hash is deprecated. Modifying this object now
      results in "set(key, value)" invocations on the Sinatra::Base
      subclass.
    
    * The "body.to_result" convention has been deprecated.
    
    * The ServerError exception has been deprecated. Any Exception is now
      considered a ServerError.
Commits on Dec 9, 2008
  1. @kastner @rtomayko

    mirroring Rack::Mime::MIME_TYPES to Rack::File::MIME_TYPES to make si…

    kastner authored rtomayko committed
    …natra compatable with the master/0.5 branchs of rack
Commits on Dec 1, 2008
  1. @bleything @rtomayko

    Return the correct status code when a NotFound is raised

    bleything authored rtomayko committed
Commits on Nov 17, 2008
  1. @rtomayko
Commits on Nov 13, 2008
  1. @bmizerany
Commits on Nov 12, 2008
  1. @bmizerany
  2. @bmizerany
Commits on Nov 11, 2008
  1. @rtomayko

    fix use_in_file_templates! on windows

    rtomayko authored
    We were splitting on ":" and grabbing the first element
    returned. i.e., the drive label.
  2. @rtomayko

    merge bmizerany/master

    rtomayko authored
  3. @bmizerany
Commits on Nov 7, 2008
  1. @igal @rtomayko

    fix root path detection under thin/passenger

    igal authored rtomayko committed
    Fixed how the Sinatra application's path is set. Previously it
    was derived exclusively from $0, but this was causing problems
    when running Sinatra under Rack because $0 is the web server
    (e.g., thin, passenger, etc) and thus Sinatra would incorrectly
    set things like the default views path. This fix adds a new
    locate_app_file method that uses a number of techniques to guess the
    Sinatra application's path.
  2. @rtomayko
Commits on Nov 2, 2008
  1. @rtomayko

    0.3.2 release

    rtomayko authored
  2. @rtomayko

    simplify Static implementation; use 8K chunks instead of 4K

    rtomayko authored
    The Static event handler is now instantiated with a reference
    back to the Sinatra app instead of using the global singleton.
    While here, bump streaming buffer size from 4K to 8K -- word
    around the campfire is that reading in 8K chunks results in a bit
    less IO on most modern systems.
  3. @rtomayko

    remove custom rack mongrel handler

    rtomayko authored
    This is the same (byte-for-byte) handler that's included with Rack
    0.4 which we've required since 0.3.
  4. @rtomayko

    fix send_file reading entire file by default

    rtomayko authored
    The default :stream option value was not being picked up properly
    leading all calls to send_file (including those served with Static)
    to read the entire file into a string before sending. Further, the
    body was then being returned as a string, which causes Rack to
    iterate over the contents line-wise.
Commits on Sep 8, 2008
  1. @jeremyevans
  2. @rtomayko
  3. @rtomayko
Commits on Sep 7, 2008
  1. @rtomayko
  2. @rtomayko
  3. @sr @rtomayko

    close opened pre tag in sinatra's html code

    sr authored rtomayko committed
  4. @sr @rtomayko

    set correct content-type for sinatra's custom images

    sr authored rtomayko committed
  5. @rtomayko

    remove core extensions used for url escaping

    rtomayko authored
    The following methods were removed. All code that used them
    now uses Rack::Utils's escape methods directly:
    
      * Hash#from_params
      * Hash#to_params
      * Hash#symbolize_keys (not used)
      * Hash#pass (not used)
  6. @rtomayko

    remove String#to_param and String#from_param

    rtomayko authored
    Use Rack::Util's unescape instead.
Something went wrong with that request. Please try again.