discourse/db/post_migrate/20240212034010_drop_deprecated_columns.rb
Alan Guo Xiang Tan 322a3be2db
DEV: Remove logical OR assignment of constants (#29201)
Constants should always be only assigned once. The logical OR assignment
of a constant is a relic of the past before we used zeitwerk for
autoloading and had bugs where a file could be loaded twice resulting in
constant redefinition warnings.
2024-10-16 10:09:07 +08:00

29 lines
893 B
Ruby

# frozen_string_literal: true
class DropDeprecatedColumns < ActiveRecord::Migration[7.0]
DROPPED_COLUMNS = {
categories: %i[suppress_from_latest required_tag_group_id min_tags_from_required_group],
directory_columns: %i[automatic],
email_tokens: %i[token],
embeddable_hosts: %i[path_whitelist],
groups: %i[flair_url],
invites: %i[user_id redeemed_at],
posts: %i[avg_time image_url],
tags: %i[topic_count],
topic_users: %i[highest_seen_post_number],
topics: %i[avg_time image_url],
user_api_keys: %i[scopes],
user_options: %i[disable_jump_reply sidebar_list_destination],
user_profiles: %i[badge_granted_title],
user_stats: %i[topic_reply_count],
}
def up
DROPPED_COLUMNS.each { |table, columns| Migration::ColumnDropper.execute_drop(table, columns) }
end
def down
raise ActiveRecord::IrreversibleMigration
end
end