@@ 1,5 1,15 @@
+require Rails.root.join('lib', 'mastodon', 'migration_helpers')
+
class AddHideNotificationsToMute < ActiveRecord::Migration[5.1]
- def change
- add_column :mutes, :hide_notifications, :boolean, default: false, null: false
+ include Mastodon::MigrationHelpers
+
+ disable_ddl_transaction!
+
+ def up
+ add_column_with_default :mutes, :hide_notifications, :boolean, default: true, allow_null: false
+ end
+
+ def down
+ remove_column :mutes, :hide_notifications
end
end
@@ 1,8 1,13 @@
+# frozen_string_literal: true
+
+# This migration is glitch-soc-only because mutes were originally developed in
+# glitch-soc and the default value changed when submitting the code upstream.
+
+# This migration originally changed existing values to `true`, but this has
+# been dropped as to not cause issues when migrating from upstream.
+
class DefaultExistingMutesToHidingNotifications < ActiveRecord::Migration[5.1]
def up
change_column_default :mutes, :hide_notifications, from: false, to: true
-
- # Unfortunately if this is applied sometime after the one to add the table we lose some data, so this is irreversible.
- Mute.update_all(hide_notifications: true)
end
end