aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | Add `clear_association_scope_cache` methodeileencodes2015-03-181-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | In the tests if I were to call `post.categorizations.to_a` and then later call `post.categorizations.to_a` expecting to have different results the 2 queries would be the same because of the caching involved in `@association_scope_cache`. The chain gets cached and the queries will be the same even if they are not supposed to be (i.e. testing an order dependent scoping issue). I found this issue because I was working on a bug with cached scoped in hm:t and hm:t polymorphic relationships but `capture_sql` was outputting the wrong SQL to write a good test.
* | Merge pull request #19240 from yui-knk/refactor/guide_rbYves Senn2015-03-181-45/+0
|\ \ | | | | | | | | | | | | | | | | | | Remove gem check in guides/rails_guides.rb Conflicts: guides/rails_guides.rb
| * | Remove gem check in guides/rails_guides.rbyui-knk2015-03-071-45/+0
| | | | | | | | | | | | | | | Now rails/Gemfile includes nokogiri and redcarpet, so remove gem check from guides/rails_guides.rb
* | | Remove additional handling of boolean attributes on button to helperCarlos Antonio da Silva2015-03-181-30/+0
| | | | | | | | | | | | | | | | | | | | | | | | This logic was just doing duplicated work, since the button_to helper relies on tag/content_tag to generate the button html, which already handles all boolean attributes it knows about. The code dates back to 2005: 43c470fae468ef63e0d5c3dc1e202925685fd47b.
* | | Merge pull request #19348 from Empact/null-scopeYves Senn2015-03-183-2/+19
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Reuse the CollectionAssociation#reader proxy cache if the foreign key is present from the start. Conflicts: activerecord/CHANGELOG.md
| * | | Reuse the CollectionAssociation#reader proxy cache if the foreign key is ↵Ben Woosley2015-03-153-2/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | present from the start. When a new record has the necessary information prior to save, we can avoid busting the cache. We could simply clear the @proxy on #reset or #reset_scope, but that would clear the cache more often than necessary.
* | | | Merge pull request #19383 from mechanicles/use-consistent-exampleYves Senn2015-03-181-5/+5
|\ \ \ \ | | | | | | | | | | Make example code consistent for better understanding. [ci skip]
| * | | | - Make example code consistent for better understanding. [ci skip]Santosh Wadghule2015-03-181-5/+5
| | | | |
* | | | | Merge pull request #19382 from leishman/patch-1Yves Senn2015-03-181-1/+1
|\ \ \ \ \ | |_|_|_|/ |/| | | | Update old link in pessimistic.rb comments [ci skip]
| * | | | Update old link in pessimistic.rb commentsAlexander Leishman2015-03-181-1/+1
|/ / / / | | | | | | | | Update link in comments to point to latest MySQL production version documentation. See here for reference: http://dev.mysql.com/doc/refman/5.0/en/choosing-version.html
* | | | Merge pull request #19381 from Empact/null-relationYves Senn2015-03-181-2/+2
|\ \ \ \ | |/ / / |/| | | Fix NullRelation.update_all and .exists? signature to match the same on Relation
| * | | Fix NullRelation.update_all and .exists? signature to match the same on RelationBen Woosley2015-03-181-2/+2
|/ / /
* | | Merge pull request #19380 from mechanicles/fix-wrong-model-nameAbdelkader Boudih2015-03-181-1/+1
|\ \ \ | | | | | | | | Fix wrong model name for 'Articles', It should be 'Article' [ci skip]
| * | | Fix wrong model name for 'Articles', It should be 'Article' [ci skip]Santosh Wadghule2015-03-181-1/+1
|/ / / | | | | | | | | | - Also changed 'a' to 'an' for 'Article' word.
* | | Merge pull request #19351 from reist/xml_documentRafael Mendonça França2015-03-182-1/+18
|\ \ \ | | | | | | | | Compare content_type with Mime::XML instead of regexp
| * | | Compare content_type with Mime::XML instead of regexpBoris Peterbarg2015-03-162-1/+18
| |/ / | | | | | | | | | | | | Regexp is broken for both content types including charsets and for integration tests, where the content_type is a Mime::Type and not String
* | | Merge pull request #19296 from Wildebeest/fix-race-ttlRafael Mendonça França2015-03-172-10/+22
|\ \ \ | | | | | | | | Skip the `:race_condition_ttl` branch if the option is 0 or nil.
| * | | Skip the `:race_condition_ttl` branch if the option is 0 or nil. This fixes ↵Matt Wilde2015-03-112-10/+22
| | | | | | | | | | | | | | | | an issue with the redis cache, where this code will sometimes throw an error out of SETEX when passing 0 as the `expires_at`.
* | | | Merge pull request #19347 from rywall/dump-schemas-configYves Senn2015-03-175-7/+69
|\ \ \ \ | | | | | | | | | | Add config.active_record.dump_schemas.
| * | | | Add config.active_record.dump_schemas.Ryan Wallace2015-03-175-7/+69
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | Fixes db:structure:dump when using schema_search_path and PostgreSQL extensions. Closes #17157.
* | | | Merge pull request #19376 from Empact/has-includeRafael Mendonça França2015-03-171-1/+1
|\ \ \ \ | | | | | | | | | | Drop `references_eager_loaded_tables?` test from `has_include?`
| * | | | Drop `references_eager_loaded_tables?` test from `has_include?`Ben Woosley2015-03-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It is redundant with tests in `eager_loading?`, but for the difference between `includes_values.present?` and `includes_values.any?`, which is a difference without a distinction because `false` has no meaning for `includes`.
* | | | | Merge pull request #19373 from artofhuman/fix_deprecation_warns_in_testsYves Senn2015-03-171-8/+8
|\ \ \ \ \ | |/ / / / |/| | | | Fix deprecation warning in rails_info_controller tests
| * | | | Fix deprecation warning in rails_info_controller testsSemyon Pupkov2015-03-171-8/+8
|/ / / / | | | | | | | | | | | | Use keyword arguments in request methods
* | | | Merge pull request #19368 from JuanitoFatas/fix/unused-var-in-testArthur Nogueira Neves2015-03-161-1/+1
|\ \ \ \ | | | | | | | | | | Remove unused variable in activerecord reflection_test.
| * | | | Remove unused variable in activerecord reflection_test.Juanito Fatas2015-03-171-1/+1
|/ / / /
* | | | Merge pull request #19363 from keepcosmos/reflection-doc-fixAbdelkader Boudih2015-03-171-1/+1
|\ \ \ \ | | | | | | | | | | [ci skip] reflection doc fix about hierarchy
| * | | | reflection doc fix about hierarchykeepcosmos2015-03-171-1/+1
|/ / / /
* | | | Merge pull request #19359 from yahonda/mysql_subclientRafael Mendonça França2015-03-161-1/+3
|\ \ \ \ | | | | | | | | | | Materialize subqueries by adding `DISTINCT` to suport MySQL 5.7.6 and later
| * | | | Materialize subqueries by adding `DISTINCT`Yasuo Honda2015-03-161-1/+3
| | | | | | | | | | | | | | | | | | | | to support MySQL 5.7.6 `optimizer_switch='derived_merge=on'`
* | | | | Merge pull request #19282 from ↵Rafael Mendonça França2015-03-1653-89/+143
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | brandonweiss/better-name-for-transactional-fixtures Renaming transactional fixtures to transactional tests
| * | | | | Closes rails/rails#18864: Renaming transactional fixtures to transactional testsBrandon Weiss2015-03-1653-89/+143
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I’m renaming all instances of `use_transcational_fixtures` to `use_transactional_tests` and “transactional fixtures” to “transactional tests”. I’m deprecating `use_transactional_fixtures=`. So anyone who is explicitly setting this will get a warning telling them to use `use_transactional_tests=` instead. I’m maintaining backwards compatibility—both forms will work. `use_transactional_tests` will check to see if `use_transactional_fixtures` is set and use that, otherwise it will use itself. But because `use_transactional_tests` is a class attribute (created with `class_attribute`) this requires a little bit of hoop jumping. The writer method that `class_attribute` generates defines a new reader method that return the value being set. Which means we can’t set the default of `true` using `use_transactional_tests=` as was done previously because that won’t take into account anyone using `use_transactional_fixtures`. Instead I defined the reader method manually and it checks `use_transactional_fixtures`. If it was set then it should be used, otherwise it should return the default, which is `true`. If someone uses `use_transactional_tests=` then it will overwrite the backwards-compatible method with whatever they set.
* | | | | Merge pull request #19352 from artofhuman/masterRafael Mendonça França2015-03-161-0/+1
|\ \ \ \ \ | |/ / / / |/| | | | Move Adapter to private constant
| * | | | Move Adapter to private constantSemyon Pupkov2015-03-161-0/+1
| | |/ / | |/| |
* | | | Merge pull request #19357 from boddhisattva/custom_rake_task_with_args_exampleAbdelkader Boudih2015-03-161-2/+2
|\ \ \ \ | |/ / / |/| | | Adds more clarity on how to use custom rake tasks with arguments passed to it [ci skip]
| * | | Adds an example of how to access the arguments passed to a custom rake task ↵Mohnish G J2015-03-161-2/+2
|/ / / | | | | | | | | | [ci skip]
* | | Merge pull request #19345 from davydovanton/doc-fix-spell-guidesXavier Noria2015-03-152-2/+2
|\ \ \ | | | | | | | | [skip ci] Fix typos in guides
| * | | [skip ci] Fix typos in guidesAnton Davydov2015-03-152-2/+2
| | | |
* | | | Merge pull request #19344 from davydovanton/doc-fix-spell-actionmailerArun Agrawal2015-03-151-1/+1
|\ \ \ \ | |/ / / |/| | | [skip ci] Fix typo in actionmailer documentation
| * | | [skip ci] Fix typo in actionmailer documentationAnton Davydov2015-03-151-1/+1
|/ / /
* | | Merge pull request #19342 from yui-knk/fix/missed_linkArthur Nogueira Neves2015-03-151-1/+1
|\ \ \ | | | | | | | | [ci skip] Fix dead link
| * | | [ci skip] Fix dead linkyui-knk2015-03-161-1/+1
|/ / / | | | | | | | | | | | | | | | | | | getting_started.html#the-mvc-architecture is lost by this commit 2f06c94e38a116fdfa43d7b7117e6bf911a0bff5 (Mar 14 2012 !). So replace it with wikipedia link.
* | | Fix leaky chain on polymorphic associationeileencodes2015-03-156-1/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If there was a polymorphic hm:t association with a scope AND second non-scoped hm:t association on a model the polymorphic scope would leak through into the call for the non-polymorhic hm:t association. This would only break if `hotel.drink_designers` was called before `hotel.recipes`. If `hotel.recipes` was called first there would be no problem with the SQL. Before (employable_type should not be here): ``` SELECT COUNT(*) FROM "drink_designers" INNER JOIN "chefs" ON "drink_designers"."id" = "chefs"."employable_id" INNER JOIN "departments" ON "chefs"."department_id" = "departments"."id" WHERE "departments"."hotel_id" = ? AND "chefs"."employable_type" = ? [["hotel_id", 1], ["employable_type", "DrinkDesigner"]] ``` After: ``` SELECT COUNT(*) FROM "recipes" INNER JOIN "chefs" ON "recipes"."chef_id" = "chefs"."id" INNER JOIN "departments" ON "chefs"."department_id" = "departments"."id" WHERE "departments"."hotel_id" = ? [["hotel_id", 1]] ``` From the SQL you can see that `employable_type` was leaking through when calling recipes. The solution is to dup the chain of the polymorphic association so it doesn't get cached. Additionally, this follows `scope_chain` which dup's the `source_reflection`'s `scope_chain`. This required another model/table/relationship because the leak only happens on a hm:t polymorphic that's called before another hm:t on the same model. I am specifically testing the SQL here instead of the number of records becasue the test could pass if there was 1 drink designer recipe for the drink designer chef even though the `employable_type` was leaking through. This needs to specifically check that `employable_type` is not in the SQL statement.
* | | Merge pull request #19339 from y-yagi/mailer_preview_commentAndrew White2015-03-152-7/+7
|\ \ \ | | | | | | | | add mailer suffix to comments for email previews
| * | | add mailer suffix to comments for email previewsyuuji.yaginuma2015-03-152-7/+7
| | | |
* | | | Merge pull request #19340 from keepcosmos/association-doc-fixClaudio B.2015-03-151-2/+2
|\ \ \ \ | |/ / / |/| | | [ci skip]Doc fix about association hierarchy
| * | | Doc fix about association hierarchykeepcosmos2015-03-151-2/+2
|/ / /
* | | Merge pull request #19336 from tchandy/cleaning_actionview_testsCarlos Antonio da Silva2015-03-146-77/+1
|\ \ \ | | | | | | | | Cleaning actionview tests
| * | | Cleaning JavaScriptHelperTestThiago Pradi2015-03-141-8/+1
| | | |
| * | | Cleaning unused views from actionpack tests inside actionviewThiago Pradi2015-03-141-1/+0
| | | |