diff --git a/app/models/badge.rb b/app/models/badge.rb index ed97216c782..af0c054d66a 100644 --- a/app/models/badge.rb +++ b/app/models/badge.rb @@ -1,6 +1,9 @@ # frozen_string_literal: true class Badge < ActiveRecord::Base + # TODO: Drop in July 2021 + self.ignored_columns = %w{image} + include GlobalPath include HasSanitizableFields diff --git a/app/models/category.rb b/app/models/category.rb index 57a15bc62d8..ad5a662a356 100644 --- a/app/models/category.rb +++ b/app/models/category.rb @@ -5,6 +5,11 @@ class Category < ActiveRecord::Base 'none' ] + # TODO(2020-11-18): remove + self.ignored_columns = %w{ + suppress_from_latest + } + include Searchable include Positionable include HasCustomFields diff --git a/app/models/directory_column.rb b/app/models/directory_column.rb index aa4324345a3..3a290432c2f 100644 --- a/app/models/directory_column.rb +++ b/app/models/directory_column.rb @@ -2,6 +2,8 @@ class DirectoryColumn < ActiveRecord::Base + # TODO(2021-06-18): Remove automatic column + self.ignored_columns = ["automatic"] self.inheritance_column = nil enum type: { automatic: 0, user_field: 1, plugin: 2 }, _scopes: false diff --git a/app/models/email_token.rb b/app/models/email_token.rb index 77156125e53..1178352523a 100644 --- a/app/models/email_token.rb +++ b/app/models/email_token.rb @@ -35,6 +35,9 @@ class EmailToken < ActiveRecord::Base end end + # TODO(2022-01-01): Remove + self.ignored_columns = %w{token} + def self.scopes @scopes ||= Enum.new( signup: 1, diff --git a/app/models/embeddable_host.rb b/app/models/embeddable_host.rb index 6b2d2a9b4bd..212348bc3d1 100644 --- a/app/models/embeddable_host.rb +++ b/app/models/embeddable_host.rb @@ -10,6 +10,9 @@ class EmbeddableHost < ActiveRecord::Base self.host.sub!(/\/.*$/, '') end + # TODO(2021-07-23): Remove + self.ignored_columns = ["path_whitelist"] + def self.record_for_url(uri) if uri.is_a?(String) diff --git a/app/models/invite.rb b/app/models/invite.rb index ff4a4521e1d..52c0a97b425 100644 --- a/app/models/invite.rb +++ b/app/models/invite.rb @@ -8,6 +8,12 @@ class Invite < ActiveRecord::Base include RateLimiter::OnCreateRecord include Trashable + # TODO(2021-05-22): remove + self.ignored_columns = %w{ + user_id + redeemed_at + } + BULK_INVITE_EMAIL_LIMIT = 200 DOMAIN_REGEX = /\A(([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.)+([A-Za-z0-9]|[A-Za-z0-9][A-Za-z0-9\-]*[A-Za-z0-9])\z/ diff --git a/app/models/post.rb b/app/models/post.rb index 5db38ad4a7c..04df7e932fc 100644 --- a/app/models/post.rb +++ b/app/models/post.rb @@ -10,6 +10,11 @@ class Post < ActiveRecord::Base include HasCustomFields include LimitedEdit + self.ignored_columns = [ + "avg_time", # TODO(2021-01-04): remove + "image_url" # TODO(2021-06-01): remove + ] + cattr_accessor :plugin_permitted_create_params, :plugin_permitted_update_params self.plugin_permitted_create_params = {} self.plugin_permitted_update_params = {} diff --git a/app/models/topic.rb b/app/models/topic.rb index 751a82a5327..1a6948c6cc6 100644 --- a/app/models/topic.rb +++ b/app/models/topic.rb @@ -11,6 +11,11 @@ class Topic < ActiveRecord::Base include LimitedEdit extend Forwardable + self.ignored_columns = [ + "avg_time", # TODO(2021-01-04): remove + "image_url" # TODO(2021-06-01): remove + ] + def_delegator :featured_users, :user_ids, :featured_user_ids def_delegator :featured_users, :choose, :feature_topic_users diff --git a/app/models/topic_timer.rb b/app/models/topic_timer.rb index 5e80b5d4edd..2a9a690adef 100644 --- a/app/models/topic_timer.rb +++ b/app/models/topic_timer.rb @@ -3,6 +3,10 @@ class TopicTimer < ActiveRecord::Base MAX_DURATION_MINUTES = 20.years.to_i / 60 + self.ignored_columns = [ + "duration" # TODO(2021-06-01): remove + ] + include Trashable belongs_to :user diff --git a/app/models/topic_user.rb b/app/models/topic_user.rb index dcb0f294164..4f6b7853dde 100644 --- a/app/models/topic_user.rb +++ b/app/models/topic_user.rb @@ -1,6 +1,10 @@ # frozen_string_literal: true class TopicUser < ActiveRecord::Base + self.ignored_columns = [ + :highest_seen_post_number # Remove after 01 Jan 2022 + ] + belongs_to :user belongs_to :topic diff --git a/app/models/upload.rb b/app/models/upload.rb index 29c2b5d60c2..d0611ba84af 100644 --- a/app/models/upload.rb +++ b/app/models/upload.rb @@ -3,6 +3,10 @@ require "digest/sha1" class Upload < ActiveRecord::Base + self.ignored_columns = [ + "verified" # TODO(2020-12-10): remove + ] + include ActionView::Helpers::NumberHelper include HasUrl diff --git a/app/models/user_api_key.rb b/app/models/user_api_key.rb index f20e75c575f..d0238781bc7 100644 --- a/app/models/user_api_key.rb +++ b/app/models/user_api_key.rb @@ -1,6 +1,10 @@ # frozen_string_literal: true class UserApiKey < ActiveRecord::Base + self.ignored_columns = [ + "scopes" # TODO(2020-12-18): remove + ] + REVOKE_MATCHER = RouteMatcher.new(actions: "user_api_keys#revoke", methods: :post, params: [:id]) belongs_to :user diff --git a/app/models/user_stat.rb b/app/models/user_stat.rb index 89abd01e0ce..7d0093eeadc 100644 --- a/app/models/user_stat.rb +++ b/app/models/user_stat.rb @@ -4,6 +4,9 @@ class UserStat < ActiveRecord::Base belongs_to :user after_save :trigger_badges + # TODO(2021-05-13): Remove + self.ignored_columns = ["topic_reply_count"] + def self.ensure_consistency!(last_seen = 1.hour.ago) reset_bounce_scores update_distinct_badge_count