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

Add new Rails/Pluck cop #278

Merged
merged 1 commit into from
Jun 29, 2020
Merged

Add new Rails/Pluck cop #278

merged 1 commit into from
Jun 29, 2020

Conversation

eugeneius
Copy link
Contributor

pluck can be used instead of map to extract a single key from each element in an enumerable. When called on an Active Record relation, it results in a more efficient query that only selects the necessary key.

The pluck method was available in Active Record before Rails 5.0, but it wasn't implemented on Enumerable until that version, which is what allows this cop to auto-correct safely.

I've opened a pull request to add entries about pluck and pick to the style guide: rubocop/rails-style-guide#263.


Before submitting the PR make sure the following are checked:

  • 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.
  • Added an entry to the Changelog if the new code introduces user-observable changes. See changelog entry format.
  • If this is a new cop, consider making a corresponding update to the Rails Style Guide.
  • The PR relates to only one subject with a clear title
    and description in grammatically correct, complete sentences.
  • Run bundle exec rake default. It executes all tests and RuboCop for itself, and generates the documentation.

`pluck` can be used instead of `map` to extract a single key from each
element in an enumerable. When called on an Active Record relation, it
results in a more efficient query that only selects the necessary key.
@koic koic merged commit 60ea152 into rubocop:master Jun 29, 2020
@koic
Copy link
Member

koic commented Jun 29, 2020

This looks useful 👍

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