From b1dec09d203d535a3b0bc61e520e520ba7643878 Mon Sep 17 00:00:00 2001
From: Matt Jankowski <matt@jankowski.online>
Date: Fri, 15 Dec 2023 10:52:00 -0500
Subject: [PATCH] Fix `Style/InverseMethods` cop (#28377)

---
 .rubocop_todo.yml                                       | 8 --------
 app/models/custom_filter.rb                             | 2 +-
 app/services/update_account_service.rb                  | 2 +-
 spec/controllers/activitypub/replies_controller_spec.rb | 2 +-
 4 files changed, 3 insertions(+), 11 deletions(-)

diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml
index 7d05090b3..d9b2ec814 100644
--- a/.rubocop_todo.yml
+++ b/.rubocop_todo.yml
@@ -362,14 +362,6 @@ Style/IfUnlessModifier:
     - 'config/initializers/devise.rb'
     - 'config/initializers/ffmpeg.rb'
 
-# This cop supports unsafe autocorrection (--autocorrect-all).
-# Configuration parameters: InverseMethods, InverseBlocks.
-Style/InverseMethods:
-  Exclude:
-    - 'app/models/custom_filter.rb'
-    - 'app/services/update_account_service.rb'
-    - 'spec/controllers/activitypub/replies_controller_spec.rb'
-
 # This cop supports unsafe autocorrection (--autocorrect-all).
 Style/MapToHash:
   Exclude:
diff --git a/app/models/custom_filter.rb b/app/models/custom_filter.rb
index 0f4fd78cb..5a53e73ba 100644
--- a/app/models/custom_filter.rb
+++ b/app/models/custom_filter.rb
@@ -91,7 +91,7 @@ class CustomFilter < ApplicationRecord
       filters_hash.values.map { |cache| [cache.delete(:filter), cache] }
     end.to_a
 
-    active_filters.select { |custom_filter, _| !custom_filter.expired? }
+    active_filters.reject { |custom_filter, _| custom_filter.expired? }
   end
 
   def self.apply_cached_filters(cached_filters, status)
diff --git a/app/services/update_account_service.rb b/app/services/update_account_service.rb
index 1bbcfce3e..78a846e03 100644
--- a/app/services/update_account_service.rb
+++ b/app/services/update_account_service.rb
@@ -21,7 +21,7 @@ class UpdateAccountService < BaseService
 
   def authorize_all_follow_requests(account)
     follow_requests = FollowRequest.where(target_account: account)
-    follow_requests = follow_requests.preload(:account).select { |req| !req.account.silenced? }
+    follow_requests = follow_requests.preload(:account).reject { |req| req.account.silenced? }
     AuthorizeFollowWorker.push_bulk(follow_requests, limit: 1_000) do |req|
       [req.account_id, req.target_account_id]
     end
diff --git a/spec/controllers/activitypub/replies_controller_spec.rb b/spec/controllers/activitypub/replies_controller_spec.rb
index 7e6e0ffb0..5fc9698a3 100644
--- a/spec/controllers/activitypub/replies_controller_spec.rb
+++ b/spec/controllers/activitypub/replies_controller_spec.rb
@@ -123,7 +123,7 @@ RSpec.describe ActivityPub::RepliesController do
         end
 
         it 'uses ids for remote toots' do
-          remote_replies = page_json[:items].select { |x| !x.is_a?(Hash) }
+          remote_replies = page_json[:items].reject { |x| x.is_a?(Hash) }
           expect(remote_replies.all? { |item| item.is_a?(String) && !ActivityPub::TagManager.instance.local_uri?(item) }).to be true
         end