Skip to content

Commit 3aeb505

Browse files
committed
Better errors and return soroban result only from xdr
1 parent 1b18f6c commit 3aeb505

1 file changed

Lines changed: 4 additions & 3 deletions

File tree

src/soroban/invoke.py

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ def invoke(
4949
transaction = soroban_server.send_transaction(tx)
5050

5151
if transaction.status != SendTransactionStatus.PENDING:
52-
raise SdkError("Failed to send transaction")
52+
raise SdkError(f"Failed to send transaction: {transaction.hash}")
5353

5454
i = 0
5555
while i < 10:
@@ -59,12 +59,13 @@ def invoke(
5959
time.sleep(3)
6060
i += 1
6161
else:
62-
raise SdkError("Timeout: could not validate transaction")
62+
raise SdkError(f"Timeout - could not validate transaction: {transaction.hash}")
6363

6464
if transaction_result.status == GetTransactionStatus.SUCCESS:
6565
transaction_meta = xdr.TransactionMeta.from_xdr(
6666
transaction_result.result_meta_xdr
6767
)
68-
return transaction_meta
68+
result = transaction_meta.v3.soroban_meta.return_value
69+
return result
6970
else:
7071
raise SdkError(f"Transaction failed: {transaction_result.result_xdr}")

0 commit comments

Comments
 (0)