Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Jul 18, 2012
  1. @josevalim

    Merge pull request #7084 from LTe/logger_default_separator

    josevalim authored
    Don't use default separator in tagged logger
  2. @josevalim
  3. @LTe

    Don't use default separator

    LTe authored
    When the default separator is set logger will create incorrect output
  4. @josevalim

    Merge pull request #7082 from jalkoby/lazy_lookup_in_abstract_controller

    josevalim authored
    add lazy look up in abstract controller's translate method
  5. @jalkoby
  6. @josevalim

    Merge pull request #7028 from lexmag/join_table_indexes

    josevalim authored
    Add indexes to create_join_table method
  7. @josevalim

    Merge pull request #6626 from route/render_formats

    josevalim authored
    Add additional formats to lookup context
  8. @route

    Common behavior with adding formats to lookup_context for TemplateRen…

    route authored
    …derer and PartialRenderer
Commits on Jul 17, 2012
  1. @jonleighton

    Merge pull request #7081 from jfirebaugh/to_param_regression_master

    jonleighton authored
    AR::Integration must be included after AM::Conversion
  2. @jfirebaugh

    AR::Integration must be included after AM::Conversion

    jfirebaugh authored
    Integration's definition of #to_param must override
    Conversion's. Otherwise, there is a regression from
    3.1 in the behavior of a non-persisted AR::Base instance
    which nevertheless has an id.
  3. @lexmag

    Add join table migration generator

    lexmag authored
    For instance, running
    
        rails g migration CreateMediaJoinTable artists musics:uniq
    
    will create a migration with
    
        create_join_table :artists, :musics do |t|
          # t.index [:artist_id, :music_id]
          t.index [:music_id, :artist_id], unique: true
        end
  4. @pixeltrix

    Add support for optional root segments containing slashes

    pixeltrix authored
    Optional segments with a root scope need to have the leading slash
    outside of the parentheses, otherwise the generated url will be empty.
    However if the route has non-optional elements then the leading slash
    needs to remain inside the parentheses otherwise the generated url
    will have two leading slashes, e.g:
    
    Blog::Application.routes.draw do
      get '/(:category)', :to => 'posts#index', :as => :root
      get '/(:category)/author/:name', :to => 'posts#author', :as => :author
    end
    
    $ rake routes
      root GET /(:category)(.:format)              posts#index
    author GET (/:category)/author/:name(.:format) posts#author
    
    This change adds support for optional segments that contain a slash,
    allowing support for urls like /page/2 for the root path, e.g:
    
    Blog::Application.routes.draw do
      get '/(page/:page)', :to => 'posts#index', :as => :root
    end
    
    $ rake routes
    root GET /(page/:page)(.:format) posts#index
    
    Fixes #7073
  5. @tenderlove

    Merge pull request #7076 from kennyj/fix_class_eval

    tenderlove authored
    Fix class_eval without __FILE__ and __LINE__.
  6. @jonleighton

    Merge pull request #7072 from beerlington/fix_validations_with_scope

    jonleighton authored
    Use database value for uniqueness validation scope
  7. @kennyj
  8. @beerlington

    Fixes "Cannot visit ..." with validates_uniqueness_of

    beerlington authored
    Fixes issue with overrding ActiveRecord reader methods with a
    composed object and using that attribute as the scope of a
    validates_uniqueness_of validation.
Commits on Jul 16, 2012
  1. @drogus

    Merge pull request #7006 from jaredbeck/issue_7005_explain_asset_debug

    drogus authored
    A more informative comment for config.asset.debug
  2. A more informative comment for config.asset.debug

    Jared Beck authored
  3. @rafaelfranca

    Merge pull request #7066 from wkang/master

    rafaelfranca authored
    Fix activerecord model to_ary method comment 'see also' link
  4. @wkang
Commits on Jul 15, 2012
  1. @vijaydev
