Skip to content
This repository

Apr 18, 2014

  1. Ernie Miller

    Fix inconsistent behavior from String#first/#last

    While calling String#first or String#last with zero or a Fixnum < the
    string's length returns a new string, a Fixnum >= the string's length
    returns the string itself. This inconsistency can lead to inadvertent
    mutation of a string.
    authored April 18, 2014
  2. Vijay Dev

    Merge branch 'master' of github.com:rails/docrails

    authored April 18, 2014

Apr 15, 2014

  1. Akshay Vishnoi

    Object#duplicable?

    1. Improve tests
    2. Remove unnecessary constant
    3. Add docs for BigDecimal#duplicable?

Apr 11, 2014

  1. Steven Harman

    Correct docs as singlton true is not returned here

    [ci skip]
    authored April 11, 2014
  2. Steven Harman

    Document LoadError core extensions

    [ci skip]
    authored April 11, 2014
  3. Rafael Mendonça França

    Merge pull request #14646 from deivid-rodriguez/provide_byebug_by_def…

    …ault
    
    Improve debugging support
    authored April 11, 2014
  4. Akshay Vishnoi

    Add more test case for #demodulize, Improve documentation

Apr 10, 2014

  1. Rafael Mendonça França

    Merge branch 'master' into rm-uuid-fixtures

    Conflicts:
    	activerecord/CHANGELOG.md
    	activesupport/CHANGELOG.md
    authored April 10, 2014
  2. Aaron Patterson

    Merge pull request #11411 from dscataglini/master

    Active support callback's before/after/around filters are not correctly making their singleton methods private
    authored April 09, 2014

Apr 09, 2014

  1. Lucas Mazza

    Add missing require so requiring `active_support/cache` works again.

    authored April 09, 2014

Apr 08, 2014

  1. Emily Dobervich

    Fixed problem where `1.day.eql?(1.day)` is false

    This fixes:
        1.second.eql?(1.second) #=> false
    
    The new `eql?` requires that `other` is an `ActiveSupport::Duration`.
    This requirement makes `ActiveSupport::Duration`'s behavior consistent
    with other numeric types in Ruby.
    
        1.eql?(1.0) #=> false
        1.0.eql?(1) #=> false
    
        1.second.eql?(1) #=> false (was true)
        1.eql?(1.second) #=> false
    
        { 1 => "foo", 1.0 => "bar" }
        #=> { 1 => "foo", 1.0 => "bar" }
    
        { 1 => "foo", 1.second => "bar" }
        # now => { 1 => "foo", 1.second => "bar" }
        # was => { 1 => "bar" }
    
    And though the behavior here hasn't changed, for reference:
    
        1 == 1.0 #=> true
        1.0 == 1 #=> true
    
        1 == 1.second #=> true
        1.second == 1 #=> true
    authored April 08, 2014
  2. David Rodríguez

    Keep debugger support only for rubies < 2.0.0

Apr 07, 2014

  1. Steven Harman

    Add documentation for Thread#freeze

    authored April 06, 2014

Apr 04, 2014

  1. Rafael Mendonça França

    Merge pull request #12016 from roderickvd/uuid_fixes

    Auto-generate stable fixture UUIDs on PostgreSQL
    
    Conflicts:
    	activerecord/CHANGELOG.md
    	activerecord/lib/active_record/fixtures.rb
    	activerecord/test/cases/adapters/postgresql/uuid_test.rb
    	activesupport/CHANGELOG.md
    authored April 04, 2014

Apr 03, 2014

  1. Lauro Caetano

    Fix error when using `with_options` with lambda.

    It was causing error when using `with_options` passing a lambda as its
    last argument.
    
        class User < ActiveRecord::Base
          with_options dependent: :destroy do |assoc|
            assoc.has_many :profiles, -> { where(active: true) }
          end
        end
    
    It was happening because the `option_merger` was taking the last
    argument and checking if it was a Hash. This breaks the HasMany usage,
    because its last argument can be a Hash or a Proc.
    
    As the behavior described in this test:
    https://github.com/rails/rails/blob/master/activesupport/test/option_merger_test.rb#L69
    the method will only accept the lambda, this way it will keep the expected behavior. See 9eaa0a3
    authored April 02, 2014

Apr 02, 2014

  1. Carlos Antonio da Silva

    Move require to actual file

    Change to require all active_support/deprecation since that's the actual
    entry point for the deprecation methods.
  2. Pavel Pravosud

    DRY AS::SafeBuffer a bit using existing helper

    authored April 02, 2014

Apr 01, 2014

  1. Pavel Pravosud

    Make AS::SafeBuffer#prepend act like String#prepend

    Make `#prepend` method modify instance in-place and return self
    instead of just returning modified value. That is exactly what
    `#prepend!` method was doing previously, so it's deprecated from
    now on.
    authored March 31, 2014

Mar 28, 2014

  1. Peter Jaros

    HashWithIndifferentAccess better respects #to_hash

    In particular, `.new`, `#update`, `#merge`, `#replace` all accept
    objects which respond to `#to_hash`, even if those objects are not
    Hashes directly.
    authored October 15, 2013

Mar 24, 2014

  1. Vipul A M

    - Rename `increment_or_decrement` to an apt `set_cache_value` since i…

    …t actually doesn't increment/decrement in localstore.
    authored March 24, 2014

Mar 20, 2014

  1. Akshay Vishnoi

    Deprecate Class#superclass_delegating_accessor

