Permalink
Commits on May 27, 2012
  1. Fix railties_order when application object is passed

    railites_order method, introduced in 40b19e0, had a bug that was causing
    loading application instance twice in initializers if railties_order
    already included application instance. So for example
    
        railties_order = [Foo::Engine, :main_app, Bar::Engine]
    
    would result in such railties array:
    
        [MyApp::Application, Foo::Engine, MyAppApplication, Bar::Engine]
    
    In order to fix it, we need to check for existence of application in
    both railties_order and railties arrays.
    drogus committed May 27, 2012
  2. Merge pull request #6494 from pwim/no-memcache-require

    memcache require not needed for cache store
    josevalim committed May 27, 2012
Commits on May 26, 2012
  1. remove unnecessary memcache equire in ActionDispatch::Session::CacheS…

    …tore
    Brian Durand committed with pwim Feb 29, 2012
Commits on May 25, 2012
  1. Merge pull request #5244 from fotos/myqsl2_wait_timeout

    Maximum wait_timeout on Windows is 2147483
    rafaelfranca committed May 25, 2012
Commits on May 24, 2012
  1. Merge pull request #5925 from Juanmcuello/pg_structure_dump

    Quote arguments in db:structure:dump for PostgreSQL.
    carlosantoniodasilva committed May 24, 2012
