org.duckdns.uan1.actor.profile
Schema Diff
+24 -4
Compatibility Analysis
Backward Compatible
Backward compatible. 16 non-breaking changes.
Non-Breaking Changes (16)
- AddedVertex AddedVertex { vertex_id: "org.duckdns.uan1.actor.profile:body.gender" }
- AddedVertex AddedVertex { vertex_id: "org.duckdns.uan1.actor.profile:body.relationship" }
- AddedVertex AddedVertex { vertex_id: "org.duckdns.uan1.actor.profile:body.school" }
- AddedVertex AddedVertex { vertex_id: "org.duckdns.uan1.actor.profile:body.work" }
- AddedEdge AddedEdge { src: "org.duckdns.uan1.actor.profile:body", tgt: "org.duckdns.uan1.actor.profile:body.gender", kind: "prop", name: Some("gender") }
- AddedEdge AddedEdge { src: "org.duckdns.uan1.actor.profile:body", tgt: "org.duckdns.uan1.actor.profile:body.relationship", kind: "prop", name: Some("relationship") }
- AddedEdge AddedEdge { src: "org.duckdns.uan1.actor.profile:body", tgt: "org.duckdns.uan1.actor.profile:body.school", kind: "prop", name: Some("school") }
- AddedEdge AddedEdge { src: "org.duckdns.uan1.actor.profile:body", tgt: "org.duckdns.uan1.actor.profile:body.work", kind: "prop", name: Some("work") }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.bio", sort: "maxLength", old_value: "2560", new_value: "20000" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.bio", sort: "maxGraphemes", old_value: "256", new_value: "2000" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.location", sort: "maxLength", old_value: "640", new_value: "1280" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.location", sort: "maxGraphemes", old_value: "64", new_value: "128" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.hometown", sort: "maxGraphemes", old_value: "64", new_value: "128" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.hometown", sort: "maxLength", old_value: "640", new_value: "1280" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.displayName", sort: "maxLength", old_value: "640", new_value: "800" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.displayName", sort: "maxGraphemes", old_value: "64", new_value: "80" }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "org.duckdns.uan1.actor.profile:body.gender" }AddedVertex { vertex_id: "org.duckdns.uan1.actor.profile:body.relationship" }AddedVertex { vertex_id: "org.duckdns.uan1.actor.profile:body.school" }AddedVertex { vertex_id: "org.duckdns.uan1.actor.profile:body.work" }
Constraint Changes
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.displayName", sort: "maxLength", old_value: "640", new_value: "800" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.displayName", sort: "maxGraphemes", old_value: "64", new_value: "80" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.hometown", sort: "maxGraphemes", old_value: "64", new_value: "128" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.hometown", sort: "maxLength", old_value: "640", new_value: "1280" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.bio", sort: "maxLength", old_value: "2560", new_value: "20000" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.bio", sort: "maxGraphemes", old_value: "256", new_value: "2000" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.location", sort: "maxLength", old_value: "640", new_value: "1280" }
- ConstraintRelaxed ConstraintRelaxed { vertex_id: "org.duckdns.uan1.actor.profile:body.location", sort: "maxGraphemes", old_value: "64", new_value: "128" }
Additional Notes
- Non-breaking: AddedEdge { src: "org.duckdns.uan1.actor.profile:body", tgt: "org.duckdns.uan1.actor.profile:body.gender", kind: "prop", name: Some("gender") }
- Non-breaking: AddedEdge { src: "org.duckdns.uan1.actor.profile:body", tgt: "org.duckdns.uan1.actor.profile:body.relationship", kind: "prop", name: Some("relationship") }
- Non-breaking: AddedEdge { src: "org.duckdns.uan1.actor.profile:body", tgt: "org.duckdns.uan1.actor.profile:body.school", kind: "prop", name: Some("school") }
- Non-breaking: AddedEdge { src: "org.duckdns.uan1.actor.profile:body", tgt: "org.duckdns.uan1.actor.profile:body.work", kind: "prop", name: Some("work") }
1
1
{
2
2
"$type": "com.atproto.lexicon.schema",
3
3
"defs": {
4
4
"main": {
5
5
"description": "Profile fields for one audience; the AppView merges the copies the viewer can read.",
6
6
"key": "literal:self",
7
7
"record": {
8
8
"properties": {
9
9
"avatar": {
10
10
"accept": [
11
11
"image/png",
12
12
"image/jpeg",
13
13
"image/webp"
14
14
],
15
15
"maxSize": 1000000,
16
16
"type": "blob"
17
17
},
18
18
"bio": {
19
-
"maxGraphemes": 256,
20
-
"maxLength": 2560,
19
+
"maxGraphemes": 2000,
20
+
"maxLength": 20000,
21
21
"type": "string"
22
22
},
23
23
"birthday": {
24
24
"description": "YYYY-MM-DD or --MM-DD.",
25
25
"maxLength": 10,
26
26
"type": "string"
27
27
},
28
28
"createdAt": {
29
29
"format": "datetime",
30
30
"type": "string"
31
31
},
32
32
"displayName": {
33
+
"maxGraphemes": 80,
34
+
"maxLength": 800,
35
+
"type": "string"
36
+
},
37
+
"gender": {
33
38
"maxGraphemes": 64,
34
39
"maxLength": 640,
35
40
"type": "string"
36
41
},
37
42
"hometown": {
38
-
"maxGraphemes": 64,
39
-
"maxLength": 640,
43
+
"maxGraphemes": 128,
44
+
"maxLength": 1280,
40
45
"type": "string"
41
46
},
42
47
"location": {
48
+
"maxGraphemes": 128,
49
+
"maxLength": 1280,
50
+
"type": "string"
51
+
},
52
+
"relationship": {
43
53
"maxGraphemes": 64,
44
54
"maxLength": 640,
45
55
"type": "string"
46
56
},
57
+
"school": {
58
+
"maxGraphemes": 128,
59
+
"maxLength": 1280,
60
+
"type": "string"
61
+
},
47
62
"website": {
48
63
"format": "uri",
49
64
"type": "string"
65
+
},
66
+
"work": {
67
+
"maxGraphemes": 128,
68
+
"maxLength": 1280,
69
+
"type": "string"
50
70
}
51
71
},
52
72
"type": "object"
53
73
},
54
74
"type": "record"
55
75
}
56
76
},
57
77
"id": "org.duckdns.uan1.actor.profile",
58
78
"lexicon": 1
59
79
}