Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@
ignore = dirty
[submodule "src/protocol-curr/xdr"]
path = src/protocol-curr/xdr
url = https://github.com/stellar/stellar-xdr
branch = main
url = https://github.com/sisuresh/stellar-xdr-next.git
branch = p28-cap-0084
[submodule "src/rust/soroban/p21"]
path = src/rust/soroban/p21
url = https://github.com/stellar/rs-soroban-env
Expand All @@ -52,3 +52,7 @@
[submodule "lib/gperftools"]
path = lib/gperftools
url = https://github.com/gperftools/gperftools.git
[submodule "src/rust/soroban/p28"]
path = src/rust/soroban/p28
url = https://github.com/sisuresh/rs-soroban-env.git
branch = p28-cap-0084
137 changes: 120 additions & 17 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 4 additions & 0 deletions common.mk
Original file line number Diff line number Diff line change
Expand Up @@ -45,4 +45,8 @@ endif # ENABLE_NEXT_PROTOCOL_VERSION_UNSAFE_FOR_PRODUCTION

if CAP_0083
AM_CPPFLAGS += -DCAP_0083
endif

if CAP_0084_MUXED_CONTRACT
AM_CPPFLAGS += -DCAP_0084_MUXED_CONTRACT
endif
3 changes: 3 additions & 0 deletions configure.ac
Original file line number Diff line number Diff line change
Expand Up @@ -564,6 +564,9 @@ AM_CONDITIONAL(ENABLE_NEXT_PROTOCOL_VERSION_UNSAFE_FOR_PRODUCTION,
AM_CONDITIONAL(CAP_0083,
[test x$enable_next_protocol_version_unsafe_for_production = xyes])

AM_CONDITIONAL(CAP_0084_MUXED_CONTRACT,
[test x$enable_next_protocol_version_unsafe_for_production = xyes])

AC_PATH_PROG(CARGO, cargo)
if test x"$CARGO" = x; then
AC_MSG_ERROR([cannot find cargo, needed for rust code])
Expand Down
8 changes: 7 additions & 1 deletion src/Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -100,6 +100,9 @@ XDR_FEATURE_FLAGS =
if CAP_0083
XDR_FEATURE_FLAGS += -DCAP_0083
endif
if CAP_0084_MUXED_CONTRACT
XDR_FEATURE_FLAGS += -DCAP_0084_MUXED_CONTRACT
endif

SUFFIXES = .x .h .rs
.x.h:
Expand Down Expand Up @@ -202,9 +205,12 @@ SOROBAN_BUILD_DIR=$(abspath $(RUST_BUILD_DIR))/soroban
# ALL_SOROBAN_PROTOCOLS as you see fit).

ALL_SOROBAN_PROTOCOLS=p21 p22 p23 p24 p25 p26 p27
WIP_SOROBAN_PROTOCOL=
WIP_SOROBAN_PROTOCOL=p28

CARGO_XDR_FEATURE_FLAGS =
if CAP_0084_MUXED_CONTRACT
CARGO_XDR_FEATURE_FLAGS += --features cap_0084_muxed_contract
endif

if ENABLE_NEXT_PROTOCOL_VERSION_UNSAFE_FOR_PRODUCTION
ALL_SOROBAN_PROTOCOLS+=$(WIP_SOROBAN_PROTOCOL)
Expand Down
6 changes: 6 additions & 0 deletions src/ledger/LedgerHashUtils.h
Original file line number Diff line number Diff line change
Expand Up @@ -128,6 +128,12 @@ template <> class hash<stellar::SCAddress>
stellar::hashMix(
res, std::hash<stellar::uint256>()(addr.liquidityPoolId()));
break;
#ifdef CAP_0084_MUXED_CONTRACT
case stellar::SC_ADDRESS_TYPE_MUXED_CONTRACT:
stellar::hashMix(
res, stellar::shortHash::xdrComputeHash(addr.muxedContract()));
break;
#endif
}
return res;
}
Expand Down
2 changes: 1 addition & 1 deletion src/protocol-curr/xdr
Submodule xdr updated 2 files
+16 −0 Stellar-contract.x
+1 −1 Stellar-ledger.x
11 changes: 10 additions & 1 deletion src/rust/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -114,6 +114,13 @@ tracy-client = { version = "=0.17.0", features = [
# Cargo.lock! The unified build will re-resolve transitive dependencies and
# unify them, perturbing the contents of the lockfile.

[dependencies.soroban-env-host-p28]
version = "=27.0.0"
git = "https://github.com/sisuresh/rs-soroban-env"
package = "soroban-env-host"
rev = "8cf4f5e1580b86d65529e6ed4f78b734908c62fa"
optional = true

[dependencies.soroban-env-host-p27]
version = "=26.1.2"
git = "https://github.com/stellar/rs-soroban-env"
Expand Down Expand Up @@ -202,7 +209,9 @@ unified = ["dep:soroban-env-host-p21",
"dep:soroban-env-host-p24",
"dep:soroban-env-host-p25",
"dep:soroban-env-host-p26",
"dep:soroban-env-host-p27"]
"dep:soroban-env-host-p27",
"dep:soroban-env-host-p28",
"soroban-env-host-p28/cap_0084_muxed_contract"]

tracy = ["dep:tracy-client"]

Expand Down
Loading
Loading