Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Commits on Jun 11, 2015
  1. @spastorino
  2. @spastorino
  3. @yuki24
Commits on May 28, 2015
  1. @eliotsykes

    config.static_index configures directory index "index.html" filename

    eliotsykes authored
    Set `config.static_index` to serve a static directory index file not
    named `index`. For example, to serve `main.html` instead of `index.html`
    for directory requests, set `config.static_index` to `"main"`.
Commits on Feb 16, 2015
  1. @tenderlove

    Revert "Don't unhook autoloading in production"

    tenderlove authored
    This reverts commit a8bf129.
Commits on Jan 22, 2015
  1. @josh

    Remove config.assets

    josh authored
    Provided by sprockets-rails plugin
Commits on Jan 4, 2015
  1. @rafaelfranca
  2. @rafaelfranca
Commits on Dec 19, 2014
  1. @chancancode

    Merge pull request #18100 from chancancode/serve_static_files

    chancancode authored
    Allow static asset serving from env variable (enhanced!)
    Conflicts:
    	railties/CHANGELOG.md
Commits on Nov 29, 2014
  1. @sferik
Commits on Nov 17, 2014
  1. @tgxworld

    Fix typo.

    tgxworld authored
  2. @chancancode

    Deprecate different default for `log_level` in production

    chancancode authored
    This is a more conservative approach to 2602a49. Also changed the comment to be
    more inline with everything else in the file (describing what the config value
    is doing and why). People should just read the docs for alternatives.
  3. @chancancode

    Revert "Merge pull request #16622 from matthewd/default-debug"

    chancancode authored
    This reverts commit 2602a49, reversing
    changes made to 5d7c105.
    
    The explicit default was introduced in 21f6d72, so apps created with Rails < 4
    have the commented out version, which means that this change would break those
    apps.
Commits on Sep 18, 2014
  1. @fxn

    inject Rack::Lock if config.eager_load is false

    fxn authored
    If code is not eager loaded constants are loaded on demand. Constant
    autoloading is not thread-safe, so if eager loading is not enabled
    multi-threading should not be allowed.
    
    This showed up in certain Capybara scenarios: Most Capybara drivers
    other than Rack::Test need a web server. In particular, drivers for
    JavaScript support. Capybara launches WEBrick in its own thread for
    those but that per se is fine, because the spec thread and the server
    thread are coordinated.
    
    Problem comes if the page being served in the spec makes Ajax calls.
    Those may hit WEBrick in parallel, and since WEBrick is multi-threaded
    and allow_concurrency? returns true in the test environment before
    this patch, threads are spawned to serve those parallel requests. On
    the other hand, since eager_load is false by default in the test
    environment, constants are not preloaded.
    
    So the suite is autoloading constants in a multi-threaded set. That's
    a receipt for paracetamol. The symptom is random obscure errors whose
    messages point somehow to constant autoloading.
    
    As a consequence of this fix for allow_concurrency? WEBrick in
    Capybara scenarios no longer runs in multi-threaded mode.
    
    Fixes #15089.
Commits on Sep 10, 2014
  1. @amatsuda

    Tell the user which file is missing when config/database.yml was not …

    amatsuda authored
    …found
    
    Since cc03675d30b58e28f585720dad14e947a57ff5b the error message became like
    "Could not load database configuration. No such file -"
    which doesn't really tell what's actually missing.
Commits on Sep 5, 2014
  1. @phoet
Commits on Aug 21, 2014
  1. @matthewd

    Don't fight against ourselves for the default log level

    matthewd authored
    If we want to always default to :debug, let's just do that.
    
    At which point the production.rb entry can become an "uncomment to
    change" instead.
Commits on Aug 20, 2014
  1. @carlosantoniodasilva

    Fix setting simple values to the new config.x

    carlosantoniodasilva authored
    Previously setting simple values to the config.x object resulted in the
    following:
    
        config.x.super_debugger = true
        config.x.super_debugger #=> {}
    
    Which was against the examples showed in the changelog/release notes.
