dev.mccue.jvm.module

mccue.dev

Schema Diff

+63 -18

From

CID
bafyreic4jnmhq7y...
Indexed At
2026-05-30 02:55 UTC
View this version

To

CID
bafyreicq5mwjxtb...
Indexed At
2026-05-30 20:42 UTC
View this version

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
}

Compare Other Versions

Lexicon Garden

@