aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Always pass a format to the ActionView::Template constructorAaron Patterson2019-02-256-13/+26
| | | | | This means we can eliminate nil checks and remove some mutations from the `decorate` method.
* Fix class name in the documentation [ci skip]Rafael Mendonça França2019-02-251-1/+1
|
* Merge pull request #35402 from alimi/update-ar-read-regexAaron Patterson2019-02-254-1/+29
|\ | | | | Support read queries with leading characters while preventing writes
| * Update READ_QUERY regexAli Ibrahim2019-02-254-1/+29
| | | | | | | | | | | | | | * The READ_QUERY regex would consider reads to be writes if they started with spaces or parens. For example, a UNION query might have parens around each SELECT - (SELECT ...) UNION (SELECT ...). * It will now correctly treat these queries as reads.
* | Depend on bootsnap 1.4.1Rafael Mendonça França2019-02-251-1/+1
| | | | | | | | This is needed to fix #35278.
* | Refactor `type_to_sql` to handle converting `limit` to `size` in itselfRyuta Kamizono2019-02-266-76/+91
| | | | | | | | | | Also, improving an argument error message for `limit`, extracting around `type_to_sql` code into schema statements, and more exercise tests.
* | Merge pull request #35399 from kamipo/fix_prepared_statement_cachingRyuta Kamizono2019-02-265-15/+79
|\ \ | |/ |/| Fix prepared statements caching to be enabled even when query caching is enabled
| * Fix prepared statements caching to be enabled even when query caching is enabledRyuta Kamizono2019-02-265-15/+79
|/ | | | | | | | | | | | Related cbcdecd, 2a56b2d. This is a regression caused by cbcdecd. If query caching is enabled, prepared statement handles are never re-used, since we missed that a query is preprocessed when query caching is enabled, but doesn't keep the `preparable` flag. We should care about that case.
* Merge pull request #35394 from alkesh26/activemodel-typo-fixRyuta Kamizono2019-02-251-3/+3
|\ | | | | activemodel typo fixes.
| * activemodel typo fix.alkesh262019-02-251-3/+3
| |
* | Merge pull request #35352 from kamipo/update_all_doesnt_care_optimistic_lockingRyuta Kamizono2019-02-254-19/+83
|\ \ | |/ |/| Ensure `update_all` series doesn't care optimistic locking
| * Ensure `update_all` series cares about optimistic lockingRyuta Kamizono2019-02-254-19/+83
| | | | | | | | | | | | Incrementing the lock version invalidates any other process's optimistic lock, which is the desired outcome: the record no longer looks the same as it did when they loaded it.
* | Merge pull request #35393 from alkesh26/activejob-typo-fixRyuta Kamizono2019-02-251-1/+1
|\ \ | | | | | | [ci skip] activejob typo fix.
| * | [ci skip] activejob typo fix.alkesh262019-02-251-1/+1
|/ /
* | Remove duplicated protected params definitionsRyuta Kamizono2019-02-246-88/+30
| | | | | | | | Use "support/stubs/strong_parameters" instead.
* | Add test case for `unscope` with `merge`Ryuta Kamizono2019-02-241-0/+13
| |
* | More exercise string attribute predicate tests for falsy stringsRyuta Kamizono2019-02-241-0/+4
| |
* | Merge pull request #35383 from soartec-lab/update_guide_activerecord_queryingRyuta Kamizono2019-02-241-0/+2
|\ \ | | | | | | How to use `select` is updated [ci skip]
| * | How to use `select` is updated [ci skip]soartec-lab2019-02-241-0/+2
| | |
* | | Disable available locale checks in Action Test testyuuji.yaginuma2019-02-241-0/+3
|/ / | | | | | | | | | | | | | | | | Without this change, `store_translations` silently fails when available locales already initialized. Ref: https://travis-ci.org/rails/rails/jobs/497615616#L6846 https://travis-ci.org/rails/rails/jobs/497605027#L6856
* | Merge pull request #35382 from ↵George Claghorn2019-02-232-48/+62
|\ \ | | | | | | | | | | | | janko/restore-io-copy-stream-compatibility-with-uploaded-file Restore ActionDispatch::Http::UploadedFile compatibility with IO.copy_stream
| * | Restore UploadedFile compatibility with IO.copy_streamJanko Marohnić2019-02-232-3/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In https://github.com/rails/rails/pull/28676 the `#to_path` method was added to `ActionDispatch::Http::UploadedFile`. This broke usage with `IO.copy_stream`: source = ActionDispatch::Http::UploadedFile.new(...) IO.copy_stream(source, destination) # ~> TypeError: can't convert ActionDispatch::Http::UploadedFile to IO (ActionDispatch::Http::UploadedFile#to_io gives Tempfile) Normally `IO.copy_stream` just calls `#read` on the source object. However, when `#to_path` is defined, `IO.copy_stream` calls `#to_io` in order to retrieve the raw `File` object. In that case it trips up, because `ActionDispatch::Http::UploadedFile#to_io` returned a `Tempfile` object, which is not an `IO` subclass. We fix this by having `#to_io` return an actual `File` object.
| * | Test ActionDispatch::Http::UploadedFile with an actual TempfileJanko Marohnić2019-02-231-48/+48
| | |
* | | Make this test strongerXavier Noria2019-02-231-0/+7
| | | | | | | | | | | | | | | We test the inflections for both autoloaders, but we can also autoload the constant as a sort of integration test.
* | | Add test case for `unscope` with unknown columnRyuta Kamizono2019-02-241-0/+11
| | |
* | | More exercise tests for distinct count with group byRyuta Kamizono2019-02-241-2/+16
| | |
* | | Let Zeitwerk autoloaders inflect with Active SupportXavier Noria2019-02-232-2/+32
|/ / | | | | | | [Harry Brundage & Xavier Noria]
* | Merge pull request #35379 from shivamvinsol/minor_grammar_fixRyuta Kamizono2019-02-241-1/+1
|\ \ | | | | | | minor grammar fix [ci skip]
| * | minor grammar fix [ci skip]Shivam Jain2019-02-241-1/+1
|/ /
* | Upgrade Zeitwerk to 1.3.1Xavier Noria2019-02-232-3/+3
| |
* | Merge pull request #35374 from rails/cache-inline-templatesAaron Patterson2019-02-223-1/+24
|\ \ | | | | | | Add a finalizer to inline templates
| * | Add a finalizer to inline templatesAaron Patterson2019-02-223-1/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit adds a finalizer just to inline templates. We can't cache compilation of inline templates because it's possible that people could have render calls that look like this: ```ruby loop do render inline: "#{rand}" end ``` and we would cache every one of these different inline templates. That would cause a memory leak. OTOH, we don't need finalizers on regular templates because we can cache, control, and detect changes to the template source. Fixes: #35372
* | | Merge pull request #35375 from ↵Yuji Yaginuma2019-02-231-7/+2
|\ \ \ | |/ / |/| | | | | | | | y-yagi/fix_test_select_with_subquery_in_from_uses_original_table_name Make `test_select_with_subquery_in_from_uses_original_table_name` work with old SQLite3
| * | Make `test_select_with_subquery_in_from_uses_original_table_name` work with ↵yuuji.yaginuma2019-02-231-7/+2
|/ / | | | | | | | | | | | | | | | | | | | | | | | | | | old SQLite3 It seems that the reason why the `test_select_with_subquery_in_from_uses_original_table_name` does not pass is that the return value of `sqlite3_column_name()` is wrong due to subquery flattening. This seems to have been fixed with SQLite 3.20.0(https://sqlite.org/changes.html#version_3_20_0). But CI uses the old version(maybe 3.11.0), I added `DISTINCT` to avoid optimization by subquery flattening. Ref: https://sqlite.org/optoverview.html#flattening
* | Merge pull request #35367 from ↵Rafael França2019-02-221-2/+2
|\ \ | | | | | | | | | | | | abhaynikam/update-getting-started-doc-for-migration-version-in-rails-6 Update migration version to 6.0 in the getting started doc [ci skip]
| * | [ci skip] Updated migration version to 6.0 in the getting started docsAbhay Nikam2019-02-221-2/+2
| | |
* | | Merge pull request #35370 from shivamvinsol/fix_skip_callbacks_documentationRyuta Kamizono2019-02-231-3/+2
|\ \ \ | | | | | | | | | | | | | | | | Update callbacks skipping methods in guide. [ci skip]
| * | | update callbacks skipping methods in guide [ci skip]Shivam Jain2019-02-231-3/+2
| | | |
* | | | Merge pull request #35371 from rails/always-have-a-formatAaron Patterson2019-02-224-7/+18
|\ \ \ \ | | | | | | | | | | Ensure that rendered templates always have a format
| * | | | Ensure that rendered templates always have a formatAaron Patterson2019-02-224-7/+18
| | | | | | | | | | | | | | | | | | | | | | | | | This removes one call to `lookup_context` and also eliminates a conditional in `_render_template`.
* | | | | Skip `test_select_with_subquery_in_from_uses_original_table_name` on CIRyuta Kamizono2019-02-231-1/+1
| |/ / / |/| | | | | | | | | | | Somehow `ENV["BUILDKITE"]` didn't work as expected.
* | | | Merge pull request #35369 from rails/fewer-lookup-context-callsAaron Patterson2019-02-222-6/+6
|\ \ \ \ | |_|/ / |/| | | Pass lookup context to the layout handlers
| * | | Pass lookup context to the layout handlersAaron Patterson2019-02-222-6/+6
| |/ / | | | | | | | | | | | | | | | | | | I want to start reducing the calls to `lookup_context`. That method caches the lookup context in an ivar, but I would like to cache the lookup context on the stack. That way we aren't coupled to the behavior of the `lookup_context` method.
* | | Skip `test_select_with_subquery_in_from_uses_original_table_name` on ↵Ryuta Kamizono2019-02-221-2/+5
| | | | | | | | | | | | | | | | | | Buildkite as well https://buildkite.com/rails/rails/builds/58981#2423c707-7c56-4639-a76e-8db4fd1e5cf3/102-111
* | | Merge pull request #35357 from ↵George Claghorn2019-02-222-2/+52
|\ \ \ | | | | | | | | | | | | | | | | abhaynikam/35351-allows-rich-text-area-to-have-translated-placeholder Allows rich_text_area_tag to add translated placeholder text if placeholder option set to true
| * | | Allows rich_text_area_tag to add I18n translated placeholder text if ↵Abhay Nikam2019-02-222-2/+52
| |/ / | | | | | | | | | placeholder option set to true
* | | Prefer I18n.with_localeGeorge Claghorn2019-02-212-52/+37
| | |
* | | Merge pull request #35363 from rails/zeitwerk-1.3.0Xavier Noria2019-02-215-12/+11
|\ \ \ | | | | | | | | Bumps Zeitwerk
| * | | simplifies Rails.autoloaders.logger=Xavier Noria2019-02-212-4/+3
| | | | | | | | | | | | | | | | Possible thanks to Zeitwerk 1.3.0.
| * | | simplify AS::Dependencies.verbose=Xavier Noria2019-02-212-5/+5
| | | | | | | | | | | | | | | | Possible thanks to Zeitwerk 1.3.0.