Skip to content

Protocol 28 (CAP-0085) XDR regeneration - #5962

Closed
sisuresh wants to merge 1 commit into
stellar:protocol-nextfrom
sisuresh:p28-cap-0085
Closed

Protocol 28 (CAP-0085) XDR regeneration#5962
sisuresh wants to merge 1 commit into
stellar:protocol-nextfrom
sisuresh:p28-cap-0085

Conversation

@sisuresh

Copy link
Copy Markdown
Contributor

Regenerates the XDR for Protocol 28 CAP-0085 (executable-ref).

What

  • Bump XDR_COMMIT to stellar-xdr@76218a9 and add CAP_0085_EXECUTABLE_REF to XDR_FEATURES.
  • Regenerates xdr/xdr_generated.go, xdr/xdr_views_generated.go, gxdr/xdr_generated.go, and the xdr/xdr_commit_generated.txt pin.
  • New definitions emitted:
    • ContractExecutable gains the CONTRACT_EXECUTABLE_EXTERNAL_REF variant, backed by the new ContractExecutableExternalRef struct (executable_owner + tag).
    • SCVal gains the SCV_EXECUTABLE_TAG variant (SCString).
  • Extends the hand-written helpers in xdr/scval.go (Equals/String) to cover the new variants.

Notes

CAP_0083 remains enabled; this stacks the CAP_0085_EXECUTABLE_REF feature gate on top.

Bump XDR_COMMIT to stellar-xdr@76218a9 and add CAP_0085_EXECUTABLE_REF to
XDR_FEATURES so the CAP-0085 executable-ref definitions are emitted:
the CONTRACT_EXECUTABLE_EXTERNAL_REF ContractExecutable variant (with the
new ContractExecutableExternalRef struct) and the SCV_EXECUTABLE_TAG SCVal
variant.

Regenerates xdr_generated.go, xdr_views_generated.go, gxdr, and the
xdr_commit_generated.txt pin, and extends the hand-written Equals/String
helpers in scval.go to cover the new variants.
@sisuresh

Copy link
Copy Markdown
Contributor Author

Closing this SPIKE draft. Now that the upstream CAP-85 XDR/env changes are merged, this will be superseded by a fresh PR that pins the merged upstream refs.

@sisuresh sisuresh closed this Jul 22, 2026
sisuresh added a commit to sisuresh/go that referenced this pull request Jul 22, 2026
Re-pins stellar-xdr to the merged CAP-0085 commit
8d1c926a5e5d9167d0fc7327b5dad06dc1ec4fd7 (stellar-xdr#308) and enables the
CAP_0085_EXECUTABLE_REF feature alongside CAP_0083 in the Makefile XDR_FEATURES
list. Regenerates gxdr/ and xdr/ generated Go plus xdr/Stellar-contract.x, and
re-applies the hand-written SCVal/ContractExecutable helpers for the new
SCV_EXECUTABLE_TAG and CONTRACT_EXECUTABLE_EXTERNAL_REF arms.

Supersedes closed stellar#5962 (which pinned the unmerged dmkozh fork).
@sisuresh sisuresh mentioned this pull request Jul 22, 2026
urvisavla pushed a commit that referenced this pull request Jul 22, 2026
Re-pins stellar-xdr to the merged CAP-0085 commit
8d1c926a5e5d9167d0fc7327b5dad06dc1ec4fd7 (stellar-xdr#308) and enables the
CAP_0085_EXECUTABLE_REF feature alongside CAP_0083 in the Makefile XDR_FEATURES
list. Regenerates gxdr/ and xdr/ generated Go plus xdr/Stellar-contract.x, and
re-applies the hand-written SCVal/ContractExecutable helpers for the new
SCV_EXECUTABLE_TAG and CONTRACT_EXECUTABLE_EXTERNAL_REF arms.

Supersedes closed #5962 (which pinned the unmerged dmkozh fork).
Shaptic added a commit that referenced this pull request Aug 3, 2026
* Protocol 28 (CAP-0083) XDR regeneration (#5952)

* xdr: regenerate for Protocol 28 (CAP-0083)

Bump XDR_COMMIT to stellar-xdr@8521b97 and add CAP_0083 to XDR_FEATURES
so the EmptyTxSet StellarValueType variant is emitted. CAP-0071 is
unconditional at this commit, so CAP_0083 is the only feature gate needed.

* Apply suggestion from @sisuresh

* Protocol 28 (CAP-0085) XDR regeneration (#5965)

Re-pins stellar-xdr to the merged CAP-0085 commit
8d1c926a5e5d9167d0fc7327b5dad06dc1ec4fd7 (stellar-xdr#308) and enables the
CAP_0085_EXECUTABLE_REF feature alongside CAP_0083 in the Makefile XDR_FEATURES
list. Regenerates gxdr/ and xdr/ generated Go plus xdr/Stellar-contract.x, and
re-applies the hand-written SCVal/ContractExecutable helpers for the new
SCV_EXECUTABLE_TAG and CONTRACT_EXECUTABLE_EXTERNAL_REF arms.

Supersedes closed #5962 (which pinned the unmerged dmkozh fork).

* Finalize Protocol 28: pin stellar-xdr @ `9c9c1459` (#5968)

* xdr: Protocol 28 GA — pin stellar-xdr 9c9c1459, clear XDR_FEATURES

XDR_COMMIT moves to 9c9c145953e80990d6ff1ae3a6a973a0ce6d0694, the commit
stellar-core 28.0.0 (28.0.0-3486.2332980a1) pins as src/protocol-curr/xdr.
CAP-0083 and CAP-0085 are ungated upstream at this commit, so XDR_FEATURES
drops to empty; the new CAP_0084_MUXED_CONTRACT gate stays disabled (not in
P28). Regenerated diff is cosmetic only (preprocessor comma artifacts gone,
file hashes, commit stamp). CHANGELOG gains the v0.7.0 section.

Train: #5967

* CHANGELOG: backfill 0.4.0, 0.5.0, 0.6.0 from release notes

The root changelog was unmaintained after 0.3.0; entries reconstructed and
categorized from the GitHub release notes for v0.4.0 (P26), v0.5.0, and
v0.6.0 (P27).

---------

Co-authored-by: Siddharth Suresh <[email protected]>
Co-authored-by: Claude Fable 5 <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant