Add and apply Naming/BlockForwarding rubocop rule

This syntax has been added in Ruby 3.1.

Not using a variable name might not be very descriptive, but it's just
as descriptive as using "block" as a variable name. Using just `&` we
get the same amount of information than using `&block`: that we're
passing a block.

We're still using `&action` in `around_action` methods because here we
aren't using a generic name for the variable, so (at least for now) we
aren't running this cop on controllers using `around_action`.
This commit is contained in:
Javi Martín
2023-07-20 03:42:07 +02:00
parent fd9169e0d6
commit f87d4b589d
11 changed files with 32 additions and 25 deletions

View File

@@ -319,6 +319,13 @@ Lint/UselessAssignment:
Lint/Void:
Enabled: true
Naming/BlockForwarding:
Enabled: true
Exclude:
- "app/controllers/application_controller.rb"
- "app/controllers/management/base_controller.rb"
- "app/controllers/subscriptions_controller.rb"
Naming/VariableName:
Enabled: true

View File

@@ -23,7 +23,7 @@ class StatsController < ApplicationController
private
def daily_cache(key, &block)
Rails.cache.fetch("public_stats/#{Time.current.strftime("%Y-%m-%d")}/#{key}", &block)
def daily_cache(key, &)
Rails.cache.fetch("public_stats/#{Time.current.strftime("%Y-%m-%d")}/#{key}", &)
end
end

View File

@@ -1,7 +1,7 @@
module Types
class BaseObject < GraphQL::Schema::Object
def self.field(*args, **kwargs, &block)
super(*args, **kwargs, &block)
def self.field(*args, **kwargs, &)
super(*args, **kwargs, &)
# The old api contained non-camelized fields
# We want to support these for now, but throw a deprecation warning
@@ -14,7 +14,7 @@ module Types
if field_name.to_s.include?("_")
reason = "Snake case fields are deprecated. Please use #{field_name.to_s.camelize(:lower)}."
kwargs = kwargs.merge({ camelize: false, deprecation_reason: reason })
super(*args, **kwargs, &block)
super(*args, **kwargs, &)
end
# Make sure associations only return public records

View File

@@ -130,7 +130,7 @@ module GlobalizeHelper
hidden_field_tag("enabled_translations[#{locale}]", (enabled ? 1 : 0))
end
def globalize(locale, &block)
Globalize.with_locale(locale, &block)
def globalize(locale, &)
Globalize.with_locale(locale, &)
end
end

View File

@@ -1,6 +1,6 @@
module TranslatableFormHelper
def translatable_form_for(record, options = {}, &block)
form_for(record, options.merge(builder: TranslatableFormBuilder), &block)
def translatable_form_for(record, options = {}, &)
form_for(record, options.merge(builder: TranslatableFormBuilder), &)
end
def translations_interface_enabled?
@@ -18,13 +18,13 @@ module TranslatableFormHelper
class TranslatableFormBuilder < ConsulFormBuilder
attr_accessor :translations
def translatable_fields(&block)
def translatable_fields(&)
@translations = {}
visible_locales.map do |locale|
@translations[locale] = translation_for(locale)
end
safe_join(visible_locales.map do |locale|
Globalize.with_locale(locale) { fields_for_locale(locale, &block) }
Globalize.with_locale(locale) { fields_for_locale(locale, &) }
end)
end
@@ -46,8 +46,8 @@ module TranslatableFormHelper
end
end
def fields_for_translation(translation, &block)
fields_for(:translations, translation, builder: TranslationsFieldsBuilder, &block)
def fields_for_translation(translation, &)
fields_for(:translations, translation, builder: TranslationsFieldsBuilder, &)
end
def translation_for(locale)

View File

@@ -158,8 +158,8 @@ class Mailer < ApplicationMailer
private
def with_user(user, &block)
I18n.with_locale(user.locale, &block)
def with_user(user, &)
I18n.with_locale(user.locale, &)
end
def prevent_delivery_to_users_without_email

View File

@@ -180,7 +180,7 @@ class Budget::Stats
stats_cache(*stats_methods)
def stats_cache(key, &block)
Rails.cache.fetch("budgets_stats/#{budget.id}/#{phases.join}/#{key}/#{version}", &block)
def stats_cache(key, &)
Rails.cache.fetch("budgets_stats/#{budget.id}/#{phases.join}/#{key}/#{version}", &)
end
end

View File

@@ -117,7 +117,7 @@ class Poll::Stats
stats_cache(*stats_methods)
def stats_cache(key, &block)
Rails.cache.fetch("polls_stats/#{poll.id}/#{key}/#{version}", &block)
def stats_cache(key, &)
Rails.cache.fetch("polls_stats/#{poll.id}/#{key}/#{version}", &)
end
end

View File

@@ -139,9 +139,9 @@ class Tenant < ApplicationRecord
Apartment::Tenant.switch(...)
end
def self.run_on_each(&block)
def self.run_on_each(&)
["public"].union(Apartment.tenant_names).each do |schema|
switch(schema, &block)
switch(schema, &)
end
end

View File

@@ -50,7 +50,7 @@ class RemoteTranslations::Microsoft::AvailableLocales
JSON.parse(result)["translation"].map(&:first)
end
def self.daily_cache(key, &block)
Rails.cache.fetch("remote_available_locales/#{Time.current.strftime("%Y-%m-%d")}/#{key}", &block)
def self.daily_cache(key, &)
Rails.cache.fetch("remote_available_locales/#{Time.current.strftime("%Y-%m-%d")}/#{key}", &)
end
end

View File

@@ -1,3 +1,3 @@
def in_browser(name, &block)
Capybara.using_session(name, &block)
def in_browser(name, &)
Capybara.using_session(name, &)
end