Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Incompatibility with Rubocop 1.45.0 #20

Closed
petergoldstein opened this issue Feb 8, 2023 · 2 comments
Closed

Incompatibility with Rubocop 1.45.0 #20

petergoldstein opened this issue Feb 8, 2023 · 2 comments

Comments

@petergoldstein
Copy link

I have a project that uses several Rubocop extensions (rubocop-performance, rubocop-rails, rubocop-rake, rubocop-rspec, rubocop-thread_safety). For Rubocop versions prior to Rubocop 1.45.0 this all runs fine.

When upgrading to the just released Rubocop 1.45.0 I get an error when I attempt to run bundle exec rubocop. Specifically I get:

private method `begin_investigation' called for #<RuboCop::Cop::ThreadSafety::InstanceVariableInClassMethod:0x... <instance to string>
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cop/commissioner.rb:100:in `block in begin_investigation'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cop/commissioner.rb:99:in `each'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cop/commissioner.rb:99:in `begin_investigation'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cop/commissioner.rb:82:in `investigate'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cop/team.rb:155:in `investigate_partial'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cop/team.rb:97:in `investigate'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:345:in `block in inspect_file'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:344:in `each'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:344:in `flat_map'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:344:in `inspect_file'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:287:in `block in do_inspection_loop'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:321:in `block in iterate_until_no_changes'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:314:in `loop'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:314:in `iterate_until_no_changes'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:283:in `do_inspection_loop'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:164:in `block in file_offenses'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:189:in `file_offense_cache'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:163:in `file_offenses'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:99:in `block in warm_cache'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:587:in `call_with_index'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:557:in `process_incoming_jobs'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:537:in `block in worker'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:528:in `fork'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:528:in `worker'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:519:in `block in create_workers'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:518:in `each'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:518:in `each_with_index'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:518:in `create_workers'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:457:in `work_in_processes'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:294:in `map'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/parallel-1.22.1/lib/parallel.rb:238:in `each'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:99:in `warm_cache'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/runner.rb:72:in `run'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cli/command/execute_runner.rb:26:in `block in execute_runner'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cli/command/execute_runner.rb:52:in `with_redirect'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cli/command/execute_runner.rb:25:in `execute_runner'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cli/command/execute_runner.rb:17:in `run'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cli/command.rb:11:in `run'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cli/environment.rb:18:in `run'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cli.rb:118:in `run_command'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cli.rb:125:in `execute_runners'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cli.rb:51:in `block in run'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cli.rb:77:in `profile_if_needed'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/lib/rubocop/cli.rb:43:in `run'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/exe/rubocop:19:in `block in <top (required)>'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/3.2.0/benchmark.rb:311:in `realtime'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/rubocop-1.45.0/exe/rubocop:19:in `<top (required)>'
/Users/peter/.rbenv/versions/3.2.0/bin/rubocop:25:in `load'
/Users/peter/.rbenv/versions/3.2.0/bin/rubocop:25:in `<top (required)>'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/site_ruby/3.2.0/bundler/cli/exec.rb:58:in `load'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/site_ruby/3.2.0/bundler/cli/exec.rb:58:in `kernel_load'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/site_ruby/3.2.0/bundler/cli/exec.rb:23:in `run'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/site_ruby/3.2.0/bundler/cli.rb:491:in `exec'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/site_ruby/3.2.0/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/site_ruby/3.2.0/bundler/vendor/thor/lib/thor/invocation.rb:127:in `invoke_command'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/site_ruby/3.2.0/bundler/vendor/thor/lib/thor.rb:392:in `dispatch'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/site_ruby/3.2.0/bundler/cli.rb:34:in `dispatch'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/site_ruby/3.2.0/bundler/vendor/thor/lib/thor/base.rb:485:in `start'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/site_ruby/3.2.0/bundler/cli.rb:28:in `start'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/bundler-2.4.6/exe/bundle:45:in `block in <top (required)>'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/site_ruby/3.2.0/bundler/friendly_errors.rb:117:in `with_friendly_errors'
/Users/peter/.rbenv/versions/3.2.0/lib/ruby/gems/3.2.0/gems/bundler-2.4.6/exe/bundle:33:in `<top (required)>'

with very long instance to string removed.

Removing rubocop-thread_safety from my .rubocop.yml allow rubocop to run successfully again.

@koic
Copy link
Member

koic commented Feb 8, 2023

This issue is the same as rubocop/rubocop#11549 and will be fixed by rubocop/rubocop#11550.

@koic
Copy link
Member

koic commented Feb 8, 2023

RuboCop 1.45.1 has been released. Please upgrade to the latest RuboCop version.

@koic koic closed this as completed Feb 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants