aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Add missing block parametersGeorge Claghorn2018-05-162-2/+2
|
* Demonstrate ActiveStorage::Blob#open in the Active Storage guideGeorge Claghorn2018-05-161-42/+9
|
* Add ActiveStorage::Blob#openGeorge Claghorn2018-05-168-12/+81
| | | | [David Robertson & George Claghorn]
* Don't expose `SingularAssociation#replace` which is internal APIRyuta Kamizono2018-05-163-47/+44
| | | | | Originally `SingularAssociation#replace` abstract method is private, and doesn't intend to be called directly.
* Remove :nodoc: from the methods which is added the doc [ci skip]Ryuta Kamizono2018-05-151-4/+4
| | | | Follow up of #19171 and #26825.
* Merge pull request #32724 from nikolai-b/add_math_testRyuta Kamizono2018-05-152-9/+83
|\ | | | | Add math test
| * Add math testsNikolai B2018-05-142-9/+83
|/ | | | | | After #449 was merged math can be done on these nodes, adding a test file to unit test all the math operators.
* Merge pull request #32837 from ttanimichi/app-update-skip-springYuji Yaginuma2018-05-143-1/+17
|\ | | | | Don't generate `config/spring.rb` in `app:update` task when spring isn't loaded
| * Don't generate `config/spring.rb` in `app:update` task when spring isn't loadedTsukuru Tanimichi2018-05-133-1/+17
| |
* | Merge pull request #32876 from wata727/add_available_transformationsGeorge Claghorn2018-05-131-0/+3
|\ \ | | | | | | Add available transformations to docs
| * | Add available transformations to docs [ci skip]wata_mac2018-05-131-0/+3
| | | | | | | | | | | | `foreign_key`, `json` and `virtual` are also available.
* | | Fix `CustomCops/AssertNot` to allow it to have failure messageRyuta Kamizono2018-05-1345-143/+143
| | | | | | | | | | | | Follow up of #32605.
* | | Merge pull request #32878 from eugeneius/rm_rollback_active_record_stateRyuta Kamizono2018-05-131-14/+1
|\ \ \ | | | | | | | | Remove ActiveRecord::Transactions#rollback_active_record_state!
| * | | Remove ActiveRecord::Transactions#rollback_active_record_state!Eugene Kenny2018-05-131-14/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `rollback_active_record_state!` was removed from `save!` but not `save` in da840d13da865331297d5287391231b1ed39721b. I believe that leaving it in `save` was a mistake, since that commit was intended to move the rollback logic from the `save`/`save!` call to the transaction stack. As of 67d8bb963d5d51fc644d6b1ca20164efb4cee6d7 the record's original state is lazily restored the first time it's accessed after the transaction, instead of when a rollback occurs. This means that the call to `restore_transaction_record_state` here has no effect: the record's transaction level is incremented twice (in rollback_active_record_state! and `with_transaction_returning_status`), isn't decremented again until the the `ensure` block runs, and won't hit zero until the next time `sync_with_transaction_state` is called.
* | | Merge pull request #32862 from eugeneius/callback_rollbackRyuta Kamizono2018-05-132-7/+13
|\ \ \ | |/ / |/| | Don't clear transaction state after manual rollback
| * | Don't clear transaction state after manual rollbackEugene Kenny2018-05-102-7/+13
| | | | | | | | | | | | | | | | | | | | | If an `ActiveRecord::Rollback` error was raised by a persistence method (e.g. in an `after_save` callback), this logic would potentially discard the original state of the record from before the transaction, preventing it from being restored later when the transaction was rolled back.
* | | Pass the error instance as the second parameter of block executed by ↵yuuji.yaginuma2018-05-124-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `discard_on` I'm not sure what originally wanted to pass to the argument. However, as long as see the document added along with the commit, it seems just to be mistaken that trying to pass the error instance. https://github.com/rails/rails/pull/30622/files#diff-59beb0189c8c6bc862edf7fdb84ff5a7R64 Fixes #32853
* | | Merge pull request #32843 from ttanimichi/remove_unused_remove_fileYuji Yaginuma2018-05-121-4/+0
|\ \ \ | | | | | | | | Remove unused `remove_file` method
| * | | Remove unused `remove_file` methodTsukuru Tanimichi2018-05-081-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | In #32780, We have supported the `--skip-sprockets` option in the `app:update` task. When `options[:api]` is truthy, `option[:skip_sprockets]` is also truthy. So we can remove this `remove_file` method. https://github.com/rails/rails/blob/42b9e7e50c084e119a679cf155b70b5efc4d36ff/railties/lib/rails/generators/rails/app/app_generator.rb#L281-L283
* | | | Merge pull request #32874 from tylerhunt/remove_render_text_docsEileen M. Uchitelle2018-05-111-1/+0
|\ \ \ \ | | | | | | | | | | Remove reference to old `:text` rendering option
| * | | | Remove reference to old `:text` rendering optionTyler Hunt2018-05-111-1/+0
|/ / / / | | | | | | | | | | | | [ci skip]
* | | | `becomes` should clear the mutation tracker which is created in ↵Ryuta Kamizono2018-05-114-3/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | `after_initialize` `becomes` creates new object and copies attributes from the receiver. If new object has mutation tracker which is created in `after_initialize`, it should be cleared since it is for discarded attributes. But if the receiver doesn't have mutation tracker yet, it will not be cleared properly. It should be cleared regardless of whether the receiver has mutation tracker or not. Fixes #32867.
* | | | Merge pull request #32849 from anthonycrumley/oxford-commasMatthew Draper2018-05-1134-115/+115
|\ \ \ \ | | | | | | | | | | Added a lot of Oxford commas
| * | | | Added a lot of Oxford commasAnthony Crumley2018-05-1034-115/+115
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | [ci skip] A regular expression was used to find a lot of missing Oxford commas and add them. The regular expression was as follows. ", ([a-zA-Z0-9.\`:'\"]+ ){1,6}(or|and) "
* | | | Merge pull request #32859 from ↵George Claghorn2018-05-091-1/+1
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | assain/fix-typo-activesupport-instrumentation-guide Fix Typo In ActiveSupport Instrumentation Guide
| * | | [ci skip] fix typo in active_support_instrumentation.md guideAssain2018-05-101-1/+1
|/ / /
* | | Merge pull request #32835 from trezona-lecomte/ar_dirty_doc_fixClaudio B2018-05-081-20/+58
|\ \ \ | | | | | | | | Fix ActiveRecord::AttributeMethods::Dirty documentation
| * | | Fix ActiveRecord::AttributeMethods::Dirty documentation [ci skip]Kieran Trezona-le Comte2018-05-071-20/+58
| | |/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously the documentation for the newly introduced (in 5.1) AR::Dirty methods was misleading, as it stated the the new methods were aliases for the old methods. This was false, and caused confusion when the differences in their implementation became apparent. This change attempts to describe the behaviour of these methods more accurately, also noting when they are likely to be useful (i.e. before or after saving a record). This change also makes minor updates to consistently format the documentation of this API, in accordance with the API Documentation Guidelines.
* | | Merge pull request #32833 from ryandav/activestorage_blob_set_content_typeGeorge Claghorn2018-05-085-9/+49
|\ \ \ | |_|/ |/| | Add option to ActiveStorage::Blob to set extract_content_type_from_io
| * | Add option to ActiveStorage::Blob to set extract_content_type_from_ioRyan Davidson2018-05-085-9/+49
| | | | | | | | | | | | | | | | | | | | | This adds a boolean argument called identify to ActiveStorage::Blob methods #create_after_upload, #build_after_upload and #upload. It allows a user to bypass the automatic content_type inference from the io.
* | | Fix named route parameter example [ci skip]yuuji.yaginuma2018-05-081-5/+5
| | | | | | | | | | | | The prefix of `new` and `edit` generated by `resources` is singular.
* | | Merge pull request #32842 from tjschuck/remove_extra_requiresRyuta Kamizono2018-05-081-2/+0
|\ \ \ | | | | | | | | Remove leftover requires
| * | | Remove leftover requiresT.J. Schuck2018-05-071-2/+0
|/ / / | | | | | | | | | | | | * Concurrent::Map usage was removed from this file in 3239ed48d28f3c0baf4445e6c279107e892b7cab * Monitor usage was removed in f233598d2da773c2024cbe62a199ddc70d9fd7a1
* | | Merge pull request #32840 from rakio1234/patch-1Vipul A M2018-05-071-1/+1
|\ \ \ | |_|/ |/| | Fix output in routing.md [ci skip]
| * | Fix output in routing.md [ci skip]Yuta Uchida2018-05-071-1/+1
|/ /
* | Skip `bootsnap` contents in `app:update` task if `bootsnap` is not usedyuuji.yaginuma2018-05-072-0/+14
| |
* | Remove `test_match_p` since Rails 6 requires Ruby 2.4.1 or newerRyuta Kamizono2018-05-071-24/+0
|/ | | | Follow up of #32034.
* restores original intention in constants guide, reworded [ci skip]Xavier Noria2018-05-061-4/+6
| | | | | | | | | | | | | | | | | | | | | | | Once all technicalities have been introduced, the purpose of this paragraph is to precisely unroll expressions like "the String class". That way, the reader is forced to clearly separate concepts that Ruby programmers often have kind of blurred: * Constants are storage, like variables. * Ruby does not have syntax for class or module names. * `String` is a regular constant that holds a value. In this case, the value happens to be a class object. * Constants are stored in class and module objects. In the case of `String`, the holder is the class object stored in the `Object` constant. Understanding that paragraph the way is written is important to accomplish this objective. References #32818.
* Merge pull request #32827 from sagarkt/guides_active_record_postgresqlVipul A M2018-05-061-1/+1
|\ | | | | Active Record postgresql documentation for bit string types corrected [ci skip]
| * Active Record postgresql documentation for bit string types correctedSagar Kamble2018-05-061-1/+1
|/
* Address CI failure due to non-deterministic query resultRyuta Kamizono2018-05-061-1/+1
| | | | https://travis-ci.org/rails/rails/jobs/375326992#L1160-L1166
* prefer File.write for bulk writesXavier Noria2018-05-053-5/+5
| | | | | | | | | | | | | | | | | | I saw these ones while working on #32362. File.write was introduced in Ruby 1.9.3 and it is the most concise way to perform bulk writes (as File.read is for bulk reading). The existing flags enabled binmode, but we are dumping text here. The portable way to dump text is text mode. The only difference is newlines, and portable code should in particular emit portable newlines. Please note the hard-coded \ns are still correct. In languages with C semantics for newlines like Ruby, Python, Perl, and others, "\n" is a portable newline. Both when writing and when reading. On Windows, the I/O layer is responsible for prepending a CR before each LF on writing, and removing CRs followed by LFs on reading. On Unix, binmode is a no-op.
* Merge pull request #32780 from ttanimichi/tmpYuji Yaginuma2018-05-054-1/+22
|\ | | | | Don't generate assets' initializer in `app:update` task if sprockets is skipped
| * Don't generate assets' initializer in `app:update` task if sprockets is skippedTsukuru Tanimichi2018-05-054-1/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Execute `rails new myapp -S` and then upgrade the app by using the `app:update` task, `bin/rails c` results in `NoMethodError`. ``` $ bin/rails app:update $ bin/rails c Traceback (most recent call last): 44: from bin/rails:4:in `<main>' (snip) 1: from /Users/tanimichi.tsukuru/ghq/github.com/moneyforward/moneyplus/config/initializers/assets.rb:4:in `<top (required)>' /Users/tanimichi.tsukuru/ghq/github.com/moneyforward/moneyplus/vendor/bundle/ruby/2.5.0/gems/railties-5.2.0/lib/rails/railtie/configuration.rb:97:in `method_missing': undefined method `assets' for #<Rails::Application::Configuration:0x00007fcb8d3697e0> (NoMethodError) Did you mean? asset_host ```
* | Merge pull request #32807 from bdurand/fix_committed_disable_callbacksRyuta Kamizono2018-05-053-1/+25
|\ \ | | | | | | Fix logic on disabling afer_commit callbacks
| * | Fix logic on disabling commit callbacksBrian Durand2018-05-043-1/+25
| | | | | | | | | | | | Commit callbacks are intentionally disabled when errors occur when calling the callback chain in order to reset the internal record state. However, the implicit order of operations on the logic for checking if callbacks are disabled is wrong. The result is that callbacks can be unexpectedly when errors occur in transactions.
* | | Merge pull request #32809 from gmcgibbon/fix_load_error_is_missing_nil_pathEileen M. Uchitelle2018-05-042-1/+8
|\ \ \ | | | | | | | | Fix #29632 - nil #path leads to NoMethodError in LoadError#is_missing?
| * | | Fix #29632 - nil #path leads to NoMethodError in LoadError#is_missing?Neil Souza2018-05-042-1/+8
| |/ / | | | | | | | | | | | | | | | | | | | | | See #29632 for details. In short, it's possible to enter `LoadError#is_missing?` when `LoadError#path` returns `nil`, leading to `path.sub` throwing an none-to-helpful `NoMethodError`. This tiniest of patch inserts `#to_s` before the `sub` call to make sure it succeeds. Affected surface area should be just as tiny since something has already gone wrong to get us into `#is_missing?` and the current behavior when `#path` returns `nil` seems clearly not intended. [Gannon McGibbon + Neil Souza]
* | | Merge pull request #32818 from mechanicles/remove-sentence-confusionEileen M. Uchitelle2018-05-041-3/+3
|\ \ \ | | | | | | | | Remove confusion in the sentence [ci skip]
| * | | Remove confusion in the sentence [ci skip]Santosh Wadghule2018-05-041-3/+3
| | | |