Mar 17, 2014

  1. Yves Senn

    fix `number_to_percentage` with `Float::NAN`, `Float::INFINITY`.

    Closes #14405.
    
    This is a follow-up to 9e997e9 to restore
    the documented behavior.
    authored March 17, 2014

Mar 15, 2014

  1. Zoltan Kiss

    Minor grammer, code conventions fix [ci skip]

    Conflicts:
    	activesupport/lib/active_support/core_ext/hash/conversions.rb
    authored March 14, 2014 arthurnn committed March 15, 2014
  2. Jeremy Kemper

    Remove deprecation on active_support/core_ext/class/attribute_accesso…

    …rs requires. Appropriate to keep this, users don't care that the implementation got unified.
    authored March 15, 2014

Mar 14, 2014

  1. Sammy Larbi

    Fix #to_json for BasicObject Enumerables

    authored April 20, 2013

Mar 13, 2014

  1. Aaron Patterson

    make tests pass on Ruby 2.2

    Apparently we've been using a buggy feature for the past 6 years:
    
      https://bugs.ruby-lang.org/issues/9593
    authored March 13, 2014

Mar 12, 2014

  1. Aaron Patterson

    use method_defined? to check whether or not a method is defined

    authored March 12, 2014

Mar 08, 2014

  1. Santiago Pastorino

    Merge pull request #14244 from arthurnn/orderd_hash_select_fix

    Fix OrderedHash.select to return self instance.
    authored March 08, 2014

Mar 07, 2014

  1. Arthur Nogueira Neves

    Fix OrderedHash.select to return self instance.

    On ruby 2.1.1 the behavior of .select and .reject has changed.
    They will return a Hash new instance, so we need to override them to
    keep the instance object class.
    authored February 26, 2014

Mar 05, 2014

  1. Prem Sichanugrist

    Introduce `Rails.gem_version`

    This method return `Gem::Version.new(Rails.version)`, suggesting a more
    reliable way to perform version comparison.
    
    Example:
    
        Rails.version #=> "4.1.2"
        Rails.gem_version #=> #<Gem::Version "4.1.2">
    
        Rails.version > "4.1.10" #=> false
        Rails.gem_version > Gem::Version.new("4.1.10") #=> true
        Gem::Requirement.new("~> 4.1.2") =~ Rails.gem_version #=> true
    
    This was originally introduced as `.version` by @charliesome in #8501
    but got reverted in #10002 since it was not backward compatible.
    
    Also, updating template for `rake update_versions`.
    authored February 18, 2014
  2. Godfrey Chan

    Revert "Merge pull request #14269 from arthurnn/expanded_key_array"

    This reverts commit 475c965, reversing
    changes made to 705915a.
    
    We decided that this is not worth busting everyone's cache as this
    seems like a very unlikely problem. The problem only occurs when the
    user is 1) not using a namespace, or 2) using the same namesapce for
    different *kinds* of cache items. The recommended "fix" is to put
    those cache items into their own namspace:
    
        id = 1
        Rails.cache.fetch(id, namespace: "user"){ User.find(id) }
    
        ids = [1]
        Rails.cache.fetch(ids, namespace: "users"){ User.find(ids) }
    
    See the discussion on #14269 for details.
    authored March 04, 2014

Mar 04, 2014

  1. Arthur Nogueira Neves

    Cache key should be different when is Array.

    `cache.fetch(['foo'])` and `cache.fetch('foo')` should generate
    different cache keys as they are not equivalents.
    
    [related #8615]
    [related #8614]
    authored March 03, 2014

Feb 27, 2014

  1. Parker Selbert

    Return a hash rather than array from fetch_multi

    The current implementation of `fetch_multi` returns an array and has no
    means to easily backtrack which names yielded which results. By changing
    the return value to a Hash we retain the name information. Hash#values
    can be used on the response if only the values are needed.
    authored July 17, 2013
  2. Carlos Antonio da Silva

    Fix concerning module reference [ci skip]

Feb 26, 2014

  1. Aaron Patterson

    speed up `underscore` in cases that don't need to do anything

    Benchmark:
    
    Benchmark.ips do |x|
      x.report("home")       { "home".underscore }
      x.report("Home")       { "Home".underscore }
      x.report("homeBase")   { "homeBase".underscore }
      x.report("home::base") { "home::base".underscore }
    end
    
    Before:
    
    Calculating -------------------------------------
                    home      2598 i/100ms
                    Home      2463 i/100ms
                homeBase      2300 i/100ms
              home::base      2086 i/100ms
    -------------------------------------------------
                    home    28522.3 (±14.7%) i/s -     140292 in   5.065102s
                    Home    29165.8 (±14.9%) i/s -     140391 in   5.000475s
                homeBase    26218.5 (±7.1%) i/s -     131100 in   5.030485s
              home::base    27712.3 (±5.9%) i/s -     139762 in   5.064077s
    
    After:
    
    Calculating -------------------------------------
                    home     23163 i/100ms
                    Home      2432 i/100ms
                homeBase      2160 i/100ms
              home::base      2265 i/100ms
    -------------------------------------------------
                    home  1501614.8 (±10.2%) i/s -    7412160 in   5.009540s
                    Home    28754.0 (±8.5%) i/s -     143488 in   5.033886s
                homeBase    25331.1 (±5.6%) i/s -     127440 in   5.047940s
              home::base    27089.9 (±5.5%) i/s -     135900 in   5.033516s
    authored February 26, 2014
Something went wrong with that request. Please try again.