com.barryfrost.checkin
Schema Diff
+10 -0
Compatibility Analysis
Breaking Changes Detected
2 breaking changes, 4 non-breaking changes.
Breaking Changes (2)
- ConstraintAdded ConstraintAdded { vertex_id: "com.barryfrost.checkin:body.category", sort: "maxLength", value: "100" }
- ConstraintAdded ConstraintAdded { vertex_id: "com.barryfrost.checkin:body.address", sort: "maxLength", value: "500" }
Non-Breaking Changes (4)
- AddedVertex AddedVertex { vertex_id: "com.barryfrost.checkin:body.address" }
- AddedVertex AddedVertex { vertex_id: "com.barryfrost.checkin:body.category" }
- AddedEdge AddedEdge { src: "com.barryfrost.checkin:body", tgt: "com.barryfrost.checkin:body.address", kind: "prop", name: Some("address") }
- AddedEdge AddedEdge { src: "com.barryfrost.checkin:body", tgt: "com.barryfrost.checkin:body.category", kind: "prop", name: Some("category") }
Migration Guidance
Added Elements
AddedVertex { vertex_id: "com.barryfrost.checkin:body.address" }AddedVertex { vertex_id: "com.barryfrost.checkin:body.category" }
Constraint Changes
- ConstraintAdded ConstraintAdded { vertex_id: "com.barryfrost.checkin:body.address", sort: "maxLength", value: "500" }
- ConstraintAdded ConstraintAdded { vertex_id: "com.barryfrost.checkin:body.category", sort: "maxLength", value: "100" }
Additional Notes
- Non-breaking: AddedEdge { src: "com.barryfrost.checkin:body", tgt: "com.barryfrost.checkin:body.address", kind: "prop", name: Some("address") }
- Non-breaking: AddedEdge { src: "com.barryfrost.checkin:body", tgt: "com.barryfrost.checkin:body.category", kind: "prop", name: Some("category") }
1
1
{
2
2
"id": "com.barryfrost.checkin",
3
3
"defs": {
4
4
"main": {
5
5
"key": "tid",
6
6
"type": "record",
7
7
"record": {
8
8
"type": "object",
9
9
"required": [
10
10
"createdAt",
11
11
"location"
12
12
],
13
13
"properties": {
14
14
"photos": {
15
15
"type": "array",
16
16
"items": {
17
17
"type": "object",
18
18
"required": [
19
19
"image"
20
20
],
21
21
"properties": {
22
22
"alt": {
23
23
"type": "string",
24
24
"maxLength": 1000
25
25
},
26
26
"image": {
27
27
"type": "blob",
28
28
"accept": [
29
29
"image/jpeg",
30
30
"image/png",
31
31
"image/webp"
32
32
],
33
33
"maxSize": 1000000
34
34
}
35
35
}
36
36
},
37
37
"maxLength": 8,
38
38
"description": "Photos taken at the checkin, uploaded as PDS blobs"
39
39
},
40
+
"address": {
41
+
"type": "string",
42
+
"maxLength": 500,
43
+
"description": "Formatted venue address, e.g. \"123 High Street, London, UK\""
44
+
},
45
+
"category": {
46
+
"type": "string",
47
+
"maxLength": 100,
48
+
"description": "Primary Foursquare venue category, e.g. \"Coffee Shop\""
49
+
},
40
50
"location": {
41
51
"ref": "community.lexicon.location.fsq",
42
52
"type": "ref",
43
53
"description": "The Foursquare place where the checkin occurred"
44
54
},
45
55
"createdAt": {
46
56
"type": "string",
47
57
"format": "datetime",
48
58
"description": "ISO 8601 timestamp of the checkin"
49
59
}
50
60
}
51
61
},
52
62
"description": "A physical location checkin on Foursquare/Swarm"
53
63
}
54
64
},
55
65
"$type": "com.atproto.lexicon.schema",
56
66
"lexicon": 1
57
67
}