diff options
| author | 2025-05-12 16:22:45 +0000 | |
|---|---|---|
| committer | 2025-05-12 16:22:45 +0000 | |
| commit | 3fedff3a5aa7602069290c216ced5f63acd21357 (patch) | |
| tree | 36ed10b78b4077bc3caec58d9642fb817868b1dd /internal/db/bundb/migrations/20240620074530_interaction_policy.go | |
| parent | [chore] Use Codeberg API for get_latest_snapshot (#4151) (diff) | |
| download | gotosocial-3fedff3a5aa7602069290c216ced5f63acd21357.tar.xz | |
[chore] Tidy up previous interaction policy migrations (#4171)
This pull request tidies up some previous migrations by making sure there's a proper snapshot in the migrations folder of what interaction policies looked like at the time the migration was written, rather than using the moving target `internal/gtsmodel`.
Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4171
Co-authored-by: tobi <tobi.smethurst@protonmail.com>
Co-committed-by: tobi <tobi.smethurst@protonmail.com>
Diffstat (limited to 'internal/db/bundb/migrations/20240620074530_interaction_policy.go')
| -rw-r--r-- | internal/db/bundb/migrations/20240620074530_interaction_policy.go | 38 |
1 files changed, 17 insertions, 21 deletions
diff --git a/internal/db/bundb/migrations/20240620074530_interaction_policy.go b/internal/db/bundb/migrations/20240620074530_interaction_policy.go index 33f2c184f..2cb389e6a 100644 --- a/internal/db/bundb/migrations/20240620074530_interaction_policy.go +++ b/internal/db/bundb/migrations/20240620074530_interaction_policy.go @@ -22,8 +22,8 @@ import ( "code.superseriousbusiness.org/gotosocial/internal/log" - oldmodel "code.superseriousbusiness.org/gotosocial/internal/db/bundb/migrations/20240620074530_interaction_policy" - "code.superseriousbusiness.org/gotosocial/internal/gtsmodel" + newmodel "code.superseriousbusiness.org/gotosocial/internal/db/bundb/migrations/20240620074530_interaction_policy/new" + oldmodel "code.superseriousbusiness.org/gotosocial/internal/db/bundb/migrations/20240620074530_interaction_policy/old" "github.com/uptrace/bun" ) @@ -161,49 +161,45 @@ func init() { return err } - // Get the mapping of old enum string values to new integer values. - visibilityMapping := visibilityEnumMapping[oldmodel.Visibility]() - // For each status found in this way, update // to new version of interaction policy. for _, oldStatus := range oldStatuses { // Start with default policy for this visibility. - v := visibilityMapping[oldStatus.Visibility] - policy := gtsmodel.DefaultInteractionPolicyFor(v) + policy := newmodel.DefaultInteractionPolicyFor(newmodel.Visibility(oldStatus.Visibility)) if !*oldStatus.Likeable { // Only author can like. - policy.CanLike = gtsmodel.PolicyRules{ - Always: gtsmodel.PolicyValues{ - gtsmodel.PolicyValueAuthor, + policy.CanLike = newmodel.PolicyRules{ + Always: newmodel.PolicyValues{ + newmodel.PolicyValueAuthor, }, - WithApproval: make(gtsmodel.PolicyValues, 0), + WithApproval: make(newmodel.PolicyValues, 0), } } if !*oldStatus.Replyable { // Only author + mentioned can Reply. - policy.CanReply = gtsmodel.PolicyRules{ - Always: gtsmodel.PolicyValues{ - gtsmodel.PolicyValueAuthor, - gtsmodel.PolicyValueMentioned, + policy.CanReply = newmodel.PolicyRules{ + Always: newmodel.PolicyValues{ + newmodel.PolicyValueAuthor, + newmodel.PolicyValueMentioned, }, - WithApproval: make(gtsmodel.PolicyValues, 0), + WithApproval: make(newmodel.PolicyValues, 0), } } if !*oldStatus.Boostable { // Only author can Announce. - policy.CanAnnounce = gtsmodel.PolicyRules{ - Always: gtsmodel.PolicyValues{ - gtsmodel.PolicyValueAuthor, + policy.CanAnnounce = newmodel.PolicyRules{ + Always: newmodel.PolicyValues{ + newmodel.PolicyValueAuthor, }, - WithApproval: make(gtsmodel.PolicyValues, 0), + WithApproval: make(newmodel.PolicyValues, 0), } } // Update status with the new interaction policy. - newStatus := >smodel.Status{ + newStatus := &newmodel.Status{ ID: oldStatus.ID, InteractionPolicy: policy, } |
