social.colibri.beta.actor.settings
Schema Diff
+8 -4
Compatibility Analysis
Breaking Changes Detected
2 breaking changes, 5 non-breaking changes.
Breaking Changes (2)
- KindChanged KindChanged { vertex_id: "social.colibri.beta.actor.settings:body.gifFavorites:items", old_kind: "string", new_kind: "ref" }
- ConstraintAdded ConstraintAdded { vertex_id: "social.colibri.beta.actor.settings:body.gifFavorites:items", sort: "ref", value: "social.colibri.beta.embed.defs#gifView" }
Non-Breaking Changes (5)
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.actor.settings:body.shareActivity" }
- AddedVertex AddedVertex { vertex_id: "social.colibri.beta.embed.defs#gifView" }
- AddedEdge AddedEdge { src: "social.colibri.beta.actor.settings:body", tgt: "social.colibri.beta.actor.settings:body.shareActivity", kind: "prop", name: Some("shareActivity") }
- AddedEdge AddedEdge { src: "social.colibri.beta.actor.settings:body.gifFavorites:items", tgt: "social.colibri.beta.embed.defs#gifView", kind: "ref", name: None }
- ConstraintRemoved ConstraintRemoved { vertex_id: "social.colibri.beta.actor.settings:body.gifFavorites:items", sort: "maxLength" }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "social.colibri.beta.actor.settings:body.shareActivity" }AddedVertex { vertex_id: "social.colibri.beta.embed.defs#gifView" }
Constraint Changes
- ConstraintAdded ConstraintAdded { vertex_id: "social.colibri.beta.actor.settings:body.gifFavorites:items", sort: "ref", value: "social.colibri.beta.embed.defs#gifView" }
- ConstraintRemoved ConstraintRemoved { vertex_id: "social.colibri.beta.actor.settings:body.gifFavorites:items", sort: "maxLength" }
Additional Notes
- Breaking: KindChanged { vertex_id: "social.colibri.beta.actor.settings:body.gifFavorites:items", old_kind: "string", new_kind: "ref" }
- Non-breaking: AddedEdge { src: "social.colibri.beta.actor.settings:body", tgt: "social.colibri.beta.actor.settings:body.shareActivity", kind: "prop", name: Some("shareActivity") }
- Non-breaking: AddedEdge { src: "social.colibri.beta.actor.settings:body.gifFavorites:items", tgt: "social.colibri.beta.embed.defs#gifView", kind: "ref", name: None }
1
1
{
2
2
"id": "social.colibri.beta.actor.settings",
3
3
"defs": {
4
4
"main": {
5
5
"key": "literal:self",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"required": [],
10
10
"properties": {
11
11
"gifFavorites": {
12
12
"type": "array",
13
13
"items": {
14
-
"type": "string",
15
-
"maxLength": 256,
16
-
"description": "A GIF identifier."
14
+
"ref": "social.colibri.beta.embed.defs#gifView",
15
+
"type": "ref"
17
16
},
18
-
"description": "GIFs the user saved from the picker."
17
+
"description": "GIFs the user saved from the picker, stored whole. A saved GIF has to render without another lookup, and an identifier cannot be turned back into one: a GIF favourited from a chat message carries its own URL as the id rather than a provider key, so no provider can resolve it."
18
+
},
19
+
"shareActivity": {
20
+
"type": "boolean",
21
+
"default": false,
22
+
"description": "Whether the AppView may read the user's listening records from the services they publish to and show what they are playing to others."
19
23
},
20
24
"communityOrder": {
21
25
"type": "array",
22
26
"items": {
23
27
"type": "string",
24
28
"format": "did",
25
29
"description": "A community."
26
30
},
27
31
"description": "The user's communities in their preferred sidebar order."
28
32
},
29
33
"notificationLevel": {
30
34
"type": "string",
31
35
"default": "all",
32
36
"description": "Which messages produce a notification.",
33
37
"knownValues": [
34
38
"all",
35
39
"mentionsAndReplies"
36
40
]
37
41
}
38
42
}
39
43
},
40
44
"description": "A user's Colibri settings."
41
45
}
42
46
},
43
47
"$type": "com.atproto.lexicon.schema",
44
48
"lexicon": 1
45
49
}