| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
delegation
Following off of https://github.com/rails/rails/issues/15945, I realized that super
needs to be the first thing that is called in an AbstractModel's inherited method.
I was receiving errors within the inherited method of time_zone_conversion, so I tested
locally by moving super to the top of the method declaration. All exceptions went away.
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Use Regexp#match? rather than Regexp#===
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Follow up to 99cf7558000090668b137085bfe6bcc06c4571dc.
|
| |_|_|/ /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Regexp#match? should be considered to be part of the Ruby core library. We are
emulating it for < 2.4, but not having to require the extension is part of the
illusion of the emulation.
|
|/ / / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This executor currently relies on `ActiveRecord::Base.connection` not
changing between `prepare` and `complete`. If something else returns
the current ActiveRecord connection to the pool early then this
`complete` call will fail to clear the correct query cache and restore
the original `query_cache_enabled` status.
This has for example been happening in Sidekiq:
https://github.com/mperham/sidekiq/pull/3166
We can just keep track of the connection as part of the exector state.
|
|\ \ \ \
| |_|_|/
|/| | |
| | | |
| | | | |
kamipo/polymorphic_reflection_is_not_using_methods_from_through_reflection
`PolymorphicReflection` is not using the methods from `ThroughReflection`
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
`ThroughReflection` initializes `@delegate_reflection` and delegate all
public methods to `delegate_reflection`. But `PolymorphicReflection`
does not initialize `@delegate_reflection`.
It is enough to inherit `AbstractReflection` (using `alias_candidate`
only).
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
* Put a blank line after :call-seq: otherwise it will think the whole test
is the call seq.
* Improve some text.
* Use some rdoc formatting.
* Restores the documentation of table_name_prefix.
[ci skip]
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
[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.
|