dev.mccue.jvm.module
Schema Diff
+63 -18
Compatibility Analysis
Breaking Changes Detected
6 breaking changes, 22 non-breaking changes.
Breaking Changes (6)
- RemovedVertex RemovedVertex { vertex_id: "dev.mccue.jvm.module:body.artifact" }
- RemovedVertex RemovedVertex { vertex_id: "dev.mccue.jvm.module:body.billOfMaterials" }
- RemovedVertex RemovedVertex { vertex_id: "dev.mccue.jvm.module:body.license" }
- RemovedEdge RemovedEdge { src: "dev.mccue.jvm.module:body", tgt: "dev.mccue.jvm.module:body.artifact", kind: "prop", name: Some("artifact") }
- RemovedEdge RemovedEdge { src: "dev.mccue.jvm.module:body", tgt: "dev.mccue.jvm.module:body.billOfMaterials", kind: "prop", name: Some("billOfMaterials") }
- RemovedEdge RemovedEdge { src: "dev.mccue.jvm.module:body", tgt: "dev.mccue.jvm.module:body.license", kind: "prop", name: Some("license") }
Non-Breaking Changes (22)
- AddedVertex AddedVertex { vertex_id: "dev.mccue.jvm.module#url" }
- AddedVertex AddedVertex { vertex_id: "dev.mccue.jvm.module#variant" }
- AddedVertex AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.artifact" }
- AddedVertex AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.billOfMaterials" }
- AddedVertex AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.cpuArchitecture" }
- AddedVertex AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.license" }
- AddedVertex AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.operatingSystem" }
- AddedVertex AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.sourcedFrom" }
- AddedVertex AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.sourcedFrom:variant0" }
- AddedVertex AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.sourcedFrom:variant1" }
- AddedVertex AddedVertex { vertex_id: "dev.mccue.jvm.module:body.variants" }
- AddedVertex AddedVertex { vertex_id: "dev.mccue.jvm.module:body.variants:items" }
- AddedEdge AddedEdge { src: "dev.mccue.jvm.module#variant", tgt: "dev.mccue.jvm.module#variant.artifact", kind: "prop", name: Some("artifact") }
- AddedEdge AddedEdge { src: "dev.mccue.jvm.module#variant", tgt: "dev.mccue.jvm.module#variant.billOfMaterials", kind: "prop", name: Some("billOfMaterials") }
- AddedEdge AddedEdge { src: "dev.mccue.jvm.module#variant", tgt: "dev.mccue.jvm.module#variant.cpuArchitecture", kind: "prop", name: Some("cpuArchitecture") }
- AddedEdge AddedEdge { src: "dev.mccue.jvm.module#variant", tgt: "dev.mccue.jvm.module#variant.license", kind: "prop", name: Some("license") }
- AddedEdge AddedEdge { src: "dev.mccue.jvm.module#variant", tgt: "dev.mccue.jvm.module#variant.operatingSystem", kind: "prop", name: Some("operatingSystem") }
- AddedEdge AddedEdge { src: "dev.mccue.jvm.module#variant", tgt: "dev.mccue.jvm.module#variant.sourcedFrom", kind: "prop", name: Some("sourcedFrom") }
- AddedEdge AddedEdge { src: "dev.mccue.jvm.module#variant.sourcedFrom", tgt: "dev.mccue.jvm.module#variant.sourcedFrom:variant0", kind: "variant", name: Some("com.atproto.repo.strongRef") }
- AddedEdge AddedEdge { src: "dev.mccue.jvm.module#variant.sourcedFrom", tgt: "dev.mccue.jvm.module#variant.sourcedFrom:variant1", kind: "variant", name: Some("dev.mccue.jvm.module#url") }
- AddedEdge AddedEdge { src: "dev.mccue.jvm.module:body", tgt: "dev.mccue.jvm.module:body.variants", kind: "prop", name: Some("variants") }
- AddedEdge AddedEdge { src: "dev.mccue.jvm.module:body.variants", tgt: "dev.mccue.jvm.module:body.variants:items", kind: "items", name: None }
Migration Guidance
Removed Elements
RemovedVertex { vertex_id: "dev.mccue.jvm.module:body.artifact" }RemovedVertex { vertex_id: "dev.mccue.jvm.module:body.billOfMaterials" }RemovedVertex { vertex_id: "dev.mccue.jvm.module:body.license" }
Added Elements
AddedVertex { vertex_id: "dev.mccue.jvm.module#url" }AddedVertex { vertex_id: "dev.mccue.jvm.module#variant" }AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.artifact" }AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.billOfMaterials" }AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.cpuArchitecture" }AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.license" }AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.operatingSystem" }AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.sourcedFrom" }AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.sourcedFrom:variant0" }AddedVertex { vertex_id: "dev.mccue.jvm.module#variant.sourcedFrom:variant1" }AddedVertex { vertex_id: "dev.mccue.jvm.module:body.variants" }AddedVertex { vertex_id: "dev.mccue.jvm.module:body.variants:items" }
Additional Notes
- Breaking: RemovedEdge { src: "dev.mccue.jvm.module:body", tgt: "dev.mccue.jvm.module:body.artifact", kind: "prop", name: Some("artifact") }
- Breaking: RemovedEdge { src: "dev.mccue.jvm.module:body", tgt: "dev.mccue.jvm.module:body.billOfMaterials", kind: "prop", name: Some("billOfMaterials") }
- Breaking: RemovedEdge { src: "dev.mccue.jvm.module:body", tgt: "dev.mccue.jvm.module:body.license", kind: "prop", name: Some("license") }
- Non-breaking: AddedEdge { src: "dev.mccue.jvm.module#variant", tgt: "dev.mccue.jvm.module#variant.artifact", kind: "prop", name: Some("artifact") }
- Non-breaking: AddedEdge { src: "dev.mccue.jvm.module#variant", tgt: "dev.mccue.jvm.module#variant.billOfMaterials", kind: "prop", name: Some("billOfMaterials") }
- Non-breaking: AddedEdge { src: "dev.mccue.jvm.module#variant", tgt: "dev.mccue.jvm.module#variant.cpuArchitecture", kind: "prop", name: Some("cpuArchitecture") }
- Non-breaking: AddedEdge { src: "dev.mccue.jvm.module#variant", tgt: "dev.mccue.jvm.module#variant.license", kind: "prop", name: Some("license") }
- Non-breaking: AddedEdge { src: "dev.mccue.jvm.module#variant", tgt: "dev.mccue.jvm.module#variant.operatingSystem", kind: "prop", name: Some("operatingSystem") }
- Non-breaking: AddedEdge { src: "dev.mccue.jvm.module#variant", tgt: "dev.mccue.jvm.module#variant.sourcedFrom", kind: "prop", name: Some("sourcedFrom") }
- Non-breaking: AddedEdge { src: "dev.mccue.jvm.module#variant.sourcedFrom", tgt: "dev.mccue.jvm.module#variant.sourcedFrom:variant0", kind: "variant", name: Some("com.atproto.repo.strongRef") }
- Non-breaking: AddedEdge { src: "dev.mccue.jvm.module#variant.sourcedFrom", tgt: "dev.mccue.jvm.module#variant.sourcedFrom:variant1", kind: "variant", name: Some("dev.mccue.jvm.module#url") }
- Non-breaking: AddedEdge { src: "dev.mccue.jvm.module:body", tgt: "dev.mccue.jvm.module:body.variants", kind: "prop", name: Some("variants") }
- Non-breaking: AddedEdge { src: "dev.mccue.jvm.module:body.variants", tgt: "dev.mccue.jvm.module:body.variants:items", kind: "items", name: None }
1
1
{
2
2
"id": "dev.mccue.jvm.module",
3
3
"defs": {
4
+
"url": {
5
+
"type": "string",
6
+
"description": "Url where a module was sourced from. May be a package url such as pkg:maven/org.slf4j/slf4j-api@2.0.18 or a \"normal\" url like https://download.oracle.com/java/25/latest/jdk-25_windows-x64_bin.zip."
7
+
},
4
8
"main": {
5
9
"key": "any",
6
10
"type": "record",
7
11
"record": {
8
12
"type": "object",
9
13
"required": [
10
-
"artifact",
14
+
"variants",
11
15
"createdAt"
12
16
],
13
17
"properties": {
14
18
"indexMe": {
15
19
"type": "boolean",
16
-
"default": false,
17
-
"description": "Whether this module should is intented for listing on public indexes"
18
-
},
19
-
"license": {
20
-
"type": "string",
21
-
"description": "SPDX License String"
20
+
"default": false
22
21
},
23
-
"artifact": {
24
-
"type": "blob",
25
-
"accept": [
26
-
"application/zip",
27
-
"application/java-archive"
28
-
],
29
-
"maxSize": 10000000
22
+
"variants": {
23
+
"type": "array",
24
+
"items": {
25
+
"ref": "dev.mccue.jvm.module#variant",
26
+
"type": "ref"
27
+
},
28
+
"minLength": 1,
29
+
"description": "Variants of the same module at the same 'version'"
30
30
},
31
31
"createdAt": {
32
32
"type": "string",
33
33
"format": "datetime"
34
-
},
35
-
"billOfMaterials": {
36
-
"type": "string",
37
-
"description": "SBOM in CycloneDX format"
38
34
}
39
35
}
40
36
},
41
37
"description": "A JVM Module published for wider consumption."
38
+
},
39
+
"variant": {
40
+
"type": "object",
41
+
"required": [
42
+
"artifact"
43
+
],
44
+
"properties": {
45
+
"license": {
46
+
"type": "string",
47
+
"description": "SPDX License String"
48
+
},
49
+
"artifact": {
50
+
"type": "blob",
51
+
"accept": [
52
+
"application/zip",
53
+
"application/java-archive"
54
+
],
55
+
"maxSize": 10000000
56
+
},
57
+
"sourcedFrom": {
58
+
"refs": [
59
+
"com.atproto.repo.strongRef",
60
+
"dev.mccue.jvm.module#url"
61
+
],
62
+
"type": "union",
63
+
"description": "A reference to where this module was copied from."
64
+
},
65
+
"billOfMaterials": {
66
+
"type": "string",
67
+
"description": "SBOM in CycloneDX format"
68
+
},
69
+
"cpuArchitecture": {
70
+
"type": "string",
71
+
"description": "The cpu architecture that the module is specific to.",
72
+
"knownValues": [
73
+
"amd64",
74
+
"aarch64"
75
+
]
76
+
},
77
+
"operatingSystem": {
78
+
"type": "string",
79
+
"description": "The operating system that the module is specific to.",
80
+
"knownValues": [
81
+
"windows",
82
+
"macos",
83
+
"linux"
84
+
]
85
+
}
86
+
}
42
87
}
43
88
},
44
89
"$type": "com.atproto.lexicon.schema",
45
90
"lexicon": 1
46
91
}