Fix migrating from upstream to glitch-soc messing with hide_notifications mute settings (#2164)
This commit is contained in:
parent
c3a8f6a0a3
commit
dc6befe1a4
|
@ -1,5 +1,15 @@
|
||||||
|
require Rails.root.join('lib', 'mastodon', 'migration_helpers')
|
||||||
|
|
||||||
class AddHideNotificationsToMute < ActiveRecord::Migration[5.1]
|
class AddHideNotificationsToMute < ActiveRecord::Migration[5.1]
|
||||||
def change
|
include Mastodon::MigrationHelpers
|
||||||
add_column :mutes, :hide_notifications, :boolean, default: false, null: false
|
|
||||||
|
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
|
||||||
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]
|
class DefaultExistingMutesToHidingNotifications < ActiveRecord::Migration[5.1]
|
||||||
def up
|
def up
|
||||||
change_column_default :mutes, :hide_notifications, from: false, to: true
|
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
|
||||||
end
|
end
|
||||||
|
|
Reference in New Issue