diff --git a/changelog/fix_recover_slow_running_rubocop.md b/changelog/fix_recover_slow_running_rubocop.md new file mode 100644 index 00000000000..dd2cb9b66e2 --- /dev/null +++ b/changelog/fix_recover_slow_running_rubocop.md @@ -0,0 +1 @@ +* [#10750](https://github.com/rubocop/rubocop/pull/10750): Recover 7x slow running `rubocop`. ([@koic][]) diff --git a/lib/rubocop/formatter.rb b/lib/rubocop/formatter.rb index 85e626b0531..4fdf87d787c 100644 --- a/lib/rubocop/formatter.rb +++ b/lib/rubocop/formatter.rb @@ -2,30 +2,30 @@ module RuboCop module Formatter - autoload :BaseFormatter, 'rubocop/formatter/base_formatter' - autoload :SimpleTextFormatter, 'rubocop/formatter/simple_text_formatter' + require_relative 'formatter/text_util' + + require_relative 'formatter/base_formatter' + require_relative 'formatter/simple_text_formatter' # relies on simple text - autoload :ClangStyleFormatter, 'rubocop/formatter/clang_style_formatter' - autoload :DisabledConfigFormatter, 'rubocop/formatter/disabled_config_formatter' - autoload :EmacsStyleFormatter, 'rubocop/formatter/emacs_style_formatter' - autoload :FileListFormatter, 'rubocop/formatter/file_list_formatter' - autoload :FuubarStyleFormatter, 'rubocop/formatter/fuubar_style_formatter' - autoload :GitHubActionsFormatter, 'rubocop/formatter/git_hub_actions_formatter' - autoload :HTMLFormatter, 'rubocop/formatter/html_formatter' - autoload :JSONFormatter, 'rubocop/formatter/json_formatter' - autoload :JUnitFormatter, 'rubocop/formatter/junit_formatter' - autoload :MarkdownFormatter, 'rubocop/formatter/markdown_formatter' - autoload :OffenseCountFormatter, 'rubocop/formatter/offense_count_formatter' - autoload :ProgressFormatter, 'rubocop/formatter/progress_formatter' - autoload :QuietFormatter, 'rubocop/formatter/quiet_formatter' - autoload :TapFormatter, 'rubocop/formatter/tap_formatter' - autoload :WorstOffendersFormatter, 'rubocop/formatter/worst_offenders_formatter' - autoload :PacmanFormatter, 'rubocop/formatter/pacman_formatter' + require_relative 'formatter/clang_style_formatter' + require_relative 'formatter/disabled_config_formatter' + require_relative 'formatter/emacs_style_formatter' + require_relative 'formatter/file_list_formatter' + require_relative 'formatter/fuubar_style_formatter' + require_relative 'formatter/git_hub_actions_formatter' + require_relative 'formatter/html_formatter' + require_relative 'formatter/json_formatter' + require_relative 'formatter/junit_formatter' + require_relative 'formatter/markdown_formatter' + require_relative 'formatter/offense_count_formatter' + require_relative 'formatter/progress_formatter' + require_relative 'formatter/quiet_formatter' + require_relative 'formatter/tap_formatter' + require_relative 'formatter/worst_offenders_formatter' + require_relative 'formatter/pacman_formatter' # relies on progress formatter - autoload :AutoGenConfigFormatter, 'rubocop/formatter/auto_gen_config_formatter' - autoload :Colorizable, 'rubocop/formatter/colorizable' + require_relative 'formatter/auto_gen_config_formatter' require_relative 'formatter/formatter_set' - require_relative 'formatter/text_util' end end diff --git a/lib/rubocop/formatter/simple_text_formatter.rb b/lib/rubocop/formatter/simple_text_formatter.rb index 0f1f09df885..4c311360003 100644 --- a/lib/rubocop/formatter/simple_text_formatter.rb +++ b/lib/rubocop/formatter/simple_text_formatter.rb @@ -1,5 +1,7 @@ # frozen_string_literal: true +require_relative 'colorizable' + module RuboCop module Formatter # A basic formatter that displays only files with offenses.