garden.lexicon.exultant-zebra.distribution
Schema Diff
+41 -18
Compatibility Analysis
Breaking Changes Detected
11 breaking changes, 15 non-breaking changes.
Breaking Changes (11)
- RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "garden.lexicon.exultant-zebra.distribution#artifact", src: "garden.lexicon.exultant-zebra.distribution#artifact", tgt: "garden.lexicon.exultant-zebra.distribution#artifact.download", kind: "prop", name: Some("download") }
- RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "garden.lexicon.exultant-zebra.distribution:body", src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.version", kind: "prop", name: Some("version") }
- RequiredEdgeAdded RequiredEdgeAdded { vertex_id: "garden.lexicon.exultant-zebra.distribution:body", src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.artifacts", kind: "prop", name: Some("artifacts") }
- RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "garden.lexicon.exultant-zebra.distribution:body", src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.app", kind: "prop", name: Some("app") }
- RequiredEdgeRemoved RequiredEdgeRemoved { vertex_id: "garden.lexicon.exultant-zebra.distribution:body", src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.data", kind: "prop", name: Some("data") }
- RemovedVertex RemovedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.app" }
- RemovedVertex RemovedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.arch" }
- RemovedVertex RemovedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.data" }
- RemovedVertex RemovedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.os" }
- RemovedEdge RemovedEdge { src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.arch", kind: "prop", name: Some("arch") }
- RemovedEdge RemovedEdge { src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.os", kind: "prop", name: Some("os") }
Non-Breaking Changes (15)
- AddedVertex AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution#artifact" }
- AddedVertex AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution#artifact.description" }
- AddedVertex AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution#artifact.download" }
- AddedVertex AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution#artifact.tags" }
- AddedVertex AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution#artifact.tags:items" }
- AddedVertex AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.artifacts" }
- AddedVertex AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.artifacts:items" }
- AddedVertex AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.description" }
- AddedVertex AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.version" }
- AddedEdge AddedEdge { src: "garden.lexicon.exultant-zebra.distribution#artifact", tgt: "garden.lexicon.exultant-zebra.distribution#artifact.description", kind: "prop", name: Some("description") }
- AddedEdge AddedEdge { src: "garden.lexicon.exultant-zebra.distribution#artifact", tgt: "garden.lexicon.exultant-zebra.distribution#artifact.tags", kind: "prop", name: Some("tags") }
- AddedEdge AddedEdge { src: "garden.lexicon.exultant-zebra.distribution#artifact.tags", tgt: "garden.lexicon.exultant-zebra.distribution#artifact.tags:items", kind: "items", name: None }
- AddedEdge AddedEdge { src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.description", kind: "prop", name: Some("description") }
- AddedEdge AddedEdge { src: "garden.lexicon.exultant-zebra.distribution:body.artifacts", tgt: "garden.lexicon.exultant-zebra.distribution:body.artifacts:items", kind: "items", name: None }
- AddedEdge AddedEdge { src: "garden.lexicon.exultant-zebra.distribution:body.artifacts:items", tgt: "garden.lexicon.exultant-zebra.distribution#artifact", kind: "ref", name: None }
Migration Guidance
Removed Elements
RemovedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.app" }RemovedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.arch" }RemovedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.data" }RemovedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.os" }
Added Elements
AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution#artifact" }AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution#artifact.description" }AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution#artifact.download" }AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution#artifact.tags" }AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution#artifact.tags:items" }AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.artifacts" }AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.artifacts:items" }AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.description" }AddedVertex { vertex_id: "garden.lexicon.exultant-zebra.distribution:body.version" }
Additional Notes
- Breaking: RequiredEdgeAdded { vertex_id: "garden.lexicon.exultant-zebra.distribution:body", src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.version", kind: "prop", name: Some("version") }
- Breaking: RequiredEdgeAdded { vertex_id: "garden.lexicon.exultant-zebra.distribution:body", src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.artifacts", kind: "prop", name: Some("artifacts") }
- Breaking: RequiredEdgeAdded { vertex_id: "garden.lexicon.exultant-zebra.distribution#artifact", src: "garden.lexicon.exultant-zebra.distribution#artifact", tgt: "garden.lexicon.exultant-zebra.distribution#artifact.download", kind: "prop", name: Some("download") }
- Breaking: RequiredEdgeRemoved { vertex_id: "garden.lexicon.exultant-zebra.distribution:body", src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.app", kind: "prop", name: Some("app") }
- Breaking: RequiredEdgeRemoved { vertex_id: "garden.lexicon.exultant-zebra.distribution:body", src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.data", kind: "prop", name: Some("data") }
- Breaking: RemovedEdge { src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.arch", kind: "prop", name: Some("arch") }
- Breaking: RemovedEdge { src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.os", kind: "prop", name: Some("os") }
- Non-breaking: AddedEdge { src: "garden.lexicon.exultant-zebra.distribution#artifact", tgt: "garden.lexicon.exultant-zebra.distribution#artifact.description", kind: "prop", name: Some("description") }
- Non-breaking: AddedEdge { src: "garden.lexicon.exultant-zebra.distribution#artifact", tgt: "garden.lexicon.exultant-zebra.distribution#artifact.tags", kind: "prop", name: Some("tags") }
- Non-breaking: AddedEdge { src: "garden.lexicon.exultant-zebra.distribution#artifact.tags", tgt: "garden.lexicon.exultant-zebra.distribution#artifact.tags:items", kind: "items", name: None }
- Non-breaking: AddedEdge { src: "garden.lexicon.exultant-zebra.distribution:body", tgt: "garden.lexicon.exultant-zebra.distribution:body.description", kind: "prop", name: Some("description") }
- Non-breaking: AddedEdge { src: "garden.lexicon.exultant-zebra.distribution:body.artifacts", tgt: "garden.lexicon.exultant-zebra.distribution:body.artifacts:items", kind: "items", name: None }
- Non-breaking: AddedEdge { src: "garden.lexicon.exultant-zebra.distribution:body.artifacts:items", tgt: "garden.lexicon.exultant-zebra.distribution#artifact", kind: "ref", name: None }
1
1
{
2
2
"defs": {
3
+
"artifact": {
4
+
"description": "A downloadable artifact within a distribution.",
5
+
"properties": {
6
+
"description": {
7
+
"description": "An optional description of this artifact.",
8
+
"type": "string"
9
+
},
10
+
"download": {
11
+
"accept": [
12
+
"*/*"
13
+
],
14
+
"description": "The downloadable binary.",
15
+
"type": "blob"
16
+
},
17
+
"tags": {
18
+
"description": "Optional tags describing this artifact, e.g. 'aarch64', 'apple-darwin', 'linux'.",
19
+
"items": {
20
+
"type": "string"
21
+
},
22
+
"type": "array"
23
+
}
24
+
},
25
+
"required": [
26
+
"download"
27
+
],
28
+
"type": "object"
29
+
},
3
30
"main": {
4
-
"description": "A distribution of an application for a specific platform.",
31
+
"description": "A distribution of an application.",
5
32
"key": "tid",
6
33
"record": {
7
34
"properties": {
8
-
"app": {
9
-
"description": "AT-URI of the application this distribution belongs to.",
10
-
"format": "at-uri",
11
-
"type": "string"
35
+
"artifacts": {
36
+
"description": "The list of downloadable artifacts for this distribution.",
37
+
"items": {
38
+
"ref": "#artifact",
39
+
"type": "ref"
40
+
},
41
+
"type": "array"
12
42
},
13
-
"arch": {
14
-
"description": "The CPU architecture, e.g. 'aarch64', 'x86_64'.",
43
+
"description": {
44
+
"description": "An optional description of this distribution.",
15
45
"type": "string"
16
46
},
17
-
"data": {
18
-
"accept": [
19
-
"*/*"
20
-
],
21
-
"description": "The distribution binary.",
22
-
"type": "blob"
23
-
},
24
-
"os": {
25
-
"description": "The operating system and platform, e.g. 'apple-darwin', 'unknown-linux-gnu'.",
47
+
"version": {
48
+
"description": "The version of this distribution, e.g. '0.14.0'.",
26
49
"type": "string"
27
50
}
28
51
},
29
52
"required": [
30
-
"app",
31
-
"data"
53
+
"version",
54
+
"artifacts"
32
55
],
33
56
"type": "object"
34
57
},
35
58
"type": "record"
36
59
}
37
60
},
38
61
"id": "garden.lexicon.exultant-zebra.distribution",
39
62
"lexicon": 1
40
63
}