aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix error when using `with_options` with lambda.Lauro Caetano2014-04-036-1/+24
| | | | | | | | | | | | | | | | | | | 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 9eaa0a34
* Merge pull request #14561 from tgxworld/refactor_run_without_connectionYves Senn2014-04-0310-64/+44
|\ | | | | Add ConnectionHelper to refactor tests.
| * Add ConnectionHelper to refactor tests.Guo Xiang Tan2014-04-0310-64/+44
| |
* | Merge branch 'lavrovdv-patch-1'Yves Senn2014-04-033-1/+21
|\ \
| * | Treat blank UUID values as nilDmitry Lavrov2014-04-033-1/+21
| |/
* | Merge pull request #14576 from ariabov/scope_sections_reorderingYves Senn2014-04-032-30/+33
|\ \ | |/ |/| Change order of scope subsections in Active Record Querying guide [ci skip]
| * In Active Record Querying guide, currently `Merging of scopes` section uses ↵ariabov2014-04-022-30/+33
|/ | | | | | a concept of default scope in its example before it is introduced in the following section titled `Applying a default scope`. It makes more sense to switch the ordering to introduce default scopes (`Applying a default scope`) first and then go into `Merging of scopes` section where it is used.
* Merge pull request #14564 from killthekitten/patch-2Rafael Mendonça França2014-04-021-5/+4
|\ | | | | Fix default_url_options example in i18n guide
| * Fix default_url_options example in i18n guide [ci skip]Nikolay Shebanov2014-04-031-5/+4
| |
* | Fix cookie serializer docsCarlos Antonio da Silva2014-04-021-3/+3
| | | | | | | | The option actually needs to be set on action_dispatch. [ci skip]
* | Move require to actual fileCarlos Antonio da Silva2014-04-022-1/+1
| | | | | | | | | | Change to require all active_support/deprecation since that's the actual entry point for the deprecation methods.
* | Use asert_deprecatedRafael Mendonça França2014-04-021-3/+5
| |
* | Merge pull request #14529 from rwz/masterRafael Mendonça França2014-04-023-6/+37
|\ \ | | | | | | | | | ActiveSupport::SafeBuffer#prepend inconsistency
| * | DRY AS::SafeBuffer a bit using existing helperPavel Pravosud2014-04-021-5/+1
| | |
| * | Make AS::SafeBuffer#prepend act like String#prependPavel Pravosud2014-03-313-6/+41
| | | | | | | | | | | | | | | | | | | | | 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.
* | | Merge pull request #14568 from alex88/patch-1Rafael Mendonça França2014-04-021-1/+1
|\ \ \ | | | | | | | | Fixed upgrade guide typo
| * | | Fixed small documentation typoAlessandro Tagliapietra2014-04-021-1/+1
|/ / / | | | | | | Using `Rails.application.config.cookies_serializer :hybrid` throws an exception, fixed to `=`.
* | | Merge pull request #14565 from rajcybage/conditional_test_casesRafael Mendonça França2014-04-021-7/+5
|\ \ \ | |_|/ |/| | We can conditional define the tests depending on the adapter or connection.
| * | We can conditional define the tests depending on the adapter orRajarshi Das2014-04-021-7/+5
|/ / | | | | | | connection.
* | PostgreSQL, Support for materialized views. [Dave Lee & Yves Senn]Dave Lee2014-04-024-12/+35
| | | | | | | | | | Expand the query used in #table_exists? to include materialized views in the kinds of relations it searches.
* | cleanup, `reset_pg_session` in range_test.rbYves Senn2014-04-021-2/+5
| | | | | | | | | | Also do not use transactional fixtures. We drop the type and the table after every run, so there is nothing for the transaction to clean up.
* | Merge pull request #14550 from tgxworld/fix_failing_enum_test_random_orderYves Senn2014-04-023-9/+21
|\ \ | | | | | | Allow postgresql enum_test to be run in random order.
| * | Allow postgresql enum_test to be run in random order.Guo Xiang Tan2014-04-013-9/+21
| | | | | | | | | | | | Creating and dropping similar tables within the same connection causes postgresql to look up old values in the cache of tables which have already been dropped.
* | | Merge pull request #14560 from abwinkler999/typo-in-RELEASING_RAILSRafael Mendonça França2014-04-021-1/+1
|\ \ \ | |/ / |/| | Changed 'so' to 'see'
| * | Changed 'so' to 'see'Benjamin Winkler2014-04-021-1/+1
|/ /
* | Merge branch 'rmc'Aaron Patterson2014-04-013-30/+24
|\ \ | | | | | | | | | | | | | | | | | | | | | * rmc: push move_string in to `move` combine move_regexp and move_string so we only loop over states once do not create memo objects since we'll just throw them away only ask if `t` is empty once.
| * | push move_string in to `move`Aaron Patterson2014-04-011-14/+12
| | |
| * | combine move_regexp and move_string so we only loop over states onceAaron Patterson2014-04-011-9/+6
| | |
| * | do not create memo objects since we'll just throw them awayAaron Patterson2014-04-012-9/+11
| | |
| * | only ask if `t` is empty once.Aaron Patterson2014-04-011-4/+1
| | |
* | | Clarify 'database does not exist' message and implementation.Jeremy Kemper2014-04-016-26/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Clarify what the situation is and what to do. * Advise loading schema using `rake db:setup` instead of migrating. * Use a rescue in the initializer rather than extending the error message in-place. * Preserve the original backtrace of other errors by using `raise` rather than raising again with `raise error`. References 0ec45cd15d0a2f5aebc75e23d841b6c12f3ba763
* | | fix, adjust OID query without range support to include required fields.Yves Senn2014-04-011-3/+4
| | | | | | | | | | | | | | | This is a follow-up fix to f7a6b115fea9f675190a79b701c7034214678f19 and 06082f66d541e581110406bbac3bc395bace3f86
* | | refactor, use `typtype` instead of `typinput` to segment PG types.Yves Senn2014-04-011-3/+3
| | |
* | | PostgreSQL, register custom domains. Closes #14305.Yves Senn2014-04-013-1/+68
| | | | | | | | | | | | | | | | | | | | | This patch registers custom domains in our OID-type_map. They will behave exactly as the type specified by `pg_type.typbasetype`. /cc @matthewd
* | | Merge pull request #14513 from senny/pg/responsible_oidRafael Mendonça França2014-04-016-107/+104
|\ \ \ | | | | | | | | PostgreSQL determine `Column#type` through corresponding OID. #7814
| * | | PostgreSQL determine `Column#type` through corresponding OID. #7814Yves Senn2014-04-016-107/+104
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I ran the whole test suite and compared the old to the new types. Following is the list of types that did change with this patch: ``` DIFFERENT TYPE FOR mood: NEW: enum, BEFORE: DIFFERENT TYPE FOR floatrange: NEW: floatrange, BEFORE: float ``` The `floatrange` is a custom type. The old type `float` was simply a coincidence form the name `floatrange` and our type-guessing.
* | | | Merge pull request #14548 from eileencodes/refactor_capture_sql_in_testsRafael Mendonça França2014-03-311-3/+1
|\ \ \ \ | | | | | | | | | | refactor assert_sql query to reuse capture_sql
| * | | | refactor assert_sql query to reuse capture_sqleileencodes2014-03-311-3/+1
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | set assert_sql to reuse the capture_sql method from above instead of repeating the code in response to comments on issue #14546
* | | | Merge pull request #14546 from ↵Aaron Patterson2014-03-313-2/+23
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | eileencodes/fix_delete_all_to_not_use_IN_statement Fix delete all to not produce sql in statement
| * | | fix delete_all to remove records directlyeileencodes2014-03-311-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When delete_all is run on a CollectionProxy and has a dependency of delete_all the SQL that is produced has an IN statement. (DELETE FROM `associated_model` where `associated_model` .`parent_id` = 1 AND `associated_model`.`id` IN (1, 2, 3...)). This only happens if the association is not loaded (both loaded and non-loaded delete_all should behave the same. This is a huge problem when it comes to deleting many records because the query becomes very slow. Instead the SQL produced should be (DELETE FROM `assoicated_model` where `associated_model`.`parent_model_id`=1). I fixed this by making sure the check for loaded and destroy also makes sure that the dependent is not delete_all, so the conditional goes to the else and deletes the records directly without the IN statement.
| * | | add test to compare sql statements in delete_all queryeileencodes2014-03-311-1/+16
| | | | | | | | | | | | | | | | | | | | | | | | delete_all sql if an association is not loaded should behave the same as if the association is loaded. This test ensures the SQL statements are exactly the same.
| * | | add capture_sql method to compare sql statements and compareeileencodes2014-03-311-0/+6
| |/ / | | | | | | | | | | | | Other methods compare specific patterns, this method outputs the actual sql query that is generated.
* | | Merge pull request #14539 from lparedes/masterGuillermo Iguaran2014-03-312-3/+23
|\ \ \ | | | | | | | | Do not overwrite selected and disabled attributes
| * | | Add test for selected and disabled custom attributes in options_for_selectLaura Paredes2014-03-311-1/+21
| | | |
| * | | Do not overwrite selected and disabled attributesLaura Paredes2014-03-301-2/+2
| | | |
* | | | Merge pull request #14542 from arthurnn/fix_release_taskRafael Mendonça França2014-03-311-2/+2
|\ \ \ \ | | | | | | | | | | Fix release task
| * | | | Fix release taskArthur Neves2014-03-311-2/+2
|/ / / / | | | | | | | | | | | | | | | | Add a parentheses. related: b4c96490eeb1fbb944e116c7703dd528b37fc08a
* | | | Merge pull request #14532 from thedarkone/polymorphic-preload-fixAaron Patterson2014-03-313-34/+28
|\ \ \ \ | |_|/ / |/| | | Fix polymorphic preloads on NOT NULL _type columns
| * | | Simplify Preloader#grouped_records code.thedarkone2014-03-303-25/+17
| | | | | | | | | | | | | | | | | | | | | | | | The new method relies on AR::Associations::Association knowing about both reflection and a model class. AR::Base#association now raises a descriptive error when trying to access non-existent associations. Previously it would blow up with a confusing NoMethodError: undefined method `association_class' for nil:NilClass.
| * | | Fix polymorphic preloads on NOT NULL _type columns.thedarkone2014-03-302-10/+12
| | | | | | | | | | | | | | | | Defer to Association#klass instead of having a custom/duplicate code.