| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|\
| |
| | |
Fix extracting `references` via `order_values` to respect quoting
|
| | |
|
|\ \
| | |
| | | |
Extract `build_scope` and `predicate_builder` in `Reflection`
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | | |
Ensure that using correct alias tracker
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Covering #27994 in tests.
Closes #27994.
|
| | |/
| |/|
| | |
| | | |
association, not the join root
|
|\ \ \
| | | |
| | | | |
Remove unnecessary `tap` call on `ActionDispatch::MiddlewareStack.new`
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
[ci skip] Add missing space in security.md
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
Add `railtie.rb` to the plugin generator
|
| | |/ /
| |/| | |
|
|\ \ \ \
| | | | |
| | | | | |
Rails 5.1.2.rc1 regression - Clear offset cache on CollectionProxy reset/reload
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The `@offsets` cache is used by FinderMethods to cache records found by
find_nth. This cache is cleared in AR::Relation#reset, but not in
CollectionProxy#reset or CollectionProxy#reload.
Because of this, since #29098, calling #first/#find_nth/etc after
calling #reload or #reset on an association could return a stale record.
This is an issue both when the full association target is loaded and
when the item is loaded in #find_nth.
This commit solves the problem by clearing the `@offsets` cache in
CollectionProxy#reset and CollectionProxy#reload.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Pass `structure_dump_flags` / `structure_load_flags` options before any other:
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
- On Mysql, some command line options that affect option-file handling such as `--no-defaults` have to be passed before any other options
- Modified rails to pass them right after the `mysql` command
- Ref https://dev.mysql.com/doc/refman/5.7/en/option-file-options.html and https://bugs.mysql.com/bug.php?id=83386
- Ref #27437
|
|\ \ \ \ \ \
| |_|_|/ / /
|/| | | | | |
Remove needless gitignore
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
The dummy application is created under the tmp directory. Nothing is
created in the `test/dummy` directory.
https://github.com/rails/rails/blob/40bdbce191ad90dfea43dad51fac5c4726b89392/activejob/test/support/integration/helper.rb#L9
I guess that this comment makes it unnecessary.
https://github.com/rails/rails/pull/16541#r16986711
|
|\ \ \ \ \
| |_|_|/ /
|/| | | |
| | | | |
| | | | | |
samphippen/samphippen/add-option-to-silence-puma-in-system-test
Add an option to silence puma in system tests.
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This is motivated by our usage of system test in RSpec. Puma lazily
boots the first time a system test is used, but this causes some
unfortunate output to appear in the middle of the user's green dots. An
example of this can be seen in @derekprior's comment
[here](https://github.com/rspec/rspec-rails/pull/1813#issuecomment-309252314).
There are alternatives in RSpec where we attempt to intercept the puma
boot and prevent the output from being made there, but that would
involve some monkey patching. This seems like a cleaner solution.
|
|\ \ \ \
| | | | |
| | | | | |
Don't wrap parameters if key already exists
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
We shouldn't perform parameter wrapping if it would overwrite one of the
parameters sent with the request, as that would interfere with reading
the parameter directly from the top level `params` hash.
The current implementation has logic for this case, but it doesn't
handle `nil`/`false` values, which means these parameters:
{ "user" => nil }
are transformed into this `params` hash:
{ "user" => { "user" => nil } }
and `params["user"]` no longer returns the original parameter value.
|
|\ \ \ \ \
| |_|_|_|/
|/| | | |
| | | | |
| | | | | |
Edouard-chin/integration-testing-deprecated-methods
Removed reference to unexisting methods:
|
| |/ / /
| | | |
| | | |
| | | | |
`get/post_via_redirect`, `xhr` and his alias `xml_http_request` were respectively removed in 092033d59f7e2b248f6c6ab6c0b67339c5e9f2df and eb52e5d42fbdc9288925a402dcb3c5664d1125b7
|
|\ \ \ \
| |/ / /
|/| | |
| | | |
| | | | |
ybakos/guides_layouts_and_rendering_minus_leading_underscore
Guides: Clarify partial local variable naming. [ci skip]
|
|/ / /
| | |
| | |
| | |
| | | |
Clarify the partial local variable name as being the same as the name
of the partial, minus the _leading_ underscore.
|
|\ \ \
| | | |
| | | | |
Fix typo in `AC::UnfilteredParameters` message [ci skip]
|
|/ / /
| | |
| | |
| | | |
Ref: https://github.com/rails/rails/blob/33b596709388cc48d90ab6d1de99d7bd6e85f916/actionpack/lib/action_controller/metal/strong_parameters.rb#L52..L56
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
y-yagi/do_not_use_private_api_in_bug_report_templates
Do not use private API in bug report templates
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
`ActiveRecord::Migrator` is private API.
https://github.com/rails/rails/blob/bb9d6eb094f29bb94ef1f26aa44f145f17b973fe/activerecord/lib/active_record/migration.rb#L977
Therefore, it is not good to use it in bug report templates.
Instead, should use the public API `ActiveRecord::Migration#migrate`.
|
|\ \ \ \
| | | | |
| | | | | |
Fix hash conditions documentation
|
| | | | | |
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
Remove unused variable
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This fixes the following warnings:
```
activerecord/test/cases/relation_test.rb:231: warning: assigned but unused variable - authors_with_commented_posts
```
|
|\ \ \ \
| | | | |
| | | | | |
Avoid begin/rescue in fixture quoting
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Scalar values like arrays and hashes can't be inserted
directly into table. Previously, the way to determine if
the value is scalar was to try quoting it. If `quote` raised
with an error than the value has to be converted to YAML.
This flow is not very obvious. Ideally we could have
a `quotable?` method in the connection, but I think
that we can avoid begin/rescue block by simply checking
if the value is Array or Hash.
https://github.com/rails/rails/commit/aa31d21f5f4fc4d679e74a60f9df9706da7de373
|
|\ \ \ \ \
| |/ / / /
|/| | | | |
Keep INNER JOIN when merging relations
|
| | |_|/
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Doing `Author.joins(:posts).merge(Post.joins(:comments))` does this
`SELECT ... INNER JOIN posts ON... LEFT OUTER JOIN comments ON...`
instead of doing
`SELECT ... INNER JOIN posts ON... INNER JOIN comments ON...`.
This behavior is unexpected and makes little sense as, basically, doing
`Post.joins(:comments)` means I want posts that have comments. Turning
it to a LEFT JOIN means I want posts and join the comments data, if
any.
We can see this problem directly in the existing tests.
The test_relation_merging_with_merged_joins_as_symbols only does joins
from posts to comments to ratings while the ratings fixture isn't
loaded, but the count is non-zero.
|
|/ / /
| | |
| | |
| | | |
Fixes #29512.
|
|\ \ \
| | | |
| | | | |
Fix ActiveRecord::Persistence#touch with locking
|
|/ / /
| | |
| | |
| | |
| | |
| | | |
`ActiveRecord::Persistence#touch` does not work well when optimistic
locking enabled and `locking_column`, without default value, is null in
the database.
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
bogdanvlviv/fix-destroy-with-locking_column-value-null
Fix destroy with locking_column value null
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | | |
Fix destroying existing object does not work well when optimistic
locking enabled and `locking column` is null in the database.
Follow 22a822e5813ef7ea9ab6dbbb670a363899a083af, #28914
|
|\ \ \
| | | |
| | | | |
Updates README on rails internal dev tools
|