Skip to content

[Fix #368] Add DelegateVisibilityMismatch cop - #1610

Open
Darhazer wants to merge 1 commit into
masterfrom
add-delegate-visibility-mismatch-cop
Open

[Fix #368] Add DelegateVisibilityMismatch cop#1610
Darhazer wants to merge 1 commit into
masterfrom
add-delegate-visibility-mismatch-cop

Conversation

@Darhazer

@Darhazer Darhazer commented Apr 23, 2026

Copy link
Copy Markdown
Member

Flags delegate calls whose private: option does not match the surrounding visibility scope. delegate defines public methods by default and only supports a private: true option.

Replaces #1057
Handles the case of not explicit visibility set as suggested in #1057 (comment)
Closes #368

It includes auto-correct, marked unsafe, as it changes a method visibility.
I've tested on a large code private code base and found 2 cases when the delegated methods were actually used, even though they were under the private section in the class.


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.
  • If this is a new cop, consider making a corresponding update to the Rails Style Guide.

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.

Cop request: private delegates

1 participant