From fba46b607282aa062e84e0693c093120eac58ac6 Mon Sep 17 00:00:00 2001 From: Yamagishi Kazutoshi Date: Wed, 6 Dec 2017 19:41:57 +0900 Subject: [PATCH] Using double splat operator (#5859) --- app/controllers/api/v1/accounts_controller.rb | 2 +- app/helpers/admin/filter_helper.rb | 2 +- app/helpers/application_helper.rb | 2 +- app/helpers/routing_helper.rb | 2 +- app/lib/activitypub/activity.rb | 4 ++-- app/lib/extractor.rb | 2 +- app/lib/formatter.rb | 2 +- app/lib/ostatus/activity/base.rb | 2 +- app/lib/ostatus/atom_serializer.rb | 2 +- app/lib/provider_discovery.rb | 2 +- app/lib/request.rb | 2 +- app/mailers/notification_mailer.rb | 2 +- app/mailers/user_mailer.rb | 6 +++--- app/models/remote_follow.rb | 4 ++-- app/models/session_activation.rb | 2 +- app/presenters/account_relationships_presenter.rb | 2 +- app/presenters/status_relationships_presenter.rb | 2 +- app/services/activitypub/process_collection_service.rb | 2 +- app/services/authorize_follow_service.rb | 2 +- app/services/post_status_service.rb | 2 +- app/services/process_feed_service.rb | 2 +- app/services/remove_status_service.rb | 2 +- app/services/suspend_account_service.rb | 2 +- lib/mastodon/migration_helpers.rb | 8 ++++---- spec/services/post_status_service_spec.rb | 2 +- 25 files changed, 32 insertions(+), 32 deletions(-) diff --git a/app/controllers/api/v1/accounts_controller.rb b/app/controllers/api/v1/accounts_controller.rb index b1a2ed5737..4e73e9e8b5 100644 --- a/app/controllers/api/v1/accounts_controller.rb +++ b/app/controllers/api/v1/accounts_controller.rb @@ -51,7 +51,7 @@ class Api::V1::AccountsController < Api::BaseController @account = Account.find(params[:id]) end - def relationships(options = {}) + def relationships(**options) AccountRelationshipsPresenter.new([@account.id], current_user.account_id, options) end end diff --git a/app/helpers/admin/filter_helper.rb b/app/helpers/admin/filter_helper.rb index 73250cbf56..9443934b30 100644 --- a/app/helpers/admin/filter_helper.rb +++ b/app/helpers/admin/filter_helper.rb @@ -13,7 +13,7 @@ module Admin::FilterHelper link_to text, new_url, class: filter_link_class(new_class) end - def table_link_to(icon, text, path, options = {}) + def table_link_to(icon, text, path, **options) link_to safe_join([fa_icon(icon), text]), path, options.merge(class: 'table-action-link') end diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 7dfab1df11..8ed5c8bdac 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -5,7 +5,7 @@ module ApplicationHelper current_page?(path) ? 'active' : '' end - def active_link_to(label, path, options = {}) + def active_link_to(label, path, **options) link_to label, path, options.merge(class: active_nav_class(path)) end diff --git a/app/helpers/routing_helper.rb b/app/helpers/routing_helper.rb index f4693358c7..11894a8952 100644 --- a/app/helpers/routing_helper.rb +++ b/app/helpers/routing_helper.rb @@ -11,7 +11,7 @@ module RoutingHelper end end - def full_asset_url(source, options = {}) + def full_asset_url(source, **options) source = ActionController::Base.helpers.asset_url(source, options) unless use_storage? URI.join(root_url, source).to_s diff --git a/app/lib/activitypub/activity.rb b/app/lib/activitypub/activity.rb index 01144f5952..820189d29c 100644 --- a/app/lib/activitypub/activity.rb +++ b/app/lib/activitypub/activity.rb @@ -3,7 +3,7 @@ class ActivityPub::Activity include JsonLdHelper - def initialize(json, account, options = {}) + def initialize(json, account, **options) @json = json @account = account @object = @json['object'] @@ -15,7 +15,7 @@ class ActivityPub::Activity end class << self - def factory(json, account, options = {}) + def factory(json, account, **options) @json = json klass&.new(json, account, options) end diff --git a/app/lib/extractor.rb b/app/lib/extractor.rb index 738ec89a0d..479689d602 100644 --- a/app/lib/extractor.rb +++ b/app/lib/extractor.rb @@ -32,7 +32,7 @@ module Extractor possible_entries end - def extract_hashtags_with_indices(text, _options = {}) + def extract_hashtags_with_indices(text, **) return [] unless text =~ /#/ tags = [] diff --git a/app/lib/formatter.rb b/app/lib/formatter.rb index 9d8bc52db1..f5bf64cc7a 100644 --- a/app/lib/formatter.rb +++ b/app/lib/formatter.rb @@ -9,7 +9,7 @@ class Formatter include ActionView::Helpers::TextHelper - def format(status, options = {}) + def format(status, **options) if status.reblog? prepend_reblog = status.reblog.account.acct status = status.proper diff --git a/app/lib/ostatus/activity/base.rb b/app/lib/ostatus/activity/base.rb index 8b27b124f6..c5933f3adf 100644 --- a/app/lib/ostatus/activity/base.rb +++ b/app/lib/ostatus/activity/base.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true class OStatus::Activity::Base - def initialize(xml, account = nil, options = {}) + def initialize(xml, account = nil, **options) @xml = xml @account = account @options = options diff --git a/app/lib/ostatus/atom_serializer.rb b/app/lib/ostatus/atom_serializer.rb index 3ca6c59439..656e458222 100644 --- a/app/lib/ostatus/atom_serializer.rb +++ b/app/lib/ostatus/atom_serializer.rb @@ -319,7 +319,7 @@ class OStatus::AtomSerializer private - def append_element(parent, name, content = nil, attributes = {}) + def append_element(parent, name, content = nil, **attributes) element = Ox::Element.new(name) attributes.each { |k, v| element[k] = sanitize_str(v) } element << sanitize_str(content) unless content.nil? diff --git a/app/lib/provider_discovery.rb b/app/lib/provider_discovery.rb index 5e02e68066..bcc4ed500e 100644 --- a/app/lib/provider_discovery.rb +++ b/app/lib/provider_discovery.rb @@ -2,7 +2,7 @@ class ProviderDiscovery < OEmbed::ProviderDiscovery class << self - def discover_provider(url, options = {}) + def discover_provider(url, **options) res = Request.new(:get, url).perform format = options[:format] diff --git a/app/lib/request.rb b/app/lib/request.rb index 30ea0e7ee0..7671f4ffc7 100644 --- a/app/lib/request.rb +++ b/app/lib/request.rb @@ -5,7 +5,7 @@ class Request include RoutingHelper - def initialize(verb, url, options = {}) + def initialize(verb, url, **options) @verb = verb @url = Addressable::URI.parse(url).normalize @options = options diff --git a/app/mailers/notification_mailer.rb b/app/mailers/notification_mailer.rb index d79f26366a..fd2b0649ac 100644 --- a/app/mailers/notification_mailer.rb +++ b/app/mailers/notification_mailer.rb @@ -63,7 +63,7 @@ class NotificationMailer < ApplicationMailer end end - def digest(recipient, opts = {}) + def digest(recipient, **opts) @me = recipient @since = opts[:since] || @me.user.last_emailed_at || @me.user.current_sign_in_at @notifications = Notification.where(account: @me, activity_type: 'Mention').where('created_at > ?', @since) diff --git a/app/mailers/user_mailer.rb b/app/mailers/user_mailer.rb index bdb29ebade..5a062dc257 100644 --- a/app/mailers/user_mailer.rb +++ b/app/mailers/user_mailer.rb @@ -5,7 +5,7 @@ class UserMailer < Devise::Mailer helper :instance - def confirmation_instructions(user, token, _opts = {}) + def confirmation_instructions(user, token, **) @resource = user @token = token @instance = Rails.configuration.x.local_domain @@ -17,7 +17,7 @@ class UserMailer < Devise::Mailer end end - def reset_password_instructions(user, token, _opts = {}) + def reset_password_instructions(user, token, **) @resource = user @token = token @instance = Rails.configuration.x.local_domain @@ -29,7 +29,7 @@ class UserMailer < Devise::Mailer end end - def password_change(user, _opts = {}) + def password_change(user, **) @resource = user @instance = Rails.configuration.x.local_domain diff --git a/app/models/remote_follow.rb b/app/models/remote_follow.rb index c3f8677433..070144e2d8 100644 --- a/app/models/remote_follow.rb +++ b/app/models/remote_follow.rb @@ -7,8 +7,8 @@ class RemoteFollow validates :acct, presence: true - def initialize(attrs = {}) - @acct = attrs[:acct].gsub(/\A@/, '').strip unless attrs[:acct].nil? + def initialize(attrs = nil) + @acct = attrs[:acct].gsub(/\A@/, '').strip if !attrs.nil? && !attrs[:acct].nil? end def valid? diff --git a/app/models/session_activation.rb b/app/models/session_activation.rb index d19489b36c..8b711d0d69 100644 --- a/app/models/session_activation.rb +++ b/app/models/session_activation.rb @@ -53,7 +53,7 @@ class SessionActivation < ApplicationRecord id && where(session_id: id).exists? end - def activate(options = {}) + def activate(**options) activation = create!(options) purge_old activation diff --git a/app/presenters/account_relationships_presenter.rb b/app/presenters/account_relationships_presenter.rb index a30558bace..bf1ba37161 100644 --- a/app/presenters/account_relationships_presenter.rb +++ b/app/presenters/account_relationships_presenter.rb @@ -4,7 +4,7 @@ class AccountRelationshipsPresenter attr_reader :following, :followed_by, :blocking, :muting, :requested, :domain_blocking - def initialize(account_ids, current_account_id, options = {}) + def initialize(account_ids, current_account_id, **options) @following = Account.following_map(account_ids, current_account_id).merge(options[:following_map] || {}) @followed_by = Account.followed_by_map(account_ids, current_account_id).merge(options[:followed_by_map] || {}) @blocking = Account.blocking_map(account_ids, current_account_id).merge(options[:blocking_map] || {}) diff --git a/app/presenters/status_relationships_presenter.rb b/app/presenters/status_relationships_presenter.rb index bc3887a446..b04e10e2f6 100644 --- a/app/presenters/status_relationships_presenter.rb +++ b/app/presenters/status_relationships_presenter.rb @@ -3,7 +3,7 @@ class StatusRelationshipsPresenter attr_reader :reblogs_map, :favourites_map, :mutes_map, :pins_map - def initialize(statuses, current_account_id = nil, options = {}) + def initialize(statuses, current_account_id = nil, **options) if current_account_id.nil? @reblogs_map = {} @favourites_map = {} diff --git a/app/services/activitypub/process_collection_service.rb b/app/services/activitypub/process_collection_service.rb index db4d1b4bc0..eb93329e97 100644 --- a/app/services/activitypub/process_collection_service.rb +++ b/app/services/activitypub/process_collection_service.rb @@ -3,7 +3,7 @@ class ActivityPub::ProcessCollectionService < BaseService include JsonLdHelper - def call(body, account, options = {}) + def call(body, account, **options) @account = account @json = Oj.load(body, mode: :strict) @options = options diff --git a/app/services/authorize_follow_service.rb b/app/services/authorize_follow_service.rb index b1bff89627..f47d488f11 100644 --- a/app/services/authorize_follow_service.rb +++ b/app/services/authorize_follow_service.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true class AuthorizeFollowService < BaseService - def call(source_account, target_account, options = {}) + def call(source_account, target_account, **options) if options[:skip_follow_request] follow_request = FollowRequest.new(account: source_account, target_account: target_account) else diff --git a/app/services/post_status_service.rb b/app/services/post_status_service.rb index de350f8e6f..92d868afe4 100644 --- a/app/services/post_status_service.rb +++ b/app/services/post_status_service.rb @@ -13,7 +13,7 @@ class PostStatusService < BaseService # @option [Doorkeeper::Application] :application # @option [String] :idempotency Optional idempotency key # @return [Status] - def call(account, text, in_reply_to = nil, options = {}) + def call(account, text, in_reply_to = nil, **options) if options[:idempotency].present? existing_id = redis.get("idempotency:status:#{account.id}:#{options[:idempotency]}") return Status.find(existing_id) if existing_id diff --git a/app/services/process_feed_service.rb b/app/services/process_feed_service.rb index 60eff135e9..30a9dd85eb 100644 --- a/app/services/process_feed_service.rb +++ b/app/services/process_feed_service.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true class ProcessFeedService < BaseService - def call(body, account, options = {}) + def call(body, account, **options) @options = options xml = Nokogiri::XML(body) diff --git a/app/services/remove_status_service.rb b/app/services/remove_status_service.rb index 9f603bb36d..a100f73ceb 100644 --- a/app/services/remove_status_service.rb +++ b/app/services/remove_status_service.rb @@ -3,7 +3,7 @@ class RemoveStatusService < BaseService include StreamEntryRenderer - def call(status, options = {}) + def call(status, **options) @payload = Oj.dump(event: :delete, payload: status.id.to_s) @status = status @account = status.account diff --git a/app/services/suspend_account_service.rb b/app/services/suspend_account_service.rb index 5b37ba9ba7..958b28cdcf 100644 --- a/app/services/suspend_account_service.rb +++ b/app/services/suspend_account_service.rb @@ -1,7 +1,7 @@ # frozen_string_literal: true class SuspendAccountService < BaseService - def call(account, options = {}) + def call(account, **options) @account = account @options = options diff --git a/lib/mastodon/migration_helpers.rb b/lib/mastodon/migration_helpers.rb index 2b5a6cd426..6f6f99f63c 100644 --- a/lib/mastodon/migration_helpers.rb +++ b/lib/mastodon/migration_helpers.rb @@ -99,7 +99,7 @@ module Mastodon # default - The default value for the column. # null - When set to `true` the column will allow NULL values. # The default is to not allow NULL values. - def add_timestamps_with_timezone(table_name, options = {}) + def add_timestamps_with_timezone(table_name, **options) options[:null] = false if options[:null].nil? [:created_at, :updated_at].each do |column_name| @@ -134,7 +134,7 @@ module Mastodon # add_concurrent_index :users, :some_column # # See Rails' `add_index` for more info on the available arguments. - def add_concurrent_index(table_name, column_name, options = {}) + def add_concurrent_index(table_name, column_name, **options) if transaction_open? raise 'add_concurrent_index can not be run inside a transaction, ' \ 'you can disable transactions by calling disable_ddl_transaction! ' \ @@ -158,7 +158,7 @@ module Mastodon # remove_concurrent_index :users, :some_column # # See Rails' `remove_index` for more info on the available arguments. - def remove_concurrent_index(table_name, column_name, options = {}) + def remove_concurrent_index(table_name, column_name, **options) if transaction_open? raise 'remove_concurrent_index can not be run inside a transaction, ' \ 'you can disable transactions by calling disable_ddl_transaction! ' \ @@ -182,7 +182,7 @@ module Mastodon # remove_concurrent_index :users, "index_X_by_Y" # # See Rails' `remove_index` for more info on the available arguments. - def remove_concurrent_index_by_name(table_name, index_name, options = {}) + def remove_concurrent_index_by_name(table_name, index_name, **options) if transaction_open? raise 'remove_concurrent_index_by_name can not be run inside a transaction, ' \ 'you can disable transactions by calling disable_ddl_transaction! ' \ diff --git a/spec/services/post_status_service_spec.rb b/spec/services/post_status_service_spec.rb index 91902ff69d..92fbc73cd2 100644 --- a/spec/services/post_status_service_spec.rb +++ b/spec/services/post_status_service_spec.rb @@ -182,7 +182,7 @@ RSpec.describe PostStatusService do expect(status2.id).to eq status1.id end - def create_status_with_options(options = {}) + def create_status_with_options(**options) subject.call(Fabricate(:account), 'test', nil, options) end end