From: Andy Allan Date: Wed, 19 Jun 2024 16:44:20 +0000 (+0100) Subject: Disable Rails/BulkChangeTable cop X-Git-Tag: live~376^2 X-Git-Url: https://git.openstreetmap.org./rails.git/commitdiff_plain/f1fc31d485eb310781600645df43b3f45a76fd57 Disable Rails/BulkChangeTable cop If you have multiple alter commands in a migration (like adding two columns to an existing table) this cop will suggest combining them using `change_table :foo, :bulk => true`. However, Strong Migrations can't inspect `change_table` blocks, and therefore suggests using `safety_assured`, which mostly defeats the purpose of using strong_migrations in the first place. Instead, we should stick with the individual alter commands. Since postgres runs DDL changes in a transaction anyway, there is not enough benefit from the `change_table` approach to be worth losing the safety net of the Strong Migrations checks. --- diff --git a/.rubocop.yml b/.rubocop.yml index 1e18afd83..c0f0c1fa0 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -45,6 +45,10 @@ Naming/FileName: Naming/MethodParameterName: Enabled: false +# This conflicts with Strong Migrations, which can't check `change_table` +Rails/BulkChangeTable: + Enabled: false + Rails/CreateTableWithTimestamps: Enabled: false