Fix Rails/BulkChangeTable cop (#26890)
				
					
				
			This commit is contained in:
		
							parent
							
								
									0c4e7c06dc
								
							
						
					
					
						commit
						c501d626e8
					
				| @ -2,8 +2,10 @@ | ||||
| 
 | ||||
| class AddProfileFieldsToAccounts < ActiveRecord::Migration[4.2] | ||||
|   def change | ||||
|     add_column :accounts, :note, :text, null: false, default: '' | ||||
|     add_column :accounts, :display_name, :string, null: false, default: '' | ||||
|     add_column :accounts, :uri, :string, null: false, default: '' | ||||
|     change_table :accounts, bulk: true do |t| | ||||
|       t.column :note, :text, null: false, default: '' | ||||
|       t.column :display_name, :string, null: false, default: '' | ||||
|       t.column :uri, :string, null: false, default: '' | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,7 +2,9 @@ | ||||
| 
 | ||||
| class AddMetadataToStatuses < ActiveRecord::Migration[4.2] | ||||
|   def change | ||||
|     add_column :statuses, :in_reply_to_id, :integer, null: true | ||||
|     add_column :statuses, :reblog_of_id, :integer, null: true | ||||
|     change_table(:statuses, bulk: true) do |t| | ||||
|       t.column :in_reply_to_id, :integer, null: true | ||||
|       t.column :reblog_of_id, :integer, null: true | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,7 +2,7 @@ | ||||
| 
 | ||||
| class AddDeviseToUsers < ActiveRecord::Migration[4.2] | ||||
|   def self.up | ||||
|     change_table(:users) do |t| | ||||
|     change_table(:users, bulk: true) do |t| | ||||
|       ## Database authenticatable | ||||
|       t.string :encrypted_password, null: false, default: '' | ||||
| 
 | ||||
|  | ||||
| @ -2,8 +2,10 @@ | ||||
| 
 | ||||
| class AddOwnerToApplication < ActiveRecord::Migration[4.2] | ||||
|   def change | ||||
|     add_column :oauth_applications, :owner_id, :integer, null: true | ||||
|     add_column :oauth_applications, :owner_type, :string, null: true | ||||
|     change_table(:oauth_applications, bulk: true) do |t| | ||||
|       t.column :owner_id, :integer, null: true | ||||
|       t.column :owner_type, :string, null: true | ||||
|     end | ||||
|     add_index :oauth_applications, [:owner_id, :owner_type] | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,8 +2,10 @@ | ||||
| 
 | ||||
| class RemoveOwnerFromApplication < ActiveRecord::Migration[5.0] | ||||
|   def change | ||||
|     remove_index :oauth_applications, [:owner_id, :owner_type] | ||||
|     remove_column :oauth_applications, :owner_id, :integer, null: true | ||||
|     remove_column :oauth_applications, :owner_type, :string, null: true | ||||
|     change_table(:oauth_applications, bulk: true) do |t| | ||||
|       t.remove_index [:owner_id, :owner_type] | ||||
|       t.remove :owner_id, type: :integer, options: { null: true } | ||||
|       t.remove :owner_type, type: :string, options: { null: true } | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,10 +2,12 @@ | ||||
| 
 | ||||
| class AddConfirmableToUsers < ActiveRecord::Migration[5.0] | ||||
|   def change | ||||
|     add_column :users, :confirmation_token, :string | ||||
|     add_column :users, :confirmed_at, :datetime | ||||
|     add_column :users, :confirmation_sent_at, :datetime | ||||
|     add_column :users, :unconfirmed_email, :string | ||||
|     change_table(:users, bulk: true) do |t| | ||||
|       t.column :confirmation_token, :string | ||||
|       t.column :confirmed_at, :datetime | ||||
|       t.column :confirmation_sent_at, :datetime | ||||
|       t.column :unconfirmed_email, :string | ||||
|     end | ||||
|     add_index :users, :confirmation_token, unique: true | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,20 +2,24 @@ | ||||
| 
 | ||||
| class MigrateSettings < ActiveRecord::Migration[4.2] | ||||
|   def up | ||||
|     remove_index :settings, [:target_type, :target_id, :var] | ||||
|     rename_column :settings, :target_id, :thing_id | ||||
|     rename_column :settings, :target_type, :thing_type | ||||
|     change_column :settings, :thing_id, :integer, null: true, default: nil | ||||
|     change_column :settings, :thing_type, :string, null: true, default: nil | ||||
|     add_index :settings, [:thing_type, :thing_id, :var], unique: true | ||||
|     change_table(:settings, bulk: true) do |t| | ||||
|       t.remove_index [:target_type, :target_id, :var] | ||||
|       t.rename :target_id, :thing_id | ||||
|       t.rename :target_type, :thing_type | ||||
|       t.change :thing_id, :integer, null: true, default: nil | ||||
|       t.change :thing_type, :string, null: true, default: nil | ||||
|       t.index [:thing_type, :thing_id, :var], unique: true | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|   def down | ||||
|     remove_index :settings, [:thing_type, :thing_id, :var] | ||||
|     rename_column :settings, :thing_id, :target_id | ||||
|     rename_column :settings, :thing_type, :target_type | ||||
|     change_column :settings, :target_id, :integer, null: false | ||||
|     change_column :settings, :target_type, :string, null: false, default: '' | ||||
|     add_index :settings, [:target_type, :target_id, :var], unique: true | ||||
|     change_table(:settings, bulk: true) do |t| | ||||
|       t.remove_index [:thing_type, :thing_id, :var] | ||||
|       t.rename :thing_id, :target_id | ||||
|       t.rename :thing_type, :target_type | ||||
|       t.column :target_id, :integer, null: false | ||||
|       t.column :target_type, :string, null: false, default: '' | ||||
|       t.index [:target_type, :target_id, :var], unique: true | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,10 +2,12 @@ | ||||
| 
 | ||||
| class AddDeviseTwoFactorToUsers < ActiveRecord::Migration[5.0] | ||||
|   def change | ||||
|     add_column :users, :encrypted_otp_secret, :string | ||||
|     add_column :users, :encrypted_otp_secret_iv, :string | ||||
|     add_column :users, :encrypted_otp_secret_salt, :string | ||||
|     add_column :users, :consumed_timestep, :integer | ||||
|     add_column :users, :otp_required_for_login, :boolean | ||||
|     change_table(:users, bulk: true) do |t| | ||||
|       t.column :encrypted_otp_secret, :string | ||||
|       t.column :encrypted_otp_secret_iv, :string | ||||
|       t.column :encrypted_otp_secret_salt, :string | ||||
|       t.column :consumed_timestep, :integer | ||||
|       t.column :otp_required_for_login, :boolean | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,9 +2,11 @@ | ||||
| 
 | ||||
| class ChangePrimaryKeyToBigintOnStatuses < ActiveRecord::Migration[5.0] | ||||
|   def change | ||||
|     change_column :statuses, :id, :bigint | ||||
|     change_column :statuses, :reblog_of_id, :bigint | ||||
|     change_column :statuses, :in_reply_to_id, :bigint | ||||
|     change_table(:statuses, bulk: true) do |t| | ||||
|       t.change :id, :bigint | ||||
|       t.change :reblog_of_id, :bigint | ||||
|       t.change :in_reply_to_id, :bigint | ||||
|     end | ||||
| 
 | ||||
|     change_column :media_attachments, :status_id, :bigint | ||||
|     change_column :mentions, :status_id, :bigint | ||||
|  | ||||
| @ -2,11 +2,15 @@ | ||||
| 
 | ||||
| class AddCounterCaches < ActiveRecord::Migration[5.0] | ||||
|   def change | ||||
|     add_column :statuses, :favourites_count, :integer, null: false, default: 0 | ||||
|     add_column :statuses, :reblogs_count, :integer, null: false, default: 0 | ||||
|     add_column :accounts, :statuses_count, :integer, null: false, default: 0 | ||||
|     add_column :accounts, :followers_count, :integer, null: false, default: 0 | ||||
|     add_column :accounts, :following_count, :integer, null: false, default: 0 | ||||
|     change_table(:statuses, bulk: true) do |t| | ||||
|       t.column :favourites_count, :integer, null: false, default: 0 | ||||
|       t.column :reblogs_count, :integer, null: false, default: 0 | ||||
|     end | ||||
|     change_table(:accounts, bulk: true) do |t| | ||||
|       t.column :statuses_count, :integer, null: false, default: 0 | ||||
|       t.column :followers_count, :integer, null: false, default: 0 | ||||
|       t.column :following_count, :integer, null: false, default: 0 | ||||
|     end | ||||
|   end | ||||
| end | ||||
| 
 | ||||
|  | ||||
| @ -2,13 +2,15 @@ | ||||
| 
 | ||||
| class AddOEmbedToPreviewCards < ActiveRecord::Migration[5.0] | ||||
|   def change | ||||
|     add_column :preview_cards, :type, :integer, default: 0, null: false | ||||
|     add_column :preview_cards, :html, :text, null: false, default: '' | ||||
|     add_column :preview_cards, :author_name, :string, null: false, default: '' | ||||
|     add_column :preview_cards, :author_url, :string, null: false, default: '' | ||||
|     add_column :preview_cards, :provider_name, :string, null: false, default: '' | ||||
|     add_column :preview_cards, :provider_url, :string, null: false, default: '' | ||||
|     add_column :preview_cards, :width, :integer, default: 0, null: false | ||||
|     add_column :preview_cards, :height, :integer, default: 0, null: false | ||||
|     change_table(:preview_cards, bulk: true) do |t| | ||||
|       t.column :type, :integer, default: 0, null: false | ||||
|       t.column :html, :text, null: false, default: '' | ||||
|       t.column :author_name, :string, null: false, default: '' | ||||
|       t.column :author_url, :string, null: false, default: '' | ||||
|       t.column :provider_name, :string, null: false, default: '' | ||||
|       t.column :provider_url, :string, null: false, default: '' | ||||
|       t.column :width, :integer, default: 0, null: false | ||||
|       t.column :height, :integer, default: 0, null: false | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,8 +2,10 @@ | ||||
| 
 | ||||
| class ReAddOwnerToApplication < ActiveRecord::Migration[5.0] | ||||
|   def change | ||||
|     add_column :oauth_applications, :owner_id, :integer, null: true | ||||
|     add_column :oauth_applications, :owner_type, :string, null: true | ||||
|     change_table(:oauth_applications, bulk: true) do |t| | ||||
|       t.column :owner_id, :integer, null: true | ||||
|       t.column :owner_type, :string, null: true | ||||
|     end | ||||
|     add_index :oauth_applications, [:owner_id, :owner_type] | ||||
|     add_foreign_key :oauth_applications, :users, column: :owner_id, on_delete: :cascade | ||||
|   end | ||||
|  | ||||
| @ -3,9 +3,12 @@ | ||||
| class ChangeLanguageFilterToOptOut < ActiveRecord::Migration[5.0] | ||||
|   def change | ||||
|     remove_index :users, :allowed_languages | ||||
|     remove_column :users, :allowed_languages | ||||
| 
 | ||||
|     add_column :users, :filtered_languages, :string, array: true, default: [], null: false | ||||
|     change_table(:users, bulk: true) do |t| | ||||
|       t.remove :allowed_languages | ||||
|       t.column :filtered_languages, :string, array: true, default: [], null: false | ||||
|     end | ||||
| 
 | ||||
|     add_index :users, :filtered_languages, using: :gin | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,8 +2,10 @@ | ||||
| 
 | ||||
| class AddDescriptionToSessionActivations < ActiveRecord::Migration[5.1] | ||||
|   def change | ||||
|     add_column :session_activations, :user_agent, :string, null: false, default: '' | ||||
|     add_column :session_activations, :ip, :inet | ||||
|     change_table(:session_activations, bulk: true) do |t| | ||||
|       t.column :user_agent, :string, null: false, default: '' | ||||
|       t.column :ip, :inet | ||||
|     end | ||||
|     add_foreign_key :session_activations, :users, on_delete: :cascade | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,10 +2,12 @@ | ||||
| 
 | ||||
| class AddActivityPubToAccounts < ActiveRecord::Migration[5.1] | ||||
|   def change | ||||
|     add_column :accounts, :inbox_url, :string, null: false, default: '' | ||||
|     add_column :accounts, :outbox_url, :string, null: false, default: '' | ||||
|     add_column :accounts, :shared_inbox_url, :string, null: false, default: '' | ||||
|     add_column :accounts, :followers_url, :string, null: false, default: '' | ||||
|     add_column :accounts, :protocol, :integer, null: false, default: 0 | ||||
|     change_table(:accounts, bulk: true) do |t| | ||||
|       t.column :inbox_url, :string, null: false, default: '' | ||||
|       t.column :outbox_url, :string, null: false, default: '' | ||||
|       t.column :shared_inbox_url, :string, null: false, default: '' | ||||
|       t.column :followers_url, :string, null: false, default: '' | ||||
|       t.column :protocol, :integer, null: false, default: 0 | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,7 +2,11 @@ | ||||
| 
 | ||||
| class AddUriToCustomEmojis < ActiveRecord::Migration[5.2] | ||||
|   def change | ||||
|     add_column :custom_emojis, :uri, :string | ||||
|     add_column :custom_emojis, :image_remote_url, :string | ||||
|     safety_assured do | ||||
|       change_table(:custom_emojis, bulk: true) do |t| | ||||
|         t.column :uri, :string | ||||
|         t.column :image_remote_url, :string | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -15,7 +15,9 @@ class ChangeRelaysEnabled < ActiveRecord::Migration[5.2] | ||||
|   end | ||||
| 
 | ||||
|   def down | ||||
|     remove_column :relays, :state | ||||
|     add_column :relays, :enabled, :boolean, default: false, null: false | ||||
|     change_table(:relays, bulk: true) do |t| | ||||
|       t.remove :state | ||||
|       t.column :enabled, :boolean, default: false, null: false | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -13,8 +13,12 @@ class AddSilencedAtSuspendedAtToAccounts < ActiveRecord::Migration[5.2] | ||||
|   end | ||||
| 
 | ||||
|   def up | ||||
|     add_column :accounts, :silenced_at, :datetime | ||||
|     add_column :accounts, :suspended_at, :datetime | ||||
|     safety_assured do | ||||
|       change_table(:accounts, bulk: true) do |t| | ||||
|         t.column :silenced_at, :datetime | ||||
|         t.column :suspended_at, :datetime | ||||
|       end | ||||
|     end | ||||
| 
 | ||||
|     # Record suspend date of blocks and silences for users whose limitations match | ||||
|     # a domain block | ||||
| @ -36,7 +40,9 @@ class AddSilencedAtSuspendedAtToAccounts < ActiveRecord::Migration[5.2] | ||||
|     Account.where(suspended: false).where.not(suspended_at: nil).in_batches.update_all(suspended: true) | ||||
|     Account.where(silenced: false).where.not(silenced_at: nil).in_batches.update_all(silenced: true) | ||||
| 
 | ||||
|     remove_column :accounts, :silenced_at | ||||
|     remove_column :accounts, :suspended_at | ||||
|     change_table(:accounts, bulk: true) do |t| | ||||
|       t.column :silenced_at, :datetime | ||||
|       t.column :suspended_at, :datetime | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,10 +2,14 @@ | ||||
| 
 | ||||
| class AddCapabilitiesToTags < ActiveRecord::Migration[5.2] | ||||
|   def change | ||||
|     add_column :tags, :usable, :boolean | ||||
|     add_column :tags, :trendable, :boolean | ||||
|     add_column :tags, :listable, :boolean | ||||
|     add_column :tags, :reviewed_at, :datetime | ||||
|     add_column :tags, :requested_review_at, :datetime | ||||
|     safety_assured do | ||||
|       change_table(:tags, bulk: true) do |t| | ||||
|         t.column :usable, :boolean | ||||
|         t.column :trendable, :boolean | ||||
|         t.column :listable, :boolean | ||||
|         t.column :reviewed_at, :datetime | ||||
|         t.column :requested_review_at, :datetime | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,7 +2,11 @@ | ||||
| 
 | ||||
| class AddCommentsToDomainBlocks < ActiveRecord::Migration[5.2] | ||||
|   def change | ||||
|     add_column :domain_blocks, :private_comment, :text | ||||
|     add_column :domain_blocks, :public_comment, :text | ||||
|     safety_assured do | ||||
|       change_table(:domain_blocks, bulk: true) do |t| | ||||
|         t.column :private_comment, :text | ||||
|         t.column :public_comment, :text | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,7 +2,11 @@ | ||||
| 
 | ||||
| class AddLastStatusAtToTags < ActiveRecord::Migration[5.2] | ||||
|   def change | ||||
|     add_column :tags, :last_status_at, :datetime | ||||
|     add_column :tags, :last_trend_at, :datetime | ||||
|     safety_assured do | ||||
|       change_table(:tags, bulk: true) do |t| | ||||
|         t.column :last_status_at, :datetime | ||||
|         t.column :last_trend_at, :datetime | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,7 +2,11 @@ | ||||
| 
 | ||||
| class AddMaxScoreToTags < ActiveRecord::Migration[5.2] | ||||
|   def change | ||||
|     add_column :tags, :max_score, :float | ||||
|     add_column :tags, :max_score_at, :datetime | ||||
|     safety_assured do | ||||
|       change_table(:tags, bulk: true) do |t| | ||||
|         t.column :max_score, :float | ||||
|         t.column :max_score_at, :datetime | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -3,8 +3,12 @@ | ||||
| class AddStorageSchemaVersion < ActiveRecord::Migration[5.2] | ||||
|   def change | ||||
|     add_column :preview_cards, :image_storage_schema_version, :integer | ||||
|     add_column :accounts, :avatar_storage_schema_version, :integer | ||||
|     add_column :accounts, :header_storage_schema_version, :integer | ||||
|     safety_assured do | ||||
|       change_table(:accounts, bulk: true) do |t| | ||||
|         t.column :avatar_storage_schema_version, :integer | ||||
|         t.column :header_storage_schema_version, :integer | ||||
|       end | ||||
|     end | ||||
|     add_column :media_attachments, :file_storage_schema_version, :integer | ||||
|     add_column :custom_emojis, :image_storage_schema_version, :integer | ||||
|   end | ||||
|  | ||||
| @ -2,7 +2,11 @@ | ||||
| 
 | ||||
| class AddSignInTokenToUsers < ActiveRecord::Migration[5.2] | ||||
|   def change | ||||
|     add_column :users, :sign_in_token, :string | ||||
|     add_column :users, :sign_in_token_sent_at, :datetime | ||||
|     safety_assured do | ||||
|       change_table(:users, bulk: true) do |t| | ||||
|         t.column :sign_in_token, :string | ||||
|         t.column :sign_in_token_sent_at, :datetime | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,8 +2,12 @@ | ||||
| 
 | ||||
| class AddLanguageToPreviewCards < ActiveRecord::Migration[6.1] | ||||
|   def change | ||||
|     add_column :preview_cards, :language, :string | ||||
|     add_column :preview_cards, :max_score, :float | ||||
|     add_column :preview_cards, :max_score_at, :datetime | ||||
|     safety_assured do | ||||
|       change_table(:preview_cards, bulk: true) do |t| | ||||
|         t.column :language, :string | ||||
|         t.column :max_score, :float | ||||
|         t.column :max_score_at, :datetime | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -8,16 +8,24 @@ class AddCategoryToReports < ActiveRecord::Migration[6.1] | ||||
|   disable_ddl_transaction! | ||||
| 
 | ||||
|   def up | ||||
|     safety_assured { add_column_with_default :reports, :category, :int, default: 0, allow_null: false } | ||||
|     add_column :reports, :action_taken_at, :datetime | ||||
|     add_column :reports, :rule_ids, :bigint, array: true | ||||
|     safety_assured { execute 'UPDATE reports SET action_taken_at = updated_at WHERE action_taken = TRUE' } | ||||
|     safety_assured do | ||||
|       add_column_with_default :reports, :category, :int, default: 0, allow_null: false | ||||
|       change_table(:reports, bulk: true) do |t| | ||||
|         t.column :action_taken_at, :datetime | ||||
|         t.column :rule_ids, :bigint, array: true | ||||
|       end | ||||
|       execute 'UPDATE reports SET action_taken_at = updated_at WHERE action_taken = TRUE' | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|   def down | ||||
|     safety_assured { execute 'UPDATE reports SET action_taken = TRUE WHERE action_taken_at IS NOT NULL' } | ||||
|     remove_column :reports, :category | ||||
|     remove_column :reports, :action_taken_at | ||||
|     remove_column :reports, :rule_ids | ||||
|     safety_assured do | ||||
|       execute 'UPDATE reports SET action_taken = TRUE WHERE action_taken_at IS NOT NULL' | ||||
|       remove_column :reports, :category | ||||
|       change_table(:reports, bulk: true) do |t| | ||||
|         t.column :action_taken_at, :datetime | ||||
|         t.column :rule_ids, :bigint, array: true | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,8 +2,12 @@ | ||||
| 
 | ||||
| class AddTrendableToAccounts < ActiveRecord::Migration[6.1] | ||||
|   def change | ||||
|     add_column :accounts, :trendable, :boolean | ||||
|     add_column :accounts, :reviewed_at, :datetime | ||||
|     add_column :accounts, :requested_review_at, :datetime | ||||
|     safety_assured do | ||||
|       change_table(:accounts, bulk: true) do |t| | ||||
|         t.column :trendable, :boolean | ||||
|         t.column :reviewed_at, :datetime | ||||
|         t.column :requested_review_at, :datetime | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,7 +2,11 @@ | ||||
| 
 | ||||
| class AddIpsToEmailDomainBlocks < ActiveRecord::Migration[6.1] | ||||
|   def change | ||||
|     add_column :email_domain_blocks, :ips, :inet, array: true | ||||
|     add_column :email_domain_blocks, :last_refresh_at, :datetime | ||||
|     safety_assured do | ||||
|       change_table(:email_domain_blocks, bulk: true) do |t| | ||||
|         t.column :ips, :inet, array: true | ||||
|         t.column :last_refresh_at, :datetime | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,7 +2,11 @@ | ||||
| 
 | ||||
| class AddLastUsedAtToOauthAccessTokens < ActiveRecord::Migration[6.1] | ||||
|   def change | ||||
|     add_column :oauth_access_tokens, :last_used_at, :datetime | ||||
|     add_column :oauth_access_tokens, :last_used_ip, :inet | ||||
|     safety_assured do | ||||
|       change_table(:oauth_access_tokens, bulk: true) do |t| | ||||
|         t.column :last_used_at, :datetime | ||||
|         t.column :last_used_ip, :inet | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,9 +2,13 @@ | ||||
| 
 | ||||
| class AddOrderedMediaAttachmentIdsToStatusEdits < ActiveRecord::Migration[6.1] | ||||
|   def change | ||||
|     add_column :status_edits, :ordered_media_attachment_ids, :bigint, array: true | ||||
|     add_column :status_edits, :media_descriptions, :text, array: true | ||||
|     add_column :status_edits, :poll_options, :string, array: true | ||||
|     add_column :status_edits, :sensitive, :boolean | ||||
|     safety_assured do | ||||
|       change_table(:status_edits, bulk: true) do |t| | ||||
|         t.column :ordered_media_attachment_ids, :bigint, array: true | ||||
|         t.column :media_descriptions, :text, array: true | ||||
|         t.column :poll_options, :string, array: true | ||||
|         t.column :sensitive, :boolean | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
| @ -2,8 +2,12 @@ | ||||
| 
 | ||||
| class AddHumanIdentifierToAdminActionLogs < ActiveRecord::Migration[6.1] | ||||
|   def change | ||||
|     add_column :admin_action_logs, :human_identifier, :string | ||||
|     add_column :admin_action_logs, :route_param, :string | ||||
|     add_column :admin_action_logs, :permalink, :string | ||||
|     safety_assured do | ||||
|       change_table(:admin_action_logs, bulk: true) do |t| | ||||
|         t.column :human_identifier, :string | ||||
|         t.column :route_param, :string | ||||
|         t.column :permalink, :string | ||||
|       end | ||||
|     end | ||||
|   end | ||||
| end | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user