Commits on Aug 19, 2014
  1. @rafaelfranca

    Revert "Improve custom configuration"

    rafaelfranca authored
    This reverts commit de48913.
    
    Conflicts:
    	railties/lib/rails/railtie/configuration.rb
    
    It added regression. Will be back after the beta
  2. @rafaelfranca

    Improve custom configuration

    rafaelfranca authored rafaelfranca committed
    1. Hashes can be assigned
    2. We don't need a special level anymore
    
    The method chain only works in the top level.
    
    If users need a second level they need to assign a OrderedOptions to the
    key:
    
        config.resque.server = ActiveSupport::OrderedOptions.new
        config.resque.server.url = "http://localhost"
        config.resque.server.port = 3000
    
    [Rafael Mendonça França + Carlos Antonio da Silva]
Commits on Aug 3, 2014
  1. @dhh
Commits on Jul 1, 2014
  1. @lengarvey

    Add configuration to enable mail previews

    lengarvey authored
    Adds `config.action_mailer.preview_enabled`
    
    This allows mail previewing to be enabled easily in non-development
    environments such as staging. The default is set to true for development
    so no changes should be required to existing Rails applications.
    
    The mail preview path can still be configured using the existing
    `config.action_mailer.preview_path` configuration option.
    
    Adding this avoids devs from having to do stuff like:
    https://gist.github.com/lengarvey/fa2c9bd6cdbeba96526a
    
    Update actionmailer/CHANGELOG with new configuration.
    Update configuring guide with new configuratation.
    Add `config.action_mailer.preview_path` to configuring guide.
Commits on May 7, 2014
  1. @pothibo

    Use Rails::Paths::Path#existent in database_configuration

    pothibo authored
    Database configuration was trying to load the first path that
    config.paths['config/database'] was returning even if the path didn't
    exist in the filesystem.
    
    Because Rails::Paths::Path has the possibility to return more than 1
    path (as an array), database_configuration should filter down the paths
    to the existing one and then load the first one.
    
    This would make it possible to move the database.yml file and add the
    new path to paths['config/database'] and still load the configurations.
Commits on Mar 29, 2014
  1. @planas

    Require yaml explicitly

    planas authored
Commits on Mar 16, 2014
  1. @robertomiranda
Commits on Feb 21, 2014
  1. @guilleiguaran

    Revert "Only lookup `config.log_level` for stdlib `::Logger`. Closes #…

    guilleiguaran authored
    …11665."
    
    This reverts commit e0a521c.
    
    Conflicts:
    	railties/CHANGELOG.md
    
    We expect loggers to quack like stdlib logger. If log4r needs different
    level= assignment, using a Logger-quacking wrapper is the way to do it.
    
    Fixes #14114.
Commits on Jan 29, 2014
  1. @schneems

    Enhance errors while retrieving database config

    schneems authored
    Right now if there is an error retrieving database configuration the intent of the error (what the code was trying to do while you got the error) could be more explicit. 
    
    Instead of this error:
    
    ```
    Invalid DATABASE_URL: nil
    (erb):9:in `rescue in <main>'
    (erb):6:in `<main>'
    /Users/schneems/.rbenv/versions/2.1.0/lib/ruby/2.1.0/erb.rb:850:in `eval'
    /Users/schneems/.rbenv/versions/2.1.0/lib/ruby/2.1.0/erb.rb:850:in `result'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/application/configuration.rb:98:in `database_configuration'
    /Users/schneems/Documents/projects/rails/activerecord/lib/active_record/railtie.rb:41:in `block in <class:Railtie>'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/railtie.rb:237:in `instance_exec'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/railtie.rb:237:in `block in run_tasks_blocks'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/railtie.rb:237:in `each'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/railtie.rb:237:in `run_tasks_blocks'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/application.rb:339:in `block in run_tasks_blocks'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/engine/railties.rb:13:in `each'
    ```
    
    I propose we issue this error:
    
    ```
    Cannot load `Rails.application.database_configuration`:
    Invalid DATABASE_URL: nil
    (erb):9:in `rescue in <main>'
    (erb):6:in `<main>'
    /Users/schneems/.rbenv/versions/2.1.0/lib/ruby/2.1.0/erb.rb:850:in `eval'
    /Users/schneems/.rbenv/versions/2.1.0/lib/ruby/2.1.0/erb.rb:850:in `result'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/application/configuration.rb:98:in `database_configuration'
    /Users/schneems/Documents/projects/rails/activerecord/lib/active_record/railtie.rb:41:in `block in <class:Railtie>'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/railtie.rb:237:in `instance_exec'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/railtie.rb:237:in `block in run_tasks_blocks'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/railtie.rb:237:in `each'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/railtie.rb:237:in `run_tasks_blocks'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/application.rb:339:in `block in run_tasks_blocks'
    /Users/schneems/Documents/projects/rails/railties/lib/rails/engine/railties.rb:13:in `each'
    ```
