Skip to content

Fix Lint/NonAtomicFileOperation cop error in case of implicit receiver #13558

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

Conversation

viralpraxis
Copy link
Contributor

@viralpraxis viralpraxis commented Dec 8, 2024

echo 'mkdir(path) unless FileTest.exist?(path)' | rubocop --stdin bug.rb --only Lint/NonAtomicFileOperation -d

An error occurred while Lint/NonAtomicFileOperation cop was inspecting bug.rb:1:0.
undefined method `name' for an instance of Parser::Source::Map::Send
lib/rubocop/cop/lint/non_atomic_file_operation.rb:135:in `autocorrect_replace_method'
lib/rubocop/cop/lint/non_atomic_file_operation.rb:123:in `autocorrect'
lib/rubocop/cop/lint/non_atomic_file_operation.rb:108:in `block in register_offense'

This patch removes offenses for IO-related methods without implicit receiver.


Before submitting the PR make sure the following are checked:

  • The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
  • Wrote good commit messages.
  • Commit message starts with [Fix #issue-number] (if the related issue exists).
  • Feature branch is up-to-date with master (if not - rebase it).
  • Squashed related commits together.
  • Added tests.
  • Ran bundle exec rake default. It executes all tests and runs RuboCop on its own code.
  • Added an entry (file) to the changelog folder named {change_type}_{change_description}.md if the new code introduces user-observable changes. See changelog entry format for details.

@viralpraxis viralpraxis force-pushed the fix-lint-non-atomic-file-operation-in-case-of-implicit-receiver branch from dfb0980 to fd30c49 Compare December 8, 2024 14:44
@viralpraxis viralpraxis force-pushed the fix-lint-non-atomic-file-operation-in-case-of-implicit-receiver branch from fd30c49 to a759959 Compare December 9, 2024 07:41
@viralpraxis viralpraxis changed the title Fix Lint/NonAtomicFileOperation cop failure in case of implicit receiver Fix Lint/NonAtomicFileOperation cop error in case of implicit receiver Dec 9, 2024
```console
echo 'mkdir(path) unless FileTest.exist?(path)' | rubocop --stdin bug.rb --only Lint/NonAtomicFileOperation -d

An error occurred while Lint/NonAtomicFileOperation cop was inspecting bug.rb:1:0.
undefined method `name' for an instance of Parser::Source::Map::Send
lib/rubocop/cop/lint/non_atomic_file_operation.rb:135:in `autocorrect_replace_method'
lib/rubocop/cop/lint/non_atomic_file_operation.rb:123:in `autocorrect'
lib/rubocop/cop/lint/non_atomic_file_operation.rb:108:in `block in register_offense'
```

This patch removes offenses for IO-related methods without implicit receiver.
@viralpraxis viralpraxis force-pushed the fix-lint-non-atomic-file-operation-in-case-of-implicit-receiver branch from a759959 to 6ce1f27 Compare December 10, 2024 00:05
@koic koic merged commit 70f8f76 into rubocop:master Dec 10, 2024
22 checks passed
@koic
Copy link
Member

koic commented Dec 10, 2024

Thanks!

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

Successfully merging this pull request may close these issues.

2 participants