summaryrefslogtreecommitdiff
path: root/internal/db/bundb/migrations/20240620074530_interaction_policy.go
diff options
context:
space:
mode:
authorLibravatar tobi <tobi.smethurst@protonmail.com>2025-05-12 16:22:45 +0000
committerLibravatar kim <gruf@noreply.codeberg.org>2025-05-12 16:22:45 +0000
commit3fedff3a5aa7602069290c216ced5f63acd21357 (patch)
tree36ed10b78b4077bc3caec58d9642fb817868b1dd /internal/db/bundb/migrations/20240620074530_interaction_policy.go
parent[chore] Use Codeberg API for get_latest_snapshot (#4151) (diff)
downloadgotosocial-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.go38
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 := &gtsmodel.Status{
+ newStatus := &newmodel.Status{
ID: oldStatus.ID,
InteractionPolicy: policy,
}