aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #22435 from yui-knk/fix_engine_route_testRafael Mendonça França2017-11-065-6/+91
|\ | | | | | | Make `assert_recognizes` to traverse mounted engines
| * Make `assert_recognizes` to traverse mounted enginesyui-knk2016-04-235-6/+90
| | | | | | | | | | | | Before this commit paths of mounted engines are not traversed when `assert_recognizes` is called, causing strange test results. This commit enable to traverse mounted paths.
* | Merge pull request #28360 from kbrock/transaction_fixMatthew Draper2017-11-071-1/+1
|\ \ | | | | | | Handle Timeout.timeout in rails queries
| * | Properly check transaction in persistenceKeenan Brock2017-11-061-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ``` [NoMethodError]: undefined method `state' for nil:NilClass Method:[rescue in block in refresh] ``` In `within_new_transaction`, there is the possibility that `begin_transaction` returns a `nil`. (i.e.: so `transaction = nil`) So this method is checking `transaction` for nil in 2 spots. Unfortunately, there is one line that is not checking `transaction` for `nil` That line, `commit_transaction`, throws an exception for us in AR 5.0.0.1 The problem with the method is finally realized in the error checking itself. it calls `transaction.state` (i.e.: nil.state) and that is the final exception raised. The actual underlying (user) issue is hidden by this line. Solution is test transaction for nil.
* | | Merge pull request #22115 from bogdan/refactor-preloaderRafael França2017-11-063-81/+40
|\ \ \ | |/ / |/| | Refactored preloading of a though assocations
| * | Refactor Preloader CodeBogdan Gusiev2017-11-063-81/+40
| | |
* | | Merge pull request #31069 from ↵Rafael França2017-11-061-1/+6
|\ \ \ | | | | | | | | | | | | | | | | danott/resolve-minitest-deprecation-in-assert_no_changes Resolve Minitest 6 deprecation in assert_no_changes
| * | | Resolve Minitest 6 deprecation in assert_no_changesDan Ott2017-11-061-1/+6
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These changes resolve a deprecation warning in `assert_no_changes` when asserting that an expression evaluates to `nil` before and after the passed block is evaluated. The smallest demonstration of this edge case: ```ruby assert_no_changes "nil" do true # noop end ``` Under the covers, this is evaluating ```ruby assert_equal nil, nil ``` Minitest 5 issues a deprecation warning, and Minitest will fail completely. For additional context, the motivations and implications of this change to Minitest have been discussed at length in [seattlerb/minitest#666][]. [seattlerb/minitest#666]: https://github.com/seattlerb/minitest/issues/666
* | | Fix acronym support in `humanize`Andrew White2017-11-063-1/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | Acronym inflections are stored with lowercase keys in the hash but the match wasn't being lowercased before being looked up in the hash. This shouldn't have any performance impact because before it would fail to find the acronym and perform the `downcase` operation anyway. Fixes #31052.
* | | Merge pull request #31066 from Leyka/patch-1Andrew White2017-11-061-6/+6
|\ \ \ | | | | | | | | Fix french spelling mistake
| * | | Fix french spelling mistake Skander2017-11-061-6/+6
| | | | | | | | | | | | | | | | Trés -> Très https://fr.wiktionary.org/wiki/tr%C3%A8s
* | | | Merge pull request #30620 from ↵Andrew White2017-11-067-135/+260
|\ \ \ \ | |/ / / |/| | | | | | | | | | | bogdanvlviv/method_signature_prev-next-day-month-year_for_time Mirror the API of Ruby stdlib for #prev_day, #next_day, #prev_month, #next_month, #prev_year, #next_year
| * | | Update "Active Support Core Extensions" guidebogdanvlviv2017-10-241-91/+97
| | | |
| * | | Allows pass argument for `Time#prev_year` and `Time#next_year`.bogdanvlviv2017-10-247-21/+58
| | | |
| * | | Allows pass argument for `Time#prev_month` and `Time#next_month`bogdanvlviv2017-10-247-22/+67
| | | |
| * | | Allows pass argument for `Time#prev_day` and `Time#next_day`bogdanvlviv2017-10-243-6/+43
| | | |
* | | | Merge pull request #31064 from y-yagi/remove_unused_requireRyuta Kamizono2017-11-061-1/+0
|\ \ \ \ | |_|/ / |/| | | Remove unused require
| * | | Remove unused requireyuuji.yaginuma2017-11-061-1/+0
| | | | | | | | | | | | | | | | Since f182831, this file does not use methods added by `module/introspection`.
* | | | Merge pull request #31062 from y-yagi/follow_up_of_31046Rafael França2017-11-051-1/+1
|\ \ \ \ | | | | | | | | | | Explicitly pass window handle to `resize_window_to`
| * | | | Explicitly pass window handle to `resize_window_to`yuuji.yaginuma2017-11-061-1/+1
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unlike `resize_window`, `resize_window_to` has three arguments. https://github.com/thoughtbot/capybara-webkit/blob/d63c3c8e3ae844f0c59359532a6dcb50f4a64d0a/lib/capybara/webkit/driver.rb#L135-L143 Therefore, if pass only width and height just like `resize_window`, `ArgumentError`will be raised. To prevent this, explicitly pass window handler. Follow up of #31046
* | | | `scoping` should respect current class and STI constraint (#29199)Ryuta Kamizono2017-11-063-1/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A relation includes `klass`, so it can not be used as it is if current class is different from `current_scope.klass`. It should be created new relation by current class to respect the klass and STI constraint. Fixes #17603. Fixes #23576.
* | | | Fix preloading polymorphic multi-level through associationRyuta Kamizono2017-11-062-1/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is partially fixed by e617fb57 when through association has already loaded. Otherwise, second level through association should respect `preload_scope`. Fixes #30242. Closes #30076. [Ryuta Kamizono & CicholGricenchos]
* | | | Fix preloading polymorphic association when through association has already ↵Ryuta Kamizono2017-11-062-4/+27
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | loaded If through association has already loaded, `source_type` is ignored to loaded through records. The loaded records should be filtered by `source_type` in that case. Fixes #30904.
* | | Ensure `apply_join_dependency` for `update_all` and `delete_all` if ↵Ryuta Kamizono2017-11-062-19/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | eager-loading is needed If a relation has eager-loading values, `count` and `exists?` works properly, but `update_all` and `delete_all` doesn't work due to missing `apply_join_dependency`. It should be applied to work consistently. Fixes #28863.
* | | Ensure `apply_join_dependency` for `collection_cache_key` if eager-loading ↵Ryuta Kamizono2017-11-065-3/+17
| | | | | | | | | | | | | | | | | | is needed Fixes #30315.
* | | Merge pull request #31053 from y-yagi/fix_namespaced_generatorEileen M. Uchitelle2017-11-053-10/+39
|\ \ \ | | | | | | | | Generate the correct path in nested scaffold generator
| * | | Generate the correct path in nested scaffold generatoryuuji.yaginuma2017-11-053-10/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, namespaced scaffold generator will generate an incorrect path and the generated file will not work properly. ``` $ ./bin/rails g scaffold admin/user $ ./bin/rails db:migrate $ ./bin/rails t test/controllers # Running: E Error: Admin::UsersControllerTest#test_should_create_admin_user: NameError: undefined local variable or method `admin_admin_users_url' for #<Admin::UsersControllerTest:0x000055a59f25ff68> Did you mean? admin_users test/controllers/admin/users_controller_test.rb:20:in `block (2 levels) in <class:UsersControllerTest>' test/controllers/admin/users_controller_test.rb:19:in `block in <class:UsersControllerTest>' bin/rails test test/controllers/admin/users_controller_test.rb:18 ``` This is because combine `controller_class_path` and `singular_table_name` to generate route. https://github.com/rails/rails/blob/360698aa245b45349d1d1b12e1afb34759515e69/railties/lib/rails/generators/named_base.rb#L172 Normally, if using namspaced generator, table name already contains namespace. Therefore, adding `controller_class_path` adds extra namespace. Since it is special only when explicitly specifying `model-name`, it is modified to change the value only when `model-name`is specified. Follow up of #30729
* | | | Merge pull request #31055 from ↵Ryuta Kamizono2017-11-051-0/+1
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | y-yagi/show_request_forgery_protection_methods_in_api_doc Show `RequestForgeryProtection` methods in api doc [ci skip]
| * | | | Show `RequestForgeryProtection` methods in api doc [ci skip]yuuji.yaginuma2017-11-051-0/+1
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Several methods of `RequestForgeryProtection` are not showed in the api doc even though `:doc:` is specified. (e.g. `form_authenticity_param`) http://api.rubyonrails.org/classes/ActionController/RequestForgeryProtection.html These methods are listed in the doc of v4.1. http://api.rubyonrails.org/v4.1/classes/ActionController/RequestForgeryProtection.html This is due to the influence of `:nodoc:` added in #18102, methods after `CROSS_ORIGIN_JAVASCRIPT_WARNING` not showed from the doc. Therefore, in order to show the method like originally, added `startdoc` after `CROSS_ORIGIN_JAVASCRIPT_WARNING`.
* | | | Merge pull request #31046 from NARKOZ/fix-capybara-webkit-deprecationEileen M. Uchitelle2017-11-041-1/+1
|\ \ \ \ | | | | | | | | | | Fix Capybara::Webkit::Driver#resize_window deprecation warning
| * | | | Fix Capybara::Webkit::Driver#resize_window deprecation warningNihad Abbasov2017-11-041-1/+1
| |/ / / | | | | | | | | | | | | | | | | >[DEPRECATION] Capybara::Webkit::Driver#resize_window is deprecated. Please use Capybara::Window#resize_to instead.
* | | | Merge pull request #31014 from aditya-kapoor/doc-fixesEileen M. Uchitelle2017-11-041-1/+7
|\ \ \ \ | | | | | | | | | | [ci skip] show the correct example to demonstrate inflections.
| * | | | [ci skip] show the correct example to demonstrate inflections.Aditya Kapoor2017-11-011-1/+7
| | | | |
* | | | | s/an/a/Akira Matsuda2017-11-041-1/+1
| | | | |
* | | | | Merge pull request #31048 from ↵Ryuta Kamizono2017-11-041-4/+14
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | bogdanvlviv/improve-docs-for-action_dispatch-routing-mapper Improve docs of ActionDispatch::Routing::Mapper [ci skip]
| * | | | | Improve docs of ActionDispatch::Routing::Mapperbogdanvlviv2017-11-031-4/+14
| | |/ / / | |/| | |
* | | | | Merge pull request #31050 from y-yagi/remove_unused_methodsRyuta Kamizono2017-11-041-8/+0
|\ \ \ \ \ | |/ / / / |/| | | | Remove unused `calculate_rounded_number` and `digit_count`
| * | | | Remove unused `calculate_rounded_number` and `digit_count`yuuji.yaginuma2017-11-041-8/+0
|/ / / / | | | | | | | | | | | | These methods unused since 5533696.
* | | | Permit configuring Active Storage's job queueGeorge Claghorn2017-11-035-16/+13
| | | |
* | | | Revert "Merge pull request #31025 from y-yagi/follow_up_31023_part2"Ryuta Kamizono2017-11-031-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 6f481e05bb24fe3589ef0f65e97a9b1fa66ae0f7, reversing changes made to 592f790b7693c0a32cd06d5e8201639923a734c5. In favor of #31039.
* | | | Merge pull request #31039 from y-yagi/fix_guides_buildRyuta Kamizono2017-11-036-0/+12
|\ \ \ \ | | | | | | | | | | Fix guides build
| * | | | Specify bundler version in template filesyuuji.yaginuma2017-11-036-0/+12
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We have already specified to install `bundler` 1.15.4 in `.travis.yml`. https://github.com/rails/rails/blob/master/.travis.yml#L31..L32 However, `bundler` 1.16.0 may be used in the test. https://travis-ci.org/rails/rails/jobs/296582467#L2208 The test failed due to this influence. In order to avoid this, specifying `bundler` version in bug report templates.
* | | | Merge pull request #31038 from y-yagi/remove_unused_classesRafael França2017-11-021-30/+0
|\ \ \ \ | | | | | | | | | | Remove unused classes
| * | | | Remove unused classesyuuji.yaginuma2017-11-031-30/+0
|/ / / / | | | | | | | | | | | | | | | | | | | | * `HasManyThroughCantDissociateNewRecords` and `HasManyThroughCantAssociateNewRecords` are no longer used since f6b12c1. * `ReadOnlyAssociation` is no longer used since 0da426b.
* | | | Allow third-party previewers/analyzers to customize their tempdirsGeorge Claghorn2017-11-022-3/+10
| | | |
* | | | Merge pull request #31034 from haneru/edit-commentEileen M. Uchitelle2017-11-021-1/+1
|\ \ \ \ | | | | | | | | | | [ci skip]Fix typo in comments.
| * | | | Edited comment from request.rbhaneru2017-11-031-1/+1
| | | | |
* | | | | Merge pull request #31031 from y-yagi/fix_ruby_warning_when_using_test_toolRyuta Kamizono2017-11-021-1/+1
|\ \ \ \ \ | | | | | | | | | | | | Fix "warning: instance variable @defined_root not initialized"
| * | | | | Fix "warning: instance variable @defined_root not initialized"yuuji.yaginuma2017-11-021-1/+1
|/ / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently, the following error is shows only when run the test using `bin/test`. ``` ./bin/test -w test/template/log_subscriber_test.rb Run options: --seed 17167 # Running: /rails/actionview/test/template/log_subscriber_test.rb:34: warning: instance variable @defined_root not initialized ``` In `AVLogSubscriberTest`, if the `Rails.root` is not defined, define the method and undef it in teardown. https://github.com/rails/rails/blob/master/actionview/test/template/log_subscriber_test.rb#L21..L33 However, in `bin/test`, `Rails.root` is defined, which results in referring to uninitialized variables and warnings.
* | | | | Merge pull request #31029 from yahonda/ignore_uninstall_bundler_at_ruby_headGuillermo Iguaran2017-11-011-1/+1
|\ \ \ \ \ | | | | | | | | | | | | Ignore "gem "bundler" cannot be uninstalled because it is a default gem" error when tested with ruby-head