diff --git a/app/controllers/api/v1/accounts_controller.rb b/app/controllers/api/v1/accounts_controller.rb index b1a2ed57376dfc942385d858c607eaa359e217ea..4e73e9e8b564c35ef6713574d8c434319a76a4ac 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 73250cbf56e63d145f8a64cfd51ea2407185101b..9443934b304b0636d5a2c2620bda60675793f467 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 7dfab1df11b9eba012df95faf9d6640379e1c08e..8ed5c8bdacad2746671c1f07e87fa800b1c2bf4e 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 f4693358c7a6749c8dc34bbeedd0a10f6aa1c952..11894a8952101d0fe411fec73f65685ce03fadaf 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 01144f5952b5c21e1690759d6fa9e35687f93b34..820189d29c96ba7383ce69e21f802d212bad3d47 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 738ec89a0de983dcb2c5b1a114ed6a8774435456..479689d602298b922dacf3d33996b7e6898787cf 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 9d8bc52db1aa4368c02363f7a9d7ae5386902629..f5bf64cc7ac93a9c607712c3d98af675e04e0614 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 8b27b124f68c0e9d35f6ef03ec279360968814ae..c5933f3adfecfeb6e6612bc53f11742da1d6aca7 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 3ca6c594398ed88686b6523fc35ec6a4f2442cf7..656e4582228945e1c9cab03edeff6824a94346f6 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 5e02e68066f8d598d1c815fc80ff159474e6bede..bcc4ed500eb2e9b50e726ca4567265f0edad2536 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 30ea0e7ee0c865262d655e044750e4e20d4f14a9..7671f4ffc752aaa81a427f2dcd2c478405c419d8 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 d79f26366ae1216dffc321bc04ca679fba121c7b..fd2b0649acc45d32d2ec6aab5cdc21eb04365e34 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 bdb29ebadeeba2d8d8bf346272e227a5ade87333..5a062dc257413c89e803839fd1a70c24b1c89bff 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 c3f86774335973b9ca6e861b0d4682f52031eec0..070144e2d81dc20f309470234977d8b5084a14bd 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 d19489b36c9349f641a6539338311e467fcc1ba3..8b711d0d695252f80a9e18ae0f15a2c17c8777f4 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 a30558bace3f69c4c81201b9532f30d791265ba0..bf1ba371619cbe083b28a5f224471510beb8e62b 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 bc3887a446b07dd4e4bda2d8ce598cb0270335e4..b04e10e2f6d6e0de7fb3b5a800d6d6c0d74981bb 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 db4d1b4bc032d04e2e7fbbc27ad2d7e838aacef3..eb93329e976a9a7f907f88571606d70eff3141d6 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 b1bff89627eb29fa6d2f0d1df7d0e29d1b5f9c8f..f47d488f11c6db297aab466b2f5fe388ace95425 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 de350f8e6f4d064352cf960b48cf3eadaf7622f9..92d868afe45dea75dd8fc2107db54138053bf015 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 60eff135e986becea2a5d69a3924c40b4a5f7f06..30a9dd85ebcb176abc9b7bd2df31603f1546556a 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 9f603bb36d401c8bed2574bd79e2e364e8af1805..a100f73cebc27221ed0d7553675991617b9738cf 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 5b37ba9ba7fe9c0a58bb2a342b108c2e60c7c901..958b28cdcff3c57593027e5f584d91473f1552f8 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 2b5a6cd4269e35eca750839bdecf58bf2b091ab4..6f6f99f63ca7bbd870812cc57591fd9541578ef0 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 91902ff69dba4c35cd55142fd409c5dbb0326828..92fbc73cd24f1ba08e66fb463e3885e8d4900192 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