Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Apr 8, 2015
  1. @tancnle
  2. @rafaelfranca

    Merge pull request #19633 from y00rb/sort_router_parameters_duplicate…

    rafaelfranca authored
    …d_keys
    
    avoid error when sort mixture keys in symbol and string
  3. @y00rb

    sort_by instead of sort

    y00rb authored
    it is avoid sort errot within different and mixed keys.
    used `sort_by` + `block` to list parameter by keys.
    keep minimum changes
Commits on Apr 7, 2015
  1. @treble37
  2. @treble37
Commits on Apr 6, 2015
  1. @rafaelfranca

    Merge pull request #19029 from iainbeeston/skipping-undefined-callbacks

    rafaelfranca authored
    Raise ArgumentError if an unrecognised callback is skipped
  2. @spastorino

    Merge pull request #19666 from mikej/master

    spastorino authored
    fix missing "if" in API docs for ActionController::Parameters#permit
  3. @eileencodes

    Fix ActionPack tests after changes to missing template logger

    eileencodes authored
    After merging #19377 ActionPack tests were missing a require for
    `ActiveSupport::LogSubscriber::TestHelper` and change didn't take
    into account that logger could be nil. Added the require and only log to
    info if logger exists.
    
    This wasn't caught earlier because these tests only run after a merge.
  4. @eileencodes

    Merge pull request #19665 from eileencodes/fix-parse_query-method-sig…

    eileencodes authored
    …nature
    
    Fix method signature of `parse_query` to match rack
  5. @eileencodes

    Fix method signature of `parse_query` to match rack

    eileencodes authored
    Recently rack was changed to have a second argument on the `parse_query`
    method (in rack/rack#781). Rails relies on this and it's `parse_query`
    method was complaining about missing the second argument. I changed the
    arguments to `*` so we don't have this issue in the future.
  6. @mikej
Commits on Apr 5, 2015
  1. @sb8244
  2. @robin850

    Fix a few typos [ci skip]

    robin850 authored
Commits on Apr 3, 2015
  1. @iainbeeston

    Raise ArgumentError if an unrecognised callback is skipped

    iainbeeston authored
    At present, if you skip a callback that hasn't been defined,
    activesupport callbacks silently does nothing. However, it's easy to
    mistype the name of a callback and mistakenly think that it's being
    skipped, when it is not.
    
    This problem even exists in the current test suite.
    CallbacksTest::SkipCallbacksTest#test_skip_person attempts to skip
    callbacks that were never set up.
    
    This PR changes `skip_callback` to raise an `ArgumentError` if the
    specified callback cannot be found.
Commits on Apr 1, 2015
  1. @brainopia
  2. @brainopia

    Prefer string patterns for gsub

    brainopia authored
    ruby/ruby#579 - there is a new optimization
    since ruby 2.2
    
    Previously regexp patterns were faster (since a string was converted to
    regexp underneath anyway). But now string patterns are faster and
    better reflect the purpose.
    
      Benchmark.ips do |bm|
        bm.report('regexp') { 'this is ::a random string'.gsub(/::/, '/') }
        bm.report('string') { 'this is ::a random string'.gsub('::', '/') }
        bm.compare!
      end
      # string: 753724.4 i/s
      # regexp: 501443.1 i/s - 1.50x slower
Commits on Mar 28, 2015
  1. @fxn

    Merge pull request #19544 from shuhei/fix-parameters-const-missing

    fxn authored
    Return super in ActionController::Parameters.const_missing
  2. @shuhei

    Return super in ActionController::Parameters.const_missing

    shuhei authored shuhei committed
    The current implementation of ActionController::Parameters.const_missing
    returns `ActionController::Parameters.always_permitted_parameters` even
    if its `super` returns a constant without raising error. This prevents its
    subclass in a autoloading module/class from taking advantage of
    autoloading constants.
    
        class SomeParameters < ActionController::Parameters
          def do_something
            DefinedSomewhere.do_something
          end
        end
    
    In the code above, `DefinedSomewhere` is to be autoloaded with
    `Module.const_missing` but `ActionController::Parameters.const_missing`
    returns `always_permitted_parameters` instead of the autoloaded
    constant.
    
    This pull request fixes the issue respecting `const_missing`'s `super`.
Commits on Mar 24, 2015
  1. @georgeclaghorn

    Add ActiveSupport::ArrayInquirer and Array#inquiry

    georgeclaghorn authored georgeclaghorn committed
    Wrapping an array in an `ArrayInquirer` gives a friendlier way to check its
    string-like contents. For example, `request.variant` returns an `ArrayInquirer`
    object. To check a request's variants, you can call:
    
        request.variant.phone?
        request.variant.any?(:phone, :tablet)
    
    ...instead of:
    
        request.variant.include?(:phone)
        request.variant.any? { |v| v.in?([:phone, :tablet]) }
    
    `Array#inquiry` is a shortcut for wrapping the receiving array in an
    `ArrayInquirer`:
    
        pets = [:cat, :dog]
        pets.cat?    # => true
        pets.ferret? # => false
        pets.any?(:cat, :ferret} # => true
  2. @georgeclaghorn

    Provide friendlier access to request variants

    georgeclaghorn authored georgeclaghorn committed
    Closes #18933.
Commits on Mar 23, 2015
  1. @rtomayko @pixeltrix

    Fix ActionDispatch::PublicExceptions returning string rack status

    rtomayko authored pixeltrix committed
    The status returned in the rack [status, headers, body] array was
    a string, which can cause problems with middleware that assumes the
    status will be a Fixnum. This likely never surfaced because other
    middleware to_i the status returned from downstream apps before
    passing it on.
Commits on Mar 20, 2015
  1. @braintreeps

    Fix handling of empty X_FORWARDED_HOST header.

    braintreeps authored
    Previously, an empty X_FORWARDED_HOST header would cause
    Actiondispatch::Http:URL.raw_host_with_port to return nil, causing
    Actiondispatch::Http:URL.host to raise a NoMethodError.
Commits on Mar 16, 2015
  1. Compare content_type with Mime::XML instead of regexp

    Boris Peterbarg authored
    Regexp is broken for both content types including charsets and for
    integration tests, where the content_type is a Mime::Type and not String
Commits on Mar 13, 2015
  1. @rafaelfranca

    Merge pull request #19291 from hired/return-truthy-value-from-head

    rafaelfranca authored
    Return truthy value from head method
Commits on Mar 12, 2015
  1. @joelmichael

    Return true from head method

    joelmichael authored
    It was returning false in normal circumstances.
    This broke the `head :ok and return if` construct.
    Add appropriate test.
  2. @guilleiguaran

    Merge pull request #19309 from f1sherman/dont-set-session-options-id

    guilleiguaran authored
    Use request.session.id instead of request.session_options[:id]
  3. @f1sherman

    Use request.session.id instead of request.session_options[:id]

    f1sherman authored
    As of the upgrade to Rack 1.5, request.session_options[:id] is no
    longer populated. Reflect this change in the tests by using
    request.session.id instead.
    
    Related change in Rack:
    rack/rack@83a270d
  4. @eagletmt
Commits on Mar 10, 2015
  1. @eagletmt

    304 response should not include Content-Type header

    eagletmt authored
    Rack::Lint raises an error saying "Content-Type header found in 304
    response, not allowed".
Commits on Mar 9, 2015
  1. @eileencodes

    Call super last in before_setup

    eileencodes authored
    This fixes the reasons 4cf3b8a, 303567e, and fa63448 needed to be
    reverted in 7142059. The revert has been reverted and this fixes
    the issues caused previously.
    
    If we call `super` first we will end up nuking the session settings in the
    application tests that do `setup do` - so any session login or cookie
    settings will not be persisted thoughout the test sessions.
    
    Calling `super` last prevents `@integration_session` from getting nuked
    and set to nil if it's already set.
    
    Test added to prevent regression of this behavior in the future.
  2. @eileencodes
Commits on Mar 7, 2015
  1. @y-yagi
Commits on Mar 6, 2015
  1. @prathamesh-sonpatki

    Fix documentation of url_for module [ci skip]

    prathamesh-sonpatki authored
     - The request needs to be instance of ActionDispatch::Request or an
       object that responds to host, optional_port, protocol and
       symbolized_path_parameter.
     - This documentation was correctly added in
       e3b3f41
       but was changed to
       e1ceae5.
     - Fixes #16160.
Commits on Mar 5, 2015
  1. @tenderlove

    pass a config to the route set

    tenderlove authored
    This way we can get the relative_url_root from the application without
    setting another global value
  2. @sgrif

    Merge pull request #19215 from gsamokovarov/revert-ruby-2-2-0-kwarg-c…

    sgrif authored
    …rash-workarounds
    
    Revert work arounds for upstream Ruby 2.2.0 kwargs bug
Something went wrong with that request. Please try again.