Commits on May 23, 2012
  1. Merge pull request #6467 from aselder/3-2-stable

    Synchronize the body of the ConnectionPool#release method to improve thread safety.
    tenderlove committed May 23, 2012
  2. Synchronize the ConnectionPool#release method to avoid thread safety …

    …issues [#6464]
    
    Fixes #6464
    
    Synchronize the contents of the release method in ConnectionPool due to
    errors when running in high concurrency environments.
    
        Detected invalid hash contents due to unsynchronized modifications
    with concurrent users
        org/jruby/RubyHash.java:1356:in `keys'
    /usr/local/rvm/gems/jruby-1.6.7@new_import/gems/activerecord-3.2.3/lib/a
    ctive_record/connection_adapters/abstract/connection_pool.rb:294:in
    `release'
    
    /usr/local/rvm/gems/jruby-1.6.7@new_import/gems/activerecord-3.2.3/lib/a
    ctive_record/connection_adapters/abstract/connection_pool.rb:282:in
    `checkin'
    Andrew Selder committed May 23, 2012
Commits on May 22, 2012
  1. Merge pull request #6451 from chancancode/3-2-stable_restore_frozen_s…

    …tate_on_rollback
    
    Fixes the build break caused by 9ee8528 in #6445.
    rafaelfranca committed May 22, 2012
  2. Fixes the build break caused by 9ee8528 in #6445.

    Ruby 1.8 raises a TypeError when trying to modify a frozen Hash, while
    Ruby 1.9 raises a RuntimeError instead. Also, Ruby < 1.9.3 uses a
    lowercase 'hash' in the exception message while Ruby >= 1.9.3 uses an
    uppercase 'Hash' instead. This commit normalizes those issues in the
    test case.
    chancancode committed May 22, 2012
  3. Merge pull request #6445 from chancancode/3-2-stable_restore_frozen_s…

    …tate_on_rollback
    
    Restore the frozen state on rollback. (Backports #6420)
    rafaelfranca committed May 22, 2012
  4. Restore the frozen state on rollback. Fixes #6417.

    This is a 3-2-stable backport for #6420 which was merged into master.
    
    Currently, when saving a frozen record, an exception would be thrown
    which causes a rollback. However, there is a bug in active record that
    "defrost" the record as a side effect:
    
        >> t = Topic.new
        => #<Topic id: nil, ...>
        >> t.freeze
        => #<Topic id: nil, ...>
        >> t.save
        RuntimeError: can't modify a frozen Hash
        >> t.frozen?
        => false
        >> t.save
        => true
    
    This patch fixes the bug by explictly restoring the frozen state on the
    attributes Hash after every rollback.
    chancancode committed May 22, 2012
  5. Use require_dependency in generated controllers

    Using require in development mode will prevent required files from
    reloading, even if they're changed. In order to keep namespaced
    application_controller reloadable, we need to use require_dependency
    instead of require.
    drogus committed May 22, 2012
Commits on May 21, 2012
  1. Merge pull request #6418 from pwnall/pgsql_bytea_limit3

    Postgresql doesn't accept limits on binary (bytea) columns (for 3-2-stable)
    tenderlove committed May 21, 2012
  2. Merge pull request #6423 from lest/patch-2

    assets: don't add extension if other given and file exists
    carlosantoniodasilva committed May 21, 2012
  3. Assets: don't add extension if other given and file exists

    We should lookup if asset without appended extension exists.
    When sprockets are disabled the asset tag helpers incorporate
    this logic. When sprockets are enabled we should have the same
    logic.
    
    For example, we have style.ext file in app/assets/stylesheets and
    we use stylesheet_link_tag in the layout. In this case we should
    have /assets/style.ext instead of /assets/style.ext.css in the
    output.
    
    Closes #6310
    lest committed May 21, 2012
  4. More info on commit messages in contributing guide

    Add more info on how to write a good commit messages along with
    example showing nicely formatted commit message.
    
    Rails git history does not look too well when you try to figure out why
    particular changes were introduced. We can do much better than that and
    it's never too late to start.
    drogus committed May 21, 2012
  5. Fix generators to help with ambiguous `ApplicationController` issue

    In development mode, dependencies are loaded dynamically at runtime,
    using `const_missing`. Because of that, when one of the constants is
    already loaded and `const_missing` is not triggered, user can end up
    with unexpected results.
    
    Given such file in an Engine:
    
    ```ruby
    module Blog
      class PostsController < ApplicationController
      end
    end
    ```
    
    If you load it first, before loading any application files, it will
    correctly load `Blog::ApplicationController`, because second line will
    hit `const_missing`. However if you load `ApplicationController` first,
    the constant will be loaded already, `const_missing` hook will not be
    fired and in result `PostsController` will inherit from
    `ApplicationController` instead of `Blog::ApplicationController`.
    
    Since it can't be fixed in `AS::Dependencies`, the easiest fix is to
    just explicitly load application controller.
    
    closes #6413
    drogus committed May 20, 2012
Commits on May 20, 2012
  1. Merge pull request #6410 from Bodacious/tag_helper_data_fix_3-2-stable

    TagHelper creates invalid data attributes when value is a BigDecimal
    rafaelfranca committed May 20, 2012
  2. Merge pull request #6407 from pinetops/565c1b0a0772ac6cf91c77e9285806…

    …f7b028614c
    
    Template concurrency fixes
    josevalim committed May 20, 2012
  3. Improve docs for `try` by adding note on `BasicObject`

    [ci skip] closes #5790
    drogus committed May 20, 2012
  4. Fix uniqueness validator with `allow_nil: false` also for mysql

    MySQL's adapter was changing value for case sensitive comparison. We
    don't need to do it for `nil`.
    drogus committed May 20, 2012
  5. Fix `validates_uniqueness_off :field, :allow_nil => false`

    Closes (#5853)
    
    Uniqueness validator was not properly checking if there are any existing
    records, when value was `nil` and column was text type. `nil` was
    converted to string, which resulted in queries looking like:
    
    ```sql
    SELECT 1 FROM "posts" WHERE "posts"."title" = '' LIMIT 1
    ```
    
    instead of
    
    ```sql
    SELECT 1 FROM "posts" WHERE "posts"."title" IS NULL LIMIT 1
    ```
    drogus committed May 20, 2012
Commits on May 19, 2012
  1. Use right option for excerpt text helper in tests, fix build

    `excerpt` text helper uses `:radius`, not `line_width` (that is used by
    `word_wrap` helper).
    
    Also cleanup some whitespaces.
    carlosantoniodasilva committed May 19, 2012
  2. Merge pull request #6398 from pmahoney/threadsafe-connection-pool

    Synchronize read and modification of @reserved_connections
    tenderlove committed May 19, 2012
  3. Ensure that CollectionAssociation#replace returns proper target

    The fix commited in e2a070c was returning the `new_target`, as
    a try to return whatever user replaced association with. The
    problem is, the resulting association target may be ordered
    differently. In such case we want to return the target that
    will be later used for that association.
    drogus committed May 18, 2012
Commits on May 18, 2012
  1. Merge pull request #5020 from KL-7/fix-blank-image_tag-source

    Render img tag with empty src if empty string is passed to image_tag.
    josevalim committed with rafaelfranca May 18, 2012
  2. Merge pull request #6390 from ernie/invalid-ruby18-syntax-in-habtm

    Invalid ruby18 syntax in habtm
    rafaelfranca committed May 18, 2012
  3. Perf: Don't load the association for #delete_all.

    Bug #6289
    
    Conflicts:
    
    	activerecord/test/cases/associations/has_many_associations_test.rb
    jonleighton committed May 18, 2012
  4. Merge pull request #6377 from ihid/depreciate_old_text_helper_apis

    Deprecate old APIs for highlight, excerpt and word_wrap
    rafaelfranca committed May 18, 2012