| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Fixes #14383.
|
|\
| |
| | |
Update callbacks executed on AR::Base#touch [skip ci]
|
| |
| |
| |
| |
| | |
As of https://github.com/rails/rails/pull/12031 after_commit and
after_rollback are also executed
|
|/
|
|
| |
mitigates #14323
|
| |
|
| |
|
|\
| |
| | |
Make select_all on query cache accept a Relation without binds.
|
| |
| |
| |
| |
| | |
[fixes #14361]
[related #13886]
|
| | |
|
|/
|
|
| |
`exists?`
|
|
|
|
| |
please pass the id of the AR object by calling `.id` on the model first.
|
|
|
|
|
| |
Pass the id of the object to the method by calling `.id` on the AR
object.
|
|
|
|
|
|
| |
Apparently we've been using a buggy feature for the past 6 years:
https://bugs.ruby-lang.org/issues/9593
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Two bits of example code use sqlite as an adapter, which doesn't exist.
Using the code verbatim will raise a LoadError exception:
ActiveRecord::Base.establish_connection(
"adapter" => "sqlite",
"database" => "db.sqlite"
)
# => LoadError: Could not load 'active_record/connection_adapters/sqlite_adapter'...
Considering this is code a lot of people new to Rails might be running,
it's especially confusing.
Closes #14367 [ci skip]
|
|\
| |
| | |
Enhance docs for update_attribute [skip ci]
|
| | |
|
| |
| |
| |
| |
| | |
Avoid rounding problems with `.usec` method rounding the seconds when the
field doesn't persist the `.usec` piece.
|
|/ |
|
|\
| |
| |
| |
| |
| |
| | |
Only use BINARY for mysql case sensitive uniqueness check when column has a case insensitive collation.
Conflicts:
activerecord/CHANGELOG.md
|
| |
| |
| |
| | |
case insensitive collation.
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
You might want to branch it to include this only for 5.6, but
passing these values to < 5.6 doesn't cause issues either.
|
| | |
|
|\ \
| | |
| | | |
Fixes STI when 2+ levels deep.
|
| | |
| | |
| | |
| | |
| | |
| | | |
PR #14052 Added a regression where it was only looking for methods in one
level up, So when the method was defined in a 2+ levels up the
inheritance chain, the method was not found as defined.
|
| | | |
|
|/ /
| |
| |
| | |
citext makes it possible to use AR Hash finders for case-insensitive matching as sql UPPER/LOWER functions are not needed.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | | |
Save has_one associations only if record has changes
Conflicts:
activerecord/CHANGELOG.md
|
| | |
| | |
| | |
| | |
| | |
| | | |
Prevents save related callbacks such as `after_commit` being
triggered when `has_one` objects are already persisted and have no
changes.
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | | |
This will avoid the confusing flunk logic
|
| | | |
|
| | | |
|
| | | |
|
|\ \ \
| | | |
| | | | |
Replace additional instances of map.flatten with flat_map
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
Conflicts:
guides/source/4_1_release_notes.md
|
| | | | |
| | | | |
| | | | |
| | | | | |
Thank you @bquorning
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
[ci-skip]
Closes rails/rails#14294
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This method return `Gem::Version.new(Rails.version)`, suggesting a more
reliable way to perform version comparison.
Example:
Rails.version #=> "4.1.2"
Rails.gem_version #=> #<Gem::Version "4.1.2">
Rails.version > "4.1.10" #=> false
Rails.gem_version > Gem::Version.new("4.1.10") #=> true
Gem::Requirement.new("~> 4.1.2") =~ Rails.gem_version #=> true
This was originally introduced as `.version` by @charliesome in #8501
but got reverted in #10002 since it was not backward compatible.
Also, updating template for `rake update_versions`.
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This actually not an issue fixing ; the changelog is referring to the
introducing pull request itself.
|
| | | | |
| | | | |
| | | | |
| | | | | |
origin: https://github.com/rails/rails/commit/f6aeb8b1a3687c8523e4a56309fe3736011b2935#commitcomment-5569649
|
| | | | |
| | | | |
| | | | |
| | | | | |
This is a result of the discussion at https://github.com/rails/rails/pull/14263/files#r10291489
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Follow up of #10732 - Allow string hash values on AR order method
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This behavior has almost no performance impact:
String not allowed 66.910000 0.030000 66.940000 ( 67.024976)
String allowed 69.360000 0.030000 69.390000 ( 69.503096)
Benchmarked with http://git.io/Y0YuRw.
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
Make exists? use bound values.
|
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When we build a query with an inline value that is a numeric (e.g.
because it's out of range for an int4) PostgreSQL doesn't use an index
on the column, since it's now comparing numerics and not int4s.
This leads to a _very_ slow query.
When we use bound parameters instead of inline values PostgreSQL
raises numeric_value_out_of_range since no automatic coercion happens.
|