From 127503eb2cdd67126974bee304dde0f183300b84 Mon Sep 17 00:00:00 2001 From: Matt Jankowski Date: Wed, 17 Jan 2024 11:33:17 -0500 Subject: [PATCH] Fix `Rails/RakeEnvironment` cop (#28782) --- .rubocop.yml | 10 ++++++++++ .rubocop_todo.yml | 12 ------------ lib/tasks/db.rake | 2 +- 3 files changed, 11 insertions(+), 13 deletions(-) diff --git a/.rubocop.yml b/.rubocop.yml index fcdc4e06cb..64021b4cec 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -109,6 +109,16 @@ Rails/LexicallyScopedActionFilter: Exclude: - 'app/controllers/auth/*' +# Reason: These tasks are doing local work which do not need full env loaded +# https://docs.rubocop.org/rubocop-rails/cops_rails.html#railsrakeenvironment +Rails/RakeEnvironment: + Exclude: + - 'lib/tasks/auto_annotate_models.rake' + - 'lib/tasks/emojis.rake' + - 'lib/tasks/mastodon.rake' + - 'lib/tasks/repo.rake' + - 'lib/tasks/statistics.rake' + # Reason: There are appropriate times to use these features # https://docs.rubocop.org/rubocop-rails/cops_rails.html#railsskipsmodelvalidations Rails/SkipsModelValidations: diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 12bab088e3..b962fbdddf 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -61,18 +61,6 @@ Rails/OutputSafety: Exclude: - 'config/initializers/simple_form.rb' -# This cop supports unsafe autocorrection (--autocorrect-all). -# Configuration parameters: Include. -# Include: **/Rakefile, **/*.rake -Rails/RakeEnvironment: - Exclude: - - 'lib/tasks/auto_annotate_models.rake' - - 'lib/tasks/db.rake' - - 'lib/tasks/emojis.rake' - - 'lib/tasks/mastodon.rake' - - 'lib/tasks/repo.rake' - - 'lib/tasks/statistics.rake' - # Configuration parameters: Include. # Include: app/models/**/*.rb Rails/UniqueValidationWithoutIndex: diff --git a/lib/tasks/db.rake b/lib/tasks/db.rake index e8a64b8fb2..3bc526bd21 100644 --- a/lib/tasks/db.rake +++ b/lib/tasks/db.rake @@ -15,7 +15,7 @@ namespace :db do end end - task :pre_migration_check do + task pre_migration_check: :environment do version = ActiveRecord::Base.connection.select_one("SELECT current_setting('server_version_num') AS v")['v'].to_i abort 'This version of Mastodon requires PostgreSQL 9.5 or newer. Please update PostgreSQL before updating Mastodon' if version < 90_500 end