9ac526a21a
rails/rails@957a3e5 allowed the BACKTRACE env to unsilence backtraces in normals runs not just tests. However, the implementation achieves this by removing the silences in an initializer. This means that the state of backtrace silencer becomes cached by spring and the developer needs to reset spring every time they want to silence or unsilence the backtrace. It also means custom silencers added in an initializer need to be added after the :configure_backtrace_cleaner initializer or else they won't be un-silenced properly. Instead, let's teach Rails::BacktraceCleaner to unsilence the backtrace if the BACKTRACE variable is set. ActiveSupport::BacktraceCleaner#clean already allows this by passing nil as the second argument, which just filters but does not silence the backtrace. So, in Rails::BacktraceCleaner#clean we can call super with nil in the second argument if the BACKTRACE variable is present. That way we do not need to remove the silencers in an initializer, and we don't have to reset spring to silence the backtrace. |
||
---|---|---|
.. | ||
application | ||
command | ||
commands | ||
configuration | ||
engine | ||
fixtures | ||
generators | ||
isolation | ||
minitest | ||
railties | ||
test_unit | ||
abstract_unit.rb | ||
app_loader_test.rb | ||
backtrace_cleaner_test.rb | ||
code_statistics_calculator_test.rb | ||
code_statistics_test.rb | ||
console_helpers.rb | ||
engine_test.rb | ||
env_helpers.rb | ||
generators_test.rb | ||
initializable_test.rb | ||
json_params_parsing_test.rb | ||
path_generation_test.rb | ||
paths_test.rb | ||
plugin_helpers.rb | ||
rack_logger_test.rb | ||
rails_health_controller_test.rb | ||
rails_info_controller_test.rb | ||
rails_info_test.rb | ||
secrets_test.rb | ||
version_test.rb |