Skip to content

SPIKE: Protocol 28 (CAP-0084)#2

Closed
sisuresh wants to merge 1 commit into
mainfrom
p28-cap-0084
Closed

SPIKE: Protocol 28 (CAP-0084)#2
sisuresh wants to merge 1 commit into
mainfrom
p28-cap-0084

Conversation

@sisuresh

Copy link
Copy Markdown
Owner

Changes

  • Pin stellar-xdr to rs-stellar-xdr#548 @ bd30d420ce6f63ccd9360e371830384cb84d1c04 (carries stellar-xdr#305 .x).
  • Enable cap_0083 + cap_0084; add type_enum; drop curr (per-cap layout has no curr module); import XDR types from crate root in src/lib.rs / tests/tests.rs.
  • Surface new MuxedContract (CAP-0084) + CAP-0083 types in types()/decode/guess/encode; regenerate list_of_types golden test.
  • wasm-opt = false (local binaryen rejects pre-release bulk-memory ops).

Deferred

  • Re-pin to crates.io stellar-xdr = "27.x" + re-enable wasm-opt once #548 releases (auto-greens check-git-rev-deps / cargo-deny / complete); then undraft.
  • Package version stays 26.0.0; bump via bump-version.yml at release.

Expected-red while git-rev pinned: check-git-rev-deps, aggregate complete, cargo-deny (sources). build-and-test is the real signal (green).

Upstream

stellar/stellar-xdr#305 -> stellar/rs-stellar-xdr#548 -> this

Downstream

stellar-laboratory (next in chain)

Pin stellar-xdr to rs-stellar-xdr#548 (bd30d420ce6f63ccd9360e371830384cb84d1c04,
xdr submodule = stellar-xdr#305 head 2769fed744c4ec5a2cf6581addfc1704abfcba7c)
and enable the cap_0083 + cap_0084 features so the JSON codec can decode
muxed-contract addresses (SC_ADDRESS_TYPE_MUXED_CONTRACT = 5 /
MuxedContract { id, contract_id } on the SCAddress union).

This rev uses the per-cap-feature layout (no 'curr' module), so:
- src/lib.rs and tests/tests.rs import XDR types from the crate root.
- type_enum feature added (required for the dynamic Type/TypeVariant the
  codec relies on; previously implied by 'curr').
- wasm-opt disabled to match the pre-release dep (mirrors CAP-71 SPIKE).
- list_of_types golden test regenerated (adds MuxedContract +
  StellarValueProposedValue + Soroban delegate-signature arms).

Local-only SPIKE. Do not push.
@sisuresh

Copy link
Copy Markdown
Owner Author

Downstream: consumed by the Lab CAP-0084 SPIKE — sisuresh/laboratory#2

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