Commits on Jul 14, 2012
  1. @fxn

    adds a missing require [fixes #6896]

    fxn authored
    This file uses Time.zone, which is defined in
    active_support/core_ext/time/zones.rb.
  2. @kennyj
  3. @rafaelfranca

    Merge pull request #7057 from kennyj/fix_sql_bypass_problem

    rafaelfranca authored
    Fix SqlBypass.data_column problem.
  4. @kennyj

    Fix SqlBypass.data_column= problem. SqlBypass.find_by_session_id meth…

    kennyj authored
    …od didn't use this assignment.
  5. @rafaelfranca

    Merge pull request #7056 from kennyj/avoid_twice_call

    rafaelfranca authored
    Avoid to call send(store_attribute) twice.
  6. @kennyj
  7. @fxn

    Merge pull request #7053 from pferdefleisch/activesupport-timely-requ…

    fxn authored
    …ires
    
    Added time related req files to AS core_ext #6896
  8. @pferdefleisch

    Added time related req files to AS core_ext #6896

    pferdefleisch authored
    This way you can `require 'active_record/core_ext/time'` for example
    I see these libs are available through `active_record/time` but not
    individually
Commits on Jul 13, 2012
  1. @tenderlove
  2. @tenderlove

    fixing tests to deal with data differences between prepared statement…

    tenderlove authored
    …s and non-prepared statements
    
    Conflicts:
    	activerecord/test/cases/query_cache_test.rb
  3. @jeremycole @tenderlove

    Fixing texts; down to three failing tests.

    jeremycole authored tenderlove committed
    Conflicts:
    	activerecord/lib/active_record/connection_adapters/abstract_mysql_adapter.rb
  4. @jeremycole @tenderlove

    Only use prepared statements when bind variables are present

    jeremycole authored tenderlove committed
    Prepared statements (prepare/execute/close) were being used unnecessarily
    when no bind variables were present, and disabling prepared statement using
    prepared_statements:false was principally broken. While bind variables were
    correctly substituted with prepared_statements:false, the prepared statement
    interface was still used, costing an extra two round trips per query.
    
    In addition to making this behavioral change, I also cleaned up the internals
    of exec_stmt and exec_without_stmt so that they behave the same (calling log
    and constructing the ActiveRecord::Result in the same way).
    
    Moving the check for binds.empty? to exec_query also will mean that several
    code paths explicitly calling exec_without_stmt could be cleaned up to once
    again call exec_query instead. I have also left the check for binds.empty? in
    exec_stmt, since it is not a private method and could be called directly with
    an empty binds array. For the sake of clarity in this patch, I have not made
    those changes.
    
    = The previous behavior =
    
    When issuing a Foo.find(1) with prepared_statements:true, the bind variable
    is present in the prepared query, and execute shows a value passed:
    
        Connect	root@localhost on rails_test
        Query	SET SQL_AUTO_IS_NULL=0
        Statistics
        Query	SHOW FULL FIELDS FROM `foos`
        Query	SHOW TABLES LIKE 'foos'
        Query	SHOW CREATE TABLE `foos`
        Prepare	SELECT  `foos`.* FROM `foos`  WHERE `foos`.`id` = ? LIMIT 1
        Execute	SELECT  `foos`.* FROM `foos`  WHERE `foos`.`id` = 1 LIMIT 1
        Close stmt
        Quit
    
    When issuing a Foo.find(1) with prepared_statements:false, the bind variable
    has already been removed and substituted with the value, but the prepared
    statement interface is used anyway:
    
        Connect	root@localhost on rails_test
        Query	SET SQL_AUTO_IS_NULL=0
        Statistics
        Query	SHOW FULL FIELDS FROM `foos`
        Query	SHOW TABLES LIKE 'foos'
        Query	SHOW CREATE TABLE `foos`
        Prepare	SELECT  `foos`.* FROM `foos`  WHERE `foos`.`id` = 1 LIMIT 1
        Execute	SELECT  `foos`.* FROM `foos`  WHERE `foos`.`id` = 1 LIMIT 1
        Close stmt
        Quit
    
    = With this patch applied =
    
    When issuing a Foo.find(1) with prepared_statements:true, the bind variable
    is present in the prepared query, and execute shows a value passed:
    
        Connect	root@localhost on rails_test
        Query	SET SQL_AUTO_IS_NULL=0
        Statistics
        Query	SHOW FULL FIELDS FROM `foos`
        Query	SHOW TABLES LIKE 'foos'
        Query	SHOW CREATE TABLE `foos`
        Prepare	SELECT  `foos`.* FROM `foos`  WHERE `foos`.`id` = ? LIMIT 1
        Execute	SELECT  `foos`.* FROM `foos`  WHERE `foos`.`id` = 1 LIMIT 1
        Close stmt
        Quit
    
    When issuing a Foo.find(1) with prepared_statements:false, the bind variable
    has been removed and substituted with the value, and the query interface is
    used instead of the prepared statement interface:
    
        Connect	root@localhost on rails_test
        Query	SET SQL_AUTO_IS_NULL=0
        Statistics
        Query	SHOW FULL FIELDS FROM `foos`
        Query	SHOW TABLES LIKE 'foos'
        Query	SHOW CREATE TABLE `foos`
        Query	SELECT  `foos`.* FROM `foos`  WHERE `foos`.`id` = 1 LIMIT 1
        Quit
  5. @jonleighton
  6. @rafaelfranca

    Merge pull request #7048 from kennyj/tiny_fixes

    rafaelfranca authored
    [tiny fixes] Remove more duplicated code.
Something went wrong with that request. Please try again.