| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
| |
- The "/" was removed in 40bdbce191ad90dfea43dad51fac5c4726b89392 during
refactoring. It may cause regression since looks like was added
intentionaly because it is possible that a name of any another gem
can start with /rails/, so slash was added to ensure that it is "rails"
gem.
I would like to backport this to `5-2-stable` too.
- Use `__dir__` instead of `__FILE__`. Follow up #29176.
|
|\
| |
| |
| |
| | |
bogdanvlviv/improve-pattern-filenames-to-catch-more-style-offences
Allow rubocop check more files
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This commit fix pattern of filenames for `CustomCops/AssertNot` and
`CustomCops/RefuteNot`.
rubocop should check every file under `test/`.
Related to #32441, #32605
|
|\ \
| |/
|/| |
`#ordinal` and `#ordinalize` now support I18n
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
now support translations through I18n.
{
fr: {
number: {
nth: {
ordinals: lambda do |_key, number:, **_options|
if number.to_i.abs == 1
'er'
else
'e'
end
end,
ordinalized: lambda do |_key, number:, **_options|
"#{number}#{ActiveSupport::Inflector.ordinal(number)}"
end
}
}
}
}
|
|\ \
| | |
| | | |
Add RuboCop for `assert_not` over `assert !`
|
| | |
| | |
| | |
| | |
| | | |
This autocorrects the violations after adding a custom cop in
3305c78dcd.
|
|\| | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Fixes #32610. Closes #32614.
Lua scripts in redis are *blocking*, meaning that no other client can
execute any commands while the script is running. See
https://redis.io/commands/eval#atomicity-of-scripts.
This results in the following exceptions once the number of keys is
sufficiently large:
BUSY Redis is busy running a script.
You can only call SCRIPT KILL or SHUTDOWN NOSAVE.
This commit replaces the lua-based implementation with one that uses
`SCAN` and `DEL` in batches. This doesn't block the server.
The primary limitation of `SCAN`, i.e. potential duplicate keys, is of
no consequence here, because `DEL` ignores keys that do not exist.
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Before this change missing timezone data for any of the time zones
defined in `ActiveSupport::Timezone::MAPPING` caused a `comparison of
NilClass with ActiveSupport::TimeZone failed` exception.
Attempting to get a timezone by passing a number/duration to `[]` or
calling `all` directly will try to sort sort the values of `zones_map`.
Those values are initialized by the return value of `create(zonename)`
which returns `nil` if `TZInfo` is unable to find the timezone
information.
In our case the exception was triggered by an outdated tzdata package
which did not include information for the "recently" added time zones.
Before 078421bacba178eac6a8e607b16f3f4511c5d72f `zones_map` only
returned the information that have been loaded into `@lazy_zone_map`
which ignored time zones for which the data could not be loaded, this
change restores the previous behaviour.
|
|\ \
| | |
| | | |
2.6 warning: passing splat keyword arguments as a single Hash
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Ruby 2.6.0 warns about this.
``` ruby -v
ruby 2.6.0dev (2018-04-04 trunk 63085) [x86_64-linux]
```
Before, see:
https://travis-ci.org/rails/rails/jobs/365740163#L1262-L1264
https://travis-ci.org/rails/rails/jobs/365944863#L2121-L2174
|
|/ / |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Namespace not working in RedisCacheStore#clear method. Bacause
namespace = merged_options(options)[namespace]
is always nil, Correct is
namespace = merged_options(options)[:namespace]
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
`SecureRandom.byes` was added in Ruby 2.4. So, 5-2-stable build is broken
because using `SecureRandom.bytes`.
https://travis-ci.org/rails/rails/jobs/365740667
Also, `SecureRandom.byes` seems to an undocumented method.
If need random binary strings, should use `SecureRandom.random_bytes`.
https://github.com/ruby/ruby/blob/trunk/lib/securerandom.rb
|
|\ \
| | |
| | | |
Don't doc _original_sum_with_required_identity
|
| | |
| | |
| | |
| | | |
It's not public API so don't document it.
|
|\ \ \
| |/ /
|/| | |
Fix ActiveSupport::Cache compression
|
| | |
| | |
| | |
| | | |
(See previous commit for a description of the issue)
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
On Rails 5.2, when compression is enabled (which it is by default),
the actual value being written to the underlying storage is actually
_bigger_ than the uncompressed raw value.
This is because the `@marshaled_value` instance variable (typically)
gets serialized with the entry object, which is then written to the
underlying storage, essentially double-storing every value (once
uncompressed, once possibly compressed).
This regression was introduced in #32254.
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
teddywing/active-support-cache-store--fix-end-tag-in-read-method-documentation
Cache::Store#read: Fix fixed-width end tag in docs
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
* Fix the ending `</tt>` tag for `:expires_in`. Otherwise, the "or" is
set in fixed-width also.
* Re-wrap paragraph to 80 columns.
[ci skip]
|
|\ \ \
| |/ /
|/| | |
Define callbacks on descendants.
|
| | |
| | |
| | |
| | | |
Addresses feedback from https://github.com/rails/rails/pull/31913#issuecomment-365983580
|
| | |
| | |
| | |
| | | |
We set callbacks on all descendants, so we need to make sure that they are also defined on all descendants as well.
|
| | |
| | |
| | |
| | |
| | | |
Because this class includes not only `assert_difference` but also tests
of other assertion methods.
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If you have a regular test that have a teardown block, and for any reason an exception get raised, ActiveSupport will not run subsequent after_teardown method provided by other module or gems.
One of them being the ActiveRecord::TestFixtures which won't rollback the transation when the test ends making all subsequent test to be in a weird state.
The default implementation of minitest is to run all teardown methods from the user's test, rescue all exceptions, run all after_teardown methods provided by libraries and finally re-raise the exception that happened in the user's teardown method.
Rails should do the same.
|
|\ \ \
| | | |
| | | | |
Add custom RuboCop for `assert_not` over `refute`
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
73e7aab behaved as expected on codeship, failing the build with
exactly these RuboCop violations. Hopefully `rubocop -a` will
have been enough to get a passing build!
|
| | | | |
|
|/ / /
| | |
| | |
| | | |
[ci skip]
|
|\ \ \
| | | |
| | | | |
Change temporary file name extension while editing encrypted file.
|
| | | |
| | | |
| | | |
| | | | |
To have syntax highlighting in an editor try to preserve original extension of edited file.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This prevents duplication of code.
Prevent duplication of tests by moving them to `DateAndTimeBehavior`.
Related to #32185.
|
| | | | |
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Add `before?` and `after?` methods to date and time classes
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Equality comparisons between dates and times can take some extra time to
comprehend. I tend to think of a date or time as "before" or "after"
another date or time, but I naturally read `<` and `>` as "less than"
and "greater than." This change seeks to make date/time comparisons more
human readable.
|
| | | | | |
|
|\ \ \ \ \
| | | | | |
| | | | | | |
Fix Cache `read_multi` with local_cache bug, should returns raw value, not `ActiveSupport::Cache::Entry` instance.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
It should returns raw value, not instance of `ActiveSupport::Cache::Entry`.
|
| | | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
since revision 62897 https://github.com/ruby/ruby/commit/234a30459cdae6aa7da6e28a1082d9c11f315696
|
|/ / / / / |
|
| |/ / /
|/| | | |
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When upgrading to Rails 5.2 we're seeing
`ActiveSupport::Cache::Entry#compress` and
`ActiveSupport::Cache::Entry#should_compress?` as the highest usage of
our CPU. At least some part of this is coming from the fact that objects
are being marshaled multiple times. This memoizes the marshaled value to
eliminate half the problem.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
We only add the header when releasing to avoid some conflicts.
[ci skip]
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Since `Redis#call` duck types as a Proc, we'd call `#call` on it,
thinking it's a Proc. Fixed by check for the Proc explicitly instead of
duck typing on `#call`.
References #32233
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
- Add missing dots.
- Remove reference to itself on GitHub.
Usually, we add references to fixed issues only in a changelog.
Follow up #32223
|