| Commit message (Collapse) | Author | Age | Files | Lines |
|\
| |
| | |
`rename_table` should rename primary key index name
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Formerly, `rename_table` only renamed primary key index name if the
column's data type was sequential (serial, etc in PostgreSQL). The
problem with that is tables whose primary keys had other data types
(e.g. UUID) maintained the old primary key name. So for example,
if the `cats` table has a UUID primary key, and the table is renamed to
`felines`, the primary key index will still be called `cats_pkey`
instead of `felines_pkey`. This PR corrects it.
|
|/
|
|
|
|
|
|
|
|
|
|
| |
* Allow a default value to be declared for class_attribute
* Convert to using class_attribute default rather than explicit setter
* Removed instance_accessor option by mistake
* False is a valid default value
* Documentation
|
|\
| |
| |
| |
| | |
kamipo/default_env_fall_back_to_default_env_when_rails_env_or_rack_env_is_empty_string
`DEFAULT_ENV` falls back to `default_env` when `RAILS_ENV` or `RACK_ENV` is an empty string
|
| |
| |
| |
| |
| |
| | |
an empty string
Follow up of #27399.
|
| |
| |
| |
| |
| |
| |
| |
| | |
in `ActiveRecord::Calculations`
`select`, `count`, and `sum` in `Relation` are also `Enumerable` method
that can be passed block. `select` with block already doesn't take
arguments since 4fc3366. This is follow up of that.
|
|\ \
| | |
| | |
| | |
| | | |
kamipo/remove_returning_true_in_internal_callbacks
Remove returning true in internal callbacks
|
| | |
| | |
| | |
| | |
| | | |
`display_deprecation_warning_for_false_terminator` was removed since
3a25cdc.
|
|\ \ \
| | | |
| | | | |
Prevent extra `current_database` query for `encoding`/`collation`/`ctype`
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
kamipo/refactor_enum_to_use_value_instead_of_label
Refactor enum to use `value` instead of `label` in the scope
|
| | | | | |
|
|\ \ \ \ \
| |_|/ / /
|/| | | | |
Delegate `ast` and `locked` to `arel` explicitly
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Currently `ast` and `locked` are used in the internal but delegating to
`arel` is depend on `method_missing`. If a model class is defined these
methods, `select_all` will be broken.
It should be delegated to `arel` explicitly.
|
|\ \ \ \
| | | | |
| | | | | |
Enable extending even if scope returns nil
|
| | | | | |
|
| | | | |
| | | | |
| | | | |
| | | | | |
Using `Association#interpolate` was removed since #11251.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Doc updates for ActiveRecord::Batches
|
| | | | | |
| | | | | |
| | | | | | |
[ci skip]
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
[ci skip] Changed sentence formation for ActiveRecordRelation#update
|
| | |/ / /
| |/| | | |
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Define path with __dir__
|
| | |/ / /
| |/| | |
| | | | |
| | | | |
| | | | |
| | | | | |
".. with __dir__ we can restore order in the Universe." - by @fxn
Related to 5b8738c2df003a96f0e490c43559747618d10f5f
|
|\ \ \ \ \
| | | | | |
| | | | | | |
ActiveRecord initialization optimizations
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This change preserves the speedup made in a24912cb1d3 (by avoiding
the wasted shallow dup of @attributes) while ensuring that the
performance of #deep_dup won't be tied to the performance of #initialize
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Memoize the #column_defaults class property, as ActiveRecord does
for other properties in this module.
This change addresses slowness in ActiveRecord initialization
introduced starting in Rails 5.0. This method's performance has not
changed with Rails 5, but it is now called much more frequently than
before: every time an STI model is instantiated.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This change addresses slowness in ActiveRecord initialization
introduced starting in Rails 5.0.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Skip the call to #dup, since it does a shallow copy of attributes,
which is wasted effort, since #deep_dup then replaces that
shallow copy with a #deep_dup of the given attributes.
This change addresses slowness in ActiveRecord initialization
introduced starting in Rails 5.0.
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | | |
Add a Monitor to ModelSchema#load_schema
|
| |/ / / / /
| | | | | |
| | | | | |
| | | | | | |
[Vikrant Chaudhary, David Abdemoulaie, Matthew Draper]
|
|\ \ \ \ \ \
| |/ / / / /
|/| | | | | |
Fix crashing on circular left join references with scoping
|
| | |_|_|/
| |/| | |
| | | | |
| | | | | |
Follow up of #25702.
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
Both reference id and type should be `NOT NULL` if `null: false` is specified
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
This is a regression due to #28282.
Fixes #29136.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Adding Foreing Key - Don't worry about building the identifier if name is already present.
|
| | |_|/ /
| |/| | |
| | | | |
| | | | | |
present.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Remove unused `JoinPart#name`
|
| | |_|/ /
| |/| | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Remove unused `left_joins_values` generation
|
| |/ / / /
| | | | |
| | | | |
| | | | | |
This was added at #22125 but `left_joins_values` is never used.
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Refactor making join constraints
|
| |/ / / /
| | | | |
| | | | |
| | | | |
| | | | | |
The only difference between `make_inner_joins` and
`make_left_outer_joins` is the `join_type`.
|
|/ / / / |
|
|\ \ \ \
| | | | |
| | | | | |
Make `VALID_DIRECTIONS` to `Set`
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
```ruby
require "benchmark/ips"
require "set"
array = [:asc, :desc, :ASC, :DESC, "asc", "desc", "ASC", "DESC"]
set = array.to_set
item = "DESC"
Benchmark.ips do |x|
x.report "array" do
array.include?(item)
end
x.report "set" do
set.include?(item)
end
end
```
```
% ruby array_vs_set.rb
Warming up --------------------------------------
array 188.441k i/100ms
set 229.531k i/100ms
Calculating -------------------------------------
array 3.508M (± 9.0%) i/s - 17.525M in 5.043058s
set 5.134M (± 7.6%) i/s - 25.707M in 5.038921s
```
|
|/ / / / |
|
| |/ /
|/| |
| | |
| | |
| | |
| | | |
This retains the existing behavior of
ActiveSupport::Cache.expand_cache_key (as used by etaging) where the
cache key includes the version.
|
| | | |
|