Commits on Jan 13, 2014
  1. @senny

    Only lookup `config.log_level` for stdlib `::Logger`. Closes #11665.

    senny authored
    This prevents Rails from assigning meaningless log levels to third
    party loggers like log4r. If `Rails.logger` is not `kind_of?(::Logger)`
    we simply assign the `config.log_level` as is.
    
    This bug was introduced by #11665.
Commits on Jan 9, 2014
  1. @schneems

    Ensure Active Record connection consistency

    schneems authored
    Currently Active Record can be configured via the environment variable `DATABASE_URL` or by manually injecting a hash of values which is what Rails does, reading in `database.yml` and setting Active Record appropriately. Active Record expects to be able to use `DATABASE_URL` without the use of Rails, and we cannot rip out this functionality without deprecating. This presents a problem though when both config is set, and a `DATABASE_URL` is present. Currently the `DATABASE_URL` should "win" and none of the values in `database.yml` are used. This is somewhat unexpected to me if I were to set values such as `pool` in the `production:` group of `database.yml` they are ignored.
    
    There are many ways that active record initiates a connection today:
    
    - Stand Alone (without rails)
      - `rake db:<tasks>`
      - ActiveRecord.establish_connection
     
    - With Rails
      - `rake db:<tasks>`
      - `rails <server> | <console>`
      - `rails dbconsole`
    
    
    We should make all of these behave exactly the same way. The best way to do this is to put all of this logic in one place so it is guaranteed to be used.
    
    Here is my prosed matrix of how this behavior should work:
    
    ```
    No database.yml
    No DATABASE_URL
    => Error
    ```
    
    ```
    database.yml present
    No DATABASE_URL
    => Use database.yml configuration
    ```
    
    ```
    No database.yml
    DATABASE_URL present
    => use DATABASE_URL configuration
    ```
    
    ```
    database.yml present
    DATABASE_URL present
    => Merged into `url` sub key. If both specify `url` sub key, the `database.yml` `url`
       sub key "wins". If other paramaters `adapter` or `database` are specified in YAML,
       they are discarded as the `url` sub key "wins".
    ```
    
    ### Implementation
    
    Current implementation uses `ActiveRecord::Base.configurations` to resolve and merge all connection information before returning. This is achieved through a utility class: `ActiveRecord::ConnectionHandling::MergeAndResolveDefaultUrlConfig`.
    
    To understand the exact behavior of this class, it is best to review the behavior in activerecord/test/cases/connection_adapters/connection_handler_test.rb though it should match the above proposal.
Commits on Dec 17, 2013
  1. @pixeltrix
Commits on Dec 12, 2013
  1. @guilleiguaran
  2. @guilleiguaran
Commits on Dec 2, 2013
  1. @guilleiguaran

    Merge pull request #12365 from jbaudanza/reorder

    guilleiguaran authored
    Move Rack::Cache after ActionDispatch::Static in the middleware stack
Commits on Oct 31, 2013
  1. @tenderlove
Commits on Sep 26, 2013
  1. @jbaudanza
Something went wrong with that request. Please try again.