aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix performance issue with NameError#missing_name on ruby >= v2.3.0.Andriy Yanko2017-07-101-0/+5
| | | | | Since ruby v2.3.0 `did_you_mean` gem shipped and ENABLED by default. It patches NameError#message with spell corrections which are SLOW.
* Merge pull request #29413 from kamipo/fix_association_with_scope_including_joinsRafael França2017-07-049-70/+60
|\ | | | | Fix association with scope including joins
| * Fix eager loading association with scope including joinsRyuta Kamizono2017-07-044-11/+28
| | | | | | | | Fixes #28324.
| * Fix preloading association with scope including joinsRyuta Kamizono2017-07-046-49/+32
| |
| * Remove unused `association_key` and `table` methods in `Preloader::Association`Ryuta Kamizono2017-07-041-10/+0
| | | | | | | | These are no longer used since b98668decb9712f26118de57623fd15d7d28646d.
* | Merge pull request #29667 from kamipo/add_missing_attr_name_to_sRafael França2017-07-041-2/+3
|\ \ | | | | | | Add missing `attr_name.to_s` in `AttributeMutationTracker`
| * | Add missing `attr_name.to_s` in `AttributeMutationTracker`Ryuta Kamizono2017-07-041-2/+3
| |/ | | | | | | | | | | | | `attributes` (`values` in `LazyAttributeHash` in `AttributeSet`) has string keys, not symbols. Fixes #29665.
* | Fix endRafael Mendonça França2017-07-041-0/+1
| |
* | Load the Parameters configurations on the right timeRafael Mendonça França2017-07-041-7/+8
| | | | | | | | | | | | | | We need to configure it only when ActionController::Base is loaded otherwise configs on initializers will not work. Closes #29527.
* | Commit gemfile.lockRafael Mendonça França2017-07-041-1/+1
| |
* | Merge pull request #29653 from ↵Rafael França2017-07-043-6/+9
|\ \ | | | | | | | | | | | | kamipo/fix_test_copying_migrations_preserving_magic_comments Fix `test_copying_migrations_preserving_magic_comments`
| * | Fix `test_copying_migrations_preserving_magic_comments`Ryuta Kamizono2017-07-023-6/+9
| | | | | | | | | | | | | | | Since #29540, `# frozen_string_literal: true` included original migration files.
* | | Merge pull request #29675 from jules2689/masterRafael França2017-07-041-1/+1
|\ \ \ | | | | | | | | Allow the use of Bundler 2.0
| * | | Allow the use of Bundler 2.0Julian Nadeau2017-07-041-1/+1
| | | |
* | | | Merge pull request #29666 from kamipo/deprecate_database_specific_json_typesRafael França2017-07-043-14/+0
|\ \ \ \ | |/ / / |/| | | Deprecate database specific JSON types
| * | | Remove database specific JSON typesRyuta Kamizono2017-07-053-14/+0
| | |/ | |/| | | | | | | We already have database agnostic `Type::Json` since #29220.
* | | Merge pull request #29668 from y-yagi/add_missing_status_code_and_symbolArun Agrawal2017-07-041-0/+2
|\ \ \ | |/ / |/| | Add missing http status codes [ci skip]
| * | Add missing http status codes [ci skip]yuuji.yaginuma2017-07-041-0/+2
| | | | | | | | | | | | | | | Ref: https://github.com/rack/rack/commit/5401f776f660b1f8d0e0650ba78478d7488eff75, https://github.com/rack/rack/commit/73e08279d4433ca66cf22157a40dba562629031a
* | | Add backticks [ci skip]Ryuta Kamizono2017-07-032-3/+3
| | |
* | | Merge pull request #29638 from amatsuda/require_relative_2017Xavier Noria2017-07-02313-773/+773
|\ \ \ | | | | | | | | Using require_relative in the Rails codebase
| * \ \ Merge branch 'master' into require_relative_2017Xavier Noria2017-07-02100-495/+796
| |\ \ \ | |/ / / |/| | |
* | | | Merge pull request #29658 from kamipo/remove_redundant_assert_respond_toKasper Timm Hansen2017-07-023-42/+3
|\ \ \ \ | | | | | | | | | | Remove redundant `assert_respond_to`
| * | | | Remove redundant `assert_respond_to`Ryuta Kamizono2017-07-033-42/+3
| | | | | | | | | | | | | | | | | | | | It is covered by following assertion.
* | | | | Expectation firstAkira Matsuda2017-07-023-9/+9
| | | | |
* | | | | :warning: "Use assert_nil if expecting nil. This will fail in Minitest 6."Akira Matsuda2017-07-021-1/+1
|/ / / /
* | | | Merge pull request #29566 from eugeneius/wrap_parameters_queryKasper Timm Hansen2017-07-022-7/+10
|\ \ \ \ | | | | | | | | | | Don't wrap parameters if query parameter exists
| * | | | Don't wrap parameters if query parameter existsEugene Kenny2017-06-252-7/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We want to avoid overwriting a query parameter with the wrapped parameters hash. Previously this was implemented by merging the wrapped parameters at the root level if the key already existed, which was effectively a no-op. The query parameter was still overwritten in the filtered parameters hash, however. We can fix that discrepancy with a simpler implementation and less unnecessary work by skipping parameter wrapping entirely if the key was sent as a query parameter.
* | | | | Merge pull request #29654 from kamipo/fix_deprecation_messageKasper Timm Hansen2017-07-021-1/+1
|\ \ \ \ \ | | | | | | | | | | | | Fix removed version 5.2 to 6.0 in the deprecation message
| * | | | | Fix removed version 5.2 to 6.0 in the deprecation messageRyuta Kamizono2017-07-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Because the deprecation message is not yet released.
* | | | | | Merge pull request #29656 from y-yagi/move_tmp_clear_testKasper Timm Hansen2017-07-022-7/+7
|\ \ \ \ \ \ | |/ / / / / |/| | | | | Move test related to `tmp:clear` task to `tmp_test.rb`
| * | | | | Move test related to `tmp:clear` task to `tmp_test.rb`yuuji.yaginuma2017-07-022-7/+7
|/ / / / /
* | | | | Apply record state based on parent transaction stateeileencodes2017-07-014-3/+96
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Let's say you have a nested transaction and both records are saved. Before the outer transaction closes, a rollback is performed. Previously the record in the outer transaction would get marked as not persisted but the inner transaction would get persisted. ```ruby Post.transaction do post_one.save # will get rolled back Post.transaction(requires_new: true) do post_two.save # incorrectly remains marked as persisted end raise ActiveRecord::Rollback end ``` To fix this the PR changes transaction handling to have the child transaction ask the parent how the records should be marked. When there are child transactions, it will always be a SavpointTransaction because the stack isn't empty. From there we pass the parent_transaction to the child SavepointTransaction where we add the children to the parent so the parent can mark the inner transaction as rolledback and thus mark the record as not persisted. `update_attributes_from_transaction_state` uses the `completed?` check to correctly mark all the transactions as rolledback and the inner record as not persisted. ```ruby Post.transaction do post_one.save # will get rolled back Post.transaction(requires_new: true) do post_two.save # with new behavior, correctly marked as not persisted on rollback end raise ActiveRecord::Rollback end ``` Fixes #29320
* | | | | Deprecate and replace `set_state` methodeileencodes2017-07-013-6/+73
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `set_state` was directly setting the transaction state instance variable. It's better to set the state via specific methods (`rollback!` and `commit!` respectively. While undocumented and untested, it's possible someone is using `set_state` in their app or gem so I've added a deprecation notice to it. No where in the app do we use `nullify!` but I wanted to keep existing behavior while replacing the method with a better pattern.
* | | | | Merge pull request #29622 from yalab/warning_system_tesing_http_verbEileen M. Uchitelle2017-07-013-0/+58
|\ \ \ \ \ | |_|_|_|/ |/| | | | Warning http verb method call in SystemTestCase
| * | | | SystemTestCase undef some IntegrationTest methods because it's confused to use.yalab2017-07-013-0/+58
| | | | |
* | | | | Avoid shadowed variableMatthew Draper2017-07-021-2/+2
| | | | |
* | | | | Revert "Merge pull request #29540 from kirs/rubocop-frozen-string"Matthew Draper2017-07-022231-2246/+13
| | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 3420a14590c0e6915d8b6c242887f74adb4120f9, reversing changes made to afb66a5a598ce4ac74ad84b125a5abf046dcf5aa.
* | | | | Merge pull request #29540 from kirs/rubocop-frozen-stringMatthew Draper2017-07-022231-13/+2246
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | Enforce frozen string in Rubocop
| * | | | | Enforce frozen string in RubocopKir Shatrov2017-07-012230-13/+2245
| | | | | |
* | | | | | Merge pull request #29506 from pat/frozen-string-literalsMatthew Draper2017-07-0265-323/+323
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Make ActiveSupport frozen-string-literal friendly.
| * | | | | | Make ActionView frozen string literal friendly.Pat Allan2017-06-2022-223/+223
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Plus a couple of related ActionPack patches.
| * | | | | | Make ActionMailer frozen string literal friendly.Pat Allan2017-06-205-7/+7
| | | | | | |
| * | | | | | Make ActiveRecord frozen string literal friendly.Pat Allan2017-06-2021-44/+43
| | | | | | |
| * | | | | | Make ActiveModel frozen string literal friendly.Pat Allan2017-06-204-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Includes two external changes because they're referenced within the ActiveModel test suite.
| * | | | | | Make ActiveSupport frozen string literal friendly.Pat Allan2017-06-2016-44/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ActiveSupport test suite only passes currently if it uses the latest unreleased commits for dalli, and a patch for Builder: https://github.com/tenderlove/builder/pull/6 Beyond that, all external dependencies (at least, to the extent they’re used by ActiveSupport) are happy, including Nokogiri as of 1.8.0.
* | | | | | | Merge pull request #29349 from robertomiranda/responsive-imagesMatthew Draper2017-07-023-3/+24
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Add srcset option to image_tag helper
| * | | | | | | Add `srcset` option to `image_tag` helperRoberto Miranda2017-06-293-2/+23
| | | | | | | |
* | | | | | | | Merge pull request #29534 from y-yagi/clear_screenshots_in_tmp_clear_taskEileen M. Uchitelle2017-07-014-9/+57
|\ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | Clear screenshots files in `tmp:clear` task
| * | | | | | | | Clear screenshots files in `tmp:clear` taskyuuji.yaginuma2017-06-274-9/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If system test fails, it creates screenshot under `tmp/screenshots`. https://github.com/rails/rails/blob/34fe2a4fc778d18b7fe6bdf3629c1481bee789b9/actionpack/lib/action_dispatch/system_testing/test_helpers/screenshot_helper.rb#L45 But currently, screenshot files is not cleared by `tmp:clear` task. This patch make clears screenshot files with `tmp:clear` task as well as other tmp files.
* | | | | | | | | Merge pull request #29650 from koic/add_metadata_link_to_railties_gemspecEileen M. Uchitelle2017-07-011-0/+5
|\ \ \ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | Add source code and changelog link to railties.gemspec