aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Merge pull request #29685 from ayanko/fix-slow-name-error-missing-nameRyuta Kamizono2018-01-101-0/+5
|\ | | | | Fix performance issue with NameError#missing_name on ruby >= v2.3.0.
| * 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 #27597 from brchristian/first_last_parityRyuta Kamizono2018-01-103-1/+31
|\ \ | | | | | | Consistency between first() and last() with limit
| * | resolve inconsistencies between first and to_a.first with limitBrian Christian2018-01-093-1/+31
| | |
* | | Merge pull request #31534 from claudiob/kaspth-approachKasper Timm Hansen2018-01-097-16/+37
|\ \ \ | |/ / |/| | Don't include Active Storage migrations in new apps
| * | Help if Active Storage tables are missingClaudio B2017-12-213-0/+35
| | | | | | | | | | | | | | | | | | When a user tries to create a new attachment or blog and the matching table is missing from the database (`active_storage_attachments` and `active_storage_blobs` by default), an informative error is displayed that invites users to run the `active_storage:install` task.
| * | Don't run rails active_storage:install in new appsclaudiob2017-12-144-16/+2
| | | | | | | | | | | | See #31315 for full discussion
* | | Merge pull request #31652 from kami-zh/activestorage-callbacksGeorge Claghorn2018-01-092-2/+8
|\ \ \ | | | | | | | | Change Active Storage destroy callbacks
| * | | Change Active Storage destroy callbackskami-zh2018-01-092-2/+8
|/ / / | | | | | | | | | | | | There is concern that only blob are deleted depending on the `before_destroy` definition order which throws abort.
* | | Add 'Referrer-Policy' header to default headers setGuillermo Iguaran2018-01-083-3/+10
| | |
* | | Rebuild activestorage.jsJavan Makhmali2018-01-081-1/+1
| | | | | | | | | | | | To pick up 21417e02e906f6b64f013aafefdc0cb8ea8b5e74
* | | Work around Firefox's refusal to dispatch events on disabled elements. Fixes ↵Javan Makhmali2018-01-081-1/+10
| | | | | | | | | | | | | | | | | | #31393 Brought to you by a 12 year old Firefox bug: https://bugzilla.mozilla.org/show_bug.cgi?id=329509
* | | Fix attaching blobs to optimistically-locked recordsGeorge Claghorn2018-01-081-2/+2
| | | | | | | | | | | | | | | | | | Explicitly declare inverse associations so ActiveStorage::Attachment touches the original record instance. Closes #31542.
* | | Merge pull request #31650 from rosa/masterGeorge Claghorn2018-01-082-4/+15
|\ \ \ | | | | | | | | Allow overriding filename in `Blob#service_url`
| * | | Allow overriding filename in `Blob#service_url`Rosa Gutierrez2018-01-082-4/+15
|/ / / | | | | | | | | | | | | | | | | | | This is useful when we have several representations for the same underlying file, each one with a different name, and we need to provide a custom download URL based on that name and not that of the underlying file.
* | | Merge pull request #31648 from dixitp012/rubocop_active_support_testRyuta Kamizono2018-01-081-2/+2
|\ \ \ | | | | | | | | | | | | Fix rubocop space before comma
| * | | Fix rubocop space before commaDixit Patel2018-01-081-1/+1
|/ / /
* | | Remove meaningless checkyuuji.yaginuma2018-01-081-1/+1
| | | | | | | | | | | | `ActiveSupport::OrderedOptions` responds to any message.
* | | Merge pull request #31547 from ↵Yuji Yaginuma2018-01-083-8/+34
|\ \ \ | | | | | | | | | | | | | | | | eugeneius/use_authenticated_message_encryption_new_framework_defaults Allow use_authenticated_message_encryption to be set in new_framework_defaults_5_2.rb
| * | | Allow use_authenticated_message_encryption to be set in ↵Eugene Kenny2018-01-073-8/+34
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | new_framework_defaults_5_2.rb Enabling this option in new_framework_defaults_5_2.rb didn't work before, as railtie initializers run before application initializers. Using `respond_to?` to decide whether to set the option wasn't working either, as `ActiveSupport::OrderedOptions` responds to any message.
* | | Fix the desc for image_alt change [ci skip]Prathamesh Sonpatki2018-01-071-1/+1
| | |
* | | Added deprecation and removal notes for Action View [ci skip]Prathamesh Sonpatki2018-01-071-2/+5
| | |
* | | Added deprecations and removals notes for Action Pack [ci skip]Prathamesh Sonpatki2018-01-072-3/+6
| | |
* | | Added release notes for Action Cable [ci skip]Prathamesh Sonpatki2018-01-071-1/+10
| | |
* | | Merge pull request #31610 from ↵Eileen M. Uchitelle2018-01-073-3/+3
|\ \ \ | | | | | | | | | | | | | | | | prathamesh-sonpatki/improve-deprecation-msg-pr-29358 Improve the deprecation message for using subclass of Rails::Application to start the Rails server
| * | | Improve the deprecation message for using subclass of Rails::Application to ↵Prathamesh Sonpatki2018-01-073-3/+3
| | | | | | | | | | | | | | | | start the Rails server
* | | | Fix deleting through records when using has_many through with `source_type`Ryuta Kamizono2018-01-082-20/+29
|/ / / | | | | | | | | | | | | | | | | | | | | | Currently deleting through records doesn't respect `source_type`. It should not be ignored in that case. Related #23209. Fixes #24116.
* | | Document automatic width-height swapping [ci skip]George Claghorn2018-01-071-0/+2
| | |
* | | Remove redundant sentences [ci skip]George Claghorn2018-01-072-4/+2
| | |
* | | Simply use `scope.delete_all` instead of constructing delete managerRyuta Kamizono2018-01-071-8/+1
| | |
* | | Tweak engine for readabilityGeorge Claghorn2018-01-071-11/+13
| | |
* | | Make `find_nth_from_last` more performant when using reversible orderRyuta Kamizono2018-01-071-6/+5
| | | | | | | | | | | | | | | We can use `relation.last(index)[-index]` instead of loading all records when using reversible order because `last` will call `reverse_order`.
* | | Fix `last` with `offset` to behave consistently with loaded relationRyuta Kamizono2018-01-072-9/+5
| | | | | | | | | | | | | | | | | | Currently `last` with `offset` behaves incorrectly because `offset` can not be reversed like `limit`. Therefore, `offset` should also be handled like `limit`.
* | | Fix `pluck` with eager loading to respect `offset`Ryuta Kamizono2018-01-072-1/+6
| | |
* | | Revert commit 4ec5b0d6b4d8a57e034b1014942356e95caf47aa in favor of #28379Ryuta Kamizono2018-01-072-9/+4
| | | | | | | | | | | | | | | Commit 4ec5b0d was for fixing the regression #18787, but #28379 fixes #18787 as well. So 4ec5b0d is no longer necessary.
* | | Merge pull request #31639 from rosa/masterGeorge Claghorn2018-01-055-2/+36
|\ \ \ | | | | | | | | Force :attachment as content disposition for some content types
| * | | Force content disposition to attachment for specific content typesRosa Gutierrez2018-01-055-2/+36
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In this way we avoid HTML, XML, SVG and other files that can be rendered by the browser to be served inline by default. Depending on the origin from where these files are served, this might lead to XSS vulnerabilities, and in the best case, to more realistic phishing attacks and open redirects. We force it rather than falling back to it when other disposition is not provided. Otherwise it would be possible for someone to force inline just by passing `disposition=inline` in the URL. The list of content types to be served as attachments is configurable.
* | | Consolidate `queue_adapter=` and `interpret_adapter`Ryuta Kamizono2018-01-051-18/+12
| | | | | | | | | | | | | | | Since #25037, `queue_adapter=` simply delegates to `interpret_adapter` only.
* | | Merge pull request #31637 from wagenet/patch-1George Claghorn2018-01-041-0/+1
|\ \ \ | | | | | | | | Add missing require for `strip_heredoc`
| * | | Add missing require for `strip_heredoc`Peter Wagenet2018-01-041-0/+1
|/ / /
* | | Remove passing argument to singular and collection association readersRyuta Kamizono2018-01-051-2/+2
| | | | | | | | | | | | Follow up of 09cac8c67afdc4b2a1c6ae07931ddc082629b277.
* | | Move the options for deliver_later up near to the example [ci skip]Prathamesh Sonpatki2018-01-041-12/+12
| | | | | | | | | | | | | | | | | | - And move the Active Job related section down. Otherwise it was appearing as if the options are available for the `delivery_job` setting.
* | | Partial revert the changing default value of `readonly_value`Ryuta Kamizono2018-01-052-15/+3
| | | | | | | | | | | | | | | This is a partial revert of #26182. There is no reason to change the default value.
* | | Merge pull request #31049 from gwincr11/cg-blankRyuta Kamizono2018-01-042-3/+12
|\ \ \ | | | | | | | | Add support for multiple encodings in String.blank?
| * | | Add support for multiple encodings in String.blank?Cory Gwin @gwincr112017-11-172-3/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Motivation: - When strings are encoded with `.encode("UTF-16LE")` `.blank?` throws an `Encoding::CompatibilityError` exception. - We tested multiple implementation to see what the fastest implementation was, rescueing the execption seems to be the fastest option we could find. Related Issues: - #28953 Changes: - Add a rescue to catch the exception. - Added a `Concurrent::Map` to store a cache of encoded regex objects for requested encoding types. - Use the new `Concurrent::Map` cache to return the correct regex for the string being checked.
* | | | Merge pull request #31011 from ↵Ryuta Kamizono2018-01-043-6/+24
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | danielma/dma/assert-changes-with-to-should-still-assert-change `assert_changes` should always assert some change
| * | | | `assert_changes` should always assert some changeDaniel Ma2017-11-133-5/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While using `assert_changes`, I came across some unexpected behavior: if you provide a `to:` argument, and the expression matches but didn't actually change, the assertion will pass. The way `assert_changes` reads, I assumed that it would both assert that there was any change at all, _and_ that the expression changed to match my `to:` argument. In the case of just a `from:` argument, `assert_changes` does what I expect as well. It asserts that the before value `=== from` and that the after value changed. My key change is that `assert_changes` will now _always_ assert that expression changes, no matter what combination of `from:` and `to:` arguments
* | | | | Fix newly added reflection order when redefining associationRyuta Kamizono2018-01-043-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently reflections keeps the order when first added even if when redefining association. As a result of the order, redefining through association which use newly added association will raise `HasManyThroughOrderError`. We need to redefine reflection order as well when redefining association. Fixes #31068.
* | | | | Merge pull request #31594 from yuki24/refactor-request-testEileen M. Uchitelle2018-01-041-89/+75
|\ \ \ \ \ | | | | | | | | | | | | Refactor tests for request parameters to use more realistic setup
| * | | | | Use more realistic setup rather than stubbingYuki Nishijima2017-12-291-89/+75
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | These assertions did matter due to the inconsistent behavior of [the #parameters method][1]. Today, it behaves consistently and they could be removed. Also, one of the methods was stubbed somewhat incorrectly, so it is better not to stub and instead, make them close to more realistic use cases. [1]: https://github.com/rails/rails/pull/13999#issuecomment-34601746