aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | | Merge pull request #33051 from SamSaffron/masterMatthew Draper2018-06-063-3/+3
|\ \ \ \ \ | | | | | | | | | | | | PERF: avoid allocating column names where possible
| * | | | | PERF: avoid allocating column names where possibleSam2018-06-063-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When requesting columns names from database adapters AR:Result would dup/freeze column names, this prefers using fstrings which cuts down on repeat allocations Attributes that are retained keep these fstrings around for the long term Note, this has the highest impact on "short" result sets, eg: Topic.first where you can void allocating the number of columns * String.
* | | | | | Merge pull request #33029 from fedxgibson/raise_with_duplicate_columnsEileen M. Uchitelle2018-06-043-2/+23
|\ \ \ \ \ \ | | | | | | | | | | | | | | Migrations will raise an exception if there are multiple column defin…
| * | | | | | Migrations will raise an exception if there are multiple column definitions ↵Federico Martinez2018-06-013-2/+23
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (same name).
* | | | | | | Merge pull request #33047 from artfuldodger/patch-3Eileen M. Uchitelle2018-06-041-1/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | Fix testing guide typo
| * | | | | | | Fix testing guide typoJon Evans2018-06-011-1/+1
| | |/ / / / / | |/| | | | |
* | | | | | | Merge pull request #33053 from lazyatom/patch-3Ryuta Kamizono2018-06-051-1/+1
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Correct default value of `unknown_asset_fallback` [ci skip]
| * | | | | | | Correct default value of `unknown_asset_fallback`James Adam2018-06-041-1/+1
|/ / / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | `Rails.application.config.assets.unknown_asset_fallback` now defaults to `false` in an unmodified Rails application. [ci skip]
* | | | | | | Initialization block is a part of `build_record`Ryuta Kamizono2018-06-047-14/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Should be done before `before_add` callbacks.
* | | | | | | Don't expose `Enumerable#_original_sum_with_required_identity` which is ↵yuuji.yaginuma2018-06-041-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | internal API [ci skip] `:nodoc:` is specified, but unfortunately, it is exposed in the API doc. http://edgeapi.rubyonrails.org/classes/Enumerable.html#method-i-_original_sum_with_required_identity If the method of the `alias` destination is public, the specification of `:nodoc:` does not seem to work.
* | | | | | | Exclude upload time from instrumented preview timeGeorge Claghorn2018-06-031-5/+10
| | | | | | |
* | | | | | | Fix `save` in `after_create_commit` won't invoke extra `after_create_commit`Ryuta Kamizono2018-06-042-10/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since a record is already persisted in `after_create_commit`, so `save` should invoke only `after_update_commit`. This bug is caused by depending on `@_start_transaction_state` for rollback to consider whether it was `new_record` before being committed. If after commit callbacks caused another commit, the state before last commit is no longer `new_record`. Fixes #32831. Closes #18367. Closes #31106.
* | | | | | | Remove unnecessary testyuuji.yaginuma2018-06-032-8/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since #32289, `Spellchecker.suggest` returns only one value, multiple suggestions not output.
* | | | | | | `record.destroy` on new record won't invoke after create commit callbacksRyuta Kamizono2018-06-032-1/+9
|/ / / / / / | | | | | | | | | | | | | | | | | | Fixes #32806.
* | | | | | Merge pull request #33039 from ↵Prem Sichanugrist2018-06-021-1/+1
|\ \ \ \ \ \ | |/ / / / / |/| | | | | | | | | | | | | | | | | ybakos/guides/layouts_and_rendering_class_spelling_fix Capitalize class name 'Product' in layouts and rendering guide.
| * | | | | Capitalize class name 'Product'.Yong Bakos2018-06-011-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In this context, the phrase 'product instance' refers to the Product class, so capitalize it.
* | | | | | Merge pull request #33018 from kddeisz/defined-attachmentsRafael França2018-06-016-24/+147
|\ \ \ \ \ \ | | | | | | | | | | | | | | ActiveStorage reflection
| * | | | | | Ensure reflection_class_for is privateKevin Deisz2018-05-312-36/+40
| | | | | | |
| * | | | | | Move ActiveStorage reflection logic entirely into ActiveStorageKevin Deisz2018-05-314-46/+76
| | | | | | |
| * | | | | | Reflection for attachmentsKevin Deisz2018-05-304-17/+106
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the ability to reflect on the attachments that have been defined using ActiveRecord::Reflection.
* | | | | | | Merge pull request #33040 from ↵George Claghorn2018-06-011-2/+2
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ybakos/guides/active_storage_overview_example_syntax_fix Remove 'Current.' prefix from example.
| * | | | | | | Remove 'Current.' prefix from example.Yong Bakos2018-06-011-2/+2
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | The prior sentence is referring just to an existing user object, so the sudden magical 'Current.' prefix doesn't make sense. Remove it.
* | | | | | | Merge pull request #33028 from yahonda/use_mariadb10_3Ryuta Kamizono2018-06-012-2/+4
|\ \ \ \ \ \ \ | | | | | | | | | | | | | | | | CI against MariaDB 10.3
| * | | | | | | CI against MariaDB 10.3Yasuo Honda2018-06-012-2/+4
| | |/ / / / / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - MariaDB 10.3.7 is the first GA release https://mariadb.com/kb/en/library/mariadb-1037-release-notes/ - MariaDB 10.3 translates `LENGTH()` to `OCTET_LENGTH()` function https://mariadb.com/kb/en/library/sql_modeoracle-from-mariadb-103/ > MariaDB translates LENGTH() to OCTET_LENGTH() - MySQL does NOT translate `LENGTH()` to `OCTET_LENGTH()` However, it translates `OCTET_LENGTH()` to `LENGTH()` Here are generated schema dumps of this test to show the differences between MySQL and MariaDB: * MySQL 8.0 (Server version: 8.0.11 MySQL Community Server - GPL) ```ruby create_table \"virtual_columns\", options: \"ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci\", force: :cascade do |t| t.string \"name\" t.virtual \"upper_name\", type: :string, as: \"upper(`name`)\" t.virtual \"name_length\", type: :integer, as: \"length(`name`)\", stored: true t.virtual \"name_octet_length\", type: :integer, as: \"length(`name`)\", stored: true end ``` * Maria DB 10.3 (Server version: 10.3.7-MariaDB-1:10.3.7+maria~bionic-log mariadb.org binary distribution) ```ruby create_table \"virtual_columns\", options: \"ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci\", force: :cascade do |t| t.string \"name\" t.virtual \"upper_name\", type: :string, as: \"ucase(`name`)\" t.virtual \"name_length\", type: :integer, as: \"octet_length(`name`)\", stored: true t.virtual \"name_octet_length\", type: :integer, as: \"octet_length(`name`)\", stored: true end ```
* | | | | | | Merge pull request #33041 from yahonda/add_changelog_to_bump_sqlite3Ryuta Kamizono2018-06-011-0/+4
|\ \ \ \ \ \ \ | |_|/ / / / / |/| | | | | | [skip ci] Add changelog about bumping minimum SQLite version to 3.8
| * | | | | | [skip ci] Add changelog about bumping minimum SQLite version to 3.8Yasuo Honda2018-06-011-0/+4
|/ / / / / / | | | | | | | | | | | | | | | | | | Related to #32923
* | | | | | Merge pull request #33034 from utilum/remove_mocha_from_action_cableRafael França2018-05-3111-52/+120
|\ \ \ \ \ \ | | | | | | | | | | | | | | Remove mocha from action cable
| * | | | | | Remove mocha from ActionCable testsutilum2018-05-311-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Q.E.D.
| * | | | | | Use Ruby instead of mochautilum2018-05-313-6/+19
| | | | | | |
| * | | | | | Use minitest/mock instead of mochautilum2018-05-318-45/+101
|/ / / / / /
* | | | | | Merge pull request #33033 from mikegee/patch-1Kasper Timm Hansen2018-05-311-1/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | "brethen" is misspelled and could be clearer
| * | | | | | [ci skip] "brethen" is misspelled and unclearMichael Gee2018-05-311-1/+1
|/ / / / / /
* | | | | | Remove errant debugger callGeorge Claghorn2018-05-301-1/+0
| | | | | |
* | | | | | Include blob ID in tempfile name for debugging convenienceGeorge Claghorn2018-05-303-10/+20
| | | | | |
* | | | | | Avoid unused capture in `non_xhr_javascript_response?`Ryuta Kamizono2018-05-311-1/+1
| | | | | |
* | | | | | ActionMailer::Base can unregister observer(s) and interceptor(s). (#32207)Kota Miyake2018-05-304-19/+135
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * ActionMailer::Base can unregister observer(s) and interceptor(s). One or multiple mail observers can be unregistered using `ActionMailer::Base.unregister_observers` or `ActionMailer::Base.unregister_observer`. One or multiple mail interceptors can be unregistered using `ActionMailer::Base.unregister_interceptors` or `ActionMailer::Base.unregister_interceptor`. For preview interceptors, it's possible to use `ActionMailer::Base.unregister_preview_interceptors` or `ActionMailer::Base.unregister_preview_interceptor`. * Ensure to be reset registered observer(s) and interceptor(s) * Add explanation to CHANGELOG * Add original author's name [Kota Miyake + Rafael Mendonça França + Claudio Ortolina]
* | | | | | Merge pull request #33020 from joshpencheon/time_zone_frac_microsecondsRafael França2018-05-302-2/+17
|\ \ \ \ \ \ | | | | | | | | | | | | | | Align Time.zone.at method signature with that of Time::at
| * | | | | | Allow Time.zone.at to receive a second argumentJosh Pencheon2018-05-302-2/+17
| |/ / / / / | | | | | | | | | | | | | | | | | | For parity with Ruby's Time::at
* | | | | | Bundle updateRafael Mendonça França2018-05-301-100/+106
| | | | | |
* | | | | | Merge pull request #32998 from gregmolnar/protect-from-application-javascriptEileen M. Uchitelle2018-05-302-1/+6
|\ \ \ \ \ \ | | | | | | | | | | | | | | Include application/javascript when checking content_type
| * | | | | | Include application/javascript when checking content_typeGabriel Jaldon2018-05-272-1/+6
| | | | | | |
* | | | | | | Remove unused `require "active_support/file_update_checker"`yuuji.yaginuma2018-05-301-1/+0
| |/ / / / / |/| | | | | | | | | | | | | | | | | This is unnecessary since #22269.
* | | | | | Merge pull request #33012 from bogdanvlviv/fix-discard_on-and-retry_on-docRyuta Kamizono2018-05-291-4/+4
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix name of the second parameter of block executed by `discard_on` and `retry_on` [ci skip]
| * | | | | | Fix name of the second parameter of block executed by `discard_on` and ↵bogdanvlviv2018-05-291-4/+4
|/ / / / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `retry_on` [ci skip] Follow up #32854 and ba07b5fc12a740d41d288bea6347f15f4948483c.
* | | | | | Merge pull request #32952 from mechanicles/32940-fixRyuta Kamizono2018-05-295-3/+35
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | Fix parent record should not get saved with duplicate children records
| * | | | | | Fix parent record should not get saved with duplicate children recordsSantosh Wadghule2018-05-285-3/+35
| | |_|_|_|/ | |/| | | | | | | | | | | | | | | | - Fixes #32940
* | | | | | Fix referenceGeorge Claghorn2018-05-281-1/+1
| | | | | |
* | | | | | Verify integrity after chunked downloadGeorge Claghorn2018-05-285-3/+24
| | | | | |
* | | | | | Ensure casting by boolean attribute when queryingRyuta Kamizono2018-05-293-43/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `QueryAttribute#value_for_database` calls only `type.serialize`, and `Boolean#serialize` is a no-op unlike other attribute types. It caused the issue #32624. Whether or not `serialize` will invoke `cast` is undefined in our test cases, but it actually does not work properly unless it does so for now. Fixes #32624.
* | | | | | Merge pull request #33005 from mechanicles/fix-sentenceRafael França2018-05-281-1/+1
|\ \ \ \ \ \ | | | | | | | | | | | | | | Fix sentence [ci skip]