| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
`cache.fetch(['foo'])` and `cache.fetch('foo')` should generate
different cache keys as they are not equivalents.
[related #8615]
[related #8614]
|
|\
| |
| | |
Add spaces to the log message of ActionController:: LogSubscriber#deep_munge
|
|/ |
|
|
|
|
|
|
| |
The 'cow' => 'kine' inflection has gone with c300dca9 but it should
not be removed from the tested irregularities since it ensures that
inflections work with words that do not begin with the same letters.
|
|\
| |
| | |
Refactor actionpack ActionDispatch::Request tests
|
| | |
|
|\ \
| |/
|/| |
Fix PG warnings.
|
|/
|
|
|
| |
- unused variable in PG Adapter.
- Ambiguous argument warning from range_test for use - to + Infinity range without brackets.
|
|\
| |
| | |
Remove unnecessary db call when replacing.
|
| |
| |
| |
| |
| |
| |
| | |
When replacing a has_many association with the same one, there is no
need to do a round-trip to the db to create/and drop a new transaction.
[fixes #14220]
|
|\ \
| | |
| | | |
Replace map.flatten(1) with flat_map
|
|/ / |
|
| | |
|
|\ \
| | |
| | | |
Avoid namespacing routes inside engines
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Since #11544, invoking the controller generator, any generated route is
namespaced according to the class_path method. Since a mountable plugin
is namespaced, creating a controller inside would generate a namespaced
route based on the engine's name.
The controller generator now relies on regular_class_path which does not
contain the class hierarchy but the given path.
Fixes #14079.
|
| | |
| | |
| | |
| | |
| | |
| | | |
when an exception happens in an action before the response has been
committed, then we should re-raise the exception in the main thread.
This lets us reuse the existing exception handling.
|
| |/
|/|
| |
| |
| |
| | |
detect the type of controller we're testing and return the right type of
response based on that controller. This allows us to stop doing the
weird sleep thing.
|
|\ \
| | |
| | | |
use `secrets.secret_key_base` instead of `config.secret_key_base`
|
| | |
| | |
| | |
| | | |
use secrets.yml instead of secret_token.rb
|
| | |
| | |
| | |
| | | |
callback and an error happens
|
|\ \ \
| |/ /
|/| | |
Correct `select` examples and doc, ref [522c0fd] [ci skip]
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
Fix a few typos. #present_in has been changed to #presence_in through
commit d61baee5.
|
|\ \ \
| | | |
| | | | |
`includes` uses SQL parsing when String joins are involved.
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This is a partial revert of 22b3481ba2aa55fad1f9a5db94072312b345fb55.
The current implementation of `references_eager_loaded_tables?` needs to know
every table involved in the query. With the current API this is not possible
without SQL parsing.
While a2dab46cae35a06fd5c5500037177492a047c252 deprecated SQL parsing for `includes`.
It did not issue deprecation warnings when String joins are involved. This resulted
in a breaking change after the deprecated behavior was removed (22b3481ba2aa55fad1f9a5db94072312b345fb55).
We will need to rethink the usage of `includes`, `preload` and `eager_load` but for now,
this brings back the old *working* behavior.
|
|\ \ \
| |/ /
|/| | |
Use secrets.yml instead of secret_token.rb in the docs
|
|/ /
| |
| |
| | |
controller guide
|
|\ \
| | |
| | | |
Fix a bug affecting validations of enum attributes
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This fixes a bug where any enum attribute of a model
would be evaluated always as 0 when calling the
database on validations.
This fix converts the value of the enum attribute
to its integer value rather than the string before
building the relation as the bug occured when the
string finally gets converted to integer using
string.to_i which converts it to 0.
[Vilius Luneckas, Ahmed AbouElhamayed]
|
|\ \
| | |
| | | |
fix test cases
|
| | | |
|
| | |
| | |
| | |
| | | |
Active Record is specifically for databases. Refs #12101.
|
|\ \ \
| | | |
| | | | |
Cache#fetch_multi returns a Hash instead of an Array
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | | |
The current implementation of `fetch_multi` returns an array and has no
means to easily backtrack which names yielded which results. By changing
the return value to a Hash we retain the name information. Hash#values
can be used on the response if only the values are needed.
|
|\ \ \
| | | |
| | | | |
[skip ci] Fixes docs typo in nested resource path helpers
|
| | | | |
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Now that Validator #setup is called from the initializer, we need a
reference to the model's class to be passed in to allow the validators
to continue functioning when used at the instance level.
Closes #14134.
|
|/ / /
| | |
| | |
| | |
| | | |
Goes along with fea1cdcff4d50d302d8e8532432c3ab107ff816d and
59ec4562a2e70df455b2e44a67c340fa5254e26e.
|
|\ \ \
| | | |
| | | | |
Fix controller test not resetting @_url_options
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Commit 4f2cd3e9 introduced a bug by reordering the call to
`@controller.recycle!` above the call to `build_request_uri`. The
impact of this was that the `@_url_options` cache ends up not being
reset between building a request URI (occurring within the test
controller) and the firing of the actual request.
We encountered this bug because we had the following setup:
class MinimumReproducibleController < ActionController::Base
before_filter { @param = 'param' }
def index
render text: url_for(params)
end
def default_url_options
{ custom_opt: @param }
end
end
def test_index
get :index # builds url, then fires actual request
end
The first step in `get :index` in the test suite would populate the
@_url_options cache. The subsequent call to `url_for` inside of the
controller action would then utilize the uncleared cache, thus never
calling the now-updated default_url_options.
This commit fixes this bug calling recycle! twice, and removes a call
to set response_body, which should no longer be needed since we're
recycling the request object explicitly.
|
| | | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Benchmark:
Benchmark.ips do |x|
x.report("home") { "home".underscore }
x.report("Home") { "Home".underscore }
x.report("homeBase") { "homeBase".underscore }
x.report("home::base") { "home::base".underscore }
end
Before:
Calculating -------------------------------------
home 2598 i/100ms
Home 2463 i/100ms
homeBase 2300 i/100ms
home::base 2086 i/100ms
-------------------------------------------------
home 28522.3 (±14.7%) i/s - 140292 in 5.065102s
Home 29165.8 (±14.9%) i/s - 140391 in 5.000475s
homeBase 26218.5 (±7.1%) i/s - 131100 in 5.030485s
home::base 27712.3 (±5.9%) i/s - 139762 in 5.064077s
After:
Calculating -------------------------------------
home 23163 i/100ms
Home 2432 i/100ms
homeBase 2160 i/100ms
home::base 2265 i/100ms
-------------------------------------------------
home 1501614.8 (±10.2%) i/s - 7412160 in 5.009540s
Home 28754.0 (±8.5%) i/s - 143488 in 5.033886s
homeBase 25331.1 (±5.6%) i/s - 127440 in 5.047940s
home::base 27089.9 (±5.5%) i/s - 135900 in 5.033516s
|
| | | |
| | | |
| | | |
| | | | |
We should not rely on to_s to return the name of the class
|
|\ \ \ \
| |/ / /
|/| | | |
[ci skip] Update list of files extensions in rake notes guide
|
|/ / / |
|
|\ \ \
| | | |
| | | | |
[ci skip] Move association class method notes
|
| | | |
| | | |
| | | |
| | | | |
Make explanation of association class methods clearer by moving notes to beginning of each example section.
|
| | | | |
|
| | | | |
|