summaryrefslogtreecommitdiff
path: root/internal/ap/normalize.go
diff options
context:
space:
mode:
authorLibravatar tobi <tobi.smethurst@protonmail.com>2025-05-13 14:48:11 +0000
committerLibravatar kim <gruf@noreply.codeberg.org>2025-05-13 14:48:11 +0000
commitca12742a7ac0aec95fc0d7897e54a2272a68c34f (patch)
treec25b5ae66b927d1dbe61833f2c228a3b24164355 /internal/ap/normalize.go
parent[chore] Update woodpecker to catch `len(fromJSON(CI_PIPELINE_FILES)) == 0` (#... (diff)
downloadgotosocial-ca12742a7ac0aec95fc0d7897e54a2272a68c34f.tar.xz
[chore] Deprecate `with_approval`, `always` (client API), `approvalRequired`, `always` (fedi API) (#4173)
This pull request deprecates `with_approval` and `always` on the client API side, and `approvalRequired` and `always` on the fedi API side, replacing them with `automatic_approval` and `manual_approval` and `automaticApproval` and `manualApproval`, respectively. Back-compat is kept with these deprecated fields, and they're still serialized to the client API and fedi APIs respectively, in addition to the new non-deprecated properties. This will stay the case until v0.21.0 when they'll be removed. For the sake of not doing a massive database migration, the fields are still named `Always` and `WithApproval` in storage. I think this is probably fine! Part of https://codeberg.org/superseriousbusiness/gotosocial/issues/4026 Reviewed-on: https://codeberg.org/superseriousbusiness/gotosocial/pulls/4173 Co-authored-by: tobi <tobi.smethurst@protonmail.com> Co-committed-by: tobi <tobi.smethurst@protonmail.com>
Diffstat (limited to 'internal/ap/normalize.go')
-rw-r--r--internal/ap/normalize.go30
1 files changed, 16 insertions, 14 deletions
diff --git a/internal/ap/normalize.go b/internal/ap/normalize.go
index f6608ed94..fb9dbe0a6 100644
--- a/internal/ap/normalize.go
+++ b/internal/ap/normalize.go
@@ -582,16 +582,16 @@ func NormalizeOutgoingContentProp(item WithContent, rawJSON map[string]interface
//
// "interactionPolicy": {
// "canAnnounce": {
-// "always": "https://www.w3.org/ns/activitystreams#Public",
-// "approvalRequired": []
+// "automaticApproval": "https://www.w3.org/ns/activitystreams#Public",
+// "manualApproval": []
// },
// "canLike": {
-// "always": "https://www.w3.org/ns/activitystreams#Public",
-// "approvalRequired": []
+// "automaticApproval": "https://www.w3.org/ns/activitystreams#Public",
+// "manualApproval": []
// },
// "canReply": {
-// "always": "https://www.w3.org/ns/activitystreams#Public",
-// "approvalRequired": []
+// "automaticApproval": "https://www.w3.org/ns/activitystreams#Public",
+// "manualApproval": []
// }
// }
//
@@ -599,22 +599,22 @@ func NormalizeOutgoingContentProp(item WithContent, rawJSON map[string]interface
//
// "interactionPolicy": {
// "canAnnounce": {
-// "always": [
+// "automaticApproval": [
// "https://www.w3.org/ns/activitystreams#Public"
// ],
-// "approvalRequired": []
+// "manualApproval": []
// },
// "canLike": {
-// "always": [
+// "automaticApproval": [
// "https://www.w3.org/ns/activitystreams#Public"
// ],
-// "approvalRequired": []
+// "manualApproval": []
// },
// "canReply": {
-// "always": [
+// "automaticApproval": [
// "https://www.w3.org/ns/activitystreams#Public"
// ],
-// "approvalRequired": []
+// "manualApproval": []
// }
// }
//
@@ -655,8 +655,10 @@ func NormalizeOutgoingInteractionPolicyProp(item WithInteractionPolicy, rawJSON
}
for _, PolicyValuesKey := range []string{
- "always",
- "approvalRequired",
+ "automaticApproval",
+ "manualApproval",
+ "always", // deprecated
+ "approvalRequired", // deprecated
} {
PolicyValuesVal, ok := rulesValMap[PolicyValuesKey]
if !ok {