Skip to content

Commit 0e373c0

Browse files
AlexgodorojaAlex Godoroja
andauthored
publish: bundles is a v2-optional field, never bump catalogue to v3 (#27)
pilotctl loadCatalogue fail-closes on any version != 1 && != 2 (the catalogue's design is optional fields + forward/backward compat, no version bump). The multi-platform pipeline bumped to version 3 when it wrote a bundles map, which would make EVERY client reject the whole catalogue. Keep version 2 and add bundles as an optional field. Verified: a stock v1.12.1 client installs the darwin/arm64 bundle from a v2+bundles catalogue (the macOS-silicon fix). Co-authored-by: Alex Godoroja <alex@vulturelabs.io>
1 parent 5d17f5d commit 0e373c0

1 file changed

Lines changed: 5 additions & 1 deletion

File tree

scripts/publish-submission.sh

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,11 @@ BUNDLES_JSON="$(jq -c --arg base "$REL_BASE" '
5252
| map({key: .key, value: {bundle_url: ($base + "/" + .value.file), bundle_sha256: .value.sha256}})
5353
| from_entries
5454
' "$META")"
55-
CATVER=2; [ "$(jq -r 'length' <<<"$BUNDLES_JSON")" -gt 0 ] && CATVER=3
55+
# `bundles` is a v2-OPTIONAL field, NOT a version bump. pilotctl's loadCatalogue
56+
# fail-closes on any version != 1 && != 2, so emitting version 3 would make every
57+
# client reject the whole catalogue. Per the catalogue's own design (optional
58+
# fields, forward+backward compatible), keep version 2 and add bundles as a field.
59+
CATVER=2
5660

5761
BUNDLE_BYTES="$(wc -c < "$DIR/$PRIMARY_FILE" | tr -d ' ')"
5862
MDSRC="$DIR/metadata.json" # the v2 store-page record, emitted by `pilot-app submit`

0 commit comments

Comments
 (0)