| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixes https://github.com/rails/rails/issues/22171
Time specified in ISO 8601 format without `Z` should be considered as local
time, yet until now it was treated as UTC.
This commit fixes problem by parsing time using timezone specified in
application config.
The downside of this solution is performance hit (`Time.zone.parse` is ~ 1.6x
slower than `Time.parse`), so maybe there's a better solution.
|
|\
| |
| | |
Allow to store .keep file in cache directory
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When `rails console` or `rails server` are used along with a logger set to output to `STDOUT` then the contents will show up twice. This happens because the logger is extended with `ActiveSupportLogger.broadcast` with a destination of STDOUT even if it is already outputting to `STDOUT`.
Previously PR #22592 attempted to fix this issue, but it ended up causing NoMethodErrors. A better approach than relying on adding a method and flow control is to inspect the log destination directly. For this `ActiveSupport::Logger.logger_outputs_to?` was introduced
```ruby
logger = Logger.new(STDOUT)
ActiveSupport::Logger.logger_outputs_to?(logger, STDOUT)
# => true
```
To accomplish this we must look inside of an instance variable of standard lib's Logger `@logdev`. There is a related Ruby proposal to expose this method in a standard way: https://bugs.ruby-lang.org/issues/11955
|
| |
| |
| |
| | |
This reverts related commits due to #22917.
|
|\ \
| | |
| | |
| | |
| | | |
rthbound/adds-exception-object-to-instrumenter-payload
Adds exception object to instrumenter's payload
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- Adds new key/value pair to payload when an exception is raised
e.g. `:exception_object=> #<RuntimeError: FAIL>`
- Updates relevant test
- Adds CHANGELOG entry
|
|\ \ \
| |/ /
|/| | |
Support extended grapheme clusters and UAX 29
|
| | |
| | |
| | |
| | | |
We how have tests for every rule in UAX 29.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
http://www.unicode.org/reports/tr29/tr29-21.html is the version of UAX
29 that corresponds to Unicode 6.2.0. Unicode.unpack_graphemes now
implements all the rules listed there, including the ones for extended
grapheme clusters.
I added a new optional test,
test/multibyte_grapheme_break_conformance.rb, that is heavily based on
test/multibyte_normalization_conformance.rb, which runs the Unicode test
suite.
|
| | |
| | |
| | |
| | |
| | | |
This test is only testing normalization behavior, not any other Unicode
behaviors.
|
| | | |
|
|\ \ \
| | | |
| | | | |
Add test coverage for ActiveSupport::NumericWithFormat#to_formatted_s
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | | |
Add support for Petabyte and Exabyte in number to human size
|
| |/ / / |
|
|/ / /
| | |
| | |
| | |
| | |
| | |
| | | |
- uses instance defined level if no custom local log level defined
- Keeps track of local log level per [ thread + object-instance ]
- prevents memory leakage by removing local level hash key/value on #silence method exit
- avoids the use of Thread local variables
|
| | |
| | |
| | |
| | |
| | | |
Suppress warning (warning: ambiguous first argument; put
parentheses or a space even after `/' operator)
|
| | |
| | |
| | |
| | |
| | | |
Also, added a test case to make sure that the default deprecation horizon is
always bigger than the current Rails version.
|
|\ \ \
| | | |
| | | | |
Fix cache fetch miss notification order
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Fixes https://github.com/rails/rails/issues/22477.
When I improved the caching instrumentation in
edd33c08d98723ae9bb89cf7f019277117ed6414, I inadvertently changed the
order of AS notifications when there is a cache miss.
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This test needs to have a require for the Listen gem or else it returns
an error when run by itself or with a certain order in the Active
Support tests. We use `silence_warnings` because Listen has some
warnings about private methods. It's already silenced when it's required
in Active Support EventedFileUpdateChecker.
```
1) Error:
EventedFileUpdateCheckerTest#test_should_not_execute_the_block_if_no_paths_are_given:
NameError: uninitialized constant EventedFileUpdateCheckerTest::Listen
test/evented_file_update_checker_test.rb:21:in `teardown'
```
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The test was was in here twice so we were seeing this error:
```
activesupport/test/caching_test.rb:658:
warning: method redefined; discarding old test_local_cache_of_read_nil
activesupport/test/caching_test.rb:634:
warning: previous definition of test_local_cache_of_read_nil was here
```
|
| | | | |
|
| | | |
| | | |
| | | |
| | | | |
class and module variables that live per-thread
|
|\ \ \ \
| | | | |
| | | | | |
Add Logger option to disable message broadcasts
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When setting the Rails logger to log to STDOUT, it would broadcast the
log twice in development. This adds a setting that will prevent messages
from being broadcast to multiple logs, while still allowing calls to
`#close`, `#level=`, `#progname=`, and `#formatter=` to be broadcasted.
Fixes #14769, #11415
|
| | | | | |
|
|/ / / / |
|
| | | |
| | | |
| | | |
| | | | |
Better English.
|
|\ \ \ \
| | | | |
| | | | | |
Subscribing to notifications while inside the said instrumented section
|
| |/ / /
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
The issue is that on the exit from Instrumenter#instrument section,
an Evented listener will run into an error because its thread local
(Thread.current[:_timestack]) has not been set up by the #start
method (this obviously happens because the Evented listeners didn't
exist at the time, since no subscribtion to that section was made yet).
Note: support for subscribing to instrumented sections, while being
inside those instrumented sections, might be removed in the future.
Maybe fixes #21873.
|
|/ / / |
|
| | |
| | |
| | |
| | |
| | | |
The failure have returned, so disabling the tests again. (The upgrade is
fine to keep.)
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In listen 3.0.4 and below, the `#stop` method on the notification
backends are a no-op, meaning that we are leaking them per test. This
ended up triggering another bug in Ruby that causes our builds to fail
randomly on CI.
listen bug: https://github.com/guard/listen/issues/353
ruby bug: https://bugs.ruby-lang.org/issues/11744
|
| | |
| | |
| | |
| | |
| | |
| | | |
There is a known issue with the listen tests that casuses files to be
incorrectly GC'ed even when they are still in-use. The current is to
only run them in isolation to avoid randomly failing our test suite.
|
| | |
| | |
| | |
| | | |
Looking at the history of this file it seems this code was never actually used.
|
| | | |
|
|\ \ \
| |_|/
|/| | |
send normalized keys to the cache backends so they do not need to man…
|
| | |
| | |
| | |
| | | |
this themselves
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Before
./Users/Juan/dev/rails/activesupport/test/file_update_checker_shared_tests.rb:20: warning: instance variable @tmpdir not initialized
After
No warnings
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|