diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index d06483704..11ce3f745 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -111,6 +111,18 @@ jobs: - name: go test run: go test ./... + # The projection's three controls (SPEC §3.1): a projection that stopped + # carrying enum and flags variant names, or a union's arm names, would + # let a reorder ship as a false match, and one without the codec law line + # would let a rounding change ship as one. Only a control that has gone + # red proves a gate is watching. All three are Go-only and take seconds, + # so they belong on the diff. + - name: the projection's gates go red without what they watch + run: | + make projection-variant-order-negative-control + make projection-wire-law-negative-control + make projection-union-arm-order-negative-control + # THE GENERATED TREE IS CURRENT (issue #30). The committed generated/ tree is # what this repo treats as ground truth — findings are receipted against its # line numbers — so a compiler change that moves the emitted text and leaves diff --git a/Makefile b/Makefile index 215f38b4f..4a73414d8 100644 --- a/Makefile +++ b/Makefile @@ -1720,6 +1720,113 @@ check-zero-range-negative-control: bin/schema test/zero_range_negative_main.cpp test/zero_range_negative_main.cpp -o build/schema_test_zero_range_negative ./build/schema_test_zero_range_negative +# THE VARIANT-ORDER NEGATIVE CONTROL (SPEC §3.1, issue #462). An enum value +# rides as its declaration ordinal and a flags variant as its bit position, so +# the projection carries both declarations' variant names in declaration order: +# without them a reorder is invisible and two builds either side of an +# alphabetized enum hold ONE id while every ordinal means something else. +# +# The control takes the variant lists back out of a COPY of the rendering +# through `go test -overlay` — no tracked file is written — and the reorder +# gate must go RED, on that surface and NOT on the union's, whose order rides +# in its payload types and must stay green under the same sabotage. +.PHONY: projection-variant-order-negative-control +projection-variant-order-negative-control: + @mkdir -p build + @sed -e 's|fmt.Fprintf(&b, " variant %d name=.*, i+1, v)$$|_, _ = i, v // SABOTAGED: the enum variant list removed|' \ + -e 's|fmt.Fprintf(&b, " bit %d name=.*|_, _ = i, v // SABOTAGED: the flags variant list removed|' \ + ir/projection.go > build/projection-no-variants.gotext + @[ "$$(grep -c SABOTAGED build/projection-no-variants.gotext)" = "2" ] || \ + { echo "NEGATIVE CONTROL FAILED: the sabotage did not remove both variant lists"; exit 1; } + @printf '{"Replace":{"%s/ir/projection.go":"%s/build/projection-no-variants.gotext"}}\n' \ + "$(CURDIR)" "$(CURDIR)" > build/projection-no-variants-overlay.json + @if go test -count=1 -overlay=build/projection-no-variants-overlay.json \ + ./internal/check -run TestIdMovesUnderVariantOrder > build/projection-no-variants.log 2>&1; then \ + echo "NEGATIVE CONTROL FAILED: the reorder gate passed with the variant lists gone"; \ + cat build/projection-no-variants.log; exit 1; \ + fi + @grep -q "an enum reordered did NOT move the protocol id" build/projection-no-variants.log || \ + { echo "NEGATIVE CONTROL FAILED: it went red, but not on the enum reorder"; \ + cat build/projection-no-variants.log; exit 1; } + @grep -q "a flags declaration reordered did NOT move the protocol id" build/projection-no-variants.log || \ + { echo "NEGATIVE CONTROL FAILED: it went red, but not on the flags reorder"; \ + cat build/projection-no-variants.log; exit 1; } + @go test -count=1 -overlay=build/projection-no-variants-overlay.json \ + ./internal/check -run 'TestUnionId' > build/projection-no-variants-union.log 2>&1 || \ + { echo "NEGATIVE CONTROL FAILED: the sabotage reddened the union gate too — it is not surgical"; \ + cat build/projection-no-variants-union.log; exit 1; } + @echo "negative control: without the variant lists the enum and flags reorders go silent, and the union gate stays green" + +# THE CODEC LAW NEGATIVE CONTROL (SPEC §3.1, issue #463). The projection's +# second version line is what a compiler change that moves the BYTES under an +# unchanged shape rides on — the 2026-08-15 rounding amendment moved bytes with +# every id unmoved, which is a false match. Take the line out of a COPY of the +# rendering and both law gates must go red, while the variant-order gate, +# which the line has nothing to do with, stays green. +.PHONY: projection-wire-law-negative-control +projection-wire-law-negative-control: + @mkdir -p build + @sed -e 's|fmt.Fprintf(&b, "schema-wire-law .*|// SABOTAGED: the codec law line removed|' \ + ir/projection.go > build/projection-no-wire-law.gotext + @grep -q SABOTAGED build/projection-no-wire-law.gotext || \ + { echo "NEGATIVE CONTROL FAILED: the sabotage did not remove the codec law line"; exit 1; } + @printf '{"Replace":{"%s/ir/projection.go":"%s/build/projection-no-wire-law.gotext"}}\n' \ + "$(CURDIR)" "$(CURDIR)" > build/projection-no-wire-law-overlay.json + @if go test -count=1 -overlay=build/projection-no-wire-law-overlay.json \ + ./internal/check -run TestWireLawLineMovesTheId > build/projection-no-wire-law.log 2>&1; then \ + echo "NEGATIVE CONTROL FAILED: the law gate passed with the line gone"; \ + cat build/projection-no-wire-law.log; exit 1; \ + fi + @grep -q "the projection must open with its rendering version and then its codec law" build/projection-no-wire-law.log || \ + { echo "NEGATIVE CONTROL FAILED: it went red, but not on the missing law line"; \ + cat build/projection-no-wire-law.log; exit 1; } + @if go test -count=1 -overlay=build/projection-no-wire-law-overlay.json \ + ./internal/goldens -run TestWireLawBumpMovesEveryId > build/projection-no-wire-law-corpus.log 2>&1; then \ + echo "NEGATIVE CONTROL FAILED: every corpus id survived the line's removal in silence"; \ + cat build/projection-no-wire-law-corpus.log; exit 1; \ + fi + @grep -q "does not carry the codec law line" build/projection-no-wire-law-corpus.log || \ + { echo "NEGATIVE CONTROL FAILED: the corpus gate went red for another reason"; \ + cat build/projection-no-wire-law-corpus.log; exit 1; } + @go test -count=1 -overlay=build/projection-no-wire-law-overlay.json \ + ./internal/check -run TestIdMovesUnderVariantOrder > build/projection-no-wire-law-variants.log 2>&1 || \ + { echo "NEGATIVE CONTROL FAILED: the sabotage reddened the variant-order gate too — it is not surgical"; \ + cat build/projection-no-wire-law-variants.log; exit 1; } + @echo "negative control: without the codec law line both law gates go red, and the variant-order gate stays green" + +# THE UNION ARM-ORDER NEGATIVE CONTROL (SPEC §3.1, §4.8, issue #491). A union's +# arm order rides in its payload types only while the arms DIFFER in type: two +# arms of one type reorder with every projected type unmoved, so the arm names +# project beside them. Take the names out of a COPY of the rendering and the +# same-typed reorder goes silent, while the enum and flags gate — which the arm +# names have nothing to do with — stays green. +.PHONY: projection-union-arm-order-negative-control +projection-union-arm-order-negative-control: + @mkdir -p build + @sed -E -e 's|" variant %d name=%s payload=|" variant %d payload=|' \ + -e 's|i\+1, v\.Name, v\.Type\)|i+1, v.Type) // SABOTAGED: the arm names removed|' \ + ir/projection.go > build/projection-no-arm-names.gotext + @grep -q SABOTAGED build/projection-no-arm-names.gotext || \ + { echo "NEGATIVE CONTROL FAILED: the sabotage did not remove the arm names"; exit 1; } + @printf '{"Replace":{"%s/ir/projection.go":"%s/build/projection-no-arm-names.gotext"}}\n' \ + "$(CURDIR)" "$(CURDIR)" > build/projection-no-arm-names-overlay.json + @if go test -count=1 -overlay=build/projection-no-arm-names-overlay.json \ + ./internal/check -run 'TestUnionId' > build/projection-no-arm-names.log 2>&1; then \ + echo "NEGATIVE CONTROL FAILED: the union gates passed with the arm names gone"; \ + cat build/projection-no-arm-names.log; exit 1; \ + fi + @grep -q "two arms of one payload type reordered and the id did not move" build/projection-no-arm-names.log || \ + { echo "NEGATIVE CONTROL FAILED: it went red, but not on the same-typed reorder"; \ + cat build/projection-no-arm-names.log; exit 1; } + @grep -q "an arm renamed (arm order is spelled in names) did NOT move the protocol id" build/projection-no-arm-names.log || \ + { echo "NEGATIVE CONTROL FAILED: it went red, but not on the arm rename"; \ + cat build/projection-no-arm-names.log; exit 1; } + @go test -count=1 -overlay=build/projection-no-arm-names-overlay.json \ + ./internal/check -run TestIdMovesUnderVariantOrder > build/projection-no-arm-names-variants.log 2>&1 || \ + { echo "NEGATIVE CONTROL FAILED: the sabotage reddened the variant-order gate too — it is not surgical"; \ + cat build/projection-no-arm-names-variants.log; exit 1; } + @echo "negative control: without the arm names a same-typed union reorder goes silent, and the variant-order gate stays green" + # Deliberately compiled WITHOUT -I$(SERIALIZE): the generated Table headers # carry no serialize dependency, and this build proves it stays that way. # @@ -2106,6 +2213,9 @@ test: build/schema_test build/schema_test_guard build/schema_test_tables build/s ./build/schema_test ./build/schema_test_guard $(MAKE) check-zero-range-negative-control + $(MAKE) projection-variant-order-negative-control + $(MAKE) projection-wire-law-negative-control + $(MAKE) projection-union-arm-order-negative-control ./build/schema_test_tables ./build/schema_test_tables_asan # THE WIRE FUZZER (docs/SPEC-TABLES.md §4.2): the tolerant read on hostile diff --git a/docs/FAQ.md b/docs/FAQ.md index b4c9e017f..e51d0c058 100644 --- a/docs/FAQ.md +++ b/docs/FAQ.md @@ -185,9 +185,14 @@ serve, and Protobuf does. The id hashes a **wire shape projection**, not the source text, so an edit that moves no bytes does not move the id: a comment, a blank line, a renamed -file, a renamed enum variant. Run `schema projection` to see exactly what it -depends on — it is deliberately printable, because a wire-affecting fact -missing from that text would be a fact the id ignores. +file, a renamed `const`. Renaming an enum variant, a flags variant +or a union arm is not in that list: the ordinal is the wire and the ordered +names are the only record of which ordinal means what, so a reorder — and +therefore a rename — moves the id. + +Run `schema projection` to see exactly what it depends on — it is +deliberately printable, because a wire-affecting fact missing from that text +would be a fact the id ignores. ## Why AGPL? My lawyer will hate this. diff --git a/docs/SPEC-TABLES.md b/docs/SPEC-TABLES.md index d6f282c1e..317a7ebd6 100644 --- a/docs/SPEC-TABLES.md +++ b/docs/SPEC-TABLES.md @@ -3108,13 +3108,13 @@ only. | the edit | the read report | the baseline | the build version | |---|---|---|---| | a specified DEFAULT changed, added or removed | silent | **refuses** | **moves** | -| a FLAGS variant inserted, removed, reordered or renamed in place | silent | **refuses** | no — a mask rides raw and a load copies it verbatim | +| a FLAGS variant inserted, removed, reordered or renamed in place | silent | **refuses** | **moves**, through the protocol id: the bit positions are the declaration's variant names and they ride in the wire-shape projection (SPEC.md §3.1). The cook projection carries them itself once #435 lands | | a field's REFERENT dropped, or swapped for one that cannot stand in | silent | **refuses** | **moves** | | a field's wire KIND, or an array's ELEMENT kind, changed | `kind_mismatch` | **refuses** | **moves** | | an array changed between keyed and positional, or its KEY enum swapped | `kind_mismatch` | **refuses** | **moves** | | a declared RANGE tightened — a maximum lowered, a minimum raised, or a range declared where the field had none | `clamped` | **warns** — the `min=`/`max=` tokens are extents like a capacity (§18.1) | **moves** | | a fixed field's `F` moved under the same storage width | silent — the kind carries the width and the signedness, and `F` is a declaration-side fact like a resolution (§3) | **refuses** — the `frac=` token is a fixed fact (§18.1) | **moves** | -| an `enum`'s or a `union`'s variant order or names moved | `unknown` for a name this reader lacks; a reorder is silent and safe | warns on a removal or a vanished name | **moves** | +| an `enum`'s or a `union`'s variant order or names moved | `unknown` for a name this reader lacks; a reorder is silent and safe | warns on a removal or a vanished name | **moves**, and so does the protocol id: both vocabularies project their ordered names (SPEC.md §3.1) | | a union ARM's declared TYPE changed | `kind_mismatch` or `malformed` wherever the arm's `L` or its framing can see it; **silent** for the four retypes §3 names | **refuses** | **moves** | | a union arm moved between a BODY and a POINTER — `T` to `*T` | `kind_mismatch` or `malformed`, in both directions: no conforming writer emits a four-byte body, and a node index read as one is stopped by the terminator rule (§3) | **refuses** — no kind byte separates the two one level down, which is why this row differs from the FIELD's above | **moves** | | a field added, removed or reordered | `unknown` for an id this reader lacks; an absent field defaults | passes; a removal AND an addition in one table in one edit **warn** as the pair a bare rename leaves (§18.2) | **moves** | @@ -4446,7 +4446,7 @@ with `scene.name = "hi"`, `scene.head = A`, `A.next = B`, `A.value = 1`, length at 8 — the buffer aligns at one and the length at four — then `head` at 16 and `palette` at 24, `sizeof=32 alignof=8`. `schema build-version --facts` prints those same numbers, and the id over them is - `0x4efe97313c704bb5`. + `0x355ef4922f004a7f`. - **The numbering** is §3.1's walk: the root is 1; `head` reaches A, so A is 2; descending A, `next` reaches B, so B is 3; then `palette` reaches P, so P is 4. @@ -4462,7 +4462,7 @@ with `scene.name = "hi"`, `scene.head = A`, `A.next = B`, `A.value = 1`, ``` 0000 53 43 48 4d 43 4f 4f 4b magic "SCHMCOOK" -0008 b5 4b 70 3c 31 97 fe 4e build_version 0x4efe97313c704bb5 +0008 7f 4a 00 2f 92 f4 5e 35 build_version 0x355ef4922f004a7f 0010 01 00 00 00 00 00 00 00 byte_order = 1 (little) 0018 48 00 00 00 00 00 00 00 data_length = 72 0020 40 00 00 00 00 00 00 00 attribution_length = 64 @@ -9887,10 +9887,14 @@ a second digest. line sees: a specified default changed; **a declared range tightened**; **a `bits(N)` narrowed within one storage width** — the case where the implied range moves and the storage kind, the size and the wire id do not; an `enum` - variant renamed; two `enum` variants swapped; **a `union` arm RENAMED** — - the rename and not a reorder, because SPEC.md §3.1 already puts union - variant ORDER in the protocol id, so a reorder would pass through group 1 - with group 3's union fact deleted. + variant renamed; two `enum` variants swapped; **a `union` arm RENAMED**; + **a `flags` variant REORDERED, and one RENAMED**. Those four rows now ride + group 1 as well, because SPEC.md §3.1 projects every vocabulary's ordered + names and the protocol id rides here in whole (§20.1) — so each proves the + build version moves, and none of them isolates group 3's own vocabulary + tokens any more. **What isolates them is a TABLE-ARMED union's arm renamed** + (§2.6): such a union has no packet wire, so the protocol id cannot cover it + and only the cook projection's `union=`/`payload=` tokens can see the edit. - **The layout group's own controls**: a field's KIND changed with its width unmoved; a field's offset moved with the record's `sizeof` unmoved; **a declared maximum raised** — which moves it, and whose §19.4 consequence is @@ -9907,10 +9911,9 @@ a second digest. unchanged. - **The exclusions, each with the edit that proves it**: a `was` rename moves - nothing; **a `flags` variant REORDERED moves nothing** — the row the - discipline of §4.1 and the baseline of §18 own instead; a `flags` variant - renamed moves nothing; **a flags field's REFERENT swapped for a same-width - other moves nothing** — the negative control for the missing `flags=` token; + nothing; **a flags field's REFERENT swapped for a same-width + other moves nothing** — the negative control for the missing `flags=` token, + and a table body's field, so the protocol id does not cover it either; a guard added or removed moves nothing; a `json` key changed moves nothing; a comment, a file split and a reorder of two records' declarations move nothing. diff --git a/docs/SPEC.md b/docs/SPEC.md index a176d8202..491137dc5 100644 --- a/docs/SPEC.md +++ b/docs/SPEC.md @@ -136,19 +136,35 @@ count; fixed `I` and `F`; specified defaults (both ends must agree on the value a constructor materializes — untaken branches read as ZEROS, never defaults, per §5); branch structure; `const`/`reserved`/`align` items; enum max and storage -bits; flags wire bits; union variant order and count, and each ARM's OWN -FIELD FACTS. The tag is positional and the arm is the wire (§4.8), so an arm -contributes what a field of its type contributes, and an arm with no payload -contributes that it has none. The +bits; **every enum's variant names in declaration order**; flags wire bits +and **every flags declaration's variant names in declaration order**; union +arm order and count, **every arm's NAME in declaration order**, and each +ARM's OWN FIELD FACTS. The tag is positional and the arm is the wire (§4.8), +so an arm contributes what a field of its type contributes, and an arm with +no payload contributes that it has none. The projection also carries FROZEN tokens — `table=false message=false` on every type line and `round=nearest` on every compressed-float field line — kept so the refusals of §4.11 moved no id; dropping one is a `ProjectionVersion` bump. +**Why the names, when the ordinal is the wire.** An enum value rides as its +declaration ordinal, a flags variant as its bit position, a union arm as its +tag, so a REORDER changes what every stored ordinal, every set bit and every +tag means while the shape — the count, the storage, the mask width, the +payload types — stays exactly where it was. The ordered names are the only +record of which ordinal means what; without them the two builds either side +of an alphabetized enum hold one id and read each other's values as the wrong +variant, which is the spurious MATCH this projection exists to refuse. A +union's arm names are load-bearing in one shape the payload types cannot +describe: two arms of the SAME payload type reorder with every projected type +unmoved, and tag 1 then means one arm on one build and the other on the +other. The consequence throughout is that a RENAME moves the id too, since +order is spelled in names and nothing else. That is the price and it is free: +both sides of a connection redeploy together, so the rename buys the redeploy +that was already happening. + **Excluded — each has no effect on the bytes:** comments and whitespace; file -names, file layout and declaration order; enum variant names, union variant -names included (the ordinal is the wire — renaming `Red` to `Crimson`, or a -union's `box` to `crate`, leaves every byte identical); `const` +names, file layout and declaration order; `const` declarations (their values are already resolved into the bounds above); type tags and native-type attributes. @@ -156,9 +172,18 @@ tags and native-type attributes. table has no packet wire, so an arm that names one has no packet encoding to project (SPEC-TABLES.md §2.6). -**The projection is versioned.** `ProjectionVersion` rides its first line, so -a change to the rendering itself moves every id deliberately and visibly -rather than silently. +**The projection carries two version lines.** `ProjectionVersion` rides the +first, so a change to the RENDERING moves every id deliberately and visibly +rather than silently. `WireLaw` rides the second, and it is the CODEC LAW's +version: the compiler's own rules for turning a value into bytes and bytes +back into a value, which the rendering cannot see. **Any compiler change that +can alter, for the same schema and the same values, the encoded bytes, the +inputs accepted, the reads rejected, the defaults materialized, or a numeric +conversion bumps `WireLaw`, and every protocol id in existence moves with +it** — in a minor release, announced first. The invariant the line exists to +hold: no generated byte and no read decision may change for the same schema +and input without the protocol id changing. Generated files carry the id +alone, so a bump costs no per-release churn in the tree. **The property, tested in both directions** (`internal/check/projection_test.go`): an edit that moves no bytes must not @@ -182,12 +207,14 @@ Consequences, in both directions: like a used one. Accepted: it fails safe (sides refuse to talk when they actually could), and under the ship-together model the redeploy was happening anyway. -- **File layout, declaration order, comments, whitespace, and enum variant - renames move nothing.** +- **File layout, declaration order across files, comments and whitespace move + nothing.** Variant order inside an enum or a flags declaration is not + declaration order in this sense: it is the wire, and it moves the id (§3.1). - **Adding a target language never moves the id**, and a compiler upgrade - moves it only through a deliberate `ProjectionVersion` bump. The corollary - is a real obligation on the compiler: the same schema must produce the same - wire across compiler versions. The conformance corpus's golden wire bytes + moves it only through a deliberate `ProjectionVersion` or `WireLaw` bump. + The corollary is a real obligation on the compiler: the same schema must + produce the same wire across compiler versions, which is what the second + line holds. The conformance corpus's golden wire bytes pin every construct's encoding permanently, and a compiler change that breaks a wire golden is a stop-the-line event, never a quiet fix (§7.2). @@ -1131,16 +1158,17 @@ union Value `Type` is ruled-not-now, banked with §4.4's switch design. - **A union field.** A union name is a field type inside `type` bodies, arrays included (`shapes [..4]ColliderShape`). -- **The id moves.** A union is wire structure: its variant order and count, - and every arm's own field facts, all shape bytes, so they project into - the protocol id (§3.1). Declaring a union, adding, removing or reordering - variants, and changing an arm's type or its bounds each move the unit's - id, and an arm moves it exactly as a field of that type in a `type` body - would. Renaming a VARIANT does **not** move it: the ordinal is the wire, - the enum-variant rule exactly (§3.1) — renaming `box` to `crate` leaves - every byte identical. The one union outside all of this is a union with a - `table` arm, which projects nothing at all, as the table does (§3.1). A - union edit also moves the unit's BUILD VERSION (SPEC-TABLES.md §20). +- **The id moves.** A union is wire structure: its arm order and count, every + arm's NAME, and every arm's own field facts all shape bytes, so they + project into the protocol id (§3.1). Declaring a union, adding, removing or + reordering arms, changing an arm's type or its bounds, and RENAMING an arm + each move the unit's id, and an arm's type moves it exactly as a field of + that type in a `type` body would. The names are why a reorder is visible + even when two arms carry the same type, and the rename is the price of + that, exactly as it is for an enum or flags variant (§3.1). The one union + outside all of this is a union with a `table` arm, which projects nothing + at all, as the table does (§3.1). A union edit also moves the unit's BUILD + VERSION (SPEC-TABLES.md §20). - **Generated code, per target**: representation is per-language and explicitly NOT part of the contract; what binds every target is behavioral only — identical bytes, None is a valid empty read, an diff --git a/docs/USAGE.md b/docs/USAGE.md index 95e8925a2..5fd3326da 100644 --- a/docs/USAGE.md +++ b/docs/USAGE.md @@ -2288,7 +2288,7 @@ cook's own header, and the third coordinate of the key below. ``` $ schema build-version tables/block/ -0xe9c3dec8287989af +0x0adbc6e7f9c4605d ``` ```cpp diff --git a/docs/VERSIONING.md b/docs/VERSIONING.md index 96c1e7091..daf8f7c98 100644 --- a/docs/VERSIONING.md +++ b/docs/VERSIONING.md @@ -16,8 +16,8 @@ page in the same pull request. The table wire is pre-release until 3.0.0. Before that release its files may change in a minor version, announced first, and the promises below are made -at 3.0.0. The packet wire's promises hold today with two open holes in what -its id can see, #462 and #463, named in its section below. +at 3.0.0. The packet wire's promises hold today, with one gate still owed on +what proves them across releases, #463, named in its section below. 1. **From 3.0.0, data written by any build reads in any other build of the same major, in either direction, and never crashes.** A table wire from a @@ -41,8 +41,8 @@ its id can see, #462 and #463, named in its section below. versions the cooked and blocked forms and addresses every cooked asset. An edit inside a `table` body moves the build version and never the protocol id. An edit to a `type`, or to an enum, flags or union declaration, which - both wires share, moves both, with the exception #462 closes: a reorder or - rename of variants moves neither today. A `was` rename moves neither. + both wires share, moves both — a variant or arm reordered or renamed + included, because that order is the wire. A `was` rename moves neither. 5. **Same-build forms match or refuse.** A cook or a block opens under exactly the build version that wrote it, by a header match, and otherwise refuses: `Open` returns null, and the tool's `uncook` names the mismatch. @@ -103,28 +103,40 @@ The protocol id is the low 64 bits of SHA-256 over the unit's *wire-shape projection*, where a unit is a directory of `.schema` files compiled together. The projection is a text rendering of every fact that determines packet bytes: field order and names, kinds, widths, bounds, capacities, defaults, branch -structure, enum storage, flags bits, union arm order. It excludes what the -bytes cannot see: comments, layout, declaration order across records. A +structure, enum storage, flags bits, enum and flags variant names in +declaration order, union arm order and arm names. It excludes what the bytes +cannot see: comments, layout, declaration order across records. A source-text hash would produce spurious mismatches; hashing the compiler's internal structures could produce a spurious *match*, which is the dangerous -direction. The projection is the thing in between, and it is versioned: its -first line is `ProjectionVersion`, and bumping it moves every protocol id in -existence. `schema id` prints the id and `schema projection` prints the text -it is taken over. - -Two things the projection must carry and does not yet, both open as defects: - -- **Variant order.** An enum value rides as its declaration ordinal, so a - reorder changes what every stored ordinal means, and the projection today - records only the variant count: reordering an enum or a flags declaration - leaves the id unchanged, a spurious match. Variant names enter the - projection in declaration order (#462); the consequence, that a variant - rename then moves the id, is free under the redeploy rule below. -- **The codec law.** A compiler change that alters the bytes a schema - produces without changing its shape, such as a rounding rule, must move - every id. The projection gains a wire-law version line (#463), and a - release gate generates the corpus with the previous release and the new one - and requires byte identity under an equal id. +direction. The projection is the thing in between. `schema id` prints the id +and `schema projection` prints the text it is taken over. + +Two version lines ride the top of that text, and bumping either moves every +protocol id in existence: + +- **`ProjectionVersion`**, the rendering's own version, for the day the + projection must describe something it previously did not. +- **`WireLaw`**, the codec law's version, for what the rendering cannot see. + Any compiler change that can alter, for the same schema and the same + values, the encoded bytes, the inputs accepted, the reads rejected, the + defaults materialized, or a numeric conversion bumps it. The invariant: + **no generated byte and no read decision may change for the same schema and + input without the protocol id changing.** Generated files carry the id + alone, so a bump costs no churn in a consumer's tree. What is still owed is + the gate that proves the invariant across releases — the corpus generated + by the previous release and the new one, byte-compared under an equal id + (#463). + +**Variant order is the wire, and the names carry it.** An enum value rides as +its declaration ordinal, a flags variant as its bit position, a union arm as +its tag, so a reorder changes what every stored ordinal, every set bit and +every tag means while the shape stays put. Each declaration's variant or arm +names therefore enter the projection in declaration order, which is the only +way a reorder can be seen. A union's payload types carry its arm order only +while the arms differ in type: two arms of the SAME payload type reorder with +every projected type unmoved, and the names are the whole of the difference. +The consequence is that a *rename* moves the id too — order is spelled in +names and nothing else — and under the redeploy rule below that is free. **Same or refuse.** Two peers holding the same protocol id interoperate; two holding different ids refuse each other instead of misreading each other. @@ -239,12 +251,13 @@ does today. | a field's kind changed (`int32`→`int64`, `T`→`*T`, `string`→`bytes`, `bits(8)`→`bits(9)`) | `kind_mismatch`; the value reads as the default | **refuses** | moves | | `T`→`?T`, `?T`→`T` | nothing: one framing. An old file's elided default reads as *absent* under `?T` | passes | moves (the presence flag is storage) | | an enum variant added or removed | `unknown` where a stored name is gone | passes; warns on a removal | moves, and so does the protocol id | -| an enum variant reordered | nothing | passes | moves; the protocol id moves once #462 lands, **nothing today** | -| an enum variant renamed | the old name reads `None`, counted | warns | moves | +| an enum variant reordered | nothing | passes | moves, and so does the protocol id | +| an enum variant renamed | the old name reads `None`, counted | warns | moves, and so does the protocol id: order is spelled in names | | a `fixed` field's `F` moved | **silent**: the raw integer reads at the new scale | **refuses** | moves | | a field's referent replaced by one that cannot stand in (an enum respelled as its raw integer) | **silent** | **refuses** | moves | | a flags variant inserted or removed | silent | refuses | moves, and so does the protocol id | -| a flags variant reordered or renamed in place | **silent** | **refuses** | moves once #435's rule lands; **nothing today**, and the protocol id moves once #462 lands | +| a flags variant reordered or renamed in place | **silent** | **refuses** | moves, and so does the protocol id; the cook projection carries the bit positions itself once #435 lands | +| a union arm reordered or renamed | `unknown` for an arm this reader lacks; a reorder is silent and safe | warns on a vanished name | moves, and so does the protocol id: the arm names are what a same-typed reorder moves | | a keyed array made positional | `kind_mismatch` | refuses | moves | | a keyed array's key enum swapped for another | `unknown`, one per slot; the kind stays | refuses | moves | | a map's KEY kind changed, or its KEY bound tightened (SPEC-TABLES.md §2.8) | a changed kind is one `kind_mismatch` for the map, which reads empty. A tightened bound drops the entries that no longer fit and counts `clamped`, one per entry | **refuses** a changed kind, warns on a tightened bound | moves | @@ -347,8 +360,8 @@ removed or renamed bare; any offset, size, alignment, kind or wire-id move; any change to which declaration a field names; a declared maximum raised or lowered; a default, range or vocabulary edit; a variant inserted into a keyed enum (a keyed enum is a layout fact: its `Max` sizes every array keyed by it, -so a content edit re-cooks every asset of the unit); a `ProjectionVersion` or -cook-form bump. +so a content edit re-cooks every asset of the unit); a `ProjectionVersion`, +`WireLaw` or cook-form bump. **What does not:** comments, layout, declaration order across records; a `was` rename, because a rename must not invalidate every cooked file in @@ -502,10 +515,10 @@ the compatibility rules do. generated fixed-point narrowing changed from the bare arithmetic shift (ties toward +infinity) to the one fixed-point rounding rule, ties away from zero. This moved the bytes generated code produced only on exact ties - of negative raw values in that narrowing, and the protocol id did not move, - because the projection carries no codec law line. Under #463 it would have - moved every id, in a minor, announced; this entry is the worked example of - why that line exists. + of negative raw values in that narrowing, and the protocol id did not move: + the projection carried no codec law line at the time. It is the worked + example of why that line exists — under the rule now in force it bumps + `WireLaw` and moves every id, in a minor, announced first. Both sides of every connection redeploy together, so an amendment that moves bytes is priced by that rule and not by the fiction that deployed halves must @@ -611,8 +624,10 @@ still open. - **A content addition that is an enum variant is a lockstep redeploy**, even when only tables reach the enum, because the declaration is shared by both wires. -- **The protocol id cannot see an enum or flags reorder today** (#462): until - it lands, a reorder is a spurious match. Do not reorder; append. +- **A variant or union arm reordered or renamed is a lockstep redeploy**, a + spelling fix included: those names ride in the projection in declaration + order, because a reorder changes what every ordinal means and nothing else + can see it, so a rename moves the protocol id with it. - **A field of a `type` that a table reaches cannot be renamed safely today** (#478): `was` is refused there, and a bare rename orphans every stored value. @@ -681,9 +696,8 @@ repository not yet behind it. The 3.0.0 release holds the list at zero. - #435: the uniform 64-bit wire, the form byte, the id table, the enum kind, flags bit positions in the build version, the reserved-id refusals. - #434: the reserved escape kind. -- #462: variant order in the protocol id projection. -- #463: the wire-law line in the projection and the previous-release - differential gate. +- #463: the previous-release differential gate — the corpus generated by the + previous release and the new one, byte-compared under an equal id. - #432: the cook triple, and the byte-order sentences in five places. - #396: table `was`; string, bytes and flags defaults in the baseline and the build version. diff --git a/generated/bench/c/Bench.h b/generated/bench/c/Bench.h index 64bc4902c..b5f800d96 100644 --- a/generated/bench/c/Bench.h +++ b/generated/bench/c/Bench.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package bench — protocol id 0xae3b1e28b96e4586 */ + package bench — protocol id 0x5b8227d21cba8abf */ #ifndef SCHEMA_BENCH_BENCH_H #define SCHEMA_BENCH_BENCH_H @@ -25,7 +25,7 @@ extern "C" { /* The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two sides at the same id speak identical bits; there is no other versioning. */ -#define BENCH_PROTOCOL_ID 0xae3b1e28b96e4586ULL +#define BENCH_PROTOCOL_ID 0x5b8227d21cba8abfULL /* type BenchPacket */ diff --git a/generated/bench/c/BenchWire.h b/generated/bench/c/BenchWire.h index 42686b48e..e936e2ab6 100644 --- a/generated/bench/c/BenchWire.h +++ b/generated/bench/c/BenchWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package bench — protocol id 0xae3b1e28b96e4586 */ + package bench — protocol id 0x5b8227d21cba8abf */ #ifndef SCHEMA_BENCH_BENCHWIRE_H #define SCHEMA_BENCH_BENCHWIRE_H diff --git a/generated/bench/c/RealWorld.h b/generated/bench/c/RealWorld.h index 5cdd37539..624549487 100644 --- a/generated/bench/c/RealWorld.h +++ b/generated/bench/c/RealWorld.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package realworld — protocol id 0x8f7228a19854fbb2 */ + package realworld — protocol id 0x0eefe6bcd2596139 */ #ifndef SCHEMA_REALWORLD_REAL_WORLD_H #define SCHEMA_REALWORLD_REAL_WORLD_H @@ -24,7 +24,7 @@ extern "C" { /* The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two sides at the same id speak identical bits; there is no other versioning. */ -#define REALWORLD_PROTOCOL_ID 0x8f7228a19854fbb2ULL +#define REALWORLD_PROTOCOL_ID 0x0eefe6bcd2596139ULL /* enum PacketMode — None = 0 implicit, variants dense from 1, wire range [0, 5] diff --git a/generated/bench/c/RealWorldWire.h b/generated/bench/c/RealWorldWire.h index 5bdd99312..28e1bd6bf 100644 --- a/generated/bench/c/RealWorldWire.h +++ b/generated/bench/c/RealWorldWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package realworld — protocol id 0x8f7228a19854fbb2 */ + package realworld — protocol id 0x0eefe6bcd2596139 */ #ifndef SCHEMA_REALWORLD_REAL_WORLDWIRE_H #define SCHEMA_REALWORLD_REAL_WORLDWIRE_H diff --git a/generated/bench/cpp/Bench.h b/generated/bench/cpp/Bench.h index 829b5f74b..e987ef117 100644 --- a/generated/bench/cpp/Bench.h +++ b/generated/bench/cpp/Bench.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package bench — protocol id 0xae3b1e28b96e4586 +// package bench — protocol id 0x5b8227d21cba8abf #pragma once @@ -14,7 +14,7 @@ namespace bench { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -inline constexpr uint64_t ProtocolId = 0xae3b1e28b96e4586ull; +inline constexpr uint64_t ProtocolId = 0x5b8227d21cba8abfull; // type BenchPacket struct BenchPacket { diff --git a/generated/bench/cpp/BenchWire.h b/generated/bench/cpp/BenchWire.h index bc7e48b34..f0da55b90 100644 --- a/generated/bench/cpp/BenchWire.h +++ b/generated/bench/cpp/BenchWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package bench — protocol id 0xae3b1e28b96e4586 +// package bench — protocol id 0x5b8227d21cba8abf #pragma once diff --git a/generated/bench/cpp/RealWorld.h b/generated/bench/cpp/RealWorld.h index b675a4b01..29fa7842f 100644 --- a/generated/bench/cpp/RealWorld.h +++ b/generated/bench/cpp/RealWorld.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package realworld — protocol id 0x8f7228a19854fbb2 +// package realworld — protocol id 0x0eefe6bcd2596139 #pragma once @@ -12,7 +12,7 @@ namespace realworld { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -inline constexpr uint64_t ProtocolId = 0x8f7228a19854fbb2ull; +inline constexpr uint64_t ProtocolId = 0x0eefe6bcd2596139ull; // enum PacketMode — None = 0 implicit, variants dense from 1, wire range [0, 5] (SPEC §4.2) enum class PacketMode : uint8_t { diff --git a/generated/bench/cpp/RealWorldWire.h b/generated/bench/cpp/RealWorldWire.h index 85ea53830..d63b278bf 100644 --- a/generated/bench/cpp/RealWorldWire.h +++ b/generated/bench/cpp/RealWorldWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package realworld — protocol id 0x8f7228a19854fbb2 +// package realworld — protocol id 0x0eefe6bcd2596139 #pragma once diff --git a/generated/bench/cs/Bench.cs b/generated/bench/cs/Bench.cs index 8db7c4f77..2cf8fb657 100644 --- a/generated/bench/cs/Bench.cs +++ b/generated/bench/cs/Bench.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package bench — protocol id 0xae3b1e28b96e4586 +// package bench — protocol id 0x5b8227d21cba8abf // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an interior null) @@ -219,7 +219,7 @@ public static partial class Schema { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public const ulong ProtocolId = 0xae3b1e28b96e4586; + public const ulong ProtocolId = 0x5b8227d21cba8abf; // BenchPacketMaxBits is the longest wire path; align pads at worst case (SPEC §6.1). // BenchPacketMaxBytes is rounded up to the 8-byte write-buffer granularity. diff --git a/generated/bench/cs/realworld/RealWorld.cs b/generated/bench/cs/realworld/RealWorld.cs index 43175c97c..7510709cf 100644 --- a/generated/bench/cs/realworld/RealWorld.cs +++ b/generated/bench/cs/realworld/RealWorld.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package realworld — protocol id 0x8f7228a19854fbb2 +// package realworld — protocol id 0x0eefe6bcd2596139 // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an interior null) @@ -155,7 +155,7 @@ public static partial class Schema { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public const ulong ProtocolId = 0x8f7228a19854fbb2; + public const ulong ProtocolId = 0x0eefe6bcd2596139; // EnumNamePacketMode: debug/log/tooling name for any PacketMode wire value — // out-of-set values (wire-legal up to the declared max) name as "???" diff --git a/generated/bench/dart/Bench.dart b/generated/bench/dart/Bench.dart index e6871a25d..99ff5c7eb 100644 --- a/generated/bench/dart/Bench.dart +++ b/generated/bench/dart/Bench.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package bench — protocol id 0xae3b1e28b96e4586 +// package bench — protocol id 0x5b8227d21cba8abf // // The shipped Dart wire path (issue #155): the serialize.dart bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -98,7 +98,7 @@ String _hex64(int value) => value < 0 // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const int protocolId = 0xae3b1e28b96e4586; +const int protocolId = 0x5b8227d21cba8abf; // type BenchPacket final class BenchPacket { diff --git a/generated/bench/dart/Int128.dart b/generated/bench/dart/Int128.dart index 2ac5d64ab..22b99548f 100644 --- a/generated/bench/dart/Int128.dart +++ b/generated/bench/dart/Int128.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package bench — protocol id 0xae3b1e28b96e4586 +// package bench — protocol id 0x5b8227d21cba8abf // // The emulated 128-bit pair: Dart has no native 128-bit integer, so // int128/uint128 storage speaks these types — two's-complement math on diff --git a/generated/bench/dart/realworld/RealWorld.dart b/generated/bench/dart/realworld/RealWorld.dart index 10b70f03f..8f54ee873 100644 --- a/generated/bench/dart/realworld/RealWorld.dart +++ b/generated/bench/dart/realworld/RealWorld.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package realworld — protocol id 0x8f7228a19854fbb2 +// package realworld — protocol id 0x0eefe6bcd2596139 // // The shipped Dart wire path (issue #155): the serialize.dart bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -96,7 +96,7 @@ String _hex64(int value) => value < 0 // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const int protocolId = 0x8f7228a19854fbb2; +const int protocolId = 0x0eefe6bcd2596139; // PacketMode — None = 0 implicit, variants dense from 1, wire range [0, 5] (SPEC §4.2); // an int-constant namespace — the Dart translation of the family's integer- diff --git a/generated/bench/elixir/Bench.ex b/generated/bench/elixir/Bench.ex index 52f21a1ca..e1bcbd456 100644 --- a/generated/bench/elixir/Bench.ex +++ b/generated/bench/elixir/Bench.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package bench — protocol id 0xae3b1e28b96e4586 +# package bench — protocol id 0x5b8227d21cba8abf # # The shipped Elixir wire path (issue #167): the serialize.elixir port's # measured shapes — byte-granular 32-bit-group packing and 40-bit read @@ -256,7 +256,7 @@ defmodule Bench.Bench do # The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two # sides at the same id speak identical bits; there is no other versioning. - def protocol_id, do: 0xAE3B1E28B96E4586 + def protocol_id, do: 0x5B8227D21CBA8ABF # bench_packet_max_bits is the longest wire path; align pads at worst case (SPEC §6.1). # bench_packet_max_bytes is rounded up to the family 8-byte write-buffer granularity. diff --git a/generated/bench/elixir/realworld/RealWorld.ex b/generated/bench/elixir/realworld/RealWorld.ex index 5fe5c4c8c..e740903de 100644 --- a/generated/bench/elixir/realworld/RealWorld.ex +++ b/generated/bench/elixir/realworld/RealWorld.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package realworld — protocol id 0x8f7228a19854fbb2 +# package realworld — protocol id 0x0eefe6bcd2596139 # # The shipped Elixir wire path (issue #167): the serialize.elixir port's # measured shapes — byte-granular 32-bit-group packing and 40-bit read @@ -357,7 +357,7 @@ defmodule Realworld.RealWorld do # The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two # sides at the same id speak identical bits; there is no other versioning. - def protocol_id, do: 0x8F7228A19854FBB2 + def protocol_id, do: 0x0EEFE6BCD2596139 # enum_name_packet_mode: debug/log/tooling name for any PacketMode wire value — # out-of-set values (wire-legal up to the declared max) name as "???" diff --git a/generated/bench/go/Bench.go b/generated/bench/go/Bench.go index 4a5bbdf77..fe94c0ddd 100644 --- a/generated/bench/go/Bench.go +++ b/generated/bench/go/Bench.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package bench — protocol id 0xae3b1e28b96e4586 +// package bench — protocol id 0x5b8227d21cba8abf package bench @@ -16,7 +16,7 @@ import ( // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const ProtocolId uint64 = 0xae3b1e28b96e4586 +const ProtocolId uint64 = 0x5b8227d21cba8abf // ErrValidation is returned when a read rejects the wire: a wrong constant, // nonzero reserved bits, or an interior null in a string (SPEC §4.3, §4.7). diff --git a/generated/bench/go/realworld/RealWorld.go b/generated/bench/go/realworld/RealWorld.go index ac8820cac..ebc37ad62 100644 --- a/generated/bench/go/realworld/RealWorld.go +++ b/generated/bench/go/realworld/RealWorld.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package realworld — protocol id 0x8f7228a19854fbb2 +// package realworld — protocol id 0x0eefe6bcd2596139 package realworld @@ -16,7 +16,7 @@ import ( // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const ProtocolId uint64 = 0x8f7228a19854fbb2 +const ProtocolId uint64 = 0x0eefe6bcd2596139 // ErrValidation is returned when a read rejects the wire: a wrong constant, // nonzero reserved bits, or an interior null in a string (SPEC §4.3, §4.7). diff --git a/generated/bench/java/Bench.java b/generated/bench/java/Bench.java index ee4d2a17e..952f8058b 100644 --- a/generated/bench/java/Bench.java +++ b/generated/bench/java/Bench.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package bench — protocol id 0xae3b1e28b96e4586 +// package bench — protocol id 0x5b8227d21cba8abf // // The shipped Java wire path (issue #156): the serialize.java bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -39,7 +39,7 @@ private Bench() {} // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public static final long protocolId = 0xae3b1e28b96e4586L; + public static final long protocolId = 0x5b8227d21cba8abfL; // type BenchPacket public static final class BenchPacket { diff --git a/generated/bench/java/Int128.java b/generated/bench/java/Int128.java index dc5bb1891..b4579834f 100644 --- a/generated/bench/java/Int128.java +++ b/generated/bench/java/Int128.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package bench — protocol id 0xae3b1e28b96e4586 +// package bench — protocol id 0x5b8227d21cba8abf // // The emulated 128-bit pair, signed half: Java has no native 128-bit integer, // so int128/uint128 storage speaks Int128/UInt128 — two's-complement math diff --git a/generated/bench/java/UInt128.java b/generated/bench/java/UInt128.java index 58fa9fe6d..f11b42a84 100644 --- a/generated/bench/java/UInt128.java +++ b/generated/bench/java/UInt128.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package bench — protocol id 0xae3b1e28b96e4586 +// package bench — protocol id 0x5b8227d21cba8abf // // The emulated 128-bit pair, unsigned half: Java has no native 128-bit integer, // so int128/uint128 storage speaks Int128/UInt128 — two's-complement math diff --git a/generated/bench/java/realworld/RealWorld.java b/generated/bench/java/realworld/RealWorld.java index b0dbe913b..eabb5f69a 100644 --- a/generated/bench/java/realworld/RealWorld.java +++ b/generated/bench/java/realworld/RealWorld.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package realworld — protocol id 0x8f7228a19854fbb2 +// package realworld — protocol id 0x0eefe6bcd2596139 // // The shipped Java wire path (issue #156): the serialize.java bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -39,7 +39,7 @@ private RealWorld() {} // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public static final long protocolId = 0x8f7228a19854fbb2L; + public static final long protocolId = 0x0eefe6bcd2596139L; // PacketMode — None = 0 implicit, variants dense from 1, wire range [0, 5] (SPEC §4.2); // an int-constant namespace — the Java translation of the family's integer- diff --git a/generated/bench/js/Bench.js b/generated/bench/js/Bench.js index c4593e8da..3faafa666 100644 --- a/generated/bench/js/Bench.js +++ b/generated/bench/js/Bench.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package bench — protocol id 0xae3b1e28b96e4586 +// package bench — protocol id 0x5b8227d21cba8abf // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an out-of-contract @@ -22,7 +22,7 @@ const BOOL_SCRATCH = { value: false }; // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -export const ProtocolId = 0xae3b1e28b96e4586n; +export const ProtocolId = 0x5b8227d21cba8abfn; // type BenchPacket export class BenchPacket { diff --git a/generated/bench/js/BenchFlat.js b/generated/bench/js/BenchFlat.js index 7aa0e2f6a..d83058844 100644 --- a/generated/bench/js/BenchFlat.js +++ b/generated/bench/js/BenchFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package bench — protocol id 0xae3b1e28b96e4586 +// package bench — protocol id 0x5b8227d21cba8abf // // THE FLAT TIER — the shipped JavaScript wire path: a single-word 32-bit // bitpacker inlined at every field (byte-identical wire to serialize.js), diff --git a/generated/bench/js/realworld/RealWorld.js b/generated/bench/js/realworld/RealWorld.js index 5f6c1c584..623fc8975 100644 --- a/generated/bench/js/realworld/RealWorld.js +++ b/generated/bench/js/realworld/RealWorld.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package realworld — protocol id 0x8f7228a19854fbb2 +// package realworld — protocol id 0x0eefe6bcd2596139 // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an out-of-contract @@ -22,7 +22,7 @@ const BOOL_SCRATCH = { value: false }; // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -export const ProtocolId = 0x8f7228a19854fbb2n; +export const ProtocolId = 0x0eefe6bcd2596139n; // PacketMode — None = 0 implicit, variants dense from 1, wire range [0, 5] (SPEC §4.2); // a frozen object of Number values — the JS translation of the family's diff --git a/generated/bench/js/realworld/RealWorldFlat.js b/generated/bench/js/realworld/RealWorldFlat.js index 309cf2175..ac1bb5a7c 100644 --- a/generated/bench/js/realworld/RealWorldFlat.js +++ b/generated/bench/js/realworld/RealWorldFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package realworld — protocol id 0x8f7228a19854fbb2 +// package realworld — protocol id 0x0eefe6bcd2596139 // // THE FLAT TIER — the shipped JavaScript wire path: a single-word 32-bit // bitpacker inlined at every field (byte-identical wire to serialize.js), diff --git a/generated/bench/rust-realworld/src/lib.rs b/generated/bench/rust-realworld/src/lib.rs index cc3c57379..968949e70 100644 --- a/generated/bench/rust-realworld/src/lib.rs +++ b/generated/bench/rust-realworld/src/lib.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package realworld — protocol id 0x8f7228a19854fbb2 +// package realworld — protocol id 0x0eefe6bcd2596139 // Two clippy classes are silenced deliberately, crate-wide: // - derivable_impls / field_reassign_with_default: Default impls are diff --git a/generated/bench/rust-realworld/src/realworld.rs b/generated/bench/rust-realworld/src/realworld.rs index 0bc45d941..ffb044551 100644 --- a/generated/bench/rust-realworld/src/realworld.rs +++ b/generated/bench/rust-realworld/src/realworld.rs @@ -2,13 +2,13 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package realworld — protocol id 0x8f7228a19854fbb2 +// package realworld — protocol id 0x0eefe6bcd2596139 use serialize::{ReadStream, Stream, WriteStream}; // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -pub const PROTOCOL_ID: u64 = 0x8f7228a19854fbb2; +pub const PROTOCOL_ID: u64 = 0x0eefe6bcd2596139; /// The generated crate's error: the runtime's own errors pass through; /// Validation is a read rejecting the wire (SPEC §4.3, §4.7). diff --git a/generated/bench/rust/src/bench.rs b/generated/bench/rust/src/bench.rs index 7fb0e5138..381782ba5 100644 --- a/generated/bench/rust/src/bench.rs +++ b/generated/bench/rust/src/bench.rs @@ -2,13 +2,13 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package bench — protocol id 0xae3b1e28b96e4586 +// package bench — protocol id 0x5b8227d21cba8abf use serialize::{ReadStream, Stream, WriteStream}; // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -pub const PROTOCOL_ID: u64 = 0xae3b1e28b96e4586; +pub const PROTOCOL_ID: u64 = 0x5b8227d21cba8abf; /// The generated crate's error: the runtime's own errors pass through; /// Validation is a read rejecting the wire (SPEC §4.3, §4.7). diff --git a/generated/bench/rust/src/lib.rs b/generated/bench/rust/src/lib.rs index d0f6ca763..2d6d65a5d 100644 --- a/generated/bench/rust/src/lib.rs +++ b/generated/bench/rust/src/lib.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package bench — protocol id 0xae3b1e28b96e4586 +// package bench — protocol id 0x5b8227d21cba8abf // Two clippy classes are silenced deliberately, crate-wide: // - derivable_impls / field_reassign_with_default: Default impls are diff --git a/generated/bench/tables/c/BenchTable.h b/generated/bench/tables/c/BenchTable.h index 685f5e556..c6311c1b8 100644 --- a/generated/bench/tables/c/BenchTable.h +++ b/generated/bench/tables/c/BenchTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package benchtable — protocol id 0x1a38ac487752b0ae */ + package benchtable — protocol id 0xd093e62e6f907c36 */ #ifndef SCHEMA_BENCHTABLE_BENCH_TABLE_H #define SCHEMA_BENCHTABLE_BENCH_TABLE_H @@ -23,7 +23,7 @@ extern "C" { /* The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two sides at the same id speak identical bits; there is no other versioning. */ -#define BENCHTABLE_PROTOCOL_ID 0x1a38ac487752b0aeULL +#define BENCHTABLE_PROTOCOL_ID 0xd093e62e6f907c36ULL /* enum TableWeapon — None = 0 implicit, variants dense from 1, wire range [0, 15] diff --git a/generated/bench/tables/c/BenchTableBlock.h b/generated/bench/tables/c/BenchTableBlock.h index ac8329a9c..f13a32346 100644 --- a/generated/bench/tables/c/BenchTableBlock.h +++ b/generated/bench/tables/c/BenchTableBlock.h @@ -42,7 +42,7 @@ extern "C" { PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_BENCHTABLE_BUILD_VERSION_VALUE 0x1864d106cc5f2c11ull +#define SCHEMA_BENCHTABLE_BUILD_VERSION_VALUE 0x5f2254539e3ad47dull #endif /* SCHEMA_BENCHTABLE_BUILD_VERSION */ diff --git a/generated/bench/tables/c/BenchTableTable.h b/generated/bench/tables/c/BenchTableTable.h index 796d7f468..f9aaded37 100644 --- a/generated/bench/tables/c/BenchTableTable.h +++ b/generated/bench/tables/c/BenchTableTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package benchtable — protocol id 0x1a38ac487752b0ae (packets only: tables version by field id, not by protocol id) + package benchtable — protocol id 0xd093e62e6f907c36 (packets only: tables version by field id, not by protocol id) The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize dependency — includable from any TU. Compile the .c beside this header to use the reflection descriptors or the text form. */ @@ -364,7 +364,7 @@ static SCHEMA_UNUSED uint64_t table_double_to_bits( double d ) { uint64_t b; mem PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_BENCHTABLE_BUILD_VERSION_VALUE 0x1864d106cc5f2c11ull +#define SCHEMA_BENCHTABLE_BUILD_VERSION_VALUE 0x5f2254539e3ad47dull #endif /* SCHEMA_BENCHTABLE_BUILD_VERSION */ diff --git a/generated/bench/tables/c/BenchTableWire.h b/generated/bench/tables/c/BenchTableWire.h index 0793d6182..fc33fef4a 100644 --- a/generated/bench/tables/c/BenchTableWire.h +++ b/generated/bench/tables/c/BenchTableWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package benchtable — protocol id 0x1a38ac487752b0ae */ + package benchtable — protocol id 0xd093e62e6f907c36 */ #ifndef SCHEMA_BENCHTABLE_BENCH_TABLEWIRE_H #define SCHEMA_BENCHTABLE_BENCH_TABLEWIRE_H diff --git a/generated/bench/tables/cpp/BenchTable.h b/generated/bench/tables/cpp/BenchTable.h index 796a7ba06..81369594f 100644 --- a/generated/bench/tables/cpp/BenchTable.h +++ b/generated/bench/tables/cpp/BenchTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package benchtable — protocol id 0x1a38ac487752b0ae +// package benchtable — protocol id 0xd093e62e6f907c36 #pragma once @@ -12,7 +12,7 @@ namespace benchtable { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -inline constexpr uint64_t ProtocolId = 0x1a38ac487752b0aeull; +inline constexpr uint64_t ProtocolId = 0xd093e62e6f907c36ull; // enum TableWeapon — None = 0 implicit, variants dense from 1, wire range [0, 15] (SPEC §4.2) enum class TableWeapon : uint8_t { diff --git a/generated/bench/tables/cpp/BenchTableBlock.h b/generated/bench/tables/cpp/BenchTableBlock.h index 5f7b024ef..3cdfb4bb7 100644 --- a/generated/bench/tables/cpp/BenchTableBlock.h +++ b/generated/bench/tables/cpp/BenchTableBlock.h @@ -50,7 +50,7 @@ namespace benchtable { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x1864d106cc5f2c11ull; +static const uint64_t BuildVersion = 0x5f2254539e3ad47dull; } // namespace benchtable diff --git a/generated/bench/tables/cpp/BenchTableTable.h b/generated/bench/tables/cpp/BenchTableTable.h index e4c2a832b..967126600 100644 --- a/generated/bench/tables/cpp/BenchTableTable.h +++ b/generated/bench/tables/cpp/BenchTableTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package benchtable — protocol id 0x1a38ac487752b0ae (packets only: tables version by field id, not by protocol id) +// package benchtable — protocol id 0xd093e62e6f907c36 (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -265,7 +265,7 @@ namespace benchtable { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x1864d106cc5f2c11ull; +static const uint64_t BuildVersion = 0x5f2254539e3ad47dull; } // namespace benchtable diff --git a/generated/bench/tables/cpp/BenchTableWire.h b/generated/bench/tables/cpp/BenchTableWire.h index c579edf3d..1a810c538 100644 --- a/generated/bench/tables/cpp/BenchTableWire.h +++ b/generated/bench/tables/cpp/BenchTableWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package benchtable — protocol id 0x1a38ac487752b0ae +// package benchtable — protocol id 0xd093e62e6f907c36 #pragma once diff --git a/generated/bench/tables/cs/BenchTable.cs b/generated/bench/tables/cs/BenchTable.cs index fb0086bde..b4742b5b5 100644 --- a/generated/bench/tables/cs/BenchTable.cs +++ b/generated/bench/tables/cs/BenchTable.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package benchtable — protocol id 0x1a38ac487752b0ae +// package benchtable — protocol id 0xd093e62e6f907c36 // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an interior null) @@ -93,7 +93,7 @@ public static partial class Schema { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public const ulong ProtocolId = 0x1a38ac487752b0ae; + public const ulong ProtocolId = 0xd093e62e6f907c36; // EnumNameTableWeapon: debug/log/tooling name for any TableWeapon wire value — // out-of-set values (wire-legal up to the declared max) name as "???" diff --git a/generated/bench/tables/cs/BenchTableBlock.cs b/generated/bench/tables/cs/BenchTableBlock.cs index 04eb6f52d..9b4c73f15 100644 --- a/generated/bench/tables/cs/BenchTableBlock.cs +++ b/generated/bench/tables/cs/BenchTableBlock.cs @@ -164,7 +164,7 @@ public static partial class Schema // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION // is what everything cooked or blocked is keyed by. A table edit moves // this and never the protocol id; a type edit moves both. - public const ulong BuildVersion = 0x1864d106cc5f2c11UL; + public const ulong BuildVersion = 0x5f2254539e3ad47dUL; // The block's magic (docs/SPEC-TABLES.md §19.1), read BYTEWISE: it is the one // field read without assuming the order the rest of the block is in. diff --git a/generated/bench/tables/dart/BenchTable.dart b/generated/bench/tables/dart/BenchTable.dart index f0c6998a6..0dbd7595d 100644 --- a/generated/bench/tables/dart/BenchTable.dart +++ b/generated/bench/tables/dart/BenchTable.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package benchtable — protocol id 0x1a38ac487752b0ae +// package benchtable — protocol id 0xd093e62e6f907c36 // // The shipped Dart wire path (issue #155): the serialize.dart bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -33,7 +33,7 @@ String _hex64(int value) => value < 0 // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const int protocolId = 0x1a38ac487752b0ae; +const int protocolId = 0xd093e62e6f907c36; // TableWeapon — None = 0 implicit, variants dense from 1, wire range [0, 15] (SPEC §4.2); // an int-constant namespace — the Dart translation of the family's integer- diff --git a/generated/bench/tables/dart/BenchTableBlock.dart b/generated/bench/tables/dart/BenchTableBlock.dart index 80a50cec4..55fcf9a2d 100644 --- a/generated/bench/tables/dart/BenchTableBlock.dart +++ b/generated/bench/tables/dart/BenchTableBlock.dart @@ -26,7 +26,7 @@ import 'dart:typed_data'; // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -const int tableBuildVersion = 0x1864d106cc5f2c11; +const int tableBuildVersion = 0x5f2254539e3ad47d; // The block's magic (docs/SPEC-TABLES.md §19.1), read BYTEWISE: it is the one field // read without assuming the order the rest of the block is in. A consumer that diff --git a/generated/bench/tables/elixir/BenchTable.ex b/generated/bench/tables/elixir/BenchTable.ex index 839b83aac..4fb854f3e 100644 --- a/generated/bench/tables/elixir/BenchTable.ex +++ b/generated/bench/tables/elixir/BenchTable.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package benchtable — protocol id 0x1a38ac487752b0ae +# package benchtable — protocol id 0xd093e62e6f907c36 # # The shipped Elixir wire path (issue #167): the serialize.elixir port's # measured shapes — byte-granular 32-bit-group packing and 40-bit read @@ -107,7 +107,7 @@ defmodule Benchtable.BenchTable do # The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two # sides at the same id speak identical bits; there is no other versioning. - def protocol_id, do: 0x1A38AC487752B0AE + def protocol_id, do: 0xD093E62E6F907C36 # enum_name_table_weapon: debug/log/tooling name for any TableWeapon wire value — # out-of-set values (wire-legal up to the declared max) name as "???" diff --git a/generated/bench/tables/elixir/BenchTableTable.ex b/generated/bench/tables/elixir/BenchTableTable.ex index 994545a11..51326673c 100644 --- a/generated/bench/tables/elixir/BenchTableTable.ex +++ b/generated/bench/tables/elixir/BenchTableTable.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package benchtable — the TABLE wire (docs/SPEC-TABLES.md); protocol id 0x1A38AC487752B0AE names packets only, and a table versions by field id +# package benchtable — the TABLE wire (docs/SPEC-TABLES.md); protocol id 0xD093E62E6F907C36 names packets only, and a table versions by field id # table TableEntity — TABLE-wire storage (docs/SPEC-TABLES.md): every field carries # its declared default at construction, so %Benchtable.TableEntity{} IS the value a read diff --git a/generated/bench/tables/elixir/BuildVersion.ex b/generated/bench/tables/elixir/BuildVersion.ex index c6a61e55d..a41afe0eb 100644 --- a/generated/bench/tables/elixir/BuildVersion.ex +++ b/generated/bench/tables/elixir/BuildVersion.ex @@ -12,7 +12,7 @@ defmodule Benchtable.BuildVersion do by a build this one does not agree with. """ - @build_version 0x1864D106CC5F2C11 + @build_version 0x5F2254539E3AD47D def build_version, do: @build_version end diff --git a/generated/bench/tables/go/BenchTable.go b/generated/bench/tables/go/BenchTable.go index e0396667a..bb36b7f5b 100644 --- a/generated/bench/tables/go/BenchTable.go +++ b/generated/bench/tables/go/BenchTable.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package benchtable — protocol id 0x1a38ac487752b0ae +// package benchtable — protocol id 0xd093e62e6f907c36 package benchtable @@ -15,7 +15,7 @@ import ( // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const ProtocolId uint64 = 0x1a38ac487752b0ae +const ProtocolId uint64 = 0xd093e62e6f907c36 // ErrValidation is returned when a read rejects the wire: a wrong constant, // nonzero reserved bits, or an interior null in a string (SPEC §4.3, §4.7). diff --git a/generated/bench/tables/go/BenchTableBlock.go b/generated/bench/tables/go/BenchTableBlock.go index 8ef566d18..16a088a25 100644 --- a/generated/bench/tables/go/BenchTableBlock.go +++ b/generated/bench/tables/go/BenchTableBlock.go @@ -27,7 +27,7 @@ import ( // BuildVersion is the unit's build version (docs/SPEC-TABLES.md §20): the one // digest a block carries and BlockOpen compares. It moves when anything a // reader points at moves. -const BuildVersion uint64 = 0x1864d106cc5f2c11 +const BuildVersion uint64 = 0x5f2254539e3ad47d // TableBlockMagic identifies a schema block and carries the byte-order check // with it (docs/SPEC-TABLES.md §19.1). It is stored in the producer's NATIVE diff --git a/generated/bench/tables/java/BenchTable.java b/generated/bench/tables/java/BenchTable.java index 6c383e646..e8d976dd8 100644 --- a/generated/bench/tables/java/BenchTable.java +++ b/generated/bench/tables/java/BenchTable.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package benchtable — protocol id 0x1a38ac487752b0ae +// package benchtable — protocol id 0xd093e62e6f907c36 // // The shipped Java wire path (issue #156): the serialize.java bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -39,7 +39,7 @@ private BenchTable() {} // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public static final long protocolId = 0x1a38ac487752b0aeL; + public static final long protocolId = 0xd093e62e6f907c36L; // TableWeapon — None = 0 implicit, variants dense from 1, wire range [0, 15] (SPEC §4.2); // an int-constant namespace — the Java translation of the family's integer- diff --git a/generated/bench/tables/java/BuildVersion.java b/generated/bench/tables/java/BuildVersion.java index 010f4407c..c9f1bdc68 100644 --- a/generated/bench/tables/java/BuildVersion.java +++ b/generated/bench/tables/java/BuildVersion.java @@ -19,5 +19,5 @@ public final class BuildVersion { private BuildVersion() {} - public static final long value = 0x1864d106cc5f2c11L; + public static final long value = 0x5f2254539e3ad47dL; } diff --git a/generated/bench/tables/js/BenchTable.js b/generated/bench/tables/js/BenchTable.js index 6c470e5e3..948b71b38 100644 --- a/generated/bench/tables/js/BenchTable.js +++ b/generated/bench/tables/js/BenchTable.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package benchtable — protocol id 0x1a38ac487752b0ae +// package benchtable — protocol id 0xd093e62e6f907c36 // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an out-of-contract @@ -21,7 +21,7 @@ const BOOL_SCRATCH = { value: false }; // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -export const ProtocolId = 0x1a38ac487752b0aen; +export const ProtocolId = 0xd093e62e6f907c36n; // TableWeapon — None = 0 implicit, variants dense from 1, wire range [0, 15] (SPEC §4.2); // a frozen object of Number values — the JS translation of the family's diff --git a/generated/bench/tables/js/BenchTableBlock.js b/generated/bench/tables/js/BenchTableBlock.js index 21a0a8812..e06b782b6 100644 --- a/generated/bench/tables/js/BenchTableBlock.js +++ b/generated/bench/tables/js/BenchTableBlock.js @@ -31,7 +31,7 @@ // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -export const BuildVersion = 0x1864d106cc5f2c11n; +export const BuildVersion = 0x5f2254539e3ad47dn; // The block's magic (docs/SPEC-TABLES.md §19.1), read as an explicit // little-endian word: it is what separates a block written by a build of this diff --git a/generated/bench/tables/js/BenchTableFlat.js b/generated/bench/tables/js/BenchTableFlat.js index 9f5e8ab04..13f017874 100644 --- a/generated/bench/tables/js/BenchTableFlat.js +++ b/generated/bench/tables/js/BenchTableFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package benchtable — protocol id 0x1a38ac487752b0ae +// package benchtable — protocol id 0xd093e62e6f907c36 // // THE FLAT TIER — the shipped JavaScript wire path: a single-word 32-bit // bitpacker inlined at every field (byte-identical wire to serialize.js), diff --git a/generated/bench/tables/rust/src/benchtable.rs b/generated/bench/tables/rust/src/benchtable.rs index 86d4bbe5b..ef23d4831 100644 --- a/generated/bench/tables/rust/src/benchtable.rs +++ b/generated/bench/tables/rust/src/benchtable.rs @@ -2,13 +2,13 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package benchtable — protocol id 0x1a38ac487752b0ae +// package benchtable — protocol id 0xd093e62e6f907c36 use serialize::{ReadStream, Stream, WriteStream}; // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -pub const PROTOCOL_ID: u64 = 0x1a38ac487752b0ae; +pub const PROTOCOL_ID: u64 = 0xd093e62e6f907c36; /// The generated crate's error: the runtime's own errors pass through; /// Validation is a read rejecting the wire (SPEC §4.3, §4.7). diff --git a/generated/bench/tables/rust/src/benchtable_table.rs b/generated/bench/tables/rust/src/benchtable_table.rs index 7658512a6..e85c1cca0 100644 --- a/generated/bench/tables/rust/src/benchtable_table.rs +++ b/generated/bench/tables/rust/src/benchtable_table.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package benchtable — the TABLE wire (docs/SPEC-TABLES.md); protocol id 0x1a38ac487752b0ae names packets only, and a table versions by field id +// package benchtable — the TABLE wire (docs/SPEC-TABLES.md); protocol id 0xd093e62e6f907c36 names packets only, and a table versions by field id // // Measure/Save/Load are name-first free functions: _measure gives the // exact wire size, _save writes exactly that many bytes into the diff --git a/generated/bench/tables/rust/src/build_version.rs b/generated/bench/tables/rust/src/build_version.rs index c2037a445..0cac6b592 100644 --- a/generated/bench/tables/rust/src/build_version.rs +++ b/generated/bench/tables/rust/src/build_version.rs @@ -17,4 +17,4 @@ // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -pub const BUILD_VERSION: u64 = 0x1864d106cc5f2c11; +pub const BUILD_VERSION: u64 = 0x5f2254539e3ad47d; diff --git a/generated/bench/tables/rust/src/lib.rs b/generated/bench/tables/rust/src/lib.rs index 9540205eb..22426d6b2 100644 --- a/generated/bench/tables/rust/src/lib.rs +++ b/generated/bench/tables/rust/src/lib.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package benchtable — protocol id 0x1a38ac487752b0ae +// package benchtable — protocol id 0xd093e62e6f907c36 // Two clippy classes are silenced deliberately, crate-wide: // - derivable_impls / field_reassign_with_default: Default impls are diff --git a/generated/c-ludicrous/Ludicrous.h b/generated/c-ludicrous/Ludicrous.h index 6b52ce62e..ab27bbf5e 100644 --- a/generated/c-ludicrous/Ludicrous.h +++ b/generated/c-ludicrous/Ludicrous.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package ludicrous — protocol id 0x42050541a90eea8a */ + package ludicrous — protocol id 0x3a9a972a02c9e7ca */ #ifndef SCHEMA_LUDICROUS_LUDICROUS_H #define SCHEMA_LUDICROUS_LUDICROUS_H @@ -25,7 +25,7 @@ extern "C" { /* The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two sides at the same id speak identical bits; there is no other versioning. */ -#define LUDICROUS_PROTOCOL_ID 0x42050541a90eea8aULL +#define LUDICROUS_PROTOCOL_ID 0x3a9a972a02c9e7caULL #define MAX_WORLD_UNITS (30000) diff --git a/generated/c-ludicrous/LudicrousWire.h b/generated/c-ludicrous/LudicrousWire.h index 98627bdda..980378150 100644 --- a/generated/c-ludicrous/LudicrousWire.h +++ b/generated/c-ludicrous/LudicrousWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package ludicrous — protocol id 0x42050541a90eea8a */ + package ludicrous — protocol id 0x3a9a972a02c9e7ca */ #ifndef SCHEMA_LUDICROUS_LUDICROUSWIRE_H #define SCHEMA_LUDICROUS_LUDICROUSWIRE_H diff --git a/generated/c/Clauses.h b/generated/c/Clauses.h index 4866321f9..2fc7b580f 100644 --- a/generated/c/Clauses.h +++ b/generated/c/Clauses.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_CLAUSES_H #define SCHEMA_EXAMPLE_CLAUSES_H diff --git a/generated/c/ClausesWire.h b/generated/c/ClausesWire.h index dfbba774d..e222a2358 100644 --- a/generated/c/ClausesWire.h +++ b/generated/c/ClausesWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_CLAUSESWIRE_H #define SCHEMA_EXAMPLE_CLAUSESWIRE_H diff --git a/generated/c/Constants.h b/generated/c/Constants.h index 5e973df76..6fc49df03 100644 --- a/generated/c/Constants.h +++ b/generated/c/Constants.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_CONSTANTS_H #define SCHEMA_EXAMPLE_CONSTANTS_H @@ -15,7 +15,7 @@ extern "C" { /* The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two sides at the same id speak identical bits; there is no other versioning. */ -#define EXAMPLE_PROTOCOL_ID 0x91a8e85156dfe2b1ULL +#define EXAMPLE_PROTOCOL_ID 0x682e2a15a56b78bfULL #define POSITION_UNITS (1024) #define VELOCITY_UNITS (1024) diff --git a/generated/c/ConstantsWire.h b/generated/c/ConstantsWire.h index 336e3c019..5cf40d778 100644 --- a/generated/c/ConstantsWire.h +++ b/generated/c/ConstantsWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_CONSTANTSWIRE_H #define SCHEMA_EXAMPLE_CONSTANTSWIRE_H diff --git a/generated/c/Degenerate.h b/generated/c/Degenerate.h index e8c6a434c..1bb3aa8d6 100644 --- a/generated/c/Degenerate.h +++ b/generated/c/Degenerate.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_DEGENERATE_H #define SCHEMA_EXAMPLE_DEGENERATE_H diff --git a/generated/c/DegenerateWire.h b/generated/c/DegenerateWire.h index 11b18ad73..1466f4bf4 100644 --- a/generated/c/DegenerateWire.h +++ b/generated/c/DegenerateWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_DEGENERATEWIRE_H #define SCHEMA_EXAMPLE_DEGENERATEWIRE_H diff --git a/generated/c/Enums.h b/generated/c/Enums.h index 195e8f6b1..66fb5f7ff 100644 --- a/generated/c/Enums.h +++ b/generated/c/Enums.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_ENUMS_H #define SCHEMA_EXAMPLE_ENUMS_H diff --git a/generated/c/EnumsWire.h b/generated/c/EnumsWire.h index b316c8b64..2342c3863 100644 --- a/generated/c/EnumsWire.h +++ b/generated/c/EnumsWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_ENUMSWIRE_H #define SCHEMA_EXAMPLE_ENUMSWIRE_H diff --git a/generated/c/Joins.h b/generated/c/Joins.h index 0b0ab0502..e35b372c0 100644 --- a/generated/c/Joins.h +++ b/generated/c/Joins.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_JOINS_H #define SCHEMA_EXAMPLE_JOINS_H diff --git a/generated/c/JoinsWire.h b/generated/c/JoinsWire.h index 2258bed84..95a8f0c72 100644 --- a/generated/c/JoinsWire.h +++ b/generated/c/JoinsWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_JOINSWIRE_H #define SCHEMA_EXAMPLE_JOINSWIRE_H diff --git a/generated/c/Render.h b/generated/c/Render.h index 451edf4a1..a3751dbe5 100644 --- a/generated/c/Render.h +++ b/generated/c/Render.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_RENDER_H #define SCHEMA_EXAMPLE_RENDER_H diff --git a/generated/c/RenderWire.h b/generated/c/RenderWire.h index 3a05a392a..d24f91924 100644 --- a/generated/c/RenderWire.h +++ b/generated/c/RenderWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_RENDERWIRE_H #define SCHEMA_EXAMPLE_RENDERWIRE_H diff --git a/generated/c/Types.h b/generated/c/Types.h index dd5508b89..c32ff7201 100644 --- a/generated/c/Types.h +++ b/generated/c/Types.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_TYPES_H #define SCHEMA_EXAMPLE_TYPES_H diff --git a/generated/c/TypesWire.h b/generated/c/TypesWire.h index 236fd7936..99f99dd11 100644 --- a/generated/c/TypesWire.h +++ b/generated/c/TypesWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_TYPESWIRE_H #define SCHEMA_EXAMPLE_TYPESWIRE_H diff --git a/generated/c/Wire.h b/generated/c/Wire.h index ba7481ce8..2b4e1e839 100644 --- a/generated/c/Wire.h +++ b/generated/c/Wire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_WIRE_H #define SCHEMA_EXAMPLE_WIRE_H diff --git a/generated/c/WireWire.h b/generated/c/WireWire.h index aa39ebbfa..76cffe5db 100644 --- a/generated/c/WireWire.h +++ b/generated/c/WireWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_WIREWIRE_H #define SCHEMA_EXAMPLE_WIREWIRE_H diff --git a/generated/cpp/Clauses.h b/generated/cpp/Clauses.h index 5f911ab92..0b7eff697 100644 --- a/generated/cpp/Clauses.h +++ b/generated/cpp/Clauses.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/ClausesWire.h b/generated/cpp/ClausesWire.h index c800c5a64..1a0c7bd4d 100644 --- a/generated/cpp/ClausesWire.h +++ b/generated/cpp/ClausesWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/Constants.h b/generated/cpp/Constants.h index 7d2e8f23d..c9430f778 100644 --- a/generated/cpp/Constants.h +++ b/generated/cpp/Constants.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once @@ -12,7 +12,7 @@ namespace example { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -inline constexpr uint64_t ProtocolId = 0x91a8e85156dfe2b1ull; +inline constexpr uint64_t ProtocolId = 0x682e2a15a56b78bfull; inline constexpr int64_t PositionUnits = 1024; inline constexpr int64_t VelocityUnits = 1024; diff --git a/generated/cpp/ConstantsWire.h b/generated/cpp/ConstantsWire.h index e057f4355..446c4192c 100644 --- a/generated/cpp/ConstantsWire.h +++ b/generated/cpp/ConstantsWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/Degenerate.h b/generated/cpp/Degenerate.h index 023bc733b..5721302ff 100644 --- a/generated/cpp/Degenerate.h +++ b/generated/cpp/Degenerate.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/DegenerateWire.h b/generated/cpp/DegenerateWire.h index f26c0951b..b99b4c180 100644 --- a/generated/cpp/DegenerateWire.h +++ b/generated/cpp/DegenerateWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/Enums.h b/generated/cpp/Enums.h index 7efbf3994..8d58c211f 100644 --- a/generated/cpp/Enums.h +++ b/generated/cpp/Enums.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/EnumsWire.h b/generated/cpp/EnumsWire.h index 6ca8bbe53..eeb990774 100644 --- a/generated/cpp/EnumsWire.h +++ b/generated/cpp/EnumsWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/Joins.h b/generated/cpp/Joins.h index b48b6ca9c..af5a317d2 100644 --- a/generated/cpp/Joins.h +++ b/generated/cpp/Joins.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/JoinsWire.h b/generated/cpp/JoinsWire.h index 35ac2cceb..6417b633b 100644 --- a/generated/cpp/JoinsWire.h +++ b/generated/cpp/JoinsWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/Render.h b/generated/cpp/Render.h index bc2818d4a..90bf93dbb 100644 --- a/generated/cpp/Render.h +++ b/generated/cpp/Render.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/RenderWire.h b/generated/cpp/RenderWire.h index bc1978d01..1ae552935 100644 --- a/generated/cpp/RenderWire.h +++ b/generated/cpp/RenderWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/Types.h b/generated/cpp/Types.h index c609cac94..534df29b5 100644 --- a/generated/cpp/Types.h +++ b/generated/cpp/Types.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/TypesWire.h b/generated/cpp/TypesWire.h index e58721e54..f0250afe9 100644 --- a/generated/cpp/TypesWire.h +++ b/generated/cpp/TypesWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/Wire.h b/generated/cpp/Wire.h index c45be4d67..44cb42e66 100644 --- a/generated/cpp/Wire.h +++ b/generated/cpp/Wire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/WireWire.h b/generated/cpp/WireWire.h index 780932318..93410b24f 100644 --- a/generated/cpp/WireWire.h +++ b/generated/cpp/WireWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/generated/cpp/ludicrous/Ludicrous.h b/generated/cpp/ludicrous/Ludicrous.h index df1f42bb9..14d47bba6 100644 --- a/generated/cpp/ludicrous/Ludicrous.h +++ b/generated/cpp/ludicrous/Ludicrous.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca #pragma once @@ -14,7 +14,7 @@ namespace ludicrous { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -inline constexpr uint64_t ProtocolId = 0x42050541a90eea8aull; +inline constexpr uint64_t ProtocolId = 0x3a9a972a02c9e7caull; inline constexpr int64_t MaxWorldUnits = 30000; // enum DriveMode — None = 0 implicit, variants dense from 1, wire range [0, 3] (SPEC §4.2) diff --git a/generated/cpp/ludicrous/LudicrousWire.h b/generated/cpp/ludicrous/LudicrousWire.h index 012bce781..4c70bdbb7 100644 --- a/generated/cpp/ludicrous/LudicrousWire.h +++ b/generated/cpp/ludicrous/LudicrousWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca #pragma once diff --git a/generated/cs-ludicrous/Ludicrous.cs b/generated/cs-ludicrous/Ludicrous.cs index 0b964fd80..33b5fd4de 100644 --- a/generated/cs-ludicrous/Ludicrous.cs +++ b/generated/cs-ludicrous/Ludicrous.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an interior null) @@ -109,7 +109,7 @@ public static partial class Schema { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public const ulong ProtocolId = 0x42050541a90eea8a; + public const ulong ProtocolId = 0x3a9a972a02c9e7ca; public const long MaxWorldUnits = 30000; diff --git a/generated/cs/Clauses.cs b/generated/cs/Clauses.cs index 5fbf448ae..a19733429 100644 --- a/generated/cs/Clauses.cs +++ b/generated/cs/Clauses.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf using System; using System.Runtime.CompilerServices; diff --git a/generated/cs/Constants.cs b/generated/cs/Constants.cs index 68feb5f16..61041753d 100644 --- a/generated/cs/Constants.cs +++ b/generated/cs/Constants.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an interior null) @@ -20,7 +20,7 @@ public static partial class Schema { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public const ulong ProtocolId = 0x91a8e85156dfe2b1; + public const ulong ProtocolId = 0x682e2a15a56b78bf; public const long PositionUnits = 1024; diff --git a/generated/cs/Degenerate.cs b/generated/cs/Degenerate.cs index aac6cb3ed..b5b953d6f 100644 --- a/generated/cs/Degenerate.cs +++ b/generated/cs/Degenerate.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf using System; using System.Runtime.CompilerServices; diff --git a/generated/cs/Enums.cs b/generated/cs/Enums.cs index 299b655a4..8d62458d1 100644 --- a/generated/cs/Enums.cs +++ b/generated/cs/Enums.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf namespace Example { diff --git a/generated/cs/Joins.cs b/generated/cs/Joins.cs index cef8db3e1..0f7fc3c4c 100644 --- a/generated/cs/Joins.cs +++ b/generated/cs/Joins.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf using System; using System.Runtime.CompilerServices; diff --git a/generated/cs/Render.cs b/generated/cs/Render.cs index 95f633707..3ec151296 100644 --- a/generated/cs/Render.cs +++ b/generated/cs/Render.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf using System.Runtime.CompilerServices; using Serialize; diff --git a/generated/cs/Types.cs b/generated/cs/Types.cs index 0086bec8a..62b0074eb 100644 --- a/generated/cs/Types.cs +++ b/generated/cs/Types.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf using System.Runtime.CompilerServices; using Serialize; diff --git a/generated/cs/Wire.cs b/generated/cs/Wire.cs index df7a4d101..984a4864d 100644 --- a/generated/cs/Wire.cs +++ b/generated/cs/Wire.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf using System; using System.Runtime.CompilerServices; diff --git a/generated/dart-ludicrous/Int128.dart b/generated/dart-ludicrous/Int128.dart index de246a3da..b245f5a28 100644 --- a/generated/dart-ludicrous/Int128.dart +++ b/generated/dart-ludicrous/Int128.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // The emulated 128-bit pair: Dart has no native 128-bit integer, so // int128/uint128 storage speaks these types — two's-complement math on diff --git a/generated/dart-ludicrous/Ludicrous.dart b/generated/dart-ludicrous/Ludicrous.dart index 448c0490f..20b4c7816 100644 --- a/generated/dart-ludicrous/Ludicrous.dart +++ b/generated/dart-ludicrous/Ludicrous.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // The shipped Dart wire path (issue #155): the serialize.dart bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -34,7 +34,7 @@ bool _unsignedLessThan(int a, int b) => // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const int protocolId = 0x42050541a90eea8a; +const int protocolId = 0x3a9a972a02c9e7ca; const int maxWorldUnits = 30000; diff --git a/generated/dart/Clauses.dart b/generated/dart/Clauses.dart index 5a11c98c3..e1f238714 100644 --- a/generated/dart/Clauses.dart +++ b/generated/dart/Clauses.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import 'dart:typed_data'; diff --git a/generated/dart/Constants.dart b/generated/dart/Constants.dart index f94212757..7fb36bf4a 100644 --- a/generated/dart/Constants.dart +++ b/generated/dart/Constants.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // // The shipped Dart wire path (issue #155): the serialize.dart bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -24,7 +24,7 @@ // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const int protocolId = 0x91a8e85156dfe2b1; +const int protocolId = 0x682e2a15a56b78bf; const int positionUnits = 1024; diff --git a/generated/dart/Degenerate.dart b/generated/dart/Degenerate.dart index 82603bfcb..7f7a137e3 100644 --- a/generated/dart/Degenerate.dart +++ b/generated/dart/Degenerate.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import 'dart:typed_data'; diff --git a/generated/dart/Enums.dart b/generated/dart/Enums.dart index 9fa13de93..4be7b8aad 100644 --- a/generated/dart/Enums.dart +++ b/generated/dart/Enums.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Hex of a uint64 bit pattern held in a signed int (toRadixString would // render the sign, not the pattern). diff --git a/generated/dart/Joins.dart b/generated/dart/Joins.dart index a99f367eb..d2d60b363 100644 --- a/generated/dart/Joins.dart +++ b/generated/dart/Joins.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import 'dart:typed_data'; diff --git a/generated/dart/Render.dart b/generated/dart/Render.dart index 219b9c2d5..1ac5fd3b9 100644 --- a/generated/dart/Render.dart +++ b/generated/dart/Render.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import 'dart:typed_data'; diff --git a/generated/dart/Types.dart b/generated/dart/Types.dart index c68b15ed0..b20b7c6bf 100644 --- a/generated/dart/Types.dart +++ b/generated/dart/Types.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import 'dart:typed_data'; diff --git a/generated/dart/Wire.dart b/generated/dart/Wire.dart index cd2917b9e..16de722fb 100644 --- a/generated/dart/Wire.dart +++ b/generated/dart/Wire.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import 'dart:typed_data'; diff --git a/generated/elixir-ludicrous/Ludicrous.ex b/generated/elixir-ludicrous/Ludicrous.ex index 54d8f9fd8..3095680b2 100644 --- a/generated/elixir-ludicrous/Ludicrous.ex +++ b/generated/elixir-ludicrous/Ludicrous.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package ludicrous — protocol id 0x42050541a90eea8a +# package ludicrous — protocol id 0x3a9a972a02c9e7ca # # The shipped Elixir wire path (issue #167): the serialize.elixir port's # measured shapes — byte-granular 32-bit-group packing and 40-bit read @@ -128,7 +128,7 @@ defmodule Ludicrous.Ludicrous do # The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two # sides at the same id speak identical bits; there is no other versioning. - def protocol_id, do: 0x42050541A90EEA8A + def protocol_id, do: 0x3A9A972A02C9E7CA def max_world_units, do: 30000 diff --git a/generated/elixir/Clauses.ex b/generated/elixir/Clauses.ex index 13733d3e1..e1251712c 100644 --- a/generated/elixir/Clauses.ex +++ b/generated/elixir/Clauses.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # type W13 defmodule Example.W13 do diff --git a/generated/elixir/Constants.ex b/generated/elixir/Constants.ex index 0e6dcc32c..5e2bbda87 100644 --- a/generated/elixir/Constants.ex +++ b/generated/elixir/Constants.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # # The shipped Elixir wire path (issue #167): the serialize.elixir port's # measured shapes — byte-granular 32-bit-group packing and 40-bit read @@ -34,7 +34,7 @@ defmodule Example.Constants do # The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two # sides at the same id speak identical bits; there is no other versioning. - def protocol_id, do: 0x91A8E85156DFE2B1 + def protocol_id, do: 0x682E2A15A56B78BF def position_units, do: 1024 diff --git a/generated/elixir/Degenerate.ex b/generated/elixir/Degenerate.ex index 031c3f109..f2c16681e 100644 --- a/generated/elixir/Degenerate.ex +++ b/generated/elixir/Degenerate.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # type Vec2 defmodule Example.Vec2 do diff --git a/generated/elixir/Enums.ex b/generated/elixir/Enums.ex index fbba6b378..131e4755f 100644 --- a/generated/elixir/Enums.ex +++ b/generated/elixir/Enums.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # Team — None = 0 implicit, variants dense from 1, wire range [0, 2] (SPEC §4.2); # an integer-constant namespace — the Elixir translation of the family's diff --git a/generated/elixir/Joins.ex b/generated/elixir/Joins.ex index f4161e803..7d3abf963 100644 --- a/generated/elixir/Joins.ex +++ b/generated/elixir/Joins.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # type ArmsAgree defmodule Example.ArmsAgree do diff --git a/generated/elixir/Render.ex b/generated/elixir/Render.ex index 4d9b78d9f..b4131edc3 100644 --- a/generated/elixir/Render.ex +++ b/generated/elixir/Render.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # type RenderSprite defmodule Example.RenderSprite do diff --git a/generated/elixir/Types.ex b/generated/elixir/Types.ex index d35e14de0..170afc817 100644 --- a/generated/elixir/Types.ex +++ b/generated/elixir/Types.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # type Vec3 [vec3] — tags are user-chosen and inert in v1 (SPEC §4.2, Type tags) defmodule Example.Vec3 do diff --git a/generated/elixir/Wire.ex b/generated/elixir/Wire.ex index 3393b8781..2aba203cb 100644 --- a/generated/elixir/Wire.ex +++ b/generated/elixir/Wire.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # Weapon — None = 0 implicit, variants dense from 1, wire range [0, 15] (SPEC §4.2); # an integer-constant namespace — the Elixir translation of the family's diff --git a/generated/go-ludicrous/Ludicrous.go b/generated/go-ludicrous/Ludicrous.go index e1a5259b6..bb64e2fbc 100644 --- a/generated/go-ludicrous/Ludicrous.go +++ b/generated/go-ludicrous/Ludicrous.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca package ludicrous @@ -14,7 +14,7 @@ import ( // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const ProtocolId uint64 = 0x42050541a90eea8a +const ProtocolId uint64 = 0x3a9a972a02c9e7ca // ErrValidation is returned when a read rejects the wire: a wrong constant, // nonzero reserved bits, or an interior null in a string (SPEC §4.3, §4.7). diff --git a/generated/go/Clauses.go b/generated/go/Clauses.go index 643e6a729..dea9cf3ad 100644 --- a/generated/go/Clauses.go +++ b/generated/go/Clauses.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/generated/go/Constants.go b/generated/go/Constants.go index 233126026..1c704530b 100644 --- a/generated/go/Constants.go +++ b/generated/go/Constants.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example @@ -12,7 +12,7 @@ import ( // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const ProtocolId uint64 = 0x91a8e85156dfe2b1 +const ProtocolId uint64 = 0x682e2a15a56b78bf // ErrValidation is returned when a read rejects the wire: a wrong constant, // nonzero reserved bits, or an interior null in a string (SPEC §4.3, §4.7). diff --git a/generated/go/Degenerate.go b/generated/go/Degenerate.go index 672a78a51..a2278999b 100644 --- a/generated/go/Degenerate.go +++ b/generated/go/Degenerate.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/generated/go/Enums.go b/generated/go/Enums.go index 78dc79031..5d752032c 100644 --- a/generated/go/Enums.go +++ b/generated/go/Enums.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/generated/go/Joins.go b/generated/go/Joins.go index f7c20dc31..814de2a54 100644 --- a/generated/go/Joins.go +++ b/generated/go/Joins.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/generated/go/Render.go b/generated/go/Render.go index 4076e8ec4..d29d1fa37 100644 --- a/generated/go/Render.go +++ b/generated/go/Render.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/generated/go/Types.go b/generated/go/Types.go index a9f9093ea..13117d31c 100644 --- a/generated/go/Types.go +++ b/generated/go/Types.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/generated/go/Wire.go b/generated/go/Wire.go index 4d99c775f..871585e8e 100644 --- a/generated/go/Wire.go +++ b/generated/go/Wire.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/generated/java-ludicrous/Int128.java b/generated/java-ludicrous/Int128.java index cbd1ba60b..6932a406e 100644 --- a/generated/java-ludicrous/Int128.java +++ b/generated/java-ludicrous/Int128.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // The emulated 128-bit pair, signed half: Java has no native 128-bit integer, // so int128/uint128 storage speaks Int128/UInt128 — two's-complement math diff --git a/generated/java-ludicrous/Ludicrous.java b/generated/java-ludicrous/Ludicrous.java index 897cb4a39..d25aee434 100644 --- a/generated/java-ludicrous/Ludicrous.java +++ b/generated/java-ludicrous/Ludicrous.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // The shipped Java wire path (issue #156): the serialize.java bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -39,7 +39,7 @@ private Ludicrous() {} // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public static final long protocolId = 0x42050541a90eea8aL; + public static final long protocolId = 0x3a9a972a02c9e7caL; public static final int maxWorldUnits = 30000; diff --git a/generated/java-ludicrous/UInt128.java b/generated/java-ludicrous/UInt128.java index 32ee8d8cd..e807cbbe2 100644 --- a/generated/java-ludicrous/UInt128.java +++ b/generated/java-ludicrous/UInt128.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // The emulated 128-bit pair, unsigned half: Java has no native 128-bit integer, // so int128/uint128 storage speaks Int128/UInt128 — two's-complement math diff --git a/generated/java/Clauses.java b/generated/java/Clauses.java index c50fd79d9..bde5d8f6f 100644 --- a/generated/java/Clauses.java +++ b/generated/java/Clauses.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/generated/java/Constants.java b/generated/java/Constants.java index a7427cdd0..94c1cb566 100644 --- a/generated/java/Constants.java +++ b/generated/java/Constants.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // // The shipped Java wire path (issue #156): the serialize.java bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -33,7 +33,7 @@ private Constants() {} // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public static final long protocolId = 0x91a8e85156dfe2b1L; + public static final long protocolId = 0x682e2a15a56b78bfL; public static final int positionUnits = 1024; diff --git a/generated/java/Degenerate.java b/generated/java/Degenerate.java index 01a1cbd1b..c5b11d32d 100644 --- a/generated/java/Degenerate.java +++ b/generated/java/Degenerate.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/generated/java/Enums.java b/generated/java/Enums.java index c2d99d07d..06c619d6e 100644 --- a/generated/java/Enums.java +++ b/generated/java/Enums.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/generated/java/Joins.java b/generated/java/Joins.java index b7fcc88c6..d140aedcc 100644 --- a/generated/java/Joins.java +++ b/generated/java/Joins.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/generated/java/Render.java b/generated/java/Render.java index 9218851c3..4ff46cda6 100644 --- a/generated/java/Render.java +++ b/generated/java/Render.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/generated/java/Types.java b/generated/java/Types.java index 9fa01328c..7e87553a7 100644 --- a/generated/java/Types.java +++ b/generated/java/Types.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/generated/java/Wire.java b/generated/java/Wire.java index 79d7b7a94..414b7c0a8 100644 --- a/generated/java/Wire.java +++ b/generated/java/Wire.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/generated/js-ludicrous/Ludicrous.js b/generated/js-ludicrous/Ludicrous.js index 7f8957b0f..027703b5c 100644 --- a/generated/js-ludicrous/Ludicrous.js +++ b/generated/js-ludicrous/Ludicrous.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an out-of-contract @@ -22,7 +22,7 @@ const BOOL_SCRATCH = { value: false }; // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -export const ProtocolId = 0x42050541a90eea8an; +export const ProtocolId = 0x3a9a972a02c9e7can; export const MaxWorldUnits = 30000; diff --git a/generated/js-ludicrous/LudicrousFlat.js b/generated/js-ludicrous/LudicrousFlat.js index 63ead2a26..8af3ad542 100644 --- a/generated/js-ludicrous/LudicrousFlat.js +++ b/generated/js-ludicrous/LudicrousFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // THE FLAT TIER — the shipped JavaScript wire path: a single-word 32-bit // bitpacker inlined at every field (byte-identical wire to serialize.js), diff --git a/generated/js/Clauses.js b/generated/js/Clauses.js index 2d1b3c3ad..fddfe7e9a 100644 --- a/generated/js/Clauses.js +++ b/generated/js/Clauses.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Scratch holders for the runtime's {value} refs — single threaded per // realm, always consumed in the same call that fills them. diff --git a/generated/js/ClausesFlat.js b/generated/js/ClausesFlat.js index 74bcadc82..2e492957a 100644 --- a/generated/js/ClausesFlat.js +++ b/generated/js/ClausesFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // // THE FLAT TIER — the shipped JavaScript wire path: a single-word 32-bit // bitpacker inlined at every field (byte-identical wire to serialize.js), diff --git a/generated/js/Constants.js b/generated/js/Constants.js index a28310436..5c69dc4ac 100644 --- a/generated/js/Constants.js +++ b/generated/js/Constants.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an out-of-contract @@ -16,7 +16,7 @@ // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -export const ProtocolId = 0x91a8e85156dfe2b1n; +export const ProtocolId = 0x682e2a15a56b78bfn; export const PositionUnits = 1024; diff --git a/generated/js/Degenerate.js b/generated/js/Degenerate.js index ec3b5b3f1..8d2ad35f9 100644 --- a/generated/js/Degenerate.js +++ b/generated/js/Degenerate.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Scratch holders for the runtime's {value} refs — single threaded per // realm, always consumed in the same call that fills them. diff --git a/generated/js/DegenerateFlat.js b/generated/js/DegenerateFlat.js index 74976678e..32489561b 100644 --- a/generated/js/DegenerateFlat.js +++ b/generated/js/DegenerateFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // The 8-byte conversion scratch — serialize.js's FLOAT_SCRATCH twin. Module // scope is safe: single threaded per realm, consumed in the same op that diff --git a/generated/js/Enums.js b/generated/js/Enums.js index 8537cf651..6515194da 100644 --- a/generated/js/Enums.js +++ b/generated/js/Enums.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Team — None = 0 implicit, variants dense from 1, wire range [0, 2] (SPEC §4.2); // a frozen object of Number values — the JS translation of the family's diff --git a/generated/js/Joins.js b/generated/js/Joins.js index abffe1ff8..32a44ea22 100644 --- a/generated/js/Joins.js +++ b/generated/js/Joins.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Scratch holders for the runtime's {value} refs — single threaded per // realm, always consumed in the same call that fills them. diff --git a/generated/js/JoinsFlat.js b/generated/js/JoinsFlat.js index 5fd20d0f9..259f01fab 100644 --- a/generated/js/JoinsFlat.js +++ b/generated/js/JoinsFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // The 8-byte conversion scratch — serialize.js's FLOAT_SCRATCH twin. Module // scope is safe: single threaded per realm, consumed in the same op that diff --git a/generated/js/Render.js b/generated/js/Render.js index ced6c8344..b90743760 100644 --- a/generated/js/Render.js +++ b/generated/js/Render.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import { Team } from "./Enums.js"; diff --git a/generated/js/RenderFlat.js b/generated/js/RenderFlat.js index d77993773..cb4e74f3b 100644 --- a/generated/js/RenderFlat.js +++ b/generated/js/RenderFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // The 8-byte conversion scratch — serialize.js's FLOAT_SCRATCH twin. Module // scope is safe: single threaded per realm, consumed in the same op that diff --git a/generated/js/Types.js b/generated/js/Types.js index 9a0f8ce8b..694fbbd9e 100644 --- a/generated/js/Types.js +++ b/generated/js/Types.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import { MaxHealth, MaxInputsPerPacket, MaxObjects, MaxPositionUnits, MaxVelocityUnits, RotationUnits, ShipMaxLasers, ShipMaxMissiles } from "./Constants.js"; import { Pending, ShipType, Team } from "./Enums.js"; diff --git a/generated/js/TypesFlat.js b/generated/js/TypesFlat.js index 8690c7975..a8d226b72 100644 --- a/generated/js/TypesFlat.js +++ b/generated/js/TypesFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // The 8-byte conversion scratch — serialize.js's FLOAT_SCRATCH twin. Module // scope is safe: single threaded per realm, consumed in the same op that diff --git a/generated/js/Wire.js b/generated/js/Wire.js index 6501b09f8..81c238bc9 100644 --- a/generated/js/Wire.js +++ b/generated/js/Wire.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import { MaxBlockSize, MaxChatLength } from "./Constants.js"; diff --git a/generated/js/WireFlat.js b/generated/js/WireFlat.js index 5bbbd4d85..0309114c1 100644 --- a/generated/js/WireFlat.js +++ b/generated/js/WireFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // The 8-byte conversion scratch — serialize.js's FLOAT_SCRATCH twin. Module // scope is safe: single threaded per realm, consumed in the same op that diff --git a/generated/rust-ludicrous/src/lib.rs b/generated/rust-ludicrous/src/lib.rs index 648e29ea8..6d02983db 100644 --- a/generated/rust-ludicrous/src/lib.rs +++ b/generated/rust-ludicrous/src/lib.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // Two clippy classes are silenced deliberately, crate-wide: // - derivable_impls / field_reassign_with_default: Default impls are diff --git a/generated/rust-ludicrous/src/ludicrous.rs b/generated/rust-ludicrous/src/ludicrous.rs index 39c8b778e..bda393e87 100644 --- a/generated/rust-ludicrous/src/ludicrous.rs +++ b/generated/rust-ludicrous/src/ludicrous.rs @@ -2,13 +2,13 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca use serialize::{ReadStream, Stream, WriteStream}; // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -pub const PROTOCOL_ID: u64 = 0x42050541a90eea8a; +pub const PROTOCOL_ID: u64 = 0x3a9a972a02c9e7ca; /// The generated crate's error: the runtime's own errors pass through; /// Validation is a read rejecting the wire (SPEC §4.3, §4.7). diff --git a/generated/rust/src/clauses.rs b/generated/rust/src/clauses.rs index 70c7f2446..d075630bc 100644 --- a/generated/rust/src/clauses.rs +++ b/generated/rust/src/clauses.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf use crate::*; use serialize::{ReadStream, Stream, WriteStream}; diff --git a/generated/rust/src/constants.rs b/generated/rust/src/constants.rs index 69ae2e4fe..8cebc47de 100644 --- a/generated/rust/src/constants.rs +++ b/generated/rust/src/constants.rs @@ -2,11 +2,11 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -pub const PROTOCOL_ID: u64 = 0x91a8e85156dfe2b1; +pub const PROTOCOL_ID: u64 = 0x682e2a15a56b78bf; /// The generated crate's error: the runtime's own errors pass through; /// Validation is a read rejecting the wire (SPEC §4.3, §4.7). diff --git a/generated/rust/src/degenerate.rs b/generated/rust/src/degenerate.rs index f210b8835..2584dd4f2 100644 --- a/generated/rust/src/degenerate.rs +++ b/generated/rust/src/degenerate.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf use crate::*; use serialize::{ReadStream, Stream, WriteStream}; diff --git a/generated/rust/src/enums.rs b/generated/rust/src/enums.rs index b75ab5673..147cf6d6e 100644 --- a/generated/rust/src/enums.rs +++ b/generated/rust/src/enums.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Team — None = 0 implicit, variants dense from 1, wire range [0, 2] (SPEC §4.2); // a newtype because | max = ... headroom makes non-variant values wire-legal diff --git a/generated/rust/src/joins.rs b/generated/rust/src/joins.rs index 3a71a2959..e89a86ae2 100644 --- a/generated/rust/src/joins.rs +++ b/generated/rust/src/joins.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf use crate::*; use serialize::{ReadStream, Stream, WriteStream}; diff --git a/generated/rust/src/lib.rs b/generated/rust/src/lib.rs index af22819e9..62684805d 100644 --- a/generated/rust/src/lib.rs +++ b/generated/rust/src/lib.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Two clippy classes are silenced deliberately, crate-wide: // - derivable_impls / field_reassign_with_default: Default impls are diff --git a/generated/rust/src/render.rs b/generated/rust/src/render.rs index 0b5e2194d..c792ad5f8 100644 --- a/generated/rust/src/render.rs +++ b/generated/rust/src/render.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf use crate::*; use serialize::{ReadStream, Stream, WriteStream}; diff --git a/generated/rust/src/types.rs b/generated/rust/src/types.rs index 39093ba54..4d55ee665 100644 --- a/generated/rust/src/types.rs +++ b/generated/rust/src/types.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf use crate::*; use serialize::{ReadStream, Stream, WriteStream}; diff --git a/generated/rust/src/wire.rs b/generated/rust/src/wire.rs index e1c75686b..6e0d494a7 100644 --- a/generated/rust/src/wire.rs +++ b/generated/rust/src/wire.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf use crate::*; use serialize::{ReadStream, Stream, WriteStream}; diff --git a/internal/check/projection_test.go b/internal/check/projection_test.go index 249011edc..d50072867 100644 --- a/internal/check/projection_test.go +++ b/internal/check/projection_test.go @@ -1,6 +1,9 @@ package check_test import ( + "crypto/sha256" + "encoding/binary" + "fmt" "os" "path/filepath" "strings" @@ -67,7 +70,6 @@ func TestIdIsStableUnderNonWireEdits(t *testing.T) { {"a trailing comment", baseSchema + "\n// a comment costs no bits\n"}, {"an interior comment", strings.Replace(baseSchema, "type State {", "// describes a ship\ntype State {", 1)}, {"blank lines", strings.Replace(baseSchema, "enum Team", "\n\nenum Team", 1)}, - {"an enum variant renamed", strings.Replace(baseSchema, "{ Red, Blue }", "{ Crimson, Blue }", 1)}, {"a const renamed", strings.NewReplacer("MaxHealth", "HealthCeiling").Replace(baseSchema)}, } @@ -133,9 +135,82 @@ func TestIdMovesUnderWireEdits(t *testing.T) { } } -// Union id behavior (SPEC §4.8, §3.1): a union is wire structure — variant -// order, count and payload types project — but variant NAMES do not, the -// enum-variant rule exactly. +// VARIANT ORDER is a wire fact (SPEC §3.1). An enum value rides as its +// declaration ordinal and a flags variant as its bit position, so a reorder +// changes what every stored ordinal and every set bit MEANS while the shape +// stays put. The ordered variant names are the only record of that mapping, +// so they project; the price is that a RENAME moves the id too, which the +// ship-together rule makes free. This is the direction that must never +// regress — without the names, two builds either side of an alphabetized enum +// hold one id and read each other's values as the wrong variant. +func TestIdMovesUnderVariantOrder(t *testing.T) { + const source = `package probe + +enum Grade { Bronze, Silver, Gold } + +flags Perks { Fast, Quiet, Tough } + +type State { + grade Grade + perks Perks +} +` + base := build(t, source).ProtocolId + + cases := []struct { + name string + source string + }{ + {"an enum reordered", strings.Replace(source, "{ Bronze, Silver, Gold }", "{ Gold, Silver, Bronze }", 1)}, + {"an enum variant renamed (declaration order is spelled in the names)", + strings.Replace(source, "{ Bronze, Silver, Gold }", "{ Copper, Silver, Gold }", 1)}, + {"a flags declaration reordered", strings.Replace(source, "{ Fast, Quiet, Tough }", "{ Tough, Quiet, Fast }", 1)}, + {"a flags variant renamed", strings.Replace(source, "{ Fast, Quiet, Tough }", "{ Rapid, Quiet, Tough }", 1)}, + } + for _, tc := range cases { + if got := build(t, tc.source).ProtocolId; got == base { + t.Errorf("%s did NOT move the protocol id (0x%016x) — every ordinal changed meaning and two incompatible builds would claim compatibility", + tc.name, base) + } + } +} + +// THE CODEC LAW (SPEC §3.1): a second version line beside the rendering's own, +// for the class of change the rendering cannot see — a compiler that alters +// the bytes, the accepted inputs, the rejections, the materialized defaults or +// a numeric conversion for the same schema and values. Held here in two parts: +// the id IS the digest over the projection text, so nothing outside the text +// can reach it, and a different law line therefore gives a different id. +func TestWireLawLineMovesTheId(t *testing.T) { + u := build(t, baseSchema) + text := ir.WireProjection(u) + + lawLine := fmt.Sprintf("schema-wire-law %d\n", ir.WireLaw) + if !strings.HasPrefix(text, fmt.Sprintf("schema-wire-projection %d\n%s", ir.ProjectionVersion, lawLine)) { + t.Fatalf("the projection must open with its rendering version and then its codec law; it opens:\n%s", text) + } + + if got := digest(text); got != u.ProtocolId { + t.Fatalf("the protocol id is not the digest over the projection text (0x%016x vs 0x%016x) — §3.1's procedure has moved", u.ProtocolId, got) + } + bumped := strings.Replace(text, lawLine, fmt.Sprintf("schema-wire-law %d\n", ir.WireLaw+1), 1) + if digest(bumped) == u.ProtocolId { + t.Error("bumping the codec law left the id where it was — a rounding-rule change would ship as a false match") + } +} + +// digest is §3.1's procedure, spelled out where a test can see it: the low 64 +// bits of SHA-256 over the projection, the final eight bytes big-endian. +func digest(projection string) uint64 { + sum := sha256.Sum256([]byte(projection)) + return binary.BigEndian.Uint64(sum[24:]) +} + +// Union id behavior (SPEC §4.8, §3.1): a union is wire structure — arm order, +// count, arm NAMES and payload types all project. The names are what the +// payload types cannot carry alone: two arms of ONE payload type reorder +// invisibly without them (#491), the enum case exactly, so an arm rename +// moves the id like an enum variant's. func TestUnionIdBehavior(t *testing.T) { const unionSchema = `package probe @@ -168,23 +243,43 @@ type Holder { " ring Ring\n slab Slab", " slab Slab\n ring Ring", 1)}, {"a payload type changed", strings.Replace(unionSchema, "slab Slab", "slab Ring", 1)}, {"a payload's field widened", strings.Replace(unionSchema, "width uint8", "width uint16", 1)}, + {"an arm renamed (arm order is spelled in names)", strings.Replace(unionSchema, "ring Ring", "hoop Ring", 1)}, } for _, tc := range moves { if got := build(t, tc.source).ProtocolId; got == base { t.Errorf("%s did NOT move the protocol id (0x%016x) — two incompatible builds would claim compatibility", tc.name, base) } } +} - stable := []struct { - name string - source string - }{ - {"a variant renamed (the ordinal is the wire)", strings.Replace(unionSchema, "ring Ring", "hoop Ring", 1)}, +// THE SAME-TYPED ARMS (#491), the shape the payload types cannot describe: two +// arms of one payload type reorder with every projected type unmoved, so tag 1 +// means `left` on one build and `right` on the other under a single id. The +// arm names are the whole of the difference, and this is the case that names +// why they project. +func TestUnionIdMovesUnderSameTypedArmReorder(t *testing.T) { + const source = `package probe + +type Arm { + v uint8 +} + +union Held { + left Arm + right Arm +} + +type Holder { + held Held +} +` + reordered := strings.Replace(source, " left Arm\n right Arm", " right Arm\n left Arm", 1) + if reordered == source { + t.Fatal("the edit patched nothing — the fixture drifted") } - for _, tc := range stable { - if got := build(t, tc.source).ProtocolId; got != base { - t.Errorf("%s moved the protocol id (0x%016x -> 0x%016x); no wire byte changed", tc.name, base, got) - } + base, got := build(t, source).ProtocolId, build(t, reordered).ProtocolId + if got == base { + t.Errorf("two arms of one payload type reordered and the id did not move (0x%016x) — tag 1 means a different arm on each build and both claim compatibility", base) } } @@ -406,22 +501,28 @@ union Shape { attitude Attitude } `) - const pinnedId = uint64(0xad54eaab53f241b4) + const pinnedId = uint64(0x0d68b71928bcbcf0) if u.ProtocolId != pinnedId { t.Fatalf("the neutrality probe's id moved: 0x%016x, pinned 0x%016x", u.ProtocolId, pinnedId) } - const pinnedProjection = `schema-wire-projection 1 + const pinnedProjection = `schema-wire-projection 2 +schema-wire-law 1 package probe enum Team max=2 storage=8 variants=2 + variant 1 name=Red + variant 2 name=Blue flags ProbeFlags wirebits=3 + bit 0 name=Armed + bit 1 name=Cloaked + bit 2 name=Damaged type Attitude table=false message=false field orientation kind=3 floatrange=[0,360] res=0.1 steps=3600 round=nearest field health kind=0 width=32 signed=true intrange=[0,1000] type Ring table=false message=false field radius kind=0 width=16 signed=false union Shape max=2 - variant 1 payload=Ring - variant 2 payload=Attitude + variant 1 name=ring payload=Ring + variant 2 name=attitude payload=Attitude ` if got := ir.WireProjection(u); got != pinnedProjection { t.Fatalf("the neutrality probe's projection moved:\n%s\npinned:\n%s", got, pinnedProjection) diff --git a/internal/goldens/goldens_test.go b/internal/goldens/goldens_test.go index e60a62fe9..6144e4d8e 100644 --- a/internal/goldens/goldens_test.go +++ b/internal/goldens/goldens_test.go @@ -8,6 +8,8 @@ package goldens import ( + "crypto/sha256" + "encoding/binary" "flag" "fmt" "os" @@ -204,8 +206,8 @@ func TestExportedSurfaceMovesNeitherWire(t *testing.T) { protocolId uint64 buildVersion uint64 }{ - {"examples", corpusDir, 0x91a8e85156dfe2b1, 0x69d6a810cfa22717}, - {"examples128", corpus128Dir, 0x42050541a90eea8a, 0xedde8274fbab7f85}, + {"examples", corpusDir, 0x682e2a15a56b78bf, 0x68ee62213126f184}, + {"examples128", corpus128Dir, 0x3a9a972a02c9e7ca, 0x44a8123c94d09353}, } { t.Run(unit.name, func(t *testing.T) { u := loadCorpusDir(t, unit.dir) @@ -287,6 +289,58 @@ func pinDir(t *testing.T, dir string, files map[string][]byte) { } } +// pinnedUnits is every compilation unit this package pins, by the name its +// golden files are stored under. +var pinnedUnits = []struct { + name string + dir string +}{ + {"examples", corpusDir}, + {"examples128", corpus128Dir}, + {"tables-examples", "../../tables/examples"}, + {"tables-pointers", "../../tables/pointers"}, + {"tables-block", "../../tables/block"}, + {"tables-blockhome", "../../tables/blockhome"}, + {"tables-messages", "../../tables/messages"}, + {"tables-stream", "../../tables/stream"}, + {"tables-blobs", "../../tables/blobs"}, + {"tables-scalars", "../../tables/scalars"}, +} + +// TestWireLawBumpMovesEveryId holds the promise the codec law line is for +// (SPEC §3.1): a compiler change that moves the BYTES under an unchanged +// rendering bumps ir.WireLaw, and EVERY id in existence moves with it. The +// constant cannot be changed from a test, so the equivalent is proven over the +// artifact the id is taken from: for every unit here the id is exactly the +// digest over its projection text, and the same text under the next law +// number digests differently. No unit can sit out a bump. +func TestWireLawBumpMovesEveryId(t *testing.T) { + law := fmt.Sprintf("schema-wire-law %d\n", ir.WireLaw) + next := fmt.Sprintf("schema-wire-law %d\n", ir.WireLaw+1) + for _, unit := range pinnedUnits { + t.Run(unit.name, func(t *testing.T) { + u := loadCorpusDir(t, unit.dir) + text := ir.WireProjection(u) + if !strings.Contains(text, law) { + t.Fatalf("%s does not carry the codec law line — a rounding-rule change could not reach its id", unit.name) + } + if got := digest(text); got != u.ProtocolId { + t.Fatalf("%s: the id is not the digest over its projection (0x%016x vs 0x%016x) — §3.1's procedure has moved", unit.name, u.ProtocolId, got) + } + if digest(strings.Replace(text, law, next, 1)) == u.ProtocolId { + t.Errorf("%s kept its id across a codec law bump", unit.name) + } + }) + } +} + +// digest is §3.1's procedure: the low 64 bits of SHA-256 over the projection, +// the final eight bytes big-endian. +func digest(projection string) uint64 { + sum := sha256.Sum256([]byte(projection)) + return binary.BigEndian.Uint64(sum[24:]) +} + // TestGoldenBuildVersion pins the BUILD VERSION and the COOK PROJECTION it // hashes, per unit (docs/SPEC-TABLES.md §20.8). The number is what a distributed // store's tuple is keyed by and what a block's prologue carries, so a change @@ -298,22 +352,7 @@ func pinDir(t *testing.T, dir string, files map[string][]byte) { // header lines alone, which is the case a reader has to be able to check by // eye. func TestGoldenBuildVersion(t *testing.T) { - units := []struct { - name string - dir string - }{ - {"examples", corpusDir}, - {"examples128", corpus128Dir}, - {"tables-examples", "../../tables/examples"}, - {"tables-pointers", "../../tables/pointers"}, - {"tables-block", "../../tables/block"}, - {"tables-blockhome", "../../tables/blockhome"}, - {"tables-messages", "../../tables/messages"}, - {"tables-stream", "../../tables/stream"}, - {"tables-blobs", "../../tables/blobs"}, - {"tables-scalars", "../../tables/scalars"}, - } - for _, unit := range units { + for _, unit := range pinnedUnits { t.Run(unit.name, func(t *testing.T) { u := loadCorpusDir(t, unit.dir) got := fmt.Sprintf("0x%016x\n%s", ir.BuildVersion(u), ir.CookProjection(u)) diff --git a/ir/buildversion_test.go b/ir/buildversion_test.go index dfa46ac6f..8ff7171d3 100644 --- a/ir/buildversion_test.go +++ b/ir/buildversion_test.go @@ -180,6 +180,12 @@ table Row {"an enum variant renamed", "enum Grade { Bronze, Silver, Gold }", "enum Grade { Bronze, Silver, Aurum }"}, {"two enum variants swapped", "enum Grade { Bronze, Silver, Gold }", "enum Grade { Silver, Bronze, Gold }"}, {"a union arm renamed", " up Buff", " rise Buff"}, + // a flags DECLARATION is shared by both wires: its variant names are + // the bit positions, so they ride in the protocol id (SPEC.md §3.1) + // and the id rides here in whole (§20.1 group 1). The cook projection + // gains the bit positions of its own under #435. + {"a flags variant reordered", "flags Perks { Shielded, Cloaked }", "flags Perks { Cloaked, Shielded }"}, + {"a flags variant renamed", "flags Perks { Shielded, Cloaked }", "flags Perks { Warded, Cloaked }"}, // the LAYOUT group's own controls {"a field's kind changed with its width unmoved", "slot int32 | min = 0, max = 10", "slot float32 | min = 0.0, max = 10.0, resolution = 0.5"}, {"a field's offset moved with the record's sizeof unmoved", " grade Grade = Silver\n perks Perks", " perks Perks\n grade Grade = Silver"}, @@ -205,8 +211,6 @@ table Row to string }{ {"a was rename", "slot int32 | min = 0, max = 10", "position int32 | was = \"slot\", min = 0, max = 10"}, - {"a flags variant reordered", "flags Perks { Shielded, Cloaked }", "flags Perks { Cloaked, Shielded }"}, - {"a flags variant renamed", "flags Perks { Shielded, Cloaked }", "flags Perks { Warded, Cloaked }"}, {"a flags field's referent swapped for a same-width other", "perks Perks", "perks Boons"}, {"a guard removed", " if guard\n {\n extra int32\n }\n", " extra int32\n"}, {"a json key changed", `json = "name"`, `json = "label"`}, @@ -223,6 +227,49 @@ table Row } } +// §20.8's ISOLATING control for group 3's union vocabulary. Every other union +// and enum row above now moves the protocol id too (SPEC.md §3.1 projects +// every vocabulary's ordered names), and the protocol id rides here in whole, +// so those rows can no longer prove the cook projection carries `union=` and +// `payload=` of its own. A TABLE-ARMED union can: it has no packet wire +// (docs/SPEC-TABLES.md §2.6), so the protocol id cannot see it at all, and an +// arm renamed there moves the build version through group 3 alone. +func TestBuildVersionSeesATableArmedUnionArmRenamed(t *testing.T) { + const src = `package demo + +table User +{ + name string(16) +} + +table Script +{ + path string(16) +} + +union Origin +{ + user User + script Script +} + +table Insert +{ + origin Origin +} +` + base := unitFrom(t, src) + renamed := unitFrom(t, strings.Replace(src, " user User", " author User", 1)) + + if renamed.ProtocolId != base.ProtocolId { + t.Errorf("a table-armed union's arm rename moved the PROTOCOL id (0x%016x -> 0x%016x) — such a union has no packet wire (§2.6)", + base.ProtocolId, renamed.ProtocolId) + } + if ir.BuildVersion(renamed) == ir.BuildVersion(base) { + t.Error("a table-armed union's arm rename did not move the build version — group 3's union vocabulary is not in the digest, and nothing else covers this edit") + } +} + // §20.8's inclusions the sort order could hide. func TestBuildVersionSeesARecordRenamed(t *testing.T) { base := ir.BuildVersion(unitFrom(t, workedSource)) diff --git a/ir/projection.go b/ir/projection.go index 4e201e117..99d47acfb 100644 --- a/ir/projection.go +++ b/ir/projection.go @@ -36,26 +36,33 @@ package ir // branch structure a guard removes fields from the wire // const/reserved/align literal bits, zero bits, and padding // enum max, storage bits the tag's wire range +// enum variant names, an enum value rides as its declaration ordinal, +// in declaration order so the ordered names ARE the ordinal-to-meaning +// map; nothing else can see a reorder // flags wire bits the mask width +// flags variant names, bit i is variant i, the enum rule exactly +// in declaration order // union variant order, the tag is positional and the payload is the // count, payload types wire (SPEC §4.8) +// union ARM names, two arms of ONE payload type reorder invisibly +// in declaration order without them — the enum case exactly, in the +// shape where the payload types cannot carry the +// order (#491) // // WHAT IS EXCLUDED, and why each one does NOT move the wire: // // comments, whitespace no bytes // file names and layout a type's wire does not depend on which file it // is declared in, nor on declaration order -// enum VARIANT names ordinals are the wire; renaming Red to Crimson -// leaves every byte identical -// union VARIANT names the same rule — the ordinal is the wire // const declarations their values are already resolved into the // bounds that appear above // type tags, native-type generation-time only // attributes // -// The projection is VERSIONED. A change to the rendering itself moves every -// id, so the version line makes that deliberate and visible rather than a -// silent break. +// The projection carries TWO version lines. A change to the RENDERING moves +// every id through [ProjectionVersion]; a compiler change that moves the BYTES +// under an unchanged rendering moves every id through [WireLaw]. Both are +// deliberate and visible rather than a silent break. import ( "fmt" @@ -66,7 +73,27 @@ import ( // ProjectionVersion is the rendering's own version. BUMPING IT MOVES EVERY // PROTOCOL ID, so it changes only when the projection must describe something // it previously did not. -const ProjectionVersion = 1 +// +// 2: the ordered variant names of every enum and flags declaration, and the +// ordered arm names of every union. Version 1 could not see a reorder of any +// of the three. +const ProjectionVersion = 2 + +// WireLaw is the CODEC LAW's version: the compiler's own rules for turning a +// value into bytes and bytes back into a value, which the rendering above +// cannot see. BUMPING IT MOVES EVERY PROTOCOL ID. +// +// It bumps on any compiler change that can alter, for the same schema and the +// same values, the encoded bytes, the inputs accepted, the reads rejected, the +// defaults materialized, or a numeric conversion. The 2026-08-15 fixed-point +// rounding amendment — ties toward +infinity to ties away from zero — is the +// worked example: the shape was untouched, the bytes on exact negative ties +// were not, and two builds either side of it held the same id. +// +// The invariant it exists to hold: no generated byte and no read decision may +// change for the same schema and input without the protocol id changing +// (SPEC §3.1). +const WireLaw = 1 // WireProjection renders the unit's wire-affecting facts as canonical text. // Two units with the same projection produce the same bytes; that is the @@ -75,6 +102,7 @@ func WireProjection(u *Unit) string { var b strings.Builder fmt.Fprintf(&b, "schema-wire-projection %d\n", ProjectionVersion) + fmt.Fprintf(&b, "schema-wire-law %d\n", WireLaw) fmt.Fprintf(&b, "package %s\n", u.Package) names := make([]string, 0, len(u.Enums)) @@ -84,8 +112,15 @@ func WireProjection(u *Unit) string { sort.Strings(names) for _, n := range names { e := u.Enums[n] - // variant NAMES are deliberately absent: the ordinal is the wire + // the ordered variant NAMES are the wire fact: a value rides as its + // declaration ordinal (implicit None = 0, variants dense from 1), so + // the names are the only record of which ordinal means what. A + // reorder is invisible without them — the spurious MATCH this + // projection exists to refuse — and a rename therefore moves the id. fmt.Fprintf(&b, "enum %s max=%d storage=%d variants=%d\n", e.Name, e.Max, e.StorageBits, len(e.Variants)) + for i, v := range e.Variants { + fmt.Fprintf(&b, " variant %d name=%s\n", i+1, v) + } } names = names[:0] @@ -95,7 +130,12 @@ func WireProjection(u *Unit) string { sort.Strings(names) for _, n := range names { f := u.Flags[n] + // bit i is variant i, so the ordered names carry the bit positions + // for exactly the enum's reason fmt.Fprintf(&b, "flags %s wirebits=%d\n", f.Name, f.WireBits) + for i, v := range f.Variants { + fmt.Fprintf(&b, " bit %d name=%s\n", i, v) + } } names = names[:0] @@ -114,11 +154,12 @@ func WireProjection(u *Unit) string { projectItems(&b, st.Items, " ") } - // unions: variant ORDER, count and payload type references project — - // variant names do not (the ordinal is the wire, the enum-variant rule; - // SPEC §3.1, §4.8). Rendering a section only for units that declare - // unions leaves every union-free unit's id untouched, so this needed no - // ProjectionVersion bump: no existing fact renders differently. + // unions: arm ORDER, count, arm NAMES and payload type references all + // project. The tag is positional and the payload is the wire (SPEC §4.8), + // and the names are what the payload types cannot carry alone: two arms of + // ONE payload type reorder invisibly without them, which is the enum + // case exactly (#491). A rename therefore moves the id, as it does for an + // enum or flags variant. names = names[:0] for n := range u.Unions { names = append(names, n) @@ -135,7 +176,7 @@ func WireProjection(u *Unit) string { } fmt.Fprintf(&b, "union %s max=%d\n", un.Name, un.Max) for i, v := range un.Variants { - fmt.Fprintf(&b, " variant %d payload=%s\n", i+1, v.Type) + fmt.Fprintf(&b, " variant %d name=%s payload=%s\n", i+1, v.Name, v.Type) } } diff --git a/testdata/conformance/tables/cook-write/archive-be.cook b/testdata/conformance/tables/cook-write/archive-be.cook index 5e31434ca..b5c33112f 100644 Binary files a/testdata/conformance/tables/cook-write/archive-be.cook and b/testdata/conformance/tables/cook-write/archive-be.cook differ diff --git a/testdata/conformance/tables/cook-write/archive.cook b/testdata/conformance/tables/cook-write/archive.cook index ae3179292..c7e6b02b9 100644 Binary files a/testdata/conformance/tables/cook-write/archive.cook and b/testdata/conformance/tables/cook-write/archive.cook differ diff --git a/testdata/conformance/tables/cook-write/blob_empty-be.cook b/testdata/conformance/tables/cook-write/blob_empty-be.cook index c152894b0..099ef8dfc 100644 Binary files a/testdata/conformance/tables/cook-write/blob_empty-be.cook and b/testdata/conformance/tables/cook-write/blob_empty-be.cook differ diff --git a/testdata/conformance/tables/cook-write/blob_empty.cook b/testdata/conformance/tables/cook-write/blob_empty.cook index 9b3029b32..52974b70c 100644 Binary files a/testdata/conformance/tables/cook-write/blob_empty.cook and b/testdata/conformance/tables/cook-write/blob_empty.cook differ diff --git a/testdata/conformance/tables/cook-write/blob_large-be.cook b/testdata/conformance/tables/cook-write/blob_large-be.cook index 9eb79f82a..ee20994ed 100644 Binary files a/testdata/conformance/tables/cook-write/blob_large-be.cook and b/testdata/conformance/tables/cook-write/blob_large-be.cook differ diff --git a/testdata/conformance/tables/cook-write/blob_large.cook b/testdata/conformance/tables/cook-write/blob_large.cook index 89366de10..d8d525d71 100644 Binary files a/testdata/conformance/tables/cook-write/blob_large.cook and b/testdata/conformance/tables/cook-write/blob_large.cook differ diff --git a/testdata/conformance/tables/cook-write/blob_shared-be.cook b/testdata/conformance/tables/cook-write/blob_shared-be.cook index f9163496b..bf737eaaf 100644 Binary files a/testdata/conformance/tables/cook-write/blob_shared-be.cook and b/testdata/conformance/tables/cook-write/blob_shared-be.cook differ diff --git a/testdata/conformance/tables/cook-write/blob_shared.cook b/testdata/conformance/tables/cook-write/blob_shared.cook index c9ee3aa19..874714686 100644 Binary files a/testdata/conformance/tables/cook-write/blob_shared.cook and b/testdata/conformance/tables/cook-write/blob_shared.cook differ diff --git a/testdata/conformance/tables/cook-write/blob_small-be.cook b/testdata/conformance/tables/cook-write/blob_small-be.cook index be7ef5a0b..a96970167 100644 Binary files a/testdata/conformance/tables/cook-write/blob_small-be.cook and b/testdata/conformance/tables/cook-write/blob_small-be.cook differ diff --git a/testdata/conformance/tables/cook-write/blob_small.cook b/testdata/conformance/tables/cook-write/blob_small.cook index 1fbfb673e..d718eee6a 100644 Binary files a/testdata/conformance/tables/cook-write/blob_small.cook and b/testdata/conformance/tables/cook-write/blob_small.cook differ diff --git a/testdata/conformance/tables/cook-write/blob_str16-be.cook b/testdata/conformance/tables/cook-write/blob_str16-be.cook index 38d956c18..4f8caed0d 100644 Binary files a/testdata/conformance/tables/cook-write/blob_str16-be.cook and b/testdata/conformance/tables/cook-write/blob_str16-be.cook differ diff --git a/testdata/conformance/tables/cook-write/blob_str16.cook b/testdata/conformance/tables/cook-write/blob_str16.cook index 17c1889ed..92eb3f15e 100644 Binary files a/testdata/conformance/tables/cook-write/blob_str16.cook and b/testdata/conformance/tables/cook-write/blob_str16.cook differ diff --git a/testdata/conformance/tables/cook-write/blob_str8-be.cook b/testdata/conformance/tables/cook-write/blob_str8-be.cook index 84b680de0..716d4f97c 100644 Binary files a/testdata/conformance/tables/cook-write/blob_str8-be.cook and b/testdata/conformance/tables/cook-write/blob_str8-be.cook differ diff --git a/testdata/conformance/tables/cook-write/blob_str8.cook b/testdata/conformance/tables/cook-write/blob_str8.cook index 14e41f593..8282d3ccd 100644 Binary files a/testdata/conformance/tables/cook-write/blob_str8.cook and b/testdata/conformance/tables/cook-write/blob_str8.cook differ diff --git a/testdata/conformance/tables/cook-write/chain_optional-be.cook b/testdata/conformance/tables/cook-write/chain_optional-be.cook index 311988456..e4279d654 100644 Binary files a/testdata/conformance/tables/cook-write/chain_optional-be.cook and b/testdata/conformance/tables/cook-write/chain_optional-be.cook differ diff --git a/testdata/conformance/tables/cook-write/chain_optional.cook b/testdata/conformance/tables/cook-write/chain_optional.cook index f491d1f1b..2e3f35dfc 100644 Binary files a/testdata/conformance/tables/cook-write/chain_optional.cook and b/testdata/conformance/tables/cook-write/chain_optional.cook differ diff --git a/testdata/conformance/tables/cook-write/chain_optional_empty-be.cook b/testdata/conformance/tables/cook-write/chain_optional_empty-be.cook index 73ac1cb7b..47a445f9b 100644 Binary files a/testdata/conformance/tables/cook-write/chain_optional_empty-be.cook and b/testdata/conformance/tables/cook-write/chain_optional_empty-be.cook differ diff --git a/testdata/conformance/tables/cook-write/chain_optional_empty.cook b/testdata/conformance/tables/cook-write/chain_optional_empty.cook index f6949deb6..888334ec0 100644 Binary files a/testdata/conformance/tables/cook-write/chain_optional_empty.cook and b/testdata/conformance/tables/cook-write/chain_optional_empty.cook differ diff --git a/testdata/conformance/tables/cook-write/chain_value-be.cook b/testdata/conformance/tables/cook-write/chain_value-be.cook index 27600057d..ba67163e2 100644 Binary files a/testdata/conformance/tables/cook-write/chain_value-be.cook and b/testdata/conformance/tables/cook-write/chain_value-be.cook differ diff --git a/testdata/conformance/tables/cook-write/chain_value.cook b/testdata/conformance/tables/cook-write/chain_value.cook index e22c40afa..b9ba5c9b9 100644 Binary files a/testdata/conformance/tables/cook-write/chain_value.cook and b/testdata/conformance/tables/cook-write/chain_value.cook differ diff --git a/testdata/conformance/tables/cook-write/chain_value_empty-be.cook b/testdata/conformance/tables/cook-write/chain_value_empty-be.cook index b92f46dbe..ddd0f11fa 100644 Binary files a/testdata/conformance/tables/cook-write/chain_value_empty-be.cook and b/testdata/conformance/tables/cook-write/chain_value_empty-be.cook differ diff --git a/testdata/conformance/tables/cook-write/chain_value_empty.cook b/testdata/conformance/tables/cook-write/chain_value_empty.cook index 5267d4538..4cbe7c39a 100644 Binary files a/testdata/conformance/tables/cook-write/chain_value_empty.cook and b/testdata/conformance/tables/cook-write/chain_value_empty.cook differ diff --git a/testdata/conformance/tables/cook-write/graph_deep-be.cook b/testdata/conformance/tables/cook-write/graph_deep-be.cook index 945600229..293e0b6e3 100644 Binary files a/testdata/conformance/tables/cook-write/graph_deep-be.cook and b/testdata/conformance/tables/cook-write/graph_deep-be.cook differ diff --git a/testdata/conformance/tables/cook-write/graph_deep.cook b/testdata/conformance/tables/cook-write/graph_deep.cook index 6bba71dfd..a41f64bef 100644 Binary files a/testdata/conformance/tables/cook-write/graph_deep.cook and b/testdata/conformance/tables/cook-write/graph_deep.cook differ diff --git a/testdata/conformance/tables/cook-write/graph_empty-be.cook b/testdata/conformance/tables/cook-write/graph_empty-be.cook index 94c1ea123..7d5011740 100644 Binary files a/testdata/conformance/tables/cook-write/graph_empty-be.cook and b/testdata/conformance/tables/cook-write/graph_empty-be.cook differ diff --git a/testdata/conformance/tables/cook-write/graph_empty.cook b/testdata/conformance/tables/cook-write/graph_empty.cook index 421116dc1..c379806de 100644 Binary files a/testdata/conformance/tables/cook-write/graph_empty.cook and b/testdata/conformance/tables/cook-write/graph_empty.cook differ diff --git a/testdata/conformance/tables/cook-write/graph_shared-be.cook b/testdata/conformance/tables/cook-write/graph_shared-be.cook index 1535ae8f5..efb60bd47 100644 Binary files a/testdata/conformance/tables/cook-write/graph_shared-be.cook and b/testdata/conformance/tables/cook-write/graph_shared-be.cook differ diff --git a/testdata/conformance/tables/cook-write/graph_shared.cook b/testdata/conformance/tables/cook-write/graph_shared.cook index a56c43dc0..922af31f9 100644 Binary files a/testdata/conformance/tables/cook-write/graph_shared.cook and b/testdata/conformance/tables/cook-write/graph_shared.cook differ diff --git a/testdata/conformance/tables/cook-write/graph_tree-be.cook b/testdata/conformance/tables/cook-write/graph_tree-be.cook index 285e1d755..a03c8ed13 100644 Binary files a/testdata/conformance/tables/cook-write/graph_tree-be.cook and b/testdata/conformance/tables/cook-write/graph_tree-be.cook differ diff --git a/testdata/conformance/tables/cook-write/graph_tree.cook b/testdata/conformance/tables/cook-write/graph_tree.cook index 0a395f7a8..33c6b7559 100644 Binary files a/testdata/conformance/tables/cook-write/graph_tree.cook and b/testdata/conformance/tables/cook-write/graph_tree.cook differ diff --git a/testdata/conformance/tables/cook-write/keyed_config-be.cook b/testdata/conformance/tables/cook-write/keyed_config-be.cook index 11e5b8b44..5990a7901 100644 Binary files a/testdata/conformance/tables/cook-write/keyed_config-be.cook and b/testdata/conformance/tables/cook-write/keyed_config-be.cook differ diff --git a/testdata/conformance/tables/cook-write/keyed_config.cook b/testdata/conformance/tables/cook-write/keyed_config.cook index 736343a68..21c7c3641 100644 Binary files a/testdata/conformance/tables/cook-write/keyed_config.cook and b/testdata/conformance/tables/cook-write/keyed_config.cook differ diff --git a/testdata/conformance/tables/cook-write/keyed_default-be.cook b/testdata/conformance/tables/cook-write/keyed_default-be.cook index 482850afc..12b6898db 100644 Binary files a/testdata/conformance/tables/cook-write/keyed_default-be.cook and b/testdata/conformance/tables/cook-write/keyed_default-be.cook differ diff --git a/testdata/conformance/tables/cook-write/keyed_default.cook b/testdata/conformance/tables/cook-write/keyed_default.cook index c53ed3891..f5e4f13d6 100644 Binary files a/testdata/conformance/tables/cook-write/keyed_default.cook and b/testdata/conformance/tables/cook-write/keyed_default.cook differ diff --git a/testdata/conformance/tables/cook-write/loadout_full-be.cook b/testdata/conformance/tables/cook-write/loadout_full-be.cook index eee1c0d09..2f736fb70 100644 Binary files a/testdata/conformance/tables/cook-write/loadout_full-be.cook and b/testdata/conformance/tables/cook-write/loadout_full-be.cook differ diff --git a/testdata/conformance/tables/cook-write/loadout_full.cook b/testdata/conformance/tables/cook-write/loadout_full.cook index 75582a639..3ded1786b 100644 Binary files a/testdata/conformance/tables/cook-write/loadout_full.cook and b/testdata/conformance/tables/cook-write/loadout_full.cook differ diff --git a/testdata/conformance/tables/cook-write/m1_open-be.cook b/testdata/conformance/tables/cook-write/m1_open-be.cook index 5bd7fc927..88ad29ea4 100644 Binary files a/testdata/conformance/tables/cook-write/m1_open-be.cook and b/testdata/conformance/tables/cook-write/m1_open-be.cook differ diff --git a/testdata/conformance/tables/cook-write/m1_open.cook b/testdata/conformance/tables/cook-write/m1_open.cook index 68c6bc76c..2b116470d 100644 Binary files a/testdata/conformance/tables/cook-write/m1_open.cook and b/testdata/conformance/tables/cook-write/m1_open.cook differ diff --git a/testdata/conformance/tables/cook-write/m2_open-be.cook b/testdata/conformance/tables/cook-write/m2_open-be.cook index 7434c4b7b..75eb25570 100644 Binary files a/testdata/conformance/tables/cook-write/m2_open-be.cook and b/testdata/conformance/tables/cook-write/m2_open-be.cook differ diff --git a/testdata/conformance/tables/cook-write/m2_open.cook b/testdata/conformance/tables/cook-write/m2_open.cook index 08fc40b37..7818cfb33 100644 Binary files a/testdata/conformance/tables/cook-write/m2_open.cook and b/testdata/conformance/tables/cook-write/m2_open.cook differ diff --git a/testdata/conformance/tables/cook-write/message_batch-be.cook b/testdata/conformance/tables/cook-write/message_batch-be.cook index 0d96dbe68..1d98a89eb 100644 Binary files a/testdata/conformance/tables/cook-write/message_batch-be.cook and b/testdata/conformance/tables/cook-write/message_batch-be.cook differ diff --git a/testdata/conformance/tables/cook-write/message_batch.cook b/testdata/conformance/tables/cook-write/message_batch.cook index 542d8dc0e..bac423e2d 100644 Binary files a/testdata/conformance/tables/cook-write/message_batch.cook and b/testdata/conformance/tables/cook-write/message_batch.cook differ diff --git a/testdata/conformance/tables/cook-write/message_empty-be.cook b/testdata/conformance/tables/cook-write/message_empty-be.cook index fc2010b85..9c0a97205 100644 Binary files a/testdata/conformance/tables/cook-write/message_empty-be.cook and b/testdata/conformance/tables/cook-write/message_empty-be.cook differ diff --git a/testdata/conformance/tables/cook-write/message_empty.cook b/testdata/conformance/tables/cook-write/message_empty.cook index 1330e9eda..675c75705 100644 Binary files a/testdata/conformance/tables/cook-write/message_empty.cook and b/testdata/conformance/tables/cook-write/message_empty.cook differ diff --git a/testdata/conformance/tables/cook-write/message_open-be.cook b/testdata/conformance/tables/cook-write/message_open-be.cook index d9c1a9270..4d10bdbbf 100644 Binary files a/testdata/conformance/tables/cook-write/message_open-be.cook and b/testdata/conformance/tables/cook-write/message_open-be.cook differ diff --git a/testdata/conformance/tables/cook-write/message_open.cook b/testdata/conformance/tables/cook-write/message_open.cook index 996e30360..8e63ff189 100644 Binary files a/testdata/conformance/tables/cook-write/message_open.cook and b/testdata/conformance/tables/cook-write/message_open.cook differ diff --git a/testdata/conformance/tables/cook-write/message_ping-be.cook b/testdata/conformance/tables/cook-write/message_ping-be.cook index b9c1959e2..899a60eab 100644 Binary files a/testdata/conformance/tables/cook-write/message_ping-be.cook and b/testdata/conformance/tables/cook-write/message_ping-be.cook differ diff --git a/testdata/conformance/tables/cook-write/message_ping.cook b/testdata/conformance/tables/cook-write/message_ping.cook index aa21409a9..13e90816c 100644 Binary files a/testdata/conformance/tables/cook-write/message_ping.cook and b/testdata/conformance/tables/cook-write/message_ping.cook differ diff --git a/testdata/conformance/tables/cook-write/message_save-be.cook b/testdata/conformance/tables/cook-write/message_save-be.cook index 923de1983..a30db6988 100644 Binary files a/testdata/conformance/tables/cook-write/message_save-be.cook and b/testdata/conformance/tables/cook-write/message_save-be.cook differ diff --git a/testdata/conformance/tables/cook-write/message_save.cook b/testdata/conformance/tables/cook-write/message_save.cook index a4b96ac56..d883ba247 100644 Binary files a/testdata/conformance/tables/cook-write/message_save.cook and b/testdata/conformance/tables/cook-write/message_save.cook differ diff --git a/testdata/conformance/tables/cook-write/message_trace-be.cook b/testdata/conformance/tables/cook-write/message_trace-be.cook index b1b40c717..c98e1a57e 100644 Binary files a/testdata/conformance/tables/cook-write/message_trace-be.cook and b/testdata/conformance/tables/cook-write/message_trace-be.cook differ diff --git a/testdata/conformance/tables/cook-write/message_trace.cook b/testdata/conformance/tables/cook-write/message_trace.cook index 85ec921f6..27ff2c568 100644 Binary files a/testdata/conformance/tables/cook-write/message_trace.cook and b/testdata/conformance/tables/cook-write/message_trace.cook differ diff --git a/testdata/conformance/tables/cook-write/message_transaction-be.cook b/testdata/conformance/tables/cook-write/message_transaction-be.cook index 7f837ebdc..e66a09dc7 100644 Binary files a/testdata/conformance/tables/cook-write/message_transaction-be.cook and b/testdata/conformance/tables/cook-write/message_transaction-be.cook differ diff --git a/testdata/conformance/tables/cook-write/message_transaction.cook b/testdata/conformance/tables/cook-write/message_transaction.cook index e6c60e970..857be9eca 100644 Binary files a/testdata/conformance/tables/cook-write/message_transaction.cook and b/testdata/conformance/tables/cook-write/message_transaction.cook differ diff --git a/testdata/conformance/tables/cook-write/profile_elide-be.cook b/testdata/conformance/tables/cook-write/profile_elide-be.cook index 2f565fe46..2989b1ae5 100644 Binary files a/testdata/conformance/tables/cook-write/profile_elide-be.cook and b/testdata/conformance/tables/cook-write/profile_elide-be.cook differ diff --git a/testdata/conformance/tables/cook-write/profile_elide.cook b/testdata/conformance/tables/cook-write/profile_elide.cook index 0348d3350..3cb012df6 100644 Binary files a/testdata/conformance/tables/cook-write/profile_elide.cook and b/testdata/conformance/tables/cook-write/profile_elide.cook differ diff --git a/testdata/conformance/tables/cook-write/root_default-be.cook b/testdata/conformance/tables/cook-write/root_default-be.cook index 06ce6f5af..e5dfd50c4 100644 Binary files a/testdata/conformance/tables/cook-write/root_default-be.cook and b/testdata/conformance/tables/cook-write/root_default-be.cook differ diff --git a/testdata/conformance/tables/cook-write/root_default.cook b/testdata/conformance/tables/cook-write/root_default.cook index 6b33afd17..b1011200f 100644 Binary files a/testdata/conformance/tables/cook-write/root_default.cook and b/testdata/conformance/tables/cook-write/root_default.cook differ diff --git a/testdata/conformance/tables/cook-write/root_full-be.cook b/testdata/conformance/tables/cook-write/root_full-be.cook index 465a64295..a69fd0f19 100644 Binary files a/testdata/conformance/tables/cook-write/root_full-be.cook and b/testdata/conformance/tables/cook-write/root_full-be.cook differ diff --git a/testdata/conformance/tables/cook-write/root_full.cook b/testdata/conformance/tables/cook-write/root_full.cook index f3b154f8f..e5bd92db8 100644 Binary files a/testdata/conformance/tables/cook-write/root_full.cook and b/testdata/conformance/tables/cook-write/root_full.cook differ diff --git a/testdata/conformance/tables/cook-write/scalars_default-be.cook b/testdata/conformance/tables/cook-write/scalars_default-be.cook index 271373392..e9c9f3f3f 100644 Binary files a/testdata/conformance/tables/cook-write/scalars_default-be.cook and b/testdata/conformance/tables/cook-write/scalars_default-be.cook differ diff --git a/testdata/conformance/tables/cook-write/scalars_default.cook b/testdata/conformance/tables/cook-write/scalars_default.cook index eb53ba891..6b3db101f 100644 Binary files a/testdata/conformance/tables/cook-write/scalars_default.cook and b/testdata/conformance/tables/cook-write/scalars_default.cook differ diff --git a/testdata/conformance/tables/cook-write/scalars_edges-be.cook b/testdata/conformance/tables/cook-write/scalars_edges-be.cook index a471a47b5..1eb43d080 100644 Binary files a/testdata/conformance/tables/cook-write/scalars_edges-be.cook and b/testdata/conformance/tables/cook-write/scalars_edges-be.cook differ diff --git a/testdata/conformance/tables/cook-write/scalars_edges.cook b/testdata/conformance/tables/cook-write/scalars_edges.cook index 735b3b20d..a53dc4d95 100644 Binary files a/testdata/conformance/tables/cook-write/scalars_edges.cook and b/testdata/conformance/tables/cook-write/scalars_edges.cook differ diff --git a/testdata/conformance/tables/cook-write/scalars_full-be.cook b/testdata/conformance/tables/cook-write/scalars_full-be.cook index 5cf48a2e8..cc408ea4f 100644 Binary files a/testdata/conformance/tables/cook-write/scalars_full-be.cook and b/testdata/conformance/tables/cook-write/scalars_full-be.cook differ diff --git a/testdata/conformance/tables/cook-write/scalars_full.cook b/testdata/conformance/tables/cook-write/scalars_full.cook index b3e9ff94d..7a62211a1 100644 Binary files a/testdata/conformance/tables/cook-write/scalars_full.cook and b/testdata/conformance/tables/cook-write/scalars_full.cook differ diff --git a/testdata/conformance/tables/cook-write/stream_arm_first-be.cook b/testdata/conformance/tables/cook-write/stream_arm_first-be.cook index 825250647..f3b8bdb68 100644 Binary files a/testdata/conformance/tables/cook-write/stream_arm_first-be.cook and b/testdata/conformance/tables/cook-write/stream_arm_first-be.cook differ diff --git a/testdata/conformance/tables/cook-write/stream_arm_first.cook b/testdata/conformance/tables/cook-write/stream_arm_first.cook index 5192377e2..275d28dde 100644 Binary files a/testdata/conformance/tables/cook-write/stream_arm_first.cook and b/testdata/conformance/tables/cook-write/stream_arm_first.cook differ diff --git a/testdata/conformance/tables/cook-write/stream_chain-be.cook b/testdata/conformance/tables/cook-write/stream_chain-be.cook index 11e516215..78951e302 100644 Binary files a/testdata/conformance/tables/cook-write/stream_chain-be.cook and b/testdata/conformance/tables/cook-write/stream_chain-be.cook differ diff --git a/testdata/conformance/tables/cook-write/stream_chain.cook b/testdata/conformance/tables/cook-write/stream_chain.cook index 9634548d6..5bdc829f5 100644 Binary files a/testdata/conformance/tables/cook-write/stream_chain.cook and b/testdata/conformance/tables/cook-write/stream_chain.cook differ diff --git a/testdata/conformance/tables/cook-write/stream_header-be.cook b/testdata/conformance/tables/cook-write/stream_header-be.cook index 0f5455a93..c00417fdb 100644 Binary files a/testdata/conformance/tables/cook-write/stream_header-be.cook and b/testdata/conformance/tables/cook-write/stream_header-be.cook differ diff --git a/testdata/conformance/tables/cook-write/stream_header.cook b/testdata/conformance/tables/cook-write/stream_header.cook index 31896a9be..31f11f3ad 100644 Binary files a/testdata/conformance/tables/cook-write/stream_header.cook and b/testdata/conformance/tables/cook-write/stream_header.cook differ diff --git a/testdata/conformance/tables/cook-write/stream_parts-be.cook b/testdata/conformance/tables/cook-write/stream_parts-be.cook index 6a3a8564b..3306a1e14 100644 Binary files a/testdata/conformance/tables/cook-write/stream_parts-be.cook and b/testdata/conformance/tables/cook-write/stream_parts-be.cook differ diff --git a/testdata/conformance/tables/cook-write/stream_parts.cook b/testdata/conformance/tables/cook-write/stream_parts.cook index 211268dfe..59432ea20 100644 Binary files a/testdata/conformance/tables/cook-write/stream_parts.cook and b/testdata/conformance/tables/cook-write/stream_parts.cook differ diff --git a/testdata/conformance/tables/cook-write/v1_cfg-be.cook b/testdata/conformance/tables/cook-write/v1_cfg-be.cook index 40baf1f9f..610f8f929 100644 Binary files a/testdata/conformance/tables/cook-write/v1_cfg-be.cook and b/testdata/conformance/tables/cook-write/v1_cfg-be.cook differ diff --git a/testdata/conformance/tables/cook-write/v1_cfg.cook b/testdata/conformance/tables/cook-write/v1_cfg.cook index 256204c0b..9a1112670 100644 Binary files a/testdata/conformance/tables/cook-write/v1_cfg.cook and b/testdata/conformance/tables/cook-write/v1_cfg.cook differ diff --git a/testdata/conformance/tables/cook-write/v1_seams-be.cook b/testdata/conformance/tables/cook-write/v1_seams-be.cook index e6c05d63d..14909a787 100644 Binary files a/testdata/conformance/tables/cook-write/v1_seams-be.cook and b/testdata/conformance/tables/cook-write/v1_seams-be.cook differ diff --git a/testdata/conformance/tables/cook-write/v1_seams.cook b/testdata/conformance/tables/cook-write/v1_seams.cook index c85fda9dc..0c7d9ad4e 100644 Binary files a/testdata/conformance/tables/cook-write/v1_seams.cook and b/testdata/conformance/tables/cook-write/v1_seams.cook differ diff --git a/testdata/conformance/tables/cook-write/v2_cfg-be.cook b/testdata/conformance/tables/cook-write/v2_cfg-be.cook index 78dc5470f..2e900903b 100644 Binary files a/testdata/conformance/tables/cook-write/v2_cfg-be.cook and b/testdata/conformance/tables/cook-write/v2_cfg-be.cook differ diff --git a/testdata/conformance/tables/cook-write/v2_cfg.cook b/testdata/conformance/tables/cook-write/v2_cfg.cook index a60a28f8f..813b37845 100644 Binary files a/testdata/conformance/tables/cook-write/v2_cfg.cook and b/testdata/conformance/tables/cook-write/v2_cfg.cook differ diff --git a/testdata/conformance/tables/cook-write/v2_seams-be.cook b/testdata/conformance/tables/cook-write/v2_seams-be.cook index 8206996be..cb878f7d6 100644 Binary files a/testdata/conformance/tables/cook-write/v2_seams-be.cook and b/testdata/conformance/tables/cook-write/v2_seams-be.cook differ diff --git a/testdata/conformance/tables/cook-write/v2_seams.cook b/testdata/conformance/tables/cook-write/v2_seams.cook index 1e5cb99a2..543cf1b87 100644 Binary files a/testdata/conformance/tables/cook-write/v2_seams.cook and b/testdata/conformance/tables/cook-write/v2_seams.cook differ diff --git a/testdata/conformance/tables/cook-write/wide_blob-be.cook b/testdata/conformance/tables/cook-write/wide_blob-be.cook index f38c207ac..6f2445db7 100644 Binary files a/testdata/conformance/tables/cook-write/wide_blob-be.cook and b/testdata/conformance/tables/cook-write/wide_blob-be.cook differ diff --git a/testdata/conformance/tables/cook-write/wide_blob.cook b/testdata/conformance/tables/cook-write/wide_blob.cook index ef0cdf944..522f03704 100644 Binary files a/testdata/conformance/tables/cook-write/wide_blob.cook and b/testdata/conformance/tables/cook-write/wide_blob.cook differ diff --git a/testdata/golden/build-version/examples.txt b/testdata/golden/build-version/examples.txt index d641bf1ff..c925e2d09 100644 --- a/testdata/golden/build-version/examples.txt +++ b/testdata/golden/build-version/examples.txt @@ -1,5 +1,5 @@ -0x69d6a810cfa22717 +0x68ee62213126f184 schema-build-version 2 -protocol 91a8e85156dfe2b1 +protocol 682e2a15a56b78bf byteorder little block prologue=magic:8,build_version:8,byte_order:8 diff --git a/testdata/golden/build-version/examples128.txt b/testdata/golden/build-version/examples128.txt index 49818f191..c3a9894f2 100644 --- a/testdata/golden/build-version/examples128.txt +++ b/testdata/golden/build-version/examples128.txt @@ -1,5 +1,5 @@ -0xedde8274fbab7f85 +0x44a8123c94d09353 schema-build-version 2 -protocol 42050541a90eea8a +protocol 3a9a972a02c9e7ca byteorder little block prologue=magic:8,build_version:8,byte_order:8 diff --git a/testdata/golden/build-version/tables-blobs.txt b/testdata/golden/build-version/tables-blobs.txt index a4f8d55e1..5771991ec 100644 --- a/testdata/golden/build-version/tables-blobs.txt +++ b/testdata/golden/build-version/tables-blobs.txt @@ -1,6 +1,6 @@ -0xc20a8501aaedb152 +0xe7a627afef0d063f schema-build-version 2 -protocol ec78e4ce7f5dd962 +protocol 1cc1b12ef296a1f6 byteorder little block prologue=magic:8,build_version:8,byte_order:8 record Asset sizeof=72 alignof=8 diff --git a/testdata/golden/build-version/tables-block.txt b/testdata/golden/build-version/tables-block.txt index a2902f513..81b74c1cd 100644 --- a/testdata/golden/build-version/tables-block.txt +++ b/testdata/golden/build-version/tables-block.txt @@ -1,6 +1,6 @@ -0xe9c3dec8287989af +0x0adbc6e7f9c4605d schema-build-version 2 -protocol 7a706bf2ea47d94b +protocol ccb9f0129fbc0ebe byteorder little block prologue=magic:8,build_version:8,byte_order:8 record PaddedFrame sizeof=4136 alignof=8 diff --git a/testdata/golden/build-version/tables-blockhome.txt b/testdata/golden/build-version/tables-blockhome.txt index d74f390cb..eaf26fac4 100644 --- a/testdata/golden/build-version/tables-blockhome.txt +++ b/testdata/golden/build-version/tables-blockhome.txt @@ -1,6 +1,6 @@ -0xf0348a7d88321955 +0x9ebe680f43132468 schema-build-version 2 -protocol a6612e5b3f07080a +protocol 0fc1a1667e54b144 byteorder little block prologue=magic:8,build_version:8,byte_order:8 record ArmorConfig sizeof=40 alignof=8 diff --git a/testdata/golden/build-version/tables-examples.txt b/testdata/golden/build-version/tables-examples.txt index 3609bd7ab..7d2616e33 100644 --- a/testdata/golden/build-version/tables-examples.txt +++ b/testdata/golden/build-version/tables-examples.txt @@ -1,6 +1,6 @@ -0x3cf5cc8b611ce26a +0x0d48f2a53a826273 schema-build-version 2 -protocol 9924bf6d375ec24d +protocol 91df5fddd8edc184 byteorder little block prologue=magic:8,build_version:8,byte_order:8 record ArchiveConfig sizeof=1488 alignof=8 diff --git a/testdata/golden/build-version/tables-messages.txt b/testdata/golden/build-version/tables-messages.txt index 549114431..9c7f34f40 100644 --- a/testdata/golden/build-version/tables-messages.txt +++ b/testdata/golden/build-version/tables-messages.txt @@ -1,6 +1,6 @@ -0x5d6070501121763a +0x2e7e8c6b14f7f107 schema-build-version 2 -protocol 8248fac3393e5575 +protocol 4a7939657edfa4ab byteorder little block prologue=magic:8,build_version:8,byte_order:8 record Cursor sizeof=8 alignof=4 diff --git a/testdata/golden/build-version/tables-pointers.txt b/testdata/golden/build-version/tables-pointers.txt index 5b6120720..1bc3fa8db 100644 --- a/testdata/golden/build-version/tables-pointers.txt +++ b/testdata/golden/build-version/tables-pointers.txt @@ -1,6 +1,6 @@ -0x8b3fa61285c77990 +0x94b679c0a547181b schema-build-version 2 -protocol 79242c6a555d3a60 +protocol 2ce00b66ca6ca57c byteorder little block prologue=magic:8,build_version:8,byte_order:8 record Album sizeof=88 alignof=8 diff --git a/testdata/golden/build-version/tables-scalars.txt b/testdata/golden/build-version/tables-scalars.txt index b95ea6ab5..0a13eeb81 100644 --- a/testdata/golden/build-version/tables-scalars.txt +++ b/testdata/golden/build-version/tables-scalars.txt @@ -1,6 +1,6 @@ -0x60b4cb8aaf8eaec4 +0xa8b581f9ab3e8580 schema-build-version 2 -protocol 01ba84a4cbd2143a +protocol aa2ae3fa9f005efc byteorder little block prologue=magic:8,build_version:8,byte_order:8 record Pose sizeof=24 alignof=8 diff --git a/testdata/golden/build-version/tables-stream.txt b/testdata/golden/build-version/tables-stream.txt index a93ae5af7..45b977ac9 100644 --- a/testdata/golden/build-version/tables-stream.txt +++ b/testdata/golden/build-version/tables-stream.txt @@ -1,6 +1,6 @@ -0x093e4bddde5575de +0x4556b3579a442505 schema-build-version 2 -protocol bf90766c51a5100c +protocol 0da6b010d5e2ade7 byteorder little block prologue=magic:8,build_version:8,byte_order:8 record Chunk sizeof=48 alignof=8 diff --git a/testdata/golden/c/Clauses.h b/testdata/golden/c/Clauses.h index 4866321f9..2fc7b580f 100644 --- a/testdata/golden/c/Clauses.h +++ b/testdata/golden/c/Clauses.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_CLAUSES_H #define SCHEMA_EXAMPLE_CLAUSES_H diff --git a/testdata/golden/c/ClausesWire.h b/testdata/golden/c/ClausesWire.h index dfbba774d..e222a2358 100644 --- a/testdata/golden/c/ClausesWire.h +++ b/testdata/golden/c/ClausesWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_CLAUSESWIRE_H #define SCHEMA_EXAMPLE_CLAUSESWIRE_H diff --git a/testdata/golden/c/Constants.h b/testdata/golden/c/Constants.h index 5e973df76..6fc49df03 100644 --- a/testdata/golden/c/Constants.h +++ b/testdata/golden/c/Constants.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_CONSTANTS_H #define SCHEMA_EXAMPLE_CONSTANTS_H @@ -15,7 +15,7 @@ extern "C" { /* The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two sides at the same id speak identical bits; there is no other versioning. */ -#define EXAMPLE_PROTOCOL_ID 0x91a8e85156dfe2b1ULL +#define EXAMPLE_PROTOCOL_ID 0x682e2a15a56b78bfULL #define POSITION_UNITS (1024) #define VELOCITY_UNITS (1024) diff --git a/testdata/golden/c/ConstantsWire.h b/testdata/golden/c/ConstantsWire.h index 336e3c019..5cf40d778 100644 --- a/testdata/golden/c/ConstantsWire.h +++ b/testdata/golden/c/ConstantsWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_CONSTANTSWIRE_H #define SCHEMA_EXAMPLE_CONSTANTSWIRE_H diff --git a/testdata/golden/c/Degenerate.h b/testdata/golden/c/Degenerate.h index e8c6a434c..1bb3aa8d6 100644 --- a/testdata/golden/c/Degenerate.h +++ b/testdata/golden/c/Degenerate.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_DEGENERATE_H #define SCHEMA_EXAMPLE_DEGENERATE_H diff --git a/testdata/golden/c/DegenerateWire.h b/testdata/golden/c/DegenerateWire.h index 11b18ad73..1466f4bf4 100644 --- a/testdata/golden/c/DegenerateWire.h +++ b/testdata/golden/c/DegenerateWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_DEGENERATEWIRE_H #define SCHEMA_EXAMPLE_DEGENERATEWIRE_H diff --git a/testdata/golden/c/Enums.h b/testdata/golden/c/Enums.h index 195e8f6b1..66fb5f7ff 100644 --- a/testdata/golden/c/Enums.h +++ b/testdata/golden/c/Enums.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_ENUMS_H #define SCHEMA_EXAMPLE_ENUMS_H diff --git a/testdata/golden/c/EnumsWire.h b/testdata/golden/c/EnumsWire.h index b316c8b64..2342c3863 100644 --- a/testdata/golden/c/EnumsWire.h +++ b/testdata/golden/c/EnumsWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_ENUMSWIRE_H #define SCHEMA_EXAMPLE_ENUMSWIRE_H diff --git a/testdata/golden/c/Joins.h b/testdata/golden/c/Joins.h index 0b0ab0502..e35b372c0 100644 --- a/testdata/golden/c/Joins.h +++ b/testdata/golden/c/Joins.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_JOINS_H #define SCHEMA_EXAMPLE_JOINS_H diff --git a/testdata/golden/c/JoinsWire.h b/testdata/golden/c/JoinsWire.h index 2258bed84..95a8f0c72 100644 --- a/testdata/golden/c/JoinsWire.h +++ b/testdata/golden/c/JoinsWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_JOINSWIRE_H #define SCHEMA_EXAMPLE_JOINSWIRE_H diff --git a/testdata/golden/c/Render.h b/testdata/golden/c/Render.h index 451edf4a1..a3751dbe5 100644 --- a/testdata/golden/c/Render.h +++ b/testdata/golden/c/Render.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_RENDER_H #define SCHEMA_EXAMPLE_RENDER_H diff --git a/testdata/golden/c/RenderWire.h b/testdata/golden/c/RenderWire.h index 3a05a392a..d24f91924 100644 --- a/testdata/golden/c/RenderWire.h +++ b/testdata/golden/c/RenderWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_RENDERWIRE_H #define SCHEMA_EXAMPLE_RENDERWIRE_H diff --git a/testdata/golden/c/Types.h b/testdata/golden/c/Types.h index dd5508b89..c32ff7201 100644 --- a/testdata/golden/c/Types.h +++ b/testdata/golden/c/Types.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_TYPES_H #define SCHEMA_EXAMPLE_TYPES_H diff --git a/testdata/golden/c/TypesWire.h b/testdata/golden/c/TypesWire.h index 236fd7936..99f99dd11 100644 --- a/testdata/golden/c/TypesWire.h +++ b/testdata/golden/c/TypesWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_TYPESWIRE_H #define SCHEMA_EXAMPLE_TYPESWIRE_H diff --git a/testdata/golden/c/Wire.h b/testdata/golden/c/Wire.h index ba7481ce8..2b4e1e839 100644 --- a/testdata/golden/c/Wire.h +++ b/testdata/golden/c/Wire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_WIRE_H #define SCHEMA_EXAMPLE_WIRE_H diff --git a/testdata/golden/c/WireWire.h b/testdata/golden/c/WireWire.h index aa39ebbfa..76cffe5db 100644 --- a/testdata/golden/c/WireWire.h +++ b/testdata/golden/c/WireWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package example — protocol id 0x91a8e85156dfe2b1 */ + package example — protocol id 0x682e2a15a56b78bf */ #ifndef SCHEMA_EXAMPLE_WIREWIRE_H #define SCHEMA_EXAMPLE_WIREWIRE_H diff --git a/testdata/golden/cpp/Clauses.h b/testdata/golden/cpp/Clauses.h index 5f911ab92..0b7eff697 100644 --- a/testdata/golden/cpp/Clauses.h +++ b/testdata/golden/cpp/Clauses.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/ClausesWire.h b/testdata/golden/cpp/ClausesWire.h index c800c5a64..1a0c7bd4d 100644 --- a/testdata/golden/cpp/ClausesWire.h +++ b/testdata/golden/cpp/ClausesWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/Constants.h b/testdata/golden/cpp/Constants.h index 7d2e8f23d..c9430f778 100644 --- a/testdata/golden/cpp/Constants.h +++ b/testdata/golden/cpp/Constants.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once @@ -12,7 +12,7 @@ namespace example { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -inline constexpr uint64_t ProtocolId = 0x91a8e85156dfe2b1ull; +inline constexpr uint64_t ProtocolId = 0x682e2a15a56b78bfull; inline constexpr int64_t PositionUnits = 1024; inline constexpr int64_t VelocityUnits = 1024; diff --git a/testdata/golden/cpp/ConstantsWire.h b/testdata/golden/cpp/ConstantsWire.h index e057f4355..446c4192c 100644 --- a/testdata/golden/cpp/ConstantsWire.h +++ b/testdata/golden/cpp/ConstantsWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/Degenerate.h b/testdata/golden/cpp/Degenerate.h index 023bc733b..5721302ff 100644 --- a/testdata/golden/cpp/Degenerate.h +++ b/testdata/golden/cpp/Degenerate.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/DegenerateWire.h b/testdata/golden/cpp/DegenerateWire.h index f26c0951b..b99b4c180 100644 --- a/testdata/golden/cpp/DegenerateWire.h +++ b/testdata/golden/cpp/DegenerateWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/Enums.h b/testdata/golden/cpp/Enums.h index 7efbf3994..8d58c211f 100644 --- a/testdata/golden/cpp/Enums.h +++ b/testdata/golden/cpp/Enums.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/EnumsWire.h b/testdata/golden/cpp/EnumsWire.h index 6ca8bbe53..eeb990774 100644 --- a/testdata/golden/cpp/EnumsWire.h +++ b/testdata/golden/cpp/EnumsWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/Joins.h b/testdata/golden/cpp/Joins.h index b48b6ca9c..af5a317d2 100644 --- a/testdata/golden/cpp/Joins.h +++ b/testdata/golden/cpp/Joins.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/JoinsWire.h b/testdata/golden/cpp/JoinsWire.h index 35ac2cceb..6417b633b 100644 --- a/testdata/golden/cpp/JoinsWire.h +++ b/testdata/golden/cpp/JoinsWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/Render.h b/testdata/golden/cpp/Render.h index bc2818d4a..90bf93dbb 100644 --- a/testdata/golden/cpp/Render.h +++ b/testdata/golden/cpp/Render.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/RenderWire.h b/testdata/golden/cpp/RenderWire.h index bc1978d01..1ae552935 100644 --- a/testdata/golden/cpp/RenderWire.h +++ b/testdata/golden/cpp/RenderWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/Types.h b/testdata/golden/cpp/Types.h index c609cac94..534df29b5 100644 --- a/testdata/golden/cpp/Types.h +++ b/testdata/golden/cpp/Types.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/TypesWire.h b/testdata/golden/cpp/TypesWire.h index e58721e54..f0250afe9 100644 --- a/testdata/golden/cpp/TypesWire.h +++ b/testdata/golden/cpp/TypesWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/Wire.h b/testdata/golden/cpp/Wire.h index c45be4d67..44cb42e66 100644 --- a/testdata/golden/cpp/Wire.h +++ b/testdata/golden/cpp/Wire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cpp/WireWire.h b/testdata/golden/cpp/WireWire.h index 780932318..93410b24f 100644 --- a/testdata/golden/cpp/WireWire.h +++ b/testdata/golden/cpp/WireWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf #pragma once diff --git a/testdata/golden/cs/Clauses.cs b/testdata/golden/cs/Clauses.cs index 5fbf448ae..a19733429 100644 --- a/testdata/golden/cs/Clauses.cs +++ b/testdata/golden/cs/Clauses.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf using System; using System.Runtime.CompilerServices; diff --git a/testdata/golden/cs/Constants.cs b/testdata/golden/cs/Constants.cs index 68feb5f16..61041753d 100644 --- a/testdata/golden/cs/Constants.cs +++ b/testdata/golden/cs/Constants.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an interior null) @@ -20,7 +20,7 @@ public static partial class Schema { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public const ulong ProtocolId = 0x91a8e85156dfe2b1; + public const ulong ProtocolId = 0x682e2a15a56b78bf; public const long PositionUnits = 1024; diff --git a/testdata/golden/cs/Degenerate.cs b/testdata/golden/cs/Degenerate.cs index aac6cb3ed..b5b953d6f 100644 --- a/testdata/golden/cs/Degenerate.cs +++ b/testdata/golden/cs/Degenerate.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf using System; using System.Runtime.CompilerServices; diff --git a/testdata/golden/cs/Enums.cs b/testdata/golden/cs/Enums.cs index 299b655a4..8d62458d1 100644 --- a/testdata/golden/cs/Enums.cs +++ b/testdata/golden/cs/Enums.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf namespace Example { diff --git a/testdata/golden/cs/Joins.cs b/testdata/golden/cs/Joins.cs index cef8db3e1..0f7fc3c4c 100644 --- a/testdata/golden/cs/Joins.cs +++ b/testdata/golden/cs/Joins.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf using System; using System.Runtime.CompilerServices; diff --git a/testdata/golden/cs/Render.cs b/testdata/golden/cs/Render.cs index 95f633707..3ec151296 100644 --- a/testdata/golden/cs/Render.cs +++ b/testdata/golden/cs/Render.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf using System.Runtime.CompilerServices; using Serialize; diff --git a/testdata/golden/cs/Types.cs b/testdata/golden/cs/Types.cs index 0086bec8a..62b0074eb 100644 --- a/testdata/golden/cs/Types.cs +++ b/testdata/golden/cs/Types.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf using System.Runtime.CompilerServices; using Serialize; diff --git a/testdata/golden/cs/Wire.cs b/testdata/golden/cs/Wire.cs index df7a4d101..984a4864d 100644 --- a/testdata/golden/cs/Wire.cs +++ b/testdata/golden/cs/Wire.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf using System; using System.Runtime.CompilerServices; diff --git a/testdata/golden/dart/Clauses.dart b/testdata/golden/dart/Clauses.dart index 5a11c98c3..e1f238714 100644 --- a/testdata/golden/dart/Clauses.dart +++ b/testdata/golden/dart/Clauses.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import 'dart:typed_data'; diff --git a/testdata/golden/dart/Constants.dart b/testdata/golden/dart/Constants.dart index f94212757..7fb36bf4a 100644 --- a/testdata/golden/dart/Constants.dart +++ b/testdata/golden/dart/Constants.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // // The shipped Dart wire path (issue #155): the serialize.dart bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -24,7 +24,7 @@ // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const int protocolId = 0x91a8e85156dfe2b1; +const int protocolId = 0x682e2a15a56b78bf; const int positionUnits = 1024; diff --git a/testdata/golden/dart/Degenerate.dart b/testdata/golden/dart/Degenerate.dart index 82603bfcb..7f7a137e3 100644 --- a/testdata/golden/dart/Degenerate.dart +++ b/testdata/golden/dart/Degenerate.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import 'dart:typed_data'; diff --git a/testdata/golden/dart/Enums.dart b/testdata/golden/dart/Enums.dart index 9fa13de93..4be7b8aad 100644 --- a/testdata/golden/dart/Enums.dart +++ b/testdata/golden/dart/Enums.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Hex of a uint64 bit pattern held in a signed int (toRadixString would // render the sign, not the pattern). diff --git a/testdata/golden/dart/Joins.dart b/testdata/golden/dart/Joins.dart index a99f367eb..d2d60b363 100644 --- a/testdata/golden/dart/Joins.dart +++ b/testdata/golden/dart/Joins.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import 'dart:typed_data'; diff --git a/testdata/golden/dart/Render.dart b/testdata/golden/dart/Render.dart index 219b9c2d5..1ac5fd3b9 100644 --- a/testdata/golden/dart/Render.dart +++ b/testdata/golden/dart/Render.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import 'dart:typed_data'; diff --git a/testdata/golden/dart/Types.dart b/testdata/golden/dart/Types.dart index c68b15ed0..b20b7c6bf 100644 --- a/testdata/golden/dart/Types.dart +++ b/testdata/golden/dart/Types.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import 'dart:typed_data'; diff --git a/testdata/golden/dart/Wire.dart b/testdata/golden/dart/Wire.dart index cd2917b9e..16de722fb 100644 --- a/testdata/golden/dart/Wire.dart +++ b/testdata/golden/dart/Wire.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import 'dart:typed_data'; diff --git a/testdata/golden/elixir/Clauses.ex b/testdata/golden/elixir/Clauses.ex index 13733d3e1..e1251712c 100644 --- a/testdata/golden/elixir/Clauses.ex +++ b/testdata/golden/elixir/Clauses.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # type W13 defmodule Example.W13 do diff --git a/testdata/golden/elixir/Constants.ex b/testdata/golden/elixir/Constants.ex index 0e6dcc32c..5e2bbda87 100644 --- a/testdata/golden/elixir/Constants.ex +++ b/testdata/golden/elixir/Constants.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # # The shipped Elixir wire path (issue #167): the serialize.elixir port's # measured shapes — byte-granular 32-bit-group packing and 40-bit read @@ -34,7 +34,7 @@ defmodule Example.Constants do # The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two # sides at the same id speak identical bits; there is no other versioning. - def protocol_id, do: 0x91A8E85156DFE2B1 + def protocol_id, do: 0x682E2A15A56B78BF def position_units, do: 1024 diff --git a/testdata/golden/elixir/Degenerate.ex b/testdata/golden/elixir/Degenerate.ex index 031c3f109..f2c16681e 100644 --- a/testdata/golden/elixir/Degenerate.ex +++ b/testdata/golden/elixir/Degenerate.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # type Vec2 defmodule Example.Vec2 do diff --git a/testdata/golden/elixir/Enums.ex b/testdata/golden/elixir/Enums.ex index fbba6b378..131e4755f 100644 --- a/testdata/golden/elixir/Enums.ex +++ b/testdata/golden/elixir/Enums.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # Team — None = 0 implicit, variants dense from 1, wire range [0, 2] (SPEC §4.2); # an integer-constant namespace — the Elixir translation of the family's diff --git a/testdata/golden/elixir/Joins.ex b/testdata/golden/elixir/Joins.ex index f4161e803..7d3abf963 100644 --- a/testdata/golden/elixir/Joins.ex +++ b/testdata/golden/elixir/Joins.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # type ArmsAgree defmodule Example.ArmsAgree do diff --git a/testdata/golden/elixir/Render.ex b/testdata/golden/elixir/Render.ex index 4d9b78d9f..b4131edc3 100644 --- a/testdata/golden/elixir/Render.ex +++ b/testdata/golden/elixir/Render.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # type RenderSprite defmodule Example.RenderSprite do diff --git a/testdata/golden/elixir/Types.ex b/testdata/golden/elixir/Types.ex index d35e14de0..170afc817 100644 --- a/testdata/golden/elixir/Types.ex +++ b/testdata/golden/elixir/Types.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # type Vec3 [vec3] — tags are user-chosen and inert in v1 (SPEC §4.2, Type tags) defmodule Example.Vec3 do diff --git a/testdata/golden/elixir/Wire.ex b/testdata/golden/elixir/Wire.ex index 3393b8781..2aba203cb 100644 --- a/testdata/golden/elixir/Wire.ex +++ b/testdata/golden/elixir/Wire.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package example — protocol id 0x91a8e85156dfe2b1 +# package example — protocol id 0x682e2a15a56b78bf # Weapon — None = 0 implicit, variants dense from 1, wire range [0, 15] (SPEC §4.2); # an integer-constant namespace — the Elixir translation of the family's diff --git a/testdata/golden/go/Clauses.go b/testdata/golden/go/Clauses.go index 643e6a729..dea9cf3ad 100644 --- a/testdata/golden/go/Clauses.go +++ b/testdata/golden/go/Clauses.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/testdata/golden/go/Constants.go b/testdata/golden/go/Constants.go index 233126026..1c704530b 100644 --- a/testdata/golden/go/Constants.go +++ b/testdata/golden/go/Constants.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example @@ -12,7 +12,7 @@ import ( // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const ProtocolId uint64 = 0x91a8e85156dfe2b1 +const ProtocolId uint64 = 0x682e2a15a56b78bf // ErrValidation is returned when a read rejects the wire: a wrong constant, // nonzero reserved bits, or an interior null in a string (SPEC §4.3, §4.7). diff --git a/testdata/golden/go/Degenerate.go b/testdata/golden/go/Degenerate.go index 672a78a51..a2278999b 100644 --- a/testdata/golden/go/Degenerate.go +++ b/testdata/golden/go/Degenerate.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/testdata/golden/go/Enums.go b/testdata/golden/go/Enums.go index 78dc79031..5d752032c 100644 --- a/testdata/golden/go/Enums.go +++ b/testdata/golden/go/Enums.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/testdata/golden/go/Joins.go b/testdata/golden/go/Joins.go index f7c20dc31..814de2a54 100644 --- a/testdata/golden/go/Joins.go +++ b/testdata/golden/go/Joins.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/testdata/golden/go/Render.go b/testdata/golden/go/Render.go index 4076e8ec4..d29d1fa37 100644 --- a/testdata/golden/go/Render.go +++ b/testdata/golden/go/Render.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/testdata/golden/go/Types.go b/testdata/golden/go/Types.go index a9f9093ea..13117d31c 100644 --- a/testdata/golden/go/Types.go +++ b/testdata/golden/go/Types.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/testdata/golden/go/Wire.go b/testdata/golden/go/Wire.go index 4d99c775f..871585e8e 100644 --- a/testdata/golden/go/Wire.go +++ b/testdata/golden/go/Wire.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example diff --git a/testdata/golden/id.txt b/testdata/golden/id.txt index 843b59a12..29c3b7855 100644 --- a/testdata/golden/id.txt +++ b/testdata/golden/id.txt @@ -1 +1 @@ -0x91a8e85156dfe2b1 +0x682e2a15a56b78bf diff --git a/testdata/golden/java/Clauses.java b/testdata/golden/java/Clauses.java index c50fd79d9..bde5d8f6f 100644 --- a/testdata/golden/java/Clauses.java +++ b/testdata/golden/java/Clauses.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/testdata/golden/java/Constants.java b/testdata/golden/java/Constants.java index a7427cdd0..94c1cb566 100644 --- a/testdata/golden/java/Constants.java +++ b/testdata/golden/java/Constants.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // // The shipped Java wire path (issue #156): the serialize.java bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -33,7 +33,7 @@ private Constants() {} // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public static final long protocolId = 0x91a8e85156dfe2b1L; + public static final long protocolId = 0x682e2a15a56b78bfL; public static final int positionUnits = 1024; diff --git a/testdata/golden/java/Degenerate.java b/testdata/golden/java/Degenerate.java index 01a1cbd1b..c5b11d32d 100644 --- a/testdata/golden/java/Degenerate.java +++ b/testdata/golden/java/Degenerate.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/testdata/golden/java/Enums.java b/testdata/golden/java/Enums.java index c2d99d07d..06c619d6e 100644 --- a/testdata/golden/java/Enums.java +++ b/testdata/golden/java/Enums.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/testdata/golden/java/Joins.java b/testdata/golden/java/Joins.java index b7fcc88c6..d140aedcc 100644 --- a/testdata/golden/java/Joins.java +++ b/testdata/golden/java/Joins.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/testdata/golden/java/Render.java b/testdata/golden/java/Render.java index 9218851c3..4ff46cda6 100644 --- a/testdata/golden/java/Render.java +++ b/testdata/golden/java/Render.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/testdata/golden/java/Types.java b/testdata/golden/java/Types.java index 9fa01328c..7e87553a7 100644 --- a/testdata/golden/java/Types.java +++ b/testdata/golden/java/Types.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/testdata/golden/java/Wire.java b/testdata/golden/java/Wire.java index 79d7b7a94..414b7c0a8 100644 --- a/testdata/golden/java/Wire.java +++ b/testdata/golden/java/Wire.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf package example; diff --git a/testdata/golden/js/Clauses.js b/testdata/golden/js/Clauses.js index 2d1b3c3ad..fddfe7e9a 100644 --- a/testdata/golden/js/Clauses.js +++ b/testdata/golden/js/Clauses.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Scratch holders for the runtime's {value} refs — single threaded per // realm, always consumed in the same call that fills them. diff --git a/testdata/golden/js/ClausesFlat.js b/testdata/golden/js/ClausesFlat.js index 74bcadc82..2e492957a 100644 --- a/testdata/golden/js/ClausesFlat.js +++ b/testdata/golden/js/ClausesFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // // THE FLAT TIER — the shipped JavaScript wire path: a single-word 32-bit // bitpacker inlined at every field (byte-identical wire to serialize.js), diff --git a/testdata/golden/js/Constants.js b/testdata/golden/js/Constants.js index a28310436..5c69dc4ac 100644 --- a/testdata/golden/js/Constants.js +++ b/testdata/golden/js/Constants.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an out-of-contract @@ -16,7 +16,7 @@ // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -export const ProtocolId = 0x91a8e85156dfe2b1n; +export const ProtocolId = 0x682e2a15a56b78bfn; export const PositionUnits = 1024; diff --git a/testdata/golden/js/Degenerate.js b/testdata/golden/js/Degenerate.js index ec3b5b3f1..8d2ad35f9 100644 --- a/testdata/golden/js/Degenerate.js +++ b/testdata/golden/js/Degenerate.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Scratch holders for the runtime's {value} refs — single threaded per // realm, always consumed in the same call that fills them. diff --git a/testdata/golden/js/DegenerateFlat.js b/testdata/golden/js/DegenerateFlat.js index 74976678e..32489561b 100644 --- a/testdata/golden/js/DegenerateFlat.js +++ b/testdata/golden/js/DegenerateFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // The 8-byte conversion scratch — serialize.js's FLOAT_SCRATCH twin. Module // scope is safe: single threaded per realm, consumed in the same op that diff --git a/testdata/golden/js/Enums.js b/testdata/golden/js/Enums.js index 8537cf651..6515194da 100644 --- a/testdata/golden/js/Enums.js +++ b/testdata/golden/js/Enums.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Team — None = 0 implicit, variants dense from 1, wire range [0, 2] (SPEC §4.2); // a frozen object of Number values — the JS translation of the family's diff --git a/testdata/golden/js/Joins.js b/testdata/golden/js/Joins.js index abffe1ff8..32a44ea22 100644 --- a/testdata/golden/js/Joins.js +++ b/testdata/golden/js/Joins.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Scratch holders for the runtime's {value} refs — single threaded per // realm, always consumed in the same call that fills them. diff --git a/testdata/golden/js/JoinsFlat.js b/testdata/golden/js/JoinsFlat.js index 5fd20d0f9..259f01fab 100644 --- a/testdata/golden/js/JoinsFlat.js +++ b/testdata/golden/js/JoinsFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // The 8-byte conversion scratch — serialize.js's FLOAT_SCRATCH twin. Module // scope is safe: single threaded per realm, consumed in the same op that diff --git a/testdata/golden/js/Render.js b/testdata/golden/js/Render.js index ced6c8344..b90743760 100644 --- a/testdata/golden/js/Render.js +++ b/testdata/golden/js/Render.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import { Team } from "./Enums.js"; diff --git a/testdata/golden/js/RenderFlat.js b/testdata/golden/js/RenderFlat.js index d77993773..cb4e74f3b 100644 --- a/testdata/golden/js/RenderFlat.js +++ b/testdata/golden/js/RenderFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // The 8-byte conversion scratch — serialize.js's FLOAT_SCRATCH twin. Module // scope is safe: single threaded per realm, consumed in the same op that diff --git a/testdata/golden/js/Types.js b/testdata/golden/js/Types.js index 9a0f8ce8b..694fbbd9e 100644 --- a/testdata/golden/js/Types.js +++ b/testdata/golden/js/Types.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import { MaxHealth, MaxInputsPerPacket, MaxObjects, MaxPositionUnits, MaxVelocityUnits, RotationUnits, ShipMaxLasers, ShipMaxMissiles } from "./Constants.js"; import { Pending, ShipType, Team } from "./Enums.js"; diff --git a/testdata/golden/js/TypesFlat.js b/testdata/golden/js/TypesFlat.js index 8690c7975..a8d226b72 100644 --- a/testdata/golden/js/TypesFlat.js +++ b/testdata/golden/js/TypesFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // The 8-byte conversion scratch — serialize.js's FLOAT_SCRATCH twin. Module // scope is safe: single threaded per realm, consumed in the same op that diff --git a/testdata/golden/js/Wire.js b/testdata/golden/js/Wire.js index 6501b09f8..81c238bc9 100644 --- a/testdata/golden/js/Wire.js +++ b/testdata/golden/js/Wire.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf import { MaxBlockSize, MaxChatLength } from "./Constants.js"; diff --git a/testdata/golden/js/WireFlat.js b/testdata/golden/js/WireFlat.js index 5bbbd4d85..0309114c1 100644 --- a/testdata/golden/js/WireFlat.js +++ b/testdata/golden/js/WireFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // The 8-byte conversion scratch — serialize.js's FLOAT_SCRATCH twin. Module // scope is safe: single threaded per realm, consumed in the same op that diff --git a/testdata/golden/ludicrous/c/Ludicrous.h b/testdata/golden/ludicrous/c/Ludicrous.h index 6b52ce62e..ab27bbf5e 100644 --- a/testdata/golden/ludicrous/c/Ludicrous.h +++ b/testdata/golden/ludicrous/c/Ludicrous.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package ludicrous — protocol id 0x42050541a90eea8a */ + package ludicrous — protocol id 0x3a9a972a02c9e7ca */ #ifndef SCHEMA_LUDICROUS_LUDICROUS_H #define SCHEMA_LUDICROUS_LUDICROUS_H @@ -25,7 +25,7 @@ extern "C" { /* The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two sides at the same id speak identical bits; there is no other versioning. */ -#define LUDICROUS_PROTOCOL_ID 0x42050541a90eea8aULL +#define LUDICROUS_PROTOCOL_ID 0x3a9a972a02c9e7caULL #define MAX_WORLD_UNITS (30000) diff --git a/testdata/golden/ludicrous/c/LudicrousWire.h b/testdata/golden/ludicrous/c/LudicrousWire.h index 98627bdda..980378150 100644 --- a/testdata/golden/ludicrous/c/LudicrousWire.h +++ b/testdata/golden/ludicrous/c/LudicrousWire.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package ludicrous — protocol id 0x42050541a90eea8a */ + package ludicrous — protocol id 0x3a9a972a02c9e7ca */ #ifndef SCHEMA_LUDICROUS_LUDICROUSWIRE_H #define SCHEMA_LUDICROUS_LUDICROUSWIRE_H diff --git a/testdata/golden/ludicrous/cpp/Ludicrous.h b/testdata/golden/ludicrous/cpp/Ludicrous.h index df1f42bb9..14d47bba6 100644 --- a/testdata/golden/ludicrous/cpp/Ludicrous.h +++ b/testdata/golden/ludicrous/cpp/Ludicrous.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca #pragma once @@ -14,7 +14,7 @@ namespace ludicrous { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -inline constexpr uint64_t ProtocolId = 0x42050541a90eea8aull; +inline constexpr uint64_t ProtocolId = 0x3a9a972a02c9e7caull; inline constexpr int64_t MaxWorldUnits = 30000; // enum DriveMode — None = 0 implicit, variants dense from 1, wire range [0, 3] (SPEC §4.2) diff --git a/testdata/golden/ludicrous/cpp/LudicrousWire.h b/testdata/golden/ludicrous/cpp/LudicrousWire.h index 012bce781..4c70bdbb7 100644 --- a/testdata/golden/ludicrous/cpp/LudicrousWire.h +++ b/testdata/golden/ludicrous/cpp/LudicrousWire.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca #pragma once diff --git a/testdata/golden/ludicrous/cs/Ludicrous.cs b/testdata/golden/ludicrous/cs/Ludicrous.cs index 0b964fd80..33b5fd4de 100644 --- a/testdata/golden/ludicrous/cs/Ludicrous.cs +++ b/testdata/golden/ludicrous/cs/Ludicrous.cs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an interior null) @@ -109,7 +109,7 @@ public static partial class Schema { // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public const ulong ProtocolId = 0x42050541a90eea8a; + public const ulong ProtocolId = 0x3a9a972a02c9e7ca; public const long MaxWorldUnits = 30000; diff --git a/testdata/golden/ludicrous/dart/Int128.dart b/testdata/golden/ludicrous/dart/Int128.dart index de246a3da..b245f5a28 100644 --- a/testdata/golden/ludicrous/dart/Int128.dart +++ b/testdata/golden/ludicrous/dart/Int128.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // The emulated 128-bit pair: Dart has no native 128-bit integer, so // int128/uint128 storage speaks these types — two's-complement math on diff --git a/testdata/golden/ludicrous/dart/Ludicrous.dart b/testdata/golden/ludicrous/dart/Ludicrous.dart index 448c0490f..20b4c7816 100644 --- a/testdata/golden/ludicrous/dart/Ludicrous.dart +++ b/testdata/golden/ludicrous/dart/Ludicrous.dart @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // The shipped Dart wire path (issue #155): the serialize.dart bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -34,7 +34,7 @@ bool _unsignedLessThan(int a, int b) => // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const int protocolId = 0x42050541a90eea8a; +const int protocolId = 0x3a9a972a02c9e7ca; const int maxWorldUnits = 30000; diff --git a/testdata/golden/ludicrous/elixir/Ludicrous.ex b/testdata/golden/ludicrous/elixir/Ludicrous.ex index 54d8f9fd8..3095680b2 100644 --- a/testdata/golden/ludicrous/elixir/Ludicrous.ex +++ b/testdata/golden/ludicrous/elixir/Ludicrous.ex @@ -2,7 +2,7 @@ # SPDX-License-Identifier: NONE — this generated output is yours, under terms of # your choice. See the LICENSE exception in the schema compiler; the compiler is # AGPL-3.0, its output is not. -# package ludicrous — protocol id 0x42050541a90eea8a +# package ludicrous — protocol id 0x3a9a972a02c9e7ca # # The shipped Elixir wire path (issue #167): the serialize.elixir port's # measured shapes — byte-granular 32-bit-group packing and 40-bit read @@ -128,7 +128,7 @@ defmodule Ludicrous.Ludicrous do # The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two # sides at the same id speak identical bits; there is no other versioning. - def protocol_id, do: 0x42050541A90EEA8A + def protocol_id, do: 0x3A9A972A02C9E7CA def max_world_units, do: 30000 diff --git a/testdata/golden/ludicrous/go/Ludicrous.go b/testdata/golden/ludicrous/go/Ludicrous.go index e1a5259b6..bb64e2fbc 100644 --- a/testdata/golden/ludicrous/go/Ludicrous.go +++ b/testdata/golden/ludicrous/go/Ludicrous.go @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca package ludicrous @@ -14,7 +14,7 @@ import ( // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -const ProtocolId uint64 = 0x42050541a90eea8a +const ProtocolId uint64 = 0x3a9a972a02c9e7ca // ErrValidation is returned when a read rejects the wire: a wrong constant, // nonzero reserved bits, or an interior null in a string (SPEC §4.3, §4.7). diff --git a/testdata/golden/ludicrous/id.txt b/testdata/golden/ludicrous/id.txt index acad6fdac..3bf2a933e 100644 --- a/testdata/golden/ludicrous/id.txt +++ b/testdata/golden/ludicrous/id.txt @@ -1 +1 @@ -0x42050541a90eea8a +0x3a9a972a02c9e7ca diff --git a/testdata/golden/ludicrous/java/Int128.java b/testdata/golden/ludicrous/java/Int128.java index cbd1ba60b..6932a406e 100644 --- a/testdata/golden/ludicrous/java/Int128.java +++ b/testdata/golden/ludicrous/java/Int128.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // The emulated 128-bit pair, signed half: Java has no native 128-bit integer, // so int128/uint128 storage speaks Int128/UInt128 — two's-complement math diff --git a/testdata/golden/ludicrous/java/Ludicrous.java b/testdata/golden/ludicrous/java/Ludicrous.java index 897cb4a39..d25aee434 100644 --- a/testdata/golden/ludicrous/java/Ludicrous.java +++ b/testdata/golden/ludicrous/java/Ludicrous.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // The shipped Java wire path (issue #156): the serialize.java bitpacker // inlined at every field, literal constant widths and masks, monomorphic @@ -39,7 +39,7 @@ private Ludicrous() {} // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. - public static final long protocolId = 0x42050541a90eea8aL; + public static final long protocolId = 0x3a9a972a02c9e7caL; public static final int maxWorldUnits = 30000; diff --git a/testdata/golden/ludicrous/java/UInt128.java b/testdata/golden/ludicrous/java/UInt128.java index 32ee8d8cd..e807cbbe2 100644 --- a/testdata/golden/ludicrous/java/UInt128.java +++ b/testdata/golden/ludicrous/java/UInt128.java @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // The emulated 128-bit pair, unsigned half: Java has no native 128-bit integer, // so int128/uint128 storage speaks Int128/UInt128 — two's-complement math diff --git a/testdata/golden/ludicrous/js/Ludicrous.js b/testdata/golden/ludicrous/js/Ludicrous.js index 7f8957b0f..027703b5c 100644 --- a/testdata/golden/ludicrous/js/Ludicrous.js +++ b/testdata/golden/ludicrous/js/Ludicrous.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // Wire functions return bool — the C++-style early-out. A schema validation // failure (a wrong wire constant, nonzero reserved bits, an out-of-contract @@ -22,7 +22,7 @@ const BOOL_SCRATCH = { value: false }; // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -export const ProtocolId = 0x42050541a90eea8an; +export const ProtocolId = 0x3a9a972a02c9e7can; export const MaxWorldUnits = 30000; diff --git a/testdata/golden/ludicrous/js/LudicrousFlat.js b/testdata/golden/ludicrous/js/LudicrousFlat.js index 63ead2a26..8af3ad542 100644 --- a/testdata/golden/ludicrous/js/LudicrousFlat.js +++ b/testdata/golden/ludicrous/js/LudicrousFlat.js @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // // THE FLAT TIER — the shipped JavaScript wire path: a single-word 32-bit // bitpacker inlined at every field (byte-identical wire to serialize.js), diff --git a/testdata/golden/ludicrous/rust/lib.rs b/testdata/golden/ludicrous/rust/lib.rs index 648e29ea8..6d02983db 100644 --- a/testdata/golden/ludicrous/rust/lib.rs +++ b/testdata/golden/ludicrous/rust/lib.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca // Two clippy classes are silenced deliberately, crate-wide: // - derivable_impls / field_reassign_with_default: Default impls are diff --git a/testdata/golden/ludicrous/rust/ludicrous.rs b/testdata/golden/ludicrous/rust/ludicrous.rs index 39c8b778e..bda393e87 100644 --- a/testdata/golden/ludicrous/rust/ludicrous.rs +++ b/testdata/golden/ludicrous/rust/ludicrous.rs @@ -2,13 +2,13 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package ludicrous — protocol id 0x42050541a90eea8a +// package ludicrous — protocol id 0x3a9a972a02c9e7ca use serialize::{ReadStream, Stream, WriteStream}; // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -pub const PROTOCOL_ID: u64 = 0x42050541a90eea8a; +pub const PROTOCOL_ID: u64 = 0x3a9a972a02c9e7ca; /// The generated crate's error: the runtime's own errors pass through; /// Validation is a read rejecting the wire (SPEC §4.3, §4.7). diff --git a/testdata/golden/rust/clauses.rs b/testdata/golden/rust/clauses.rs index 70c7f2446..d075630bc 100644 --- a/testdata/golden/rust/clauses.rs +++ b/testdata/golden/rust/clauses.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf use crate::*; use serialize::{ReadStream, Stream, WriteStream}; diff --git a/testdata/golden/rust/constants.rs b/testdata/golden/rust/constants.rs index 69ae2e4fe..8cebc47de 100644 --- a/testdata/golden/rust/constants.rs +++ b/testdata/golden/rust/constants.rs @@ -2,11 +2,11 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // The unit's protocol id — the hash of its wire shape (SPEC §3.1). Two // sides at the same id speak identical bits; there is no other versioning. -pub const PROTOCOL_ID: u64 = 0x91a8e85156dfe2b1; +pub const PROTOCOL_ID: u64 = 0x682e2a15a56b78bf; /// The generated crate's error: the runtime's own errors pass through; /// Validation is a read rejecting the wire (SPEC §4.3, §4.7). diff --git a/testdata/golden/rust/degenerate.rs b/testdata/golden/rust/degenerate.rs index f210b8835..2584dd4f2 100644 --- a/testdata/golden/rust/degenerate.rs +++ b/testdata/golden/rust/degenerate.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf use crate::*; use serialize::{ReadStream, Stream, WriteStream}; diff --git a/testdata/golden/rust/enums.rs b/testdata/golden/rust/enums.rs index b75ab5673..147cf6d6e 100644 --- a/testdata/golden/rust/enums.rs +++ b/testdata/golden/rust/enums.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Team — None = 0 implicit, variants dense from 1, wire range [0, 2] (SPEC §4.2); // a newtype because | max = ... headroom makes non-variant values wire-legal diff --git a/testdata/golden/rust/joins.rs b/testdata/golden/rust/joins.rs index 3a71a2959..e89a86ae2 100644 --- a/testdata/golden/rust/joins.rs +++ b/testdata/golden/rust/joins.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf use crate::*; use serialize::{ReadStream, Stream, WriteStream}; diff --git a/testdata/golden/rust/lib.rs b/testdata/golden/rust/lib.rs index af22819e9..62684805d 100644 --- a/testdata/golden/rust/lib.rs +++ b/testdata/golden/rust/lib.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf // Two clippy classes are silenced deliberately, crate-wide: // - derivable_impls / field_reassign_with_default: Default impls are diff --git a/testdata/golden/rust/render.rs b/testdata/golden/rust/render.rs index 0b5e2194d..c792ad5f8 100644 --- a/testdata/golden/rust/render.rs +++ b/testdata/golden/rust/render.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf use crate::*; use serialize::{ReadStream, Stream, WriteStream}; diff --git a/testdata/golden/rust/types.rs b/testdata/golden/rust/types.rs index 39093ba54..4d55ee665 100644 --- a/testdata/golden/rust/types.rs +++ b/testdata/golden/rust/types.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf use crate::*; use serialize::{ReadStream, Stream, WriteStream}; diff --git a/testdata/golden/rust/wire.rs b/testdata/golden/rust/wire.rs index e1c75686b..6e0d494a7 100644 --- a/testdata/golden/rust/wire.rs +++ b/testdata/golden/rust/wire.rs @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package example — protocol id 0x91a8e85156dfe2b1 +// package example — protocol id 0x682e2a15a56b78bf use crate::*; use serialize::{ReadStream, Stream, WriteStream}; diff --git a/testdata/golden/tables/blobs/AssetsTable.h b/testdata/golden/tables/blobs/AssetsTable.h index 8d73198b1..bc66a4fbd 100644 --- a/testdata/golden/tables/blobs/AssetsTable.h +++ b/testdata/golden/tables/blobs/AssetsTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package blobdemo — protocol id 0xec78e4ce7f5dd962 (packets only: tables version by field id, not by protocol id) +// package blobdemo — protocol id 0x1cc1b12ef296a1f6 (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -1302,7 +1302,7 @@ namespace blobdemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0xc20a8501aaedb152ull; +static const uint64_t BuildVersion = 0xe7a627afef0d063full; } // namespace blobdemo diff --git a/testdata/golden/tables/block-c/PaddedTable.h b/testdata/golden/tables/block-c/PaddedTable.h index 2ce0a7714..33fa130a3 100644 --- a/testdata/golden/tables/block-c/PaddedTable.h +++ b/testdata/golden/tables/block-c/PaddedTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package blockdemo — protocol id 0x7a706bf2ea47d94b (packets only: tables version by field id, not by protocol id) + package blockdemo — protocol id 0xccb9f0129fbc0ebe (packets only: tables version by field id, not by protocol id) The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize dependency — includable from any TU. Compile the .c beside this header to use the reflection descriptors or the text form. */ @@ -387,7 +387,7 @@ static SCHEMA_UNUSED uint64_t table_double_to_bits( double d ) { uint64_t b; mem PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_BLOCKDEMO_BUILD_VERSION_VALUE 0xe9c3dec8287989afull +#define SCHEMA_BLOCKDEMO_BUILD_VERSION_VALUE 0x0adbc6e7f9c4605dull #endif /* SCHEMA_BLOCKDEMO_BUILD_VERSION */ diff --git a/testdata/golden/tables/block-c/RenderTable.h b/testdata/golden/tables/block-c/RenderTable.h index bf282d7d2..d88fe723b 100644 --- a/testdata/golden/tables/block-c/RenderTable.h +++ b/testdata/golden/tables/block-c/RenderTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package blockdemo — protocol id 0x7a706bf2ea47d94b (packets only: tables version by field id, not by protocol id) + package blockdemo — protocol id 0xccb9f0129fbc0ebe (packets only: tables version by field id, not by protocol id) The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize dependency — includable from any TU. Compile the .c beside this header to use the reflection descriptors or the text form. */ @@ -386,7 +386,7 @@ static SCHEMA_UNUSED uint64_t table_double_to_bits( double d ) { uint64_t b; mem PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_BLOCKDEMO_BUILD_VERSION_VALUE 0xe9c3dec8287989afull +#define SCHEMA_BLOCKDEMO_BUILD_VERSION_VALUE 0x0adbc6e7f9c4605dull #endif /* SCHEMA_BLOCKDEMO_BUILD_VERSION */ diff --git a/testdata/golden/tables/block/PaddedTable.h b/testdata/golden/tables/block/PaddedTable.h index 70c0148f2..4d98f3a54 100644 --- a/testdata/golden/tables/block/PaddedTable.h +++ b/testdata/golden/tables/block/PaddedTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package blockdemo — protocol id 0x7a706bf2ea47d94b (packets only: tables version by field id, not by protocol id) +// package blockdemo — protocol id 0xccb9f0129fbc0ebe (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -388,7 +388,7 @@ namespace blockdemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0xe9c3dec8287989afull; +static const uint64_t BuildVersion = 0x0adbc6e7f9c4605dull; } // namespace blockdemo diff --git a/testdata/golden/tables/block/RenderTable.h b/testdata/golden/tables/block/RenderTable.h index d61a38236..ccee40e81 100644 --- a/testdata/golden/tables/block/RenderTable.h +++ b/testdata/golden/tables/block/RenderTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package blockdemo — protocol id 0x7a706bf2ea47d94b (packets only: tables version by field id, not by protocol id) +// package blockdemo — protocol id 0xccb9f0129fbc0ebe (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -387,7 +387,7 @@ namespace blockdemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0xe9c3dec8287989afull; +static const uint64_t BuildVersion = 0x0adbc6e7f9c4605dull; } // namespace blockdemo diff --git a/testdata/golden/tables/blockhome/ConstantsTable.h b/testdata/golden/tables/blockhome/ConstantsTable.h index 32e575fbc..11569f205 100644 --- a/testdata/golden/tables/blockhome/ConstantsTable.h +++ b/testdata/golden/tables/blockhome/ConstantsTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package blockhome — protocol id 0xa6612e5b3f07080a (packets only: tables version by field id, not by protocol id) +// package blockhome — protocol id 0x0fc1a1667e54b144 (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -265,7 +265,7 @@ namespace blockhome { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0xf0348a7d88321955ull; +static const uint64_t BuildVersion = 0x9ebe680f43132468ull; } // namespace blockhome diff --git a/testdata/golden/tables/blockhome/DataTable.h b/testdata/golden/tables/blockhome/DataTable.h index d3505e7cd..4b9f260b9 100644 --- a/testdata/golden/tables/blockhome/DataTable.h +++ b/testdata/golden/tables/blockhome/DataTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package blockhome — protocol id 0xa6612e5b3f07080a (packets only: tables version by field id, not by protocol id) +// package blockhome — protocol id 0x0fc1a1667e54b144 (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -265,7 +265,7 @@ namespace blockhome { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0xf0348a7d88321955ull; +static const uint64_t BuildVersion = 0x9ebe680f43132468ull; } // namespace blockhome diff --git a/testdata/golden/tables/blockhome/FrameTable.h b/testdata/golden/tables/blockhome/FrameTable.h index 0818bacfd..cc07be6fd 100644 --- a/testdata/golden/tables/blockhome/FrameTable.h +++ b/testdata/golden/tables/blockhome/FrameTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package blockhome — protocol id 0xa6612e5b3f07080a (packets only: tables version by field id, not by protocol id) +// package blockhome — protocol id 0x0fc1a1667e54b144 (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -266,7 +266,7 @@ namespace blockhome { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0xf0348a7d88321955ull; +static const uint64_t BuildVersion = 0x9ebe680f43132468ull; } // namespace blockhome diff --git a/testdata/golden/tables/examples-c/GuardedTable.h b/testdata/golden/tables/examples-c/GuardedTable.h index 038cf8ff7..73c7cc41b 100644 --- a/testdata/golden/tables/examples-c/GuardedTable.h +++ b/testdata/golden/tables/examples-c/GuardedTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) + package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize dependency — includable from any TU. Compile the .c beside this header to use the reflection descriptors or the text form. */ @@ -386,7 +386,7 @@ static SCHEMA_UNUSED uint64_t table_double_to_bits( double d ) { uint64_t b; mem PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x3cf5cc8b611ce26aull +#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x0d48f2a53a826273ull #endif /* SCHEMA_TABLEDEMO_BUILD_VERSION */ diff --git a/testdata/golden/tables/examples-c/KeyedTable.h b/testdata/golden/tables/examples-c/KeyedTable.h index fc3a3b75a..a3ffab1a8 100644 --- a/testdata/golden/tables/examples-c/KeyedTable.h +++ b/testdata/golden/tables/examples-c/KeyedTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) + package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize dependency — includable from any TU. Compile the .c beside this header to use the reflection descriptors or the text form. */ @@ -386,7 +386,7 @@ static SCHEMA_UNUSED uint64_t table_double_to_bits( double d ) { uint64_t b; mem PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x3cf5cc8b611ce26aull +#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x0d48f2a53a826273ull #endif /* SCHEMA_TABLEDEMO_BUILD_VERSION */ diff --git a/testdata/golden/tables/examples-c/NestedTable.h b/testdata/golden/tables/examples-c/NestedTable.h index 36cd3b4dd..55edd62d5 100644 --- a/testdata/golden/tables/examples-c/NestedTable.h +++ b/testdata/golden/tables/examples-c/NestedTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) + package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize dependency — includable from any TU. Compile the .c beside this header to use the reflection descriptors or the text form. */ @@ -387,7 +387,7 @@ static SCHEMA_UNUSED uint64_t table_double_to_bits( double d ) { uint64_t b; mem PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x3cf5cc8b611ce26aull +#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x0d48f2a53a826273ull #endif /* SCHEMA_TABLEDEMO_BUILD_VERSION */ diff --git a/testdata/golden/tables/examples-c/PackTable.h b/testdata/golden/tables/examples-c/PackTable.h index dfedb1b3c..c78c82e9c 100644 --- a/testdata/golden/tables/examples-c/PackTable.h +++ b/testdata/golden/tables/examples-c/PackTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) + package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize dependency — includable from any TU. Compile the .c beside this header to use the reflection descriptors or the text form. */ @@ -386,7 +386,7 @@ static SCHEMA_UNUSED uint64_t table_double_to_bits( double d ) { uint64_t b; mem PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x3cf5cc8b611ce26aull +#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x0d48f2a53a826273ull #endif /* SCHEMA_TABLEDEMO_BUILD_VERSION */ diff --git a/testdata/golden/tables/examples-c/RangesTable.h b/testdata/golden/tables/examples-c/RangesTable.h index cadca356e..89c9b85ce 100644 --- a/testdata/golden/tables/examples-c/RangesTable.h +++ b/testdata/golden/tables/examples-c/RangesTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) + package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize dependency — includable from any TU. Compile the .c beside this header to use the reflection descriptors or the text form. */ @@ -386,7 +386,7 @@ static SCHEMA_UNUSED uint64_t table_double_to_bits( double d ) { uint64_t b; mem PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x3cf5cc8b611ce26aull +#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x0d48f2a53a826273ull #endif /* SCHEMA_TABLEDEMO_BUILD_VERSION */ diff --git a/testdata/golden/tables/examples-c/TablesTable.h b/testdata/golden/tables/examples-c/TablesTable.h index 59e8c750d..64b486797 100644 --- a/testdata/golden/tables/examples-c/TablesTable.h +++ b/testdata/golden/tables/examples-c/TablesTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) + package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize dependency — includable from any TU. Compile the .c beside this header to use the reflection descriptors or the text form. */ @@ -386,7 +386,7 @@ static SCHEMA_UNUSED uint64_t table_double_to_bits( double d ) { uint64_t b; mem PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x3cf5cc8b611ce26aull +#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x0d48f2a53a826273ull #endif /* SCHEMA_TABLEDEMO_BUILD_VERSION */ diff --git a/testdata/golden/tables/examples-c/WideTable.h b/testdata/golden/tables/examples-c/WideTable.h index 8093f6493..2d5a03017 100644 --- a/testdata/golden/tables/examples-c/WideTable.h +++ b/testdata/golden/tables/examples-c/WideTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) + package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize dependency — includable from any TU. Compile the .c beside this header to use the reflection descriptors or the text form. */ @@ -386,7 +386,7 @@ static SCHEMA_UNUSED uint64_t table_double_to_bits( double d ) { uint64_t b; mem PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x3cf5cc8b611ce26aull +#define SCHEMA_TABLEDEMO_BUILD_VERSION_VALUE 0x0d48f2a53a826273ull #endif /* SCHEMA_TABLEDEMO_BUILD_VERSION */ diff --git a/testdata/golden/tables/examples/GuardedTable.h b/testdata/golden/tables/examples/GuardedTable.h index 1a7821207..e40ac346e 100644 --- a/testdata/golden/tables/examples/GuardedTable.h +++ b/testdata/golden/tables/examples/GuardedTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) +// package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -387,7 +387,7 @@ namespace tabledemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x3cf5cc8b611ce26aull; +static const uint64_t BuildVersion = 0x0d48f2a53a826273ull; } // namespace tabledemo diff --git a/testdata/golden/tables/examples/KeyedTable.h b/testdata/golden/tables/examples/KeyedTable.h index 02b706e72..c85288f55 100644 --- a/testdata/golden/tables/examples/KeyedTable.h +++ b/testdata/golden/tables/examples/KeyedTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) +// package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -387,7 +387,7 @@ namespace tabledemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x3cf5cc8b611ce26aull; +static const uint64_t BuildVersion = 0x0d48f2a53a826273ull; } // namespace tabledemo diff --git a/testdata/golden/tables/examples/NestedTable.h b/testdata/golden/tables/examples/NestedTable.h index 982561a5e..2768c1193 100644 --- a/testdata/golden/tables/examples/NestedTable.h +++ b/testdata/golden/tables/examples/NestedTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) +// package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -388,7 +388,7 @@ namespace tabledemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x3cf5cc8b611ce26aull; +static const uint64_t BuildVersion = 0x0d48f2a53a826273ull; } // namespace tabledemo diff --git a/testdata/golden/tables/examples/PackTable.h b/testdata/golden/tables/examples/PackTable.h index 171056c72..c6a3dfce6 100644 --- a/testdata/golden/tables/examples/PackTable.h +++ b/testdata/golden/tables/examples/PackTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) +// package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -387,7 +387,7 @@ namespace tabledemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x3cf5cc8b611ce26aull; +static const uint64_t BuildVersion = 0x0d48f2a53a826273ull; } // namespace tabledemo diff --git a/testdata/golden/tables/examples/RangesTable.h b/testdata/golden/tables/examples/RangesTable.h index 15013c969..7db458a08 100644 --- a/testdata/golden/tables/examples/RangesTable.h +++ b/testdata/golden/tables/examples/RangesTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) +// package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -387,7 +387,7 @@ namespace tabledemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x3cf5cc8b611ce26aull; +static const uint64_t BuildVersion = 0x0d48f2a53a826273ull; } // namespace tabledemo diff --git a/testdata/golden/tables/examples/TablesTable.h b/testdata/golden/tables/examples/TablesTable.h index 34a40d2e8..f37c7ec03 100644 --- a/testdata/golden/tables/examples/TablesTable.h +++ b/testdata/golden/tables/examples/TablesTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) +// package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -387,7 +387,7 @@ namespace tabledemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x3cf5cc8b611ce26aull; +static const uint64_t BuildVersion = 0x0d48f2a53a826273ull; } // namespace tabledemo diff --git a/testdata/golden/tables/examples/WideTable.h b/testdata/golden/tables/examples/WideTable.h index d21640016..979fd06cc 100644 --- a/testdata/golden/tables/examples/WideTable.h +++ b/testdata/golden/tables/examples/WideTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package tabledemo — protocol id 0x9924bf6d375ec24d (packets only: tables version by field id, not by protocol id) +// package tabledemo — protocol id 0x91df5fddd8edc184 (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -387,7 +387,7 @@ namespace tabledemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x3cf5cc8b611ce26aull; +static const uint64_t BuildVersion = 0x0d48f2a53a826273ull; } // namespace tabledemo diff --git a/testdata/golden/tables/messages/MessagesTable.h b/testdata/golden/tables/messages/MessagesTable.h index dfda9fabc..a6c5a2d6b 100644 --- a/testdata/golden/tables/messages/MessagesTable.h +++ b/testdata/golden/tables/messages/MessagesTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package messagedemo — protocol id 0x8248fac3393e5575 (packets only: tables version by field id, not by protocol id) +// package messagedemo — protocol id 0x4a7939657edfa4ab (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -265,7 +265,7 @@ namespace messagedemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x5d6070501121763aull; +static const uint64_t BuildVersion = 0x2e7e8c6b14f7f107ull; } // namespace messagedemo diff --git a/testdata/golden/tables/pointers-c/GraphTable.h b/testdata/golden/tables/pointers-c/GraphTable.h index f27530197..52cf1e6c7 100644 --- a/testdata/golden/tables/pointers-c/GraphTable.h +++ b/testdata/golden/tables/pointers-c/GraphTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package graphdemo — protocol id 0x79242c6a555d3a60 (packets only: tables version by field id, not by protocol id) + package graphdemo — protocol id 0x2ce00b66ca6ca57c (packets only: tables version by field id, not by protocol id) The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize dependency — includable from any TU. Compile the .c beside this header to use the reflection descriptors or the text form. */ @@ -724,7 +724,7 @@ typedef struct TableSink PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_GRAPHDEMO_BUILD_VERSION_VALUE 0x8b3fa61285c77990ull +#define SCHEMA_GRAPHDEMO_BUILD_VERSION_VALUE 0x94b679c0a547181bull #endif /* SCHEMA_GRAPHDEMO_BUILD_VERSION */ diff --git a/testdata/golden/tables/pointers-c/MarksTable.h b/testdata/golden/tables/pointers-c/MarksTable.h index ae9269606..4f773bcae 100644 --- a/testdata/golden/tables/pointers-c/MarksTable.h +++ b/testdata/golden/tables/pointers-c/MarksTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package graphdemo — protocol id 0x79242c6a555d3a60 (packets only: tables version by field id, not by protocol id) + package graphdemo — protocol id 0x2ce00b66ca6ca57c (packets only: tables version by field id, not by protocol id) The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize dependency — includable from any TU. Compile the .c beside this header to use the reflection descriptors or the text form. */ @@ -722,7 +722,7 @@ typedef struct TableSink PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_GRAPHDEMO_BUILD_VERSION_VALUE 0x8b3fa61285c77990ull +#define SCHEMA_GRAPHDEMO_BUILD_VERSION_VALUE 0x94b679c0a547181bull #endif /* SCHEMA_GRAPHDEMO_BUILD_VERSION */ diff --git a/testdata/golden/tables/pointers-c/PartsTable.h b/testdata/golden/tables/pointers-c/PartsTable.h index b19b62d36..87a2f704f 100644 --- a/testdata/golden/tables/pointers-c/PartsTable.h +++ b/testdata/golden/tables/pointers-c/PartsTable.h @@ -2,7 +2,7 @@ SPDX-License-Identifier: NONE — this generated output is yours, under terms of your choice. See the LICENSE exception in the schema compiler; the compiler is AGPL-3.0, its output is not. - package graphdemo — protocol id 0x79242c6a555d3a60 (packets only: tables version by field id, not by protocol id) + package graphdemo — protocol id 0x2ce00b66ca6ca57c (packets only: tables version by field id, not by protocol id) The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize dependency — includable from any TU. Compile the .c beside this header to use the reflection descriptors or the text form. */ @@ -722,7 +722,7 @@ typedef struct TableSink PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is what everything cooked or blocked is keyed by. A table edit moves this and never the protocol id; a type edit moves both. */ -#define SCHEMA_GRAPHDEMO_BUILD_VERSION_VALUE 0x8b3fa61285c77990ull +#define SCHEMA_GRAPHDEMO_BUILD_VERSION_VALUE 0x94b679c0a547181bull #endif /* SCHEMA_GRAPHDEMO_BUILD_VERSION */ diff --git a/testdata/golden/tables/pointers/GraphTable.h b/testdata/golden/tables/pointers/GraphTable.h index aa4c62828..9b60232e3 100644 --- a/testdata/golden/tables/pointers/GraphTable.h +++ b/testdata/golden/tables/pointers/GraphTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package graphdemo — protocol id 0x79242c6a555d3a60 (packets only: tables version by field id, not by protocol id) +// package graphdemo — protocol id 0x2ce00b66ca6ca57c (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -1427,7 +1427,7 @@ namespace graphdemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x8b3fa61285c77990ull; +static const uint64_t BuildVersion = 0x94b679c0a547181bull; } // namespace graphdemo diff --git a/testdata/golden/tables/pointers/MarksTable.h b/testdata/golden/tables/pointers/MarksTable.h index ddfaae6db..986a76117 100644 --- a/testdata/golden/tables/pointers/MarksTable.h +++ b/testdata/golden/tables/pointers/MarksTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package graphdemo — protocol id 0x79242c6a555d3a60 (packets only: tables version by field id, not by protocol id) +// package graphdemo — protocol id 0x2ce00b66ca6ca57c (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -1424,7 +1424,7 @@ namespace graphdemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x8b3fa61285c77990ull; +static const uint64_t BuildVersion = 0x94b679c0a547181bull; } // namespace graphdemo diff --git a/testdata/golden/tables/pointers/PartsTable.h b/testdata/golden/tables/pointers/PartsTable.h index 3bd8f7ce5..65d30ef87 100644 --- a/testdata/golden/tables/pointers/PartsTable.h +++ b/testdata/golden/tables/pointers/PartsTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package graphdemo — protocol id 0x79242c6a555d3a60 (packets only: tables version by field id, not by protocol id) +// package graphdemo — protocol id 0x2ce00b66ca6ca57c (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -1424,7 +1424,7 @@ namespace graphdemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x8b3fa61285c77990ull; +static const uint64_t BuildVersion = 0x94b679c0a547181bull; } // namespace graphdemo diff --git a/testdata/golden/tables/scalars/ScalarsTable.h b/testdata/golden/tables/scalars/ScalarsTable.h index f7f7e2254..0244e9643 100644 --- a/testdata/golden/tables/scalars/ScalarsTable.h +++ b/testdata/golden/tables/scalars/ScalarsTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package scalardemo — protocol id 0x01ba84a4cbd2143a (packets only: tables version by field id, not by protocol id) +// package scalardemo — protocol id 0xaa2ae3fa9f005efc (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): includable from // any TU — the one thing taken from serialize.h is the 128-bit storage type. @@ -388,7 +388,7 @@ namespace scalardemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x60b4cb8aaf8eaec4ull; +static const uint64_t BuildVersion = 0xa8b581f9ab3e8580ull; } // namespace scalardemo diff --git a/testdata/golden/tables/stream/StreamTable.h b/testdata/golden/tables/stream/StreamTable.h index 3dab44a86..b375cb263 100644 --- a/testdata/golden/tables/stream/StreamTable.h +++ b/testdata/golden/tables/stream/StreamTable.h @@ -2,7 +2,7 @@ // SPDX-License-Identifier: NONE — this generated output is yours, under terms of // your choice. See the LICENSE exception in the schema compiler; the compiler is // AGPL-3.0, its output is not. -// package streamdemo — protocol id 0xbf90766c51a5100c (packets only: tables version by field id, not by protocol id) +// package streamdemo — protocol id 0x0da6b010d5e2ade7 (packets only: tables version by field id, not by protocol id) // The TABLE wire (evolution-tolerant, docs/SPEC-TABLES.md): no serialize // dependency — includable from any TU. @@ -1302,7 +1302,7 @@ namespace streamdemo { // PROTOCOL ID is the type wire's and nothing else, and the BUILD VERSION is // what everything cooked or blocked is keyed by. A table edit moves this and // never the protocol id; a type edit moves both. -static const uint64_t BuildVersion = 0x093e4bddde5575deull; +static const uint64_t BuildVersion = 0x4556b3579a442505ull; } // namespace streamdemo diff --git a/testdata/wire/tables/block_padded.bin b/testdata/wire/tables/block_padded.bin index 0d170f079..174d0d9cd 100644 Binary files a/testdata/wire/tables/block_padded.bin and b/testdata/wire/tables/block_padded.bin differ diff --git a/testdata/wire/tables/block_render.bin b/testdata/wire/tables/block_render.bin index 35519c20c..927866a30 100644 Binary files a/testdata/wire/tables/block_render.bin and b/testdata/wire/tables/block_render.bin differ