| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
[ci skip]
|
|
|
|
|
| |
[ci skip]
Follow #26050
|
|
|
|
|
|
| |
This reverts commit 671eb742eec77b5c8281ac2a2e3976ef32a6e424.
This is not a change we would like moving forward.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- CollectionAssociation#select was removed in
https://github.com/rails/rails/pull/25989 in favor of
QueryMethods#select but it caused a regression when passing arguments
to select and a block.
- This used to work earlier in Rails 4.2 and Rails 5. See gist
https://gist.github.com/prathamesh-sonpatki/a7df922273473a77dfbc742a4be4b618.
- This commit restores the behavior of Rails 4.2 and Rails 5.0.0 to
allow passing arguments and block at the same time but also deprecates
it.
- Because, these arguments do not have any effect on the output of
select when select is used with a block.
- Updated documentation to remove the example passing arguments and
block at the same time to `CollectionProxy#select`.
|
| |
|
| |
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| | |
`ActiveRecord::Type::Value`
This is now defined in
`ActiveModel::Type::Value` (`ActiveRecord::Type::Value` still exists but
it's effectively an alias)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Query cache doesn't type cast bind parameters since it isn't
actually querying the database, so it can't pass those values in. Type
casting in the query cache method would cause the values to be type cast
twice in the case that there is a cache miss (since the methods it calls
will type cast *again*). If logging is disabled, then adding the type
cast code to the query cache method will needlessly typecast the values
(since the only reason those values are type cast is for display in the
logs).
Fixes #26828.
|
| | |
|
| |
| |
| |
| | |
This commit fixes the generated HTML of the two code examples.
|
| |
| |
| |
| | |
Follow up to #20018.
|
|\ \
| | |
| | |
| | |
| | | |
rutaka-n/raise_record_not_found_with_correct_params
initialize errors with name of class and other params
|
| | | |
|
|\ \ \
| | | |
| | | | |
Quote table name properly
|
| | | |
| | | |
| | | |
| | | | |
If does not quote table name properly, invalid SQL is generated.
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | | |
MySQL 8.0.0-dmr `SUB_PART` column of `information_schema.statistics`
changed to varbinary(12), which is bigint(3) in MySQL 5.6.
Addresses #26774
|
|\ \ \
| | | |
| | | |
| | | | |
Fix case insensitive check for text column in pg
|
| | | |
| | | |
| | | |
| | | | |
There's no 'text to text' casting in the cast table so the feature detection fails.
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Follow up to #26735.
If `table_options` returns `{ comment: nil }`, `create_table` line is
broken.
Example:
```ruby
create_table "accounts", force: :cascade, do |t|
```
|
| | | |
| | | |
| | | |
| | | | |
`migration_keys` includes `name` but `name` is not a column option.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
```ruby
# Before
t.index ["firm_id", "type", "rating"], name: "company_index", order: {"rating"=>:desc}, using: :btree
# After
t.index ["firm_id", "type", "rating"], name: "company_index", order: { rating: :desc }, using: :btree
```
|
|\ \ \ \
| | | | |
| | | | | |
Prevent to create blank comment
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Currently blank comment does not dump to `db/schema.rb`. But created it
even if specified blank.
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Fix database runtimes on production log
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Rails default production configuration establishes "info" as log level.
Due to the changes included on commit
191facc857bb4fb52078fb544c6bc1613a81cc80, db runtimes were not being
collected if the log level was different than "debug", and 0.0 ms was
the runtime reported on production logs.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Use attribute_names over column_names
|
| | |/ / / /
| |/| | | | |
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
Avoid bumping the class serial when invoking executor
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
ActiveModel::Type)
Some code was previously referring to ActiveModel::Type::*. This could
cause issues in the future if any of the ActiveRecord::Type classes were
overridden in the future.
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
Fix issue with `cache_key` when the named timestamp column has value nil
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
- When the named timestamp column is nil, we should just return the
cache_key with model name and id similar to the behavior of implicit
timestamp columns.
- Fixed one of the issue mentioned in https://github.com/rails/rails/issues/26417.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Zlib is used to generate the advisory lock since commit 2c2a8755460 .
Using the Migrator fails since then, when it is called without the rails context:
NameError: uninitialized constant ActiveRecord::Migrator::Zlib
This patch fixes the above error.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Preserve cached queries name in AS notifications
|
| | |_|_|/ /
| |/| | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This was caused by 6d0d83a33f59d9415685852cf77818c41e2e2700. While the
bug it's trying to fix is handled if the association is loaded in an
after_(create|save) callback, it doesn't handle any cases that load the
association before the persistence takes place (validation, or before_*
filters). Instead of caring about the timing of persistence, we can just
ensure that we're not double adding the record instead.
The test from that commit actually broke, but it was not because the bug
has been re-introduced. It was because `Bulb` in our test suite is doing
funky things that look like STI but isn't STI, so equality comparison
didn't happen as the loaded model was of a different class.
Fixes #26661.
|
|\ \ \ \ \ \
| |_|_|_|_|/
|/| | | | | |
[ci skip] Use right format text
|
| | | | | | |
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Fix doc format for `RecordFetchWarning` [ci skip]
|
| | | | | | | |
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This is not as good a solution as actually hashing both values, but Ruby
doesn't expose that capability other than allocating the array. Unless we were
to do something silly like have a thread local array that is re-used, I don't
see any other way to do this without allocation. This solution may not be
perfect, but it should reasonably avoid collisions to the extent that we need.
|
|/ / / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Per discussion in pull request #26622:
"Let's change it to PG::Error. The more specific classes mentioned are
subclasses, and the fact the raised exception is a PG::UndefinedColumn
doesn't change the fact that it's also a PG::Error." - matthewd
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
[ci skip] Clarify Postgresql Documentation
|
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
This clarifies the object that +ActiveRecord::Base.connection.execute+
will return when using Postgresql.
|
|/ / / / / /
| | | | | |
| | | | | | |
Noticed that the `validate: false` option for `ActiveRecord::Persistence#save` and `#save!` were not formatted as code like the other examples in the documentation.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Test: JSON attribute value nil can be used in where(attr: nil)
Add changelog entry
|