From 08c62f4890ef687aa151fc01e0384cad01f15ff9 Mon Sep 17 00:00:00 2001 From: mootz12 Date: Mon, 8 Dec 2025 19:29:07 -0500 Subject: [PATCH 01/13] chore: deprecate fee and rename to --inclusion-fee --- .gitignore | 2 + FULL_HELP_DOCS.md | 561 +++++++++++++----- .../tests/it/integration/tx/general.rs | 2 +- cmd/soroban-cli/src/assembled.rs | 98 ++- .../src/commands/contract/deploy/asset.rs | 11 +- .../src/commands/contract/deploy/wasm.rs | 11 +- .../src/commands/contract/extend.rs | 11 +- .../src/commands/contract/invoke.rs | 19 +- .../src/commands/contract/restore.rs | 11 +- .../src/commands/contract/upload.rs | 9 +- cmd/soroban-cli/src/commands/tx/simulate.rs | 2 +- cmd/soroban-cli/src/fee.rs | 39 +- cookbook/tx-op-add.mdx | 4 +- 13 files changed, 576 insertions(+), 204 deletions(-) diff --git a/.gitignore b/.gitignore index 578b28adf6..1d8ee2e41a 100644 --- a/.gitignore +++ b/.gitignore @@ -10,3 +10,5 @@ test_snapshots local.sh .stellar .zed +node_modules/ +.DS_Store \ No newline at end of file diff --git a/FULL_HELP_DOCS.md b/FULL_HELP_DOCS.md index edc3987014..4b4cea4c78 100644 --- a/FULL_HELP_DOCS.md +++ b/FULL_HELP_DOCS.md @@ -160,13 +160,18 @@ Deploy builtin Soroban Asset Contract - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout ## `stellar contract alias` @@ -444,13 +449,18 @@ If no keys are specified the contract itself is extended. - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout ## `stellar contract deploy` @@ -490,13 +500,18 @@ Deploy a wasm contract - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout ## `stellar contract fetch` @@ -811,13 +826,18 @@ Install a WASM file to the ledger without creating a contract instance - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout ## `stellar contract install` @@ -849,13 +869,18 @@ Install a WASM file to the ledger without creating a contract instance - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout ## `stellar contract invoke` @@ -901,13 +926,18 @@ stellar contract invoke ... -- --help - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout ## `stellar contract optimize` @@ -1005,13 +1035,18 @@ If no keys are specificed the contract itself is restored. - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout ## `stellar doctor` @@ -1811,13 +1846,18 @@ Transfer XLM balance to another account and remove source account ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -1846,13 +1886,18 @@ Begin sponsoring future reserves for another account ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -1881,13 +1926,18 @@ Bump sequence number to invalidate older transactions ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -1919,13 +1969,18 @@ Create, update, or delete a trustline ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -1954,13 +2009,18 @@ Claim a claimable balance by its balance ID ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -1991,13 +2051,18 @@ Clawback an asset from an account ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2026,13 +2091,18 @@ Clawback a claimable balance by its balance ID ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2064,13 +2134,18 @@ Create and fund a new account ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2107,13 +2182,18 @@ Create a claimable balance that can be claimed by specified accounts ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2145,13 +2225,18 @@ Create a passive sell offer on the Stellar DEX ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2179,13 +2264,18 @@ End sponsoring future reserves ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2223,13 +2313,18 @@ Deposit assets into a liquidity pool ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2261,13 +2356,18 @@ Withdraw assets from a liquidity pool ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2302,13 +2402,18 @@ Create, update, or delete a buy offer ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2338,13 +2443,18 @@ Set, modify, or delete account data entries ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2379,13 +2489,18 @@ Create, update, or delete a sell offer ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2419,13 +2534,18 @@ Send a payment with a different asset using path finding, specifying the send am ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2459,13 +2579,18 @@ Send a payment with a different asset using path finding, specifying the receive ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2499,13 +2624,18 @@ Send asset to destination account ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2540,13 +2670,18 @@ Revoke sponsorship of a ledger entry or signer ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2590,13 +2725,18 @@ Set account options like flags, signers, and home domain ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2632,13 +2772,18 @@ Configure authorization and trustline flags for an asset ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2715,13 +2860,18 @@ Transfer XLM balance to another account and remove source account ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2755,13 +2905,18 @@ Begin sponsoring future reserves for another account ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2795,13 +2950,18 @@ Bump sequence number to invalidate older transactions ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2838,13 +2998,18 @@ Create, update, or delete a trustline ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2878,13 +3043,18 @@ Claim a claimable balance by its balance ID ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2920,13 +3090,18 @@ Clawback an asset from an account ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -2960,13 +3135,18 @@ Clawback a claimable balance by its balance ID ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3003,13 +3183,18 @@ Create and fund a new account ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3051,13 +3236,18 @@ Create a claimable balance that can be claimed by specified accounts ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3094,13 +3284,18 @@ Create a passive sell offer on the Stellar DEX ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3133,13 +3328,18 @@ End sponsoring future reserves ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3182,13 +3382,18 @@ Deposit assets into a liquidity pool ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3225,13 +3430,18 @@ Withdraw assets from a liquidity pool ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3271,13 +3481,18 @@ Create, update, or delete a buy offer ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3312,13 +3527,18 @@ Set, modify, or delete account data entries ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3358,13 +3578,18 @@ Create, update, or delete a sell offer ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3403,13 +3628,18 @@ Send a payment with a different asset using path finding, specifying the receive ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3448,13 +3678,18 @@ Send a payment with a different asset using path finding, specifying the send am ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3493,13 +3728,18 @@ Send asset to destination account ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3539,13 +3779,18 @@ Revoke sponsorship of a ledger entry or signer ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3594,13 +3839,18 @@ Set account options like flags, signers, and home domain ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times @@ -3641,13 +3891,18 @@ Configure authorization and trustline flags for an asset ###### **Options (RPC):** -- `--fee ` — fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + + Default value: `100` + +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm Default value: `100` +- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee - `--cost` — Output the cost execution to stderr -- `--instructions ` — Number of instructions to simulate -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation +- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times diff --git a/cmd/crates/soroban-test/tests/it/integration/tx/general.rs b/cmd/crates/soroban-test/tests/it/integration/tx/general.rs index 10d251a86d..3e73d2286f 100644 --- a/cmd/crates/soroban-test/tests/it/integration/tx/general.rs +++ b/cmd/crates/soroban-test/tests/it/integration/tx/general.rs @@ -30,7 +30,7 @@ async fn simulate() { .assert() .success() .stdout_as_str(); - let assembled = simulate_and_assemble_transaction(&sandbox.client(), &tx, None) + let assembled = simulate_and_assemble_transaction(&sandbox.client(), &tx, None, None) .await .unwrap(); let txn_env: TransactionEnvelope = assembled.transaction().clone().into(); diff --git a/cmd/soroban-cli/src/assembled.rs b/cmd/soroban-cli/src/assembled.rs index b5a5cb5219..06d4e48ff3 100644 --- a/cmd/soroban-cli/src/assembled.rs +++ b/cmd/soroban-cli/src/assembled.rs @@ -17,6 +17,7 @@ pub async fn simulate_and_assemble_transaction( client: &soroban_rpc::Client, tx: &Transaction, resource_config: Option, + resource_fee: Option, ) -> Result { let envelope = TransactionEnvelope::Tx(TransactionV1Envelope { tx: tx.clone(), @@ -37,7 +38,7 @@ pub async fn simulate_and_assemble_transaction( crate::log::event::all(&sim_res.events()?); Err(Error::TransactionSimulationFailed(e.clone())) } else { - Ok(Assembled::new(tx, sim_res)?) + Ok(Assembled::new(tx, sim_res, resource_fee)?) } } @@ -54,13 +55,18 @@ impl Assembled { /// # Arguments /// /// * `txn` - The original transaction. - /// * `client` - The client used for simulation and submission. + /// * `sim_res` - The simulation response. + /// * `resource_fee` - Optional resource fee for the transaction. Will override the simulated resource fee if provided. /// /// # Errors /// /// Returns an error if simulation fails or if assembling the transaction fails. - pub fn new(txn: &Transaction, sim_res: SimulateTransactionResponse) -> Result { - let txn = assemble(txn, &sim_res)?; + pub fn new( + txn: &Transaction, + sim_res: SimulateTransactionResponse, + resource_fee: Option, + ) -> Result { + let txn = assemble(txn, &sim_res, resource_fee)?; Ok(Self { txn, sim_res }) } @@ -173,6 +179,7 @@ impl Assembled { read_write.is_empty() } + // TODO: Remove once `--instructions` is fully removed #[must_use] pub fn set_max_instructions(mut self, instructions: u32) -> Self { if let TransactionExt::V1(SorobanTransactionData { @@ -198,6 +205,7 @@ impl Assembled { fn assemble( raw: &Transaction, simulation: &SimulateTransactionResponse, + resource_fee: Option, ) -> Result { let mut tx = raw.clone(); @@ -211,6 +219,15 @@ fn assemble( }); } + let min_resource_fee = if let Some(rf) = resource_fee { + tracing::trace!( + "setting resource fee to {rf} from {}", + simulation.min_resource_fee + ); + rf + } else { + simulation.min_resource_fee + }; let transaction_data = simulation.transaction_data()?; let mut op = tx.operations[0].clone(); @@ -241,12 +258,11 @@ fn assemble( } // Update transaction fees to meet the minimum resource fees. - let classic_tx_fee: u64 = DEFAULT_TRANSACTION_FEES.into(); - // Choose larger of existing fee or inclusion + resource fee. + let min_tx_fee: u64 = DEFAULT_TRANSACTION_FEES.into(); tx.fee = tx.fee.max( - u32::try_from(classic_tx_fee + simulation.min_resource_fee) - .map_err(|_| Error::LargeFee(simulation.min_resource_fee + classic_tx_fee))?, + u32::try_from(min_tx_fee + min_resource_fee) + .map_err(|_| Error::LargeFee(min_tx_fee + min_resource_fee))?, ); tx.operations = vec![op].try_into()?; @@ -391,7 +407,7 @@ mod tests { fn test_assemble_transaction_updates_tx_data_from_simulation_response() { let sim = simulation_response(); let txn = single_contract_fn_transaction(); - let Ok(result) = assemble(&txn, &sim) else { + let Ok(result) = assemble(&txn, &sim, None) else { panic!("assemble failed"); }; @@ -407,7 +423,7 @@ mod tests { fn test_assemble_transaction_adds_the_auth_to_the_host_function() { let sim = simulation_response(); let txn = single_contract_fn_transaction(); - let Ok(result) = assemble(&txn, &sim) else { + let Ok(result) = assemble(&txn, &sim, None) else { panic!("assemble failed"); }; @@ -471,6 +487,7 @@ mod tests { latest_ledger: 3, ..Default::default() }, + None, ); match result { @@ -491,6 +508,7 @@ mod tests { latest_ledger: 3, ..Default::default() }, + None, ); match result { @@ -520,7 +538,7 @@ mod tests { // 1: wiggle room math overflows but result fits response.min_resource_fee = (u32::MAX - 100).into(); - match assemble(&txn, &response) { + match assemble(&txn, &response, None) { Ok(asstxn) => { let expected = u32::MAX; assert_eq!(asstxn.fee, expected); @@ -531,7 +549,63 @@ mod tests { // 2: combo overflows, should throw response.min_resource_fee = (u32::MAX - 99).into(); - match assemble(&txn, &response) { + match assemble(&txn, &response, None) { + Err(Error::LargeFee(fee)) => { + let expected = u64::from(u32::MAX) + 1; + assert_eq!(expected, fee, "expected {expected} != {fee} actual"); + } + r => panic!("expected LargeFee error, got: {r:#?}"), + } + } + + #[test] + fn test_assemble_transaction_with_resource_fee() { + let sim = simulation_response(); + let txn = single_contract_fn_transaction(); + let resource_fee = 12345u64; + let Ok(result) = assemble(&txn, &sim, Some(resource_fee)) else { + panic!("assemble failed"); + }; + + // validate it auto updated the tx fees from sim response fees + // since it was greater than tx.fee + assert_eq!(12345 + 100, result.fee); + + // validate it updated sorobantransactiondata block in the tx ext + assert_eq!(TransactionExt::V1(transaction_data()), result.ext); + } + + #[test] + fn test_assemble_transaction_with_resource_fee_overflow_behavior() { + // + // Test two separate cases: + // + // 1. Given a near-max (u32::MAX - 100) resource fee make sure the tx + // fee does not overflow after adding the base inclusion fee (100). + // 2. Given a large resource fee that WILL exceed u32::MAX with the + // base inclusion fee, ensure the overflow is caught with an error + // rather than silently ignored. + let txn = single_contract_fn_transaction(); + let response = simulation_response(); + + // sanity check so these can be adjusted if the above helper changes + assert_eq!(txn.fee, 100, "modified txn.fee: update the math below"); + + // 1: wiggle room math overflows but result fits + let resource_fee: u64 = (u32::MAX - 100).into(); + + match assemble(&txn, &response, Some(resource_fee)) { + Ok(asstxn) => { + let expected = u32::MAX; + assert_eq!(asstxn.fee, expected); + } + r => panic!("expected success, got: {r:#?}"), + } + + // 2: combo overflows, should throw + let resource_fee: u64 = (u32::MAX - 99).into(); + + match assemble(&txn, &response, Some(resource_fee)) { Err(Error::LargeFee(fee)) => { let expected = u64::from(u32::MAX) + 1; assert_eq!(expected, fee, "expected {expected} != {fee} actual"); diff --git a/cmd/soroban-cli/src/commands/contract/deploy/asset.rs b/cmd/soroban-cli/src/commands/contract/deploy/asset.rs index 9808c30189..346ad51ab5 100644 --- a/cmd/soroban-cli/src/commands/contract/deploy/asset.rs +++ b/cmd/soroban-cli/src/commands/contract/deploy/asset.rs @@ -162,7 +162,7 @@ impl NetworkRunnable for Cmd { asset, &contract_id, sequence + 1, - self.fee.fee, + self.fee.inclusion_fee(), network_passphrase, source_account, )?; @@ -171,8 +171,13 @@ impl NetworkRunnable for Cmd { return Ok(TxnResult::Txn(Box::new(tx))); } - let assembled = - simulate_and_assemble_transaction(&client, &tx, self.fee.resource_config()).await?; + let assembled = simulate_and_assemble_transaction( + &client, + &tx, + self.fee.resource_config(), + self.fee.resource_fee, + ) + .await?; let assembled = self.fee.apply_to_assembled_txn(assembled); let txn = assembled.transaction().clone(); diff --git a/cmd/soroban-cli/src/commands/contract/deploy/wasm.rs b/cmd/soroban-cli/src/commands/contract/deploy/wasm.rs index 08195def5c..ba33c233ef 100644 --- a/cmd/soroban-cli/src/commands/contract/deploy/wasm.rs +++ b/cmd/soroban-cli/src/commands/contract/deploy/wasm.rs @@ -297,7 +297,7 @@ impl NetworkRunnable for Cmd { let txn = Box::new(build_create_contract_tx( wasm_hash, sequence + 1, - self.fee.fee, + self.fee.inclusion_fee(), source_account, contract_id_preimage, constructor_params.as_ref(), @@ -310,8 +310,13 @@ impl NetworkRunnable for Cmd { print.infoln("Simulating deploy transaction…"); - let assembled = - simulate_and_assemble_transaction(&client, &txn, self.fee.resource_config()).await?; + let assembled = simulate_and_assemble_transaction( + &client, + &txn, + self.fee.resource_config(), + self.fee.resource_fee, + ) + .await?; let assembled = self.fee.apply_to_assembled_txn(assembled); let txn = Box::new(assembled.transaction().clone()); diff --git a/cmd/soroban-cli/src/commands/contract/extend.rs b/cmd/soroban-cli/src/commands/contract/extend.rs index 2eb6a6dd66..d1e500e970 100644 --- a/cmd/soroban-cli/src/commands/contract/extend.rs +++ b/cmd/soroban-cli/src/commands/contract/extend.rs @@ -210,7 +210,7 @@ impl NetworkRunnable for Cmd { let tx = Box::new(Transaction { source_account, - fee: self.fee.fee, + fee: self.fee.inclusion_fee(), seq_num: SequenceNumber(sequence + 1), cond: Preconditions::None, memo: Memo::None, @@ -239,8 +239,13 @@ impl NetworkRunnable for Cmd { if self.fee.build_only { return Ok(TxnResult::Txn(tx)); } - let assembled = - simulate_and_assemble_transaction(&client, &tx, self.fee.resource_config()).await?; + let assembled = simulate_and_assemble_transaction( + &client, + &tx, + self.fee.resource_config(), + self.fee.resource_fee, + ) + .await?; let tx = assembled.transaction().clone(); let res = client diff --git a/cmd/soroban-cli/src/commands/contract/invoke.rs b/cmd/soroban-cli/src/commands/contract/invoke.rs index 3bef33635a..5e0e95e3b5 100644 --- a/cmd/soroban-cli/src/commands/contract/invoke.rs +++ b/cmd/soroban-cli/src/commands/contract/invoke.rs @@ -238,7 +238,13 @@ impl Cmd { self.fee.fee, account_id, )?; - Ok(simulate_and_assemble_transaction(rpc_client, &tx, self.fee.resource_config()).await?) + Ok(simulate_and_assemble_transaction( + rpc_client, + &tx, + self.fee.resource_config(), + self.fee.resource_fee, + ) + .await?) } } @@ -333,7 +339,7 @@ impl NetworkRunnable for Cmd { let tx = Box::new(build_invoke_contract_tx( host_function_params.clone(), sequence + 1, - self.fee.fee, + self.fee.inclusion_fee(), account_id, )?); @@ -341,8 +347,13 @@ impl NetworkRunnable for Cmd { return Ok(TxnResult::Txn(tx)); } - let txn = - simulate_and_assemble_transaction(&client, &tx, self.fee.resource_config()).await?; + let txn = simulate_and_assemble_transaction( + &client, + &tx, + self.fee.resource_config(), + self.fee.resource_fee, + ) + .await?; let assembled = self.fee.apply_to_assembled_txn(txn); let mut txn = Box::new(assembled.transaction().clone()); let sim_res = assembled.sim_response(); diff --git a/cmd/soroban-cli/src/commands/contract/restore.rs b/cmd/soroban-cli/src/commands/contract/restore.rs index 9c3e9c7a6a..d768dcefbd 100644 --- a/cmd/soroban-cli/src/commands/contract/restore.rs +++ b/cmd/soroban-cli/src/commands/contract/restore.rs @@ -178,7 +178,7 @@ impl NetworkRunnable for Cmd { let tx = Box::new(Transaction { source_account, - fee: self.fee.fee, + fee: self.fee.inclusion_fee(), seq_num: SequenceNumber(sequence + 1), cond: Preconditions::None, memo: Memo::None, @@ -206,8 +206,13 @@ impl NetworkRunnable for Cmd { if self.fee.build_only { return Ok(TxnResult::Txn(tx)); } - let assembled = - simulate_and_assemble_transaction(&client, &tx, self.fee.resource_config()).await?; + let assembled = simulate_and_assemble_transaction( + &client, + &tx, + self.fee.resource_config(), + self.fee.resource_fee, + ) + .await?; let tx = assembled.transaction().clone(); let res = client diff --git a/cmd/soroban-cli/src/commands/contract/upload.rs b/cmd/soroban-cli/src/commands/contract/upload.rs index fc9fc64045..1be2213805 100644 --- a/cmd/soroban-cli/src/commands/contract/upload.rs +++ b/cmd/soroban-cli/src/commands/contract/upload.rs @@ -168,8 +168,12 @@ impl NetworkRunnable for Cmd { .await?; let sequence: i64 = account_details.seq_num.into(); - let (tx_without_preflight, hash) = - build_install_contract_code_tx(&contract, sequence + 1, self.fee.fee, &source_account)?; + let (tx_without_preflight, hash) = build_install_contract_code_tx( + &contract, + sequence + 1, + self.fee.inclusion_fee(), + &source_account, + )?; if self.fee.build_only { return Ok(TxnResult::Txn(Box::new(tx_without_preflight))); @@ -214,6 +218,7 @@ impl NetworkRunnable for Cmd { &client, &tx_without_preflight, self.fee.resource_config(), + self.fee.resource_fee, ) .await?; let assembled = self.fee.apply_to_assembled_txn(assembled); diff --git a/cmd/soroban-cli/src/commands/tx/simulate.rs b/cmd/soroban-cli/src/commands/tx/simulate.rs index 7fc1de7833..6ce13b616b 100644 --- a/cmd/soroban-cli/src/commands/tx/simulate.rs +++ b/cmd/soroban-cli/src/commands/tx/simulate.rs @@ -66,7 +66,7 @@ impl NetworkRunnable for Cmd { let resource_config = self .instruction_leeway .map(|instruction_leeway| soroban_rpc::ResourceConfig { instruction_leeway }); - let tx = simulate_and_assemble_transaction(&client, &tx, resource_config).await?; + let tx = simulate_and_assemble_transaction(&client, &tx, resource_config, None).await?; Ok(tx) } } diff --git a/cmd/soroban-cli/src/fee.rs b/cmd/soroban-cli/src/fee.rs index 5ef11e42e4..97cb0cda6a 100644 --- a/cmd/soroban-cli/src/fee.rs +++ b/cmd/soroban-cli/src/fee.rs @@ -7,21 +7,26 @@ use crate::assembled::Assembled; use crate::commands::tx::fetch; use crate::commands::tx::fetch::fee::FeeTable; use crate::commands::HEADING_RPC; -use crate::xdr; #[derive(Debug, clap::Args, Clone)] #[group(skip)] pub struct Args { - /// fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + /// ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm #[arg(long, default_value = "100", env = "STELLAR_FEE", help_heading = HEADING_RPC)] pub fee: u32, + /// Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm + #[arg(long, default_value = "100", env = "STELLAR_INCLUSION_FEE", help_heading = HEADING_RPC)] + pub inclusion_fee: u32, + /// Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee + #[arg(long, env = "STELLAR_RESOURCE_FEE", help_heading = HEADING_RPC)] + pub resource_fee: Option, /// Output the cost execution to stderr #[arg(long = "cost", help_heading = HEADING_RPC)] pub cost: bool, - /// Number of instructions to simulate + /// ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction #[arg(long, help_heading = HEADING_RPC)] pub instructions: Option, - /// Allow this many extra instructions when budgeting resources during transaction simulation + /// Allow this many extra instructions when budgeting resources with transaction simulation #[arg(long, help_heading = HEADING_RPC)] pub instruction_leeway: Option, /// Build the transaction and only write the base64 xdr to stdout @@ -30,11 +35,12 @@ pub struct Args { } impl Args { + // TODO: Remove once `--instructions` is fully removed pub fn apply_to_assembled_txn(&self, txn: Assembled) -> Assembled { if let Some(instructions) = self.instructions { txn.set_max_instructions(instructions) } else { - add_padding_to_instructions(txn) + txn } } @@ -54,25 +60,24 @@ impl Args { Ok(()) } -} -pub fn add_padding_to_instructions(txn: Assembled) -> Assembled { - let xdr::TransactionExt::V1(xdr::SorobanTransactionData { - resources: xdr::SorobanResources { instructions, .. }, - .. - }) = txn.transaction().ext - else { - return txn; - }; - // Start with 150% - let instructions = (instructions.checked_mul(150 / 100)).unwrap_or(instructions); - txn.set_max_instructions(instructions) + // TODO: Use field directly instead of getter once `--fee` is removed + /// Fetch the inclusion fee, prioritizing `inclusion_fee` over `fee` + pub fn inclusion_fee(&self) -> u32 { + if self.inclusion_fee == 100 { + self.fee + } else { + self.inclusion_fee + } + } } impl Default for Args { fn default() -> Self { Self { fee: 100, + inclusion_fee: 100, + resource_fee: None, cost: false, instructions: None, instruction_leeway: None, diff --git a/cookbook/tx-op-add.mdx b/cookbook/tx-op-add.mdx index bfbd7babc0..1d4652ca3b 100644 --- a/cookbook/tx-op-add.mdx +++ b/cookbook/tx-op-add.mdx @@ -26,7 +26,7 @@ ASSET="USDC:$ISSUER_PK" # rather than transferring assets directly. # first the issuer sets the options for being able to clawback and revoke the asset -stellar tx new set-options --fee 1000 --source issuer --set-clawback-enabled --set-revocable --build-only \ +stellar tx new set-options --inclusion-fee 1000 --source issuer --set-clawback-enabled --set-revocable --build-only \ # next the distributor establishes a trustline with the asset. Note that here the distributor the source account for the operation, not the issuer | stellar tx op add change-trust --op-source distributor --line $ASSET \ # then the issuer sends the smallest amount possible to the distributor @@ -41,7 +41,7 @@ stellar tx new set-options --fee 1000 --source issuer --set-clawback-enabled --s # Next is an example of sandwiching an operation. That is giving permission in one operation, preforming the operation, and then removing the permission in a third operation. # Here is an example of minting new assets to the distributor with a sandwich transaction # First authorize the distributor to receive the asset -stellar tx new set-trustline-flags --fee 1000 --build-only --source issuer --asset $ASSET --trustor $distributor_PK --set-authorize \ +stellar tx new set-trustline-flags --inclusion-fee 1000 --build-only --source issuer --asset $ASSET --trustor $distributor_PK --set-authorize \ # Then mint the asset to the distributor | stellar tx op add payment --destination distributor --asset $ASSET --amount 1_000_000_000_000 \ # Finally remove the authorization From 3d8effc5ee8609128bba61450ed92bd07bfc8410 Mon Sep 17 00:00:00 2001 From: mootz12 Date: Tue, 9 Dec 2025 08:55:03 -0500 Subject: [PATCH 02/13] fix: print url during rpc_client creation errors --- cmd/soroban-cli/src/config/network.rs | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/cmd/soroban-cli/src/config/network.rs b/cmd/soroban-cli/src/config/network.rs index 14a674930e..014dac3ce6 100644 --- a/cmd/soroban-cli/src/config/network.rs +++ b/cmd/soroban-cli/src/config/network.rs @@ -233,7 +233,14 @@ impl Network { .try_into() .map_err(|_| Error::InvalidHeader)?; - Ok(rpc::Client::new_with_headers(&self.rpc_url, header_map)?) + Ok( + rpc::Client::new_with_headers(&self.rpc_url, header_map).map_err(|e| match e { + rpc::Error::InvalidRpcUrl(..) | rpc::Error::InvalidRpcUrlFromUriParts(..) => { + Error::InvalidUrl(self.rpc_url.clone()) + } + other => Error::Rpc(other), + })?, + ) } } @@ -465,6 +472,22 @@ mod tests { ); } + #[tokio::test] + async fn test_rpc_client_returns_err_with_bad_rpc_url() { + let network = Network { + rpc_url: "Bring Your Own: http://localhost:8000".to_string(), + network_passphrase: passphrase::LOCAL.to_string(), + rpc_headers: [].to_vec(), + }; + + let result = network.rpc_client(); + assert!(result.is_err()); + assert_eq!( + result.unwrap_err().to_string(), + format!("Invalid URL Bring Your Own: http://localhost:8000") + ); + } + #[tokio::test] async fn test_default_to_testnet_when_no_network_specified() { use super::super::locator; From 4217c5d423843d065bf431b65499737985002f2a Mon Sep 17 00:00:00 2001 From: mootz12 Date: Wed, 10 Dec 2025 10:58:58 -0500 Subject: [PATCH 03/13] feat: add fees command to persist inclusion fee settings --- FULL_HELP_DOCS.md | 988 +++++------------- cmd/crates/soroban-test/src/lib.rs | 2 + cmd/crates/soroban-test/tests/it/config.rs | 113 ++ .../soroban-test/tests/it/integration.rs | 1 + .../tests/it/integration/fee_args.rs | 95 ++ .../tests/it/integration/fee_stats.rs | 6 +- cmd/soroban-cli/src/cli.rs | 3 + .../src/commands/contract/deploy/asset.rs | 19 +- .../src/commands/contract/deploy/wasm.rs | 35 +- .../src/commands/contract/extend.rs | 19 +- .../src/commands/contract/invoke.rs | 37 +- .../src/commands/contract/restore.rs | 21 +- .../src/commands/contract/upload.rs | 22 +- cmd/soroban-cli/src/commands/fees/default.rs | 129 +++ cmd/soroban-cli/src/commands/fees/mod.rs | 32 + cmd/soroban-cli/src/commands/fees/stats.rs | 57 + cmd/soroban-cli/src/commands/keys/default.rs | 8 +- cmd/soroban-cli/src/commands/mod.rs | 13 +- .../src/commands/network/default.rs | 8 +- cmd/soroban-cli/src/commands/tx/args.rs | 11 +- cmd/soroban-cli/src/config/locator.rs | 4 + cmd/soroban-cli/src/config/mod.rs | 28 +- cmd/soroban-cli/src/config/network.rs | 14 +- cmd/soroban-cli/src/lib.rs | 2 +- .../src/{fee.rs => soroban_data.rs} | 41 +- 25 files changed, 883 insertions(+), 825 deletions(-) create mode 100644 cmd/crates/soroban-test/tests/it/integration/fee_args.rs create mode 100644 cmd/soroban-cli/src/commands/fees/default.rs create mode 100644 cmd/soroban-cli/src/commands/fees/mod.rs create mode 100644 cmd/soroban-cli/src/commands/fees/stats.rs rename cmd/soroban-cli/src/{fee.rs => soroban_data.rs} (59%) diff --git a/FULL_HELP_DOCS.md b/FULL_HELP_DOCS.md index 4b4cea4c78..f1c0fb6db5 100644 --- a/FULL_HELP_DOCS.md +++ b/FULL_HELP_DOCS.md @@ -49,7 +49,7 @@ Anything after the `--` double dash (the "slop") is parsed as arguments to the c - `keys` — Create and manage identities including keys and addresses - `network` — Configure connection to networks - `container` — Start local networks in containers -- `config` — Manage cli configuration +- `config` — Manage CLI configuration - `snapshot` — Download a snapshot of a ledger from an archive - `tx` — Sign, Simulate, and Send transactions - `xdr` — Decode and encode XDR @@ -58,7 +58,8 @@ Anything after the `--` double dash (the "slop") is parsed as arguments to the c - `version` — Print version information - `plugin` — The subcommand for CLI plugins - `ledger` — Fetch ledger information -- `fee-stats` — Fetch network feestats +- `fee-stats` — ⚠️ Deprecated, use `fees stats` instead. Fetch network feestats +- `fees` — Fetch network feestats and configure CLI fee settings ###### **Options:** @@ -142,12 +143,15 @@ Deploy builtin Soroban Asset Contract ###### **Options:** - `--asset ` — ID of the Stellar classic asset to wrap, e.g. "USDC:G...5" -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided - `--alias ` — The alias that will be used to save the assets's id. Whenever used, `--alias` will always overwrite the existing contract id configuration without asking for confirmation +- `--build-only` — Build the transaction and only write the base64 xdr to stdout ###### **Options (Global):** @@ -160,19 +164,10 @@ Deploy builtin Soroban Asset Contract - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr - `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout +- `--cost` — Output the cost execution to stderr ## `stellar contract alias` @@ -432,11 +427,14 @@ If no keys are specified the contract itself is extended. - `persistent`: Persistent - `temporary`: Temporary -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout ###### **Options (Global):** @@ -449,19 +447,10 @@ If no keys are specified the contract itself is extended. - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr - `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout +- `--cost` — Output the cost execution to stderr ## `stellar contract deploy` @@ -477,16 +466,20 @@ Deploy a wasm contract - `--wasm ` — WASM file to deploy - `--wasm-hash ` — Hash of the already installed/deployed WASM file -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `--salt ` — Custom salt 32-byte salt for the token id +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided - `-i`, `--ignore-checks` — Whether to ignore safety checks when deploying contracts Default value: `false` - `--alias ` — The alias that will be used to save the contract's id. Whenever used, `--alias` will always overwrite the existing contract id configuration without asking for confirmation +- `--build-only` — Build the transaction and only write the base64 xdr to stdout ###### **Options (Global):** @@ -495,24 +488,14 @@ Deploy a wasm contract ###### **Options (RPC):** -- `--salt ` — Custom salt 32-byte salt for the token id - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr - `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout +- `--cost` — Output the cost execution to stderr ## `stellar contract fetch` @@ -580,11 +563,13 @@ Deploy normal Wasm Contract ###### **Options:** - `--salt ` — ID of the Soroban contract -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided ###### **Options (Global):** @@ -805,16 +790,20 @@ Install a WASM file to the ledger without creating a contract instance ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided - `--wasm ` — Path to wasm binary - `-i`, `--ignore-checks` — Whether to ignore safety checks when deploying contracts Default value: `false` +- `--build-only` — Build the transaction and only write the base64 xdr to stdout + ###### **Options (Global):** - `--global` — ⚠️ Deprecated: global config is always on @@ -826,19 +815,10 @@ Install a WASM file to the ledger without creating a contract instance - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr - `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout +- `--cost` — Output the cost execution to stderr ## `stellar contract install` @@ -848,16 +828,20 @@ Install a WASM file to the ledger without creating a contract instance ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided - `--wasm ` — Path to wasm binary - `-i`, `--ignore-checks` — Whether to ignore safety checks when deploying contracts Default value: `false` +- `--build-only` — Build the transaction and only write the base64 xdr to stdout + ###### **Options (Global):** - `--global` — ⚠️ Deprecated: global config is always on @@ -869,19 +853,10 @@ Install a WASM file to the ledger without creating a contract instance - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr - `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout +- `--cost` — Output the cost execution to stderr ## `stellar contract invoke` @@ -901,11 +876,13 @@ stellar contract invoke ... -- --help - `--id ` — Contract ID to invoke - `--is-view` — ⚠️ Deprecated, use `--send=no`. View the result simulating and do not sign and submit transaction -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided - `--send ` — Whether or not to send a transaction Default value: `default` @@ -915,6 +892,8 @@ stellar contract invoke ... -- --help - `no`: Do not send transaction, return simulation result - `yes`: Always send transaction +- `--build-only` — Build the transaction and only write the base64 xdr to stdout + ###### **Options (Global):** - `--global` — ⚠️ Deprecated: global config is always on @@ -926,19 +905,10 @@ stellar contract invoke ... -- --help - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr - `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout +- `--cost` — Output the cost execution to stderr ## `stellar contract optimize` @@ -1018,11 +988,14 @@ If no keys are specificed the contract itself is restored. - `--ledgers-to-extend ` — Number of ledgers to extend the entry - `--ttl-ledger-only` — Only print the new Time To Live ledger -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout ###### **Options (Global):** @@ -1035,19 +1008,10 @@ If no keys are specificed the contract itself is restored. - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr - `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout +- `--cost` — Output the cost execution to stderr ## `stellar doctor` @@ -1584,7 +1548,7 @@ Stop a network container started with `stellar container start` ## `stellar config` -Manage cli configuration +Manage CLI configuration **Usage:** `stellar config ` @@ -1832,11 +1796,14 @@ Transfer XLM balance to another account and remove source account ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--account ` — Muxed Account to merge with, e.g. `GBX...`, 'MBX...' ###### **Options (Global):** @@ -1846,19 +1813,6 @@ Transfer XLM balance to another account and remove source account ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -1872,11 +1826,14 @@ Begin sponsoring future reserves for another account ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--sponsored-id ` — Account that will be sponsored ###### **Options (Global):** @@ -1886,19 +1843,6 @@ Begin sponsoring future reserves for another account ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -1912,11 +1856,14 @@ Bump sequence number to invalidate older transactions ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--bump-to ` — Sequence number to bump to ###### **Options (Global):** @@ -1926,19 +1873,6 @@ Bump sequence number to invalidate older transactions ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -1952,11 +1886,14 @@ Create, update, or delete a trustline ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--line ` - `--limit ` — Limit for the trust line, 0 to remove the trust line @@ -1969,19 +1906,6 @@ Create, update, or delete a trustline ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -1995,11 +1919,14 @@ Claim a claimable balance by its balance ID ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--balance-id ` — Balance ID of the claimable balance to claim (64-character hex string) ###### **Options (Global):** @@ -2009,19 +1936,6 @@ Claim a claimable balance by its balance ID ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2035,11 +1949,14 @@ Clawback an asset from an account ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--from ` — Account to clawback assets from, e.g. `GBX...` - `--asset ` — Asset to clawback - `--amount ` — Amount of the asset to clawback, in stroops. 1 stroop = 0.0000001 of the asset @@ -2051,19 +1968,6 @@ Clawback an asset from an account ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2077,11 +1981,14 @@ Clawback a claimable balance by its balance ID ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--balance-id ` — Balance ID of the claimable balance to clawback. Accepts multiple formats: - API format with type prefix (72 chars): 000000006f2179b31311fa8064760b48942c8e166702ba0b8fbe7358c4fd570421840461 - Direct hash format (64 chars): 6f2179b31311fa8064760b48942c8e166702ba0b8fbe7358c4fd570421840461 - Address format (base32): BAAMLBZI42AD52HKGIZOU7WFVZM6BPEJCLPL44QU2AT6TY3P57I5QDNYIA ###### **Options (Global):** @@ -2091,19 +1998,6 @@ Clawback a claimable balance by its balance ID ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2117,11 +2011,14 @@ Create and fund a new account ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--destination ` — Account Id to create, e.g. `GBX...` - `--starting-balance ` — Initial balance in stroops of the account, default 1 XLM @@ -2134,19 +2031,6 @@ Create and fund a new account ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2160,11 +2044,14 @@ Create a claimable balance that can be claimed by specified accounts ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--asset ` — Asset to be held in the ClaimableBalanceEntry Default value: `native` @@ -2182,19 +2069,6 @@ Create a claimable balance that can be claimed by specified accounts ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2208,11 +2082,14 @@ Create a passive sell offer on the Stellar DEX ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--selling ` — Asset to sell - `--buying ` — Asset to buy - `--amount ` — Amount of selling asset to offer, in stroops. 1 stroop = 0.0000001 of the asset (e.g. 1 XLM = `10_000_000` stroops) @@ -2225,19 +2102,6 @@ Create a passive sell offer on the Stellar DEX ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2251,11 +2115,14 @@ End sponsoring future reserves ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout ###### **Options (Global):** @@ -2264,19 +2131,6 @@ End sponsoring future reserves ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2290,11 +2144,14 @@ Deposit assets into a liquidity pool ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--liquidity-pool-id ` — Liquidity pool ID to deposit to - `--max-amount-a ` — Maximum amount of the first asset to deposit, in stroops - `--max-amount-b ` — Maximum amount of the second asset to deposit, in stroops @@ -2313,19 +2170,6 @@ Deposit assets into a liquidity pool ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2339,11 +2183,14 @@ Withdraw assets from a liquidity pool ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--liquidity-pool-id ` — Liquidity pool ID to withdraw from - `--amount ` — Amount of pool shares to withdraw, in stroops - `--min-amount-a ` — Minimum amount of the first asset to receive, in stroops @@ -2356,19 +2203,6 @@ Withdraw assets from a liquidity pool ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2382,11 +2216,14 @@ Create, update, or delete a buy offer ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--selling ` — Asset to sell - `--buying ` — Asset to buy - `--amount ` — Amount of buying asset to purchase, in stroops. 1 stroop = 0.0000001 of the asset (e.g. 1 XLM = `10_000_000` stroops). Use `0` to remove the offer @@ -2402,19 +2239,6 @@ Create, update, or delete a buy offer ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2428,11 +2252,14 @@ Set, modify, or delete account data entries ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--data-name ` — String up to 64 bytes long. If this is a new Name it will add the given name/value pair to the account. If this Name is already present then the associated value will be modified - `--data-value ` — Up to 64 bytes long hex string If not present then the existing Name will be deleted. If present then this value will be set in the `DataEntry` @@ -2443,19 +2270,6 @@ Set, modify, or delete account data entries ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2469,11 +2283,14 @@ Create, update, or delete a sell offer ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--selling ` — Asset to sell - `--buying ` — Asset to buy - `--amount ` — Amount of selling asset to offer, in stroops. 1 stroop = 0.0000001 of the asset (e.g. 1 XLM = `10_000_000` stroops). Use `0` to remove the offer @@ -2489,19 +2306,6 @@ Create, update, or delete a sell offer ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2515,11 +2319,14 @@ Send a payment with a different asset using path finding, specifying the send am ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--send-asset ` — Asset to send (pay with) - `--send-amount ` — Amount of send asset to deduct from sender's account, in stroops. 1 stroop = 0.0000001 of the asset (e.g. 1 XLM = `10_000_000` stroops) - `--destination ` — Account that receives the payment @@ -2534,19 +2341,6 @@ Send a payment with a different asset using path finding, specifying the send am ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2560,11 +2354,14 @@ Send a payment with a different asset using path finding, specifying the receive ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--send-asset ` — Asset to send (pay with) - `--send-max ` — Maximum amount of send asset to deduct from sender's account, in stroops. 1 stroop = 0.0000001 of the asset (e.g. 1 XLM = `10_000_000` stroops) - `--destination ` — Account that receives the payment @@ -2579,19 +2376,6 @@ Send a payment with a different asset using path finding, specifying the receive ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2605,11 +2389,14 @@ Send asset to destination account ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--destination ` — Account to send to, e.g. `GBX...` - `--asset ` — Asset to send, default native, e.i. XLM @@ -2624,19 +2411,6 @@ Send asset to destination account ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2650,11 +2424,14 @@ Revoke sponsorship of a ledger entry or signer ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--account-id ` — Account ID (required for all sponsorship types) - `--asset ` — Asset for trustline sponsorship (format: CODE:ISSUER) - `--data-name ` — Data name for data entry sponsorship @@ -2670,19 +2447,6 @@ Revoke sponsorship of a ledger entry or signer ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2696,11 +2460,14 @@ Set account options like flags, signers, and home domain ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--inflation-dest ` — Account of the inflation destination - `--master-weight ` — A number from 0-255 (inclusive) representing the weight of the master key. If the weight of the master key is updated to 0, it is effectively disabled - `--low-threshold ` — A number from 0-255 (inclusive) representing the threshold this account sets on all operations it performs that have a low threshold. https://developers.stellar.org/docs/learn/encyclopedia/security/signatures-multisig#multisig @@ -2725,19 +2492,6 @@ Set account options like flags, signers, and home domain ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2751,11 +2505,14 @@ Configure authorization and trustline flags for an asset ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--trustor ` — Account to set trustline flags for, e.g. `GBX...`, or alias, or muxed account, `M123...`` - `--asset ` — Asset to set trustline flags for - `--set-authorize` — Signifies complete authorization allowing an account to transact freely with the asset to make and receive payments and place orders @@ -2772,19 +2529,6 @@ Configure authorization and trustline flags for an asset ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2846,11 +2590,14 @@ Transfer XLM balance to another account and remove source account ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--account ` — Muxed Account to merge with, e.g. `GBX...`, 'MBX...' ###### **Options (Global):** @@ -2860,19 +2607,6 @@ Transfer XLM balance to another account and remove source account ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2891,11 +2625,14 @@ Begin sponsoring future reserves for another account ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--sponsored-id ` — Account that will be sponsored ###### **Options (Global):** @@ -2905,19 +2642,6 @@ Begin sponsoring future reserves for another account ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2936,11 +2660,14 @@ Bump sequence number to invalidate older transactions ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--bump-to ` — Sequence number to bump to ###### **Options (Global):** @@ -2950,19 +2677,6 @@ Bump sequence number to invalidate older transactions ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -2981,11 +2695,14 @@ Create, update, or delete a trustline ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--line ` - `--limit ` — Limit for the trust line, 0 to remove the trust line @@ -2998,19 +2715,6 @@ Create, update, or delete a trustline ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3029,11 +2733,14 @@ Claim a claimable balance by its balance ID ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--balance-id ` — Balance ID of the claimable balance to claim (64-character hex string) ###### **Options (Global):** @@ -3043,19 +2750,6 @@ Claim a claimable balance by its balance ID ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3074,11 +2768,14 @@ Clawback an asset from an account ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--from ` — Account to clawback assets from, e.g. `GBX...` - `--asset ` — Asset to clawback - `--amount ` — Amount of the asset to clawback, in stroops. 1 stroop = 0.0000001 of the asset @@ -3090,19 +2787,6 @@ Clawback an asset from an account ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3121,11 +2805,14 @@ Clawback a claimable balance by its balance ID ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--balance-id ` — Balance ID of the claimable balance to clawback. Accepts multiple formats: - API format with type prefix (72 chars): 000000006f2179b31311fa8064760b48942c8e166702ba0b8fbe7358c4fd570421840461 - Direct hash format (64 chars): 6f2179b31311fa8064760b48942c8e166702ba0b8fbe7358c4fd570421840461 - Address format (base32): BAAMLBZI42AD52HKGIZOU7WFVZM6BPEJCLPL44QU2AT6TY3P57I5QDNYIA ###### **Options (Global):** @@ -3135,19 +2822,6 @@ Clawback a claimable balance by its balance ID ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3166,11 +2840,14 @@ Create and fund a new account ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--destination ` — Account Id to create, e.g. `GBX...` - `--starting-balance ` — Initial balance in stroops of the account, default 1 XLM @@ -3183,19 +2860,6 @@ Create and fund a new account ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3214,11 +2878,14 @@ Create a claimable balance that can be claimed by specified accounts ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--asset ` — Asset to be held in the ClaimableBalanceEntry Default value: `native` @@ -3236,19 +2903,6 @@ Create a claimable balance that can be claimed by specified accounts ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3267,11 +2921,14 @@ Create a passive sell offer on the Stellar DEX ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--selling ` — Asset to sell - `--buying ` — Asset to buy - `--amount ` — Amount of selling asset to offer, in stroops. 1 stroop = 0.0000001 of the asset (e.g. 1 XLM = `10_000_000` stroops) @@ -3284,19 +2941,6 @@ Create a passive sell offer on the Stellar DEX ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3315,11 +2959,14 @@ End sponsoring future reserves ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout ###### **Options (Global):** @@ -3328,19 +2975,6 @@ End sponsoring future reserves ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3359,11 +2993,14 @@ Deposit assets into a liquidity pool ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--liquidity-pool-id ` — Liquidity pool ID to deposit to - `--max-amount-a ` — Maximum amount of the first asset to deposit, in stroops - `--max-amount-b ` — Maximum amount of the second asset to deposit, in stroops @@ -3382,19 +3019,6 @@ Deposit assets into a liquidity pool ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3413,11 +3037,14 @@ Withdraw assets from a liquidity pool ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--liquidity-pool-id ` — Liquidity pool ID to withdraw from - `--amount ` — Amount of pool shares to withdraw, in stroops - `--min-amount-a ` — Minimum amount of the first asset to receive, in stroops @@ -3430,19 +3057,6 @@ Withdraw assets from a liquidity pool ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3461,11 +3075,14 @@ Create, update, or delete a buy offer ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--selling ` — Asset to sell - `--buying ` — Asset to buy - `--amount ` — Amount of buying asset to purchase, in stroops. 1 stroop = 0.0000001 of the asset (e.g. 1 XLM = `10_000_000` stroops). Use `0` to remove the offer @@ -3481,19 +3098,6 @@ Create, update, or delete a buy offer ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3512,11 +3116,14 @@ Set, modify, or delete account data entries ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--data-name ` — String up to 64 bytes long. If this is a new Name it will add the given name/value pair to the account. If this Name is already present then the associated value will be modified - `--data-value ` — Up to 64 bytes long hex string If not present then the existing Name will be deleted. If present then this value will be set in the `DataEntry` @@ -3527,19 +3134,6 @@ Set, modify, or delete account data entries ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3558,11 +3152,14 @@ Create, update, or delete a sell offer ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--selling ` — Asset to sell - `--buying ` — Asset to buy - `--amount ` — Amount of selling asset to offer, in stroops. 1 stroop = 0.0000001 of the asset (e.g. 1 XLM = `10_000_000` stroops). Use `0` to remove the offer @@ -3578,19 +3175,6 @@ Create, update, or delete a sell offer ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3609,11 +3193,14 @@ Send a payment with a different asset using path finding, specifying the receive ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--send-asset ` — Asset to send (pay with) - `--send-max ` — Maximum amount of send asset to deduct from sender's account, in stroops. 1 stroop = 0.0000001 of the asset (e.g. 1 XLM = `10_000_000` stroops) - `--destination ` — Account that receives the payment @@ -3628,19 +3215,6 @@ Send a payment with a different asset using path finding, specifying the receive ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3659,11 +3233,14 @@ Send a payment with a different asset using path finding, specifying the send am ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--send-asset ` — Asset to send (pay with) - `--send-amount ` — Amount of send asset to deduct from sender's account, in stroops. 1 stroop = 0.0000001 of the asset (e.g. 1 XLM = `10_000_000` stroops) - `--destination ` — Account that receives the payment @@ -3678,19 +3255,6 @@ Send a payment with a different asset using path finding, specifying the send am ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3709,11 +3273,14 @@ Send asset to destination account ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--destination ` — Account to send to, e.g. `GBX...` - `--asset ` — Asset to send, default native, e.i. XLM @@ -3728,19 +3295,6 @@ Send asset to destination account ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3759,11 +3313,14 @@ Revoke sponsorship of a ledger entry or signer ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--account-id ` — Account ID (required for all sponsorship types) - `--asset ` — Asset for trustline sponsorship (format: CODE:ISSUER) - `--data-name ` — Data name for data entry sponsorship @@ -3779,19 +3336,6 @@ Revoke sponsorship of a ledger entry or signer ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3810,11 +3354,14 @@ Set account options like flags, signers, and home domain ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--inflation-dest ` — Account of the inflation destination - `--master-weight ` — A number from 0-255 (inclusive) representing the weight of the master key. If the weight of the master key is updated to 0, it is effectively disabled - `--low-threshold ` — A number from 0-255 (inclusive) representing the threshold this account sets on all operations it performs that have a low threshold. https://developers.stellar.org/docs/learn/encyclopedia/security/signatures-multisig#multisig @@ -3839,19 +3386,6 @@ Set account options like flags, signers, and home domain ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3870,11 +3404,14 @@ Configure authorization and trustline flags for an asset ###### **Options:** - `--operation-source-account ` [alias: `op-source`] — Source account used for the operation -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided +- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--trustor ` — Account to set trustline flags for, e.g. `GBX...`, or alias, or muxed account, `M123...`` - `--asset ` — Asset to set trustline flags for - `--set-authorize` — Signifies complete authorization allowing an account to transact freely with the asset to make and receive payments and place orders @@ -3891,19 +3428,6 @@ Configure authorization and trustline flags for an asset ###### **Options (RPC):** -- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - - Default value: `100` - -- `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--cost` — Output the cost execution to stderr -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction -- `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation -- `--build-only` — Build the transaction and only write the base64 xdr to stdout - `--rpc-url ` — RPC server endpoint - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server @@ -3972,11 +3496,13 @@ Simulate a transaction envelope from stdin ###### **Options:** -- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail +- `-s`, `--source-account ` [alias: `source`] — Account that where transaction originates from. Alias `source`. Can be an identity (--source alice), a public key (--source GDKW...), a muxed account (--source MDA…), a secret key (--source SC36…), or a seed phrase (--source "kite urban…"). If `--build-only` was NOT provided, this key will also be used to sign the final transaction. In that case, trying to sign with public key will fail - `--sign-with-key ` — Sign with a local key or key saved in OS secure storage. Can be an identity (--sign-with-key alice), a secret key (--sign-with-key SC36…), or a seed phrase (--sign-with-key "kite urban…"). If using seed phrase, `--hd-path` defaults to the `0` path - `--hd-path ` — If using a seed phrase to sign, sets which hierarchical deterministic path to use, e.g. `m/44'/148'/{hd_path}`. Example: `--hd-path 1`. Default: `0` - `--sign-with-lab` — Sign with https://lab.stellar.org - `--sign-with-ledger` — Sign with a ledger wallet +- `--fee ` — ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm +- `--inclusion-fee ` — Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources during transaction simulation ###### **Options (Global):** @@ -4874,7 +4400,7 @@ Get the latest ledger sequence and information from the network ## `stellar fee-stats` -Fetch network feestats +⚠️ Deprecated, use `fees stats` instead. Fetch network feestats **Usage:** `stellar fee-stats [OPTIONS]` @@ -4895,3 +4421,65 @@ Fetch network feestats - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config + +## `stellar fees` + +Fetch network feestats and configure CLI fee settings + +**Usage:** `stellar fees ` + +###### **Subcommands:** + +- `stats` — Fetch the feestats from the network +- `use` — Set the default inclusion fee settings for the CLI + +## `stellar fees stats` + +Fetch the feestats from the network + +**Usage:** `stellar fees stats [OPTIONS]` + +###### **Options:** + +- `--output ` — Format of the output + + Default value: `text` + + Possible values: + - `text`: Text output of network info + - `json`: JSON result of the RPC request + - `json-formatted`: Formatted (multiline) JSON output of the RPC request + +###### **Options (RPC):** + +- `--rpc-url ` — RPC server endpoint +- `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times +- `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server +- `-n`, `--network ` — Name of network to use from config + +## `stellar fees use` + +Set the default inclusion fee settings for the CLI + +**Usage:** `stellar fees use [OPTIONS] <--amount |--fee-metric |--clear>` + +###### **Options:** + +- `--amount ` — Set the default inclusion fee amount, in stroops. 1 stroop = 0.0000001 xlm +- `--fee-metric ` — Set the default inclusion fee based on a metric from the network's fee stats + + Possible values: `max`, `min`, `mode`, `p10`, `p20`, `p30`, `p40`, `p50`, `p60`, `p70`, `p80`, `p90`, `p95`, `p99` + +- `--clear` — Clear the default inclusion fee setting + +###### **Options (Global):** + +- `--global` — ⚠️ Deprecated: global config is always on +- `--config-dir ` — Location of config directory. By default, it uses `$XDG_CONFIG_HOME/stellar` if set, falling back to `~/.config/stellar` otherwise. Contains configuration files, aliases, and other persistent settings + +###### **Options (RPC):** + +- `--rpc-url ` — RPC server endpoint +- `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times +- `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server +- `-n`, `--network ` — Name of network to use from config diff --git a/cmd/crates/soroban-test/src/lib.rs b/cmd/crates/soroban-test/src/lib.rs index b1381be806..19cb64d9c1 100644 --- a/cmd/crates/soroban-test/src/lib.rs +++ b/cmd/crates/soroban-test/src/lib.rs @@ -284,6 +284,8 @@ impl TestEnv { sign_with_lab: false, sign_with_ledger: false, }, + fee: None, + inclusion_fee: None, } } diff --git a/cmd/crates/soroban-test/tests/it/config.rs b/cmd/crates/soroban-test/tests/it/config.rs index acea840aa6..ab05285e4f 100644 --- a/cmd/crates/soroban-test/tests/it/config.rs +++ b/cmd/crates/soroban-test/tests/it/config.rs @@ -251,6 +251,47 @@ fn set_default_identity() { .success(); } +#[test] +fn warns_if_default_identity_will_be_ignored() { + let sandbox = TestEnv::default(); + + sandbox + .new_assert_cmd("keys") + .env( + "SOROBAN_SECRET_KEY", + "SC4ZPYELVR7S7EE7KZDZN3ETFTNQHHLTUL34NUAAWZG5OK2RGJ4V2U3Z", + ) + .arg("add") + .arg("alice") + .assert() + .success(); + + sandbox + .new_assert_cmd("keys") + .env( + "SOROBAN_SECRET_KEY", + "SDIY6AQQ75WMD4W46EYB7O6UYMHOCGQHLAQGQTKHDX4J2DYQCHVCQYFD", + ) + .arg("add") + .arg("bob") + .assert() + .success(); + + sandbox + .new_assert_cmd("keys") + .env("STELLAR_ACCOUNT", "bob") + .arg("use") + .arg("alice") + .assert() + .stderr(predicate::str::contains( + "Environment variable STELLAR_ACCOUNT is set, which will override this default source account.", + )) + .success(); + + let config_contents = fs::read_to_string(sandbox.config_dir().join("config.toml")).unwrap(); + assert!(config_contents.contains("identity = \"alice\"")); +} + #[test] fn set_default_network() { let sandbox = TestEnv::default(); @@ -272,6 +313,78 @@ fn set_default_network() { .success(); } +#[test] +fn warns_if_default_network_will_be_ignored() { + let sandbox = TestEnv::default(); + + sandbox + .new_assert_cmd("network") + .env("STELLAR_NETWORK", "custom_network") + .arg("use") + .arg("testnet") + .assert() + .stderr(predicate::str::contains( + "Environment variable STELLAR_NETWORK is set, which will override this default network.", + )) + .success(); + + let config_contents = fs::read_to_string(sandbox.config_dir().join("config.toml")).unwrap(); + assert!(config_contents.contains("network = \"testnet\"")); +} + +#[test] +fn set_default_inclusion_fee() { + let sandbox = TestEnv::default(); + + sandbox + .new_assert_cmd("fees") + .arg("use") + .args(["--amount", "150"]) + .assert() + .stderr(predicate::str::contains( + "The default inclusion fee is set to `150`", + )) + .success(); + + let config_contents = fs::read_to_string(sandbox.config_dir().join("config.toml")).unwrap(); + assert!(config_contents.contains("inclusion_fee = 150")); +} + +#[test] +fn warns_if_default_inclusion_fee_will_be_ignored() { + let sandbox = TestEnv::default(); + + sandbox + .new_assert_cmd("fees") + .env("STELLAR_INCLUSION_FEE", "200") + .arg("use") + .args(["--amount", "150"]) + .assert() + .stderr(predicate::str::contains( + "Environment variable STELLAR_INCLUSION_FEE is set, which will override this default inclusion fee.", + )) + .success(); + + let config_contents = fs::read_to_string(sandbox.config_dir().join("config.toml")).unwrap(); + assert!(config_contents.contains("inclusion_fee = 150")); +} + +#[test] +fn cannot_set_default_inclusion_fee_below_100() { + let sandbox = TestEnv::default(); + + sandbox + .new_assert_cmd("fees") + .arg("use") + .args(["--amount", "99"]) + .assert() + .stderr(predicate::str::contains( + "Fee amount must be at least 100 stroops, but got 99", + )) + .failure(); + assert!(fs::read_to_string(sandbox.config_dir().join("config.toml")).is_err()); +} + #[test] fn cannot_create_contract_with_test_name() { let sandbox = TestEnv::default(); diff --git a/cmd/crates/soroban-test/tests/it/integration.rs b/cmd/crates/soroban-test/tests/it/integration.rs index aeb9b0c974..2623a23be3 100644 --- a/cmd/crates/soroban-test/tests/it/integration.rs +++ b/cmd/crates/soroban-test/tests/it/integration.rs @@ -4,6 +4,7 @@ mod contract; mod cookbook; mod custom_types; mod dotenv; +mod fee_args; mod fee_stats; mod hello_world; mod init; diff --git a/cmd/crates/soroban-test/tests/it/integration/fee_args.rs b/cmd/crates/soroban-test/tests/it/integration/fee_args.rs new file mode 100644 index 0000000000..a30cfdbd3d --- /dev/null +++ b/cmd/crates/soroban-test/tests/it/integration/fee_args.rs @@ -0,0 +1,95 @@ +use predicates::prelude::predicate; +use soroban_cli::xdr::{self, Limits, ReadXdr}; +use soroban_test::{AssertExt, TestEnv}; + +use super::util::deploy_hello; + +fn get_inclusion_fee_from_xdr(tx_xdr: &str) -> u32 { + let tx = xdr::TransactionEnvelope::from_xdr_base64(tx_xdr, Limits::none()).unwrap(); + match tx { + xdr::TransactionEnvelope::TxV0(te) => te.tx.fee, + xdr::TransactionEnvelope::Tx(te) => te.tx.fee, + xdr::TransactionEnvelope::TxFeeBump(te) => te.tx.fee.try_into().unwrap(), + } +} + +#[tokio::test] +async fn inclusion_fee_arg() { + let sandbox = &TestEnv::new(); + let id = deploy_hello(sandbox).await; + + // Defaults to 100 + let tx_xdr = sandbox + .new_assert_cmd("contract") + .arg("invoke") + .args(["--id", &id.to_string()]) + .arg("--build-only") + .arg("--") + .arg("inc") + .assert() + .success() + .stdout_as_str(); + assert_eq!(get_inclusion_fee_from_xdr(&tx_xdr), 100u32); + + // Update manually to 200 + sandbox + .new_assert_cmd("fees") + .arg("use") + .args(["--amount", "200"]) + .assert() + .stderr(predicate::str::contains( + "The default inclusion fee is set to `200`", + )) + .success(); + + let tx_xdr = sandbox + .new_assert_cmd("contract") + .arg("invoke") + .args(["--id", &id.to_string()]) + .arg("--build-only") + .arg("--") + .arg("inc") + .assert() + .success() + .stdout_as_str(); + assert_eq!(get_inclusion_fee_from_xdr(&tx_xdr), 200u32); + + // Arg overrides config + let tx_xdr = sandbox + .new_assert_cmd("contract") + .arg("invoke") + .args(["--id", &id.to_string()]) + .args(["--inclusion-fee", "300"]) + .arg("--build-only") + .arg("--") + .arg("inc") + .assert() + .success() + .stdout_as_str(); + assert_eq!(get_inclusion_fee_from_xdr(&tx_xdr), 300u32); + + // Update from fee stats (going to be 100 since sandbox) + sandbox + .new_assert_cmd("fees") + .arg("use") + .args(["--fee-metric", "p50"]) + .assert() + .stderr(predicate::str::contains( + "The default inclusion fee is set to `100`", + )) + .success(); + + // Deprecated fee arg ignored if inclusion-fee config exists + let tx_xdr = sandbox + .new_assert_cmd("contract") + .arg("invoke") + .args(["--id", &id.to_string()]) + .args(["--fee", "300"]) + .arg("--build-only") + .arg("--") + .arg("inc") + .assert() + .success() + .stdout_as_str(); + assert_eq!(get_inclusion_fee_from_xdr(&tx_xdr), 100u32); +} diff --git a/cmd/crates/soroban-test/tests/it/integration/fee_stats.rs b/cmd/crates/soroban-test/tests/it/integration/fee_stats.rs index 1ff527ffa7..61d606703b 100644 --- a/cmd/crates/soroban-test/tests/it/integration/fee_stats.rs +++ b/cmd/crates/soroban-test/tests/it/integration/fee_stats.rs @@ -5,7 +5,8 @@ use soroban_test::{AssertExt, TestEnv}; async fn fee_stats_text_output() { let sandbox = &TestEnv::new(); sandbox - .new_assert_cmd("fee-stats") + .new_assert_cmd("fees") + .arg("stats") .arg("--output") .arg("text") .assert() @@ -19,7 +20,8 @@ async fn fee_stats_text_output() { async fn fee_stats_json_output() { let sandbox = &TestEnv::new(); let output = sandbox - .new_assert_cmd("fee-stats") + .new_assert_cmd("fees") + .arg("stats") .arg("--output") .arg("json") .assert() diff --git a/cmd/soroban-cli/src/cli.rs b/cmd/soroban-cli/src/cli.rs index 3ed58a7037..5e079e399a 100644 --- a/cmd/soroban-cli/src/cli.rs +++ b/cmd/soroban-cli/src/cli.rs @@ -102,6 +102,9 @@ fn set_env_from_config() { if let Ok(config) = Config::new() { set_env_value_from_config("STELLAR_ACCOUNT", config.defaults.identity); set_env_value_from_config("STELLAR_NETWORK", config.defaults.network); + if let Some(inclusion_fee) = config.defaults.inclusion_fee { + set_env_value_from_config("STELLAR_INCLUSION_FEE", Some(inclusion_fee.to_string())); + } } } diff --git a/cmd/soroban-cli/src/commands/contract/deploy/asset.rs b/cmd/soroban-cli/src/commands/contract/deploy/asset.rs index 346ad51ab5..6f18b3d7a3 100644 --- a/cmd/soroban-cli/src/commands/contract/deploy/asset.rs +++ b/cmd/soroban-cli/src/commands/contract/deploy/asset.rs @@ -82,13 +82,17 @@ pub struct Cmd { pub config: config::Args, #[command(flatten)] - pub fee: crate::fee::Args, + pub soroban_data: crate::soroban_data::Args, /// The alias that will be used to save the assets's id. /// Whenever used, `--alias` will always overwrite the existing contract id /// configuration without asking for confirmation. #[arg(long, value_parser = clap::builder::ValueParser::new(alias_validator))] pub alias: Option, + + /// Build the transaction and only write the base64 xdr to stdout + #[arg(long)] + pub build_only: bool, } impl Cmd { @@ -162,30 +166,29 @@ impl NetworkRunnable for Cmd { asset, &contract_id, sequence + 1, - self.fee.inclusion_fee(), + config.get_inclusion_fee()?, network_passphrase, source_account, )?; - if self.fee.build_only { + if self.build_only { return Ok(TxnResult::Txn(Box::new(tx))); } let assembled = simulate_and_assemble_transaction( &client, &tx, - self.fee.resource_config(), - self.fee.resource_fee, + self.soroban_data.resource_config(), + self.soroban_data.resource_fee, ) .await?; - let assembled = self.fee.apply_to_assembled_txn(assembled); - + let assembled = self.soroban_data.apply_to_assembled_txn(assembled); let txn = assembled.transaction().clone(); let get_txn_resp = client .send_transaction_polling(&self.config.sign(txn, args.is_some_and(|g| g.quiet)).await?) .await?; - self.fee.print_cost_info(&get_txn_resp)?; + self.soroban_data.print_cost_info(&get_txn_resp)?; if args.is_none_or(|a| !a.no_cache) { data::write(get_txn_resp.clone().try_into()?, &network.rpc_uri()?)?; diff --git a/cmd/soroban-cli/src/commands/contract/deploy/wasm.rs b/cmd/soroban-cli/src/commands/contract/deploy/wasm.rs index ba33c233ef..10daa7e4d9 100644 --- a/cmd/soroban-cli/src/commands/contract/deploy/wasm.rs +++ b/cmd/soroban-cli/src/commands/contract/deploy/wasm.rs @@ -1,4 +1,5 @@ use crate::commands::contract::deploy::utils::alias_validator; +use crate::soroban_data; use std::array::TryFromSliceError; use std::ffi::OsString; use std::fmt::Debug; @@ -21,7 +22,7 @@ use crate::{ contract::{self, arg_parsing, id::wasm::get_contract_id, upload}, global, txn_result::{TxnEnvelopeResult, TxnResult}, - NetworkRunnable, HEADING_RPC, + NetworkRunnable, }, config::{self, data, locator, network}, print::Print, @@ -48,15 +49,10 @@ pub struct Cmd { #[arg(long = "wasm-hash", conflicts_with = "wasm", group = "wasm_src")] pub wasm_hash: Option, /// Custom salt 32-byte salt for the token id - #[arg( - long, - help_heading = HEADING_RPC, - )] + #[arg(long)] pub salt: Option, #[command(flatten)] pub config: config::Args, - #[command(flatten)] - pub fee: crate::fee::Args, #[arg(long, short = 'i', default_value = "false")] /// Whether to ignore safety checks when deploying contracts pub ignore_checks: bool, @@ -65,6 +61,11 @@ pub struct Cmd { /// configuration without asking for confirmation. #[arg(long, value_parser = clap::builder::ValueParser::new(alias_validator))] pub alias: Option, + #[command(flatten)] + pub soroban_data: soroban_data::Args, + /// Build the transaction and only write the base64 xdr to stdout + #[arg(long)] + pub build_only: bool, /// If provided, will be passed to the contract's `__constructor` function with provided arguments for that function as `--arg-name value` #[arg(last = true, id = "CONTRACT_CONSTRUCTOR_ARGS")] pub slop: Vec, @@ -201,15 +202,16 @@ impl NetworkRunnable for Cmd { let print = Print::new(quiet); let config = config.unwrap_or(&self.config); let wasm_hash = if let Some(wasm) = &self.wasm { - let is_build = self.fee.build_only; + let is_build = self.build_only; let hash = if is_build { wasm::Args { wasm: wasm.clone() }.hash()? } else { upload::Cmd { wasm: wasm::Args { wasm: wasm.clone() }, config: config.clone(), - fee: self.fee.clone(), + soroban_data: self.soroban_data.clone(), ignore_checks: self.ignore_checks, + build_only: is_build, } .run_against_rpc_server(global_args, Some(config)) .await? @@ -258,7 +260,7 @@ impl NetworkRunnable for Cmd { let raw_wasm = if let Some(wasm) = self.wasm.as_ref() { wasm::Args { wasm: wasm.clone() }.read()? } else { - if self.fee.build_only { + if self.build_only { return Err(Error::WasmNotProvided); } get_remote_wasm_from_hash(&client, &wasm_hash).await? @@ -297,13 +299,13 @@ impl NetworkRunnable for Cmd { let txn = Box::new(build_create_contract_tx( wasm_hash, sequence + 1, - self.fee.inclusion_fee(), + config.get_inclusion_fee()?, source_account, contract_id_preimage, constructor_params.as_ref(), )?); - if self.fee.build_only { + if self.build_only { print.checkln("Transaction built!"); return Ok(TxnResult::Txn(txn)); } @@ -313,12 +315,11 @@ impl NetworkRunnable for Cmd { let assembled = simulate_and_assemble_transaction( &client, &txn, - self.fee.resource_config(), - self.fee.resource_fee, + self.soroban_data.resource_config(), + self.soroban_data.resource_fee, ) .await?; - let assembled = self.fee.apply_to_assembled_txn(assembled); - + let assembled = self.soroban_data.apply_to_assembled_txn(assembled); let txn = Box::new(assembled.transaction().clone()); print.log_transaction(&txn, &network, true)?; @@ -327,7 +328,7 @@ impl NetworkRunnable for Cmd { let get_txn_resp = client.send_transaction_polling(signed_txn).await?; - self.fee.print_cost_info(&get_txn_resp)?; + self.soroban_data.print_cost_info(&get_txn_resp)?; if global_args.is_none_or(|a| !a.no_cache) { data::write(get_txn_resp.clone().try_into()?, &network.rpc_uri()?)?; diff --git a/cmd/soroban-cli/src/commands/contract/extend.rs b/cmd/soroban-cli/src/commands/contract/extend.rs index d1e500e970..d983421bb2 100644 --- a/cmd/soroban-cli/src/commands/contract/extend.rs +++ b/cmd/soroban-cli/src/commands/contract/extend.rs @@ -3,6 +3,7 @@ use std::{fmt::Debug, num::TryFromIntError, path::Path, str::FromStr}; use crate::{ log::extract_events, print::Print, + soroban_data, xdr::{ ConfigSettingEntry, ConfigSettingId, Error as XdrError, ExtendFootprintTtlOp, ExtensionPoint, LedgerEntry, LedgerEntryChange, LedgerEntryData, LedgerFootprint, @@ -44,7 +45,11 @@ pub struct Cmd { pub config: config::Args, #[command(flatten)] - pub fee: crate::fee::Args, + pub soroban_data: soroban_data::Args, + + /// Build the transaction and only write the base64 xdr to stdout + #[arg(long)] + pub build_only: bool, } impl FromStr for Cmd { @@ -210,7 +215,7 @@ impl NetworkRunnable for Cmd { let tx = Box::new(Transaction { source_account, - fee: self.fee.inclusion_fee(), + fee: config.get_inclusion_fee()?, seq_num: SequenceNumber(sequence + 1), cond: Preconditions::None, memo: Memo::None, @@ -229,21 +234,21 @@ impl NetworkRunnable for Cmd { read_only: keys.clone().try_into()?, read_write: vec![].try_into()?, }, - instructions: self.fee.instructions.unwrap_or_default(), + instructions: self.soroban_data.instructions.unwrap_or_default(), disk_read_bytes: 0, write_bytes: 0, }, resource_fee: 0, }), }); - if self.fee.build_only { + if self.build_only { return Ok(TxnResult::Txn(tx)); } let assembled = simulate_and_assemble_transaction( &client, &tx, - self.fee.resource_config(), - self.fee.resource_fee, + self.soroban_data.resource_config(), + self.soroban_data.resource_fee, ) .await?; @@ -251,7 +256,7 @@ impl NetworkRunnable for Cmd { let res = client .send_transaction_polling(&config.sign(tx, quiet).await?) .await?; - self.fee.print_cost_info(&res)?; + self.soroban_data.print_cost_info(&res)?; if args.is_none_or(|a| !a.no_cache) { data::write(res.clone().try_into()?, &network.rpc_uri()?)?; diff --git a/cmd/soroban-cli/src/commands/contract/invoke.rs b/cmd/soroban-cli/src/commands/contract/invoke.rs index 5e0e95e3b5..8f8188be92 100644 --- a/cmd/soroban-cli/src/commands/contract/invoke.rs +++ b/cmd/soroban-cli/src/commands/contract/invoke.rs @@ -63,11 +63,15 @@ pub struct Cmd { pub config: config::Args, #[command(flatten)] - pub fee: crate::fee::Args, + pub soroban_data: crate::soroban_data::Args, /// Whether or not to send a transaction #[arg(long, value_enum, default_value_t, env = "STELLAR_SEND")] pub send: Send, + + /// Build the transaction and only write the base64 xdr to stdout + #[arg(long)] + pub build_only: bool, } impl FromStr for Cmd { @@ -221,7 +225,8 @@ impl Cmd { }) } - // uses a default account to check if the tx should be sent after the simulation + /// Uses a default account to check if the tx should be sent after the simulation. The transaction + /// should be recreated with the real source account later. async fn simulate( &self, host_function_params: &InvokeContractArgs, @@ -232,17 +237,13 @@ impl Cmd { let AccountId(PublicKey::PublicKeyTypeEd25519(account_id)) = account_details.account_id.clone(); - let tx = build_invoke_contract_tx( - host_function_params.clone(), - sequence + 1, - self.fee.fee, - account_id, - )?; + let tx = + build_invoke_contract_tx(host_function_params.clone(), sequence + 1, 100, account_id)?; Ok(simulate_and_assemble_transaction( rpc_client, &tx, - self.fee.resource_config(), - self.fee.resource_fee, + self.soroban_data.resource_config(), + self.soroban_data.resource_fee, ) .await?) } @@ -293,9 +294,9 @@ impl NetworkRunnable for Cmd { let (function, spec, host_function_params, signers) = params; - // `self.fee.build_only` will be checked again below and the fn will return a TxnResult::Txn + // `self.build_only` will be checked again below and the fn will return a TxnResult::Txn // if the user passed the --build-only flag - let (should_send, cached_simulation) = if self.fee.build_only { + let (should_send, cached_simulation) = if self.build_only { (ShouldSend::Yes, None) } else { let assembled = self @@ -339,22 +340,22 @@ impl NetworkRunnable for Cmd { let tx = Box::new(build_invoke_contract_tx( host_function_params.clone(), sequence + 1, - self.fee.inclusion_fee(), + config.get_inclusion_fee()?, account_id, )?); - if self.fee.build_only { + if self.build_only { return Ok(TxnResult::Txn(tx)); } let txn = simulate_and_assemble_transaction( &client, &tx, - self.fee.resource_config(), - self.fee.resource_fee, + self.soroban_data.resource_config(), + self.soroban_data.resource_fee, ) .await?; - let assembled = self.fee.apply_to_assembled_txn(txn); + let assembled = self.soroban_data.apply_to_assembled_txn(txn); let mut txn = Box::new(assembled.transaction().clone()); let sim_res = assembled.sim_response(); @@ -373,7 +374,7 @@ impl NetworkRunnable for Cmd { .send_transaction_polling(&config.sign(*txn, quiet).await?) .await?; - self.fee.print_cost_info(&res)?; + self.soroban_data.print_cost_info(&res)?; if !no_cache { data::write(res.clone().try_into()?, &network.rpc_uri()?)?; diff --git a/cmd/soroban-cli/src/commands/contract/restore.rs b/cmd/soroban-cli/src/commands/contract/restore.rs index d768dcefbd..bea01a7f3d 100644 --- a/cmd/soroban-cli/src/commands/contract/restore.rs +++ b/cmd/soroban-cli/src/commands/contract/restore.rs @@ -44,7 +44,11 @@ pub struct Cmd { pub config: config::Args, #[command(flatten)] - pub fee: crate::fee::Args, + pub soroban_data: crate::soroban_data::Args, + + /// Build the transaction and only write the base64 xdr to stdout + #[arg(long)] + pub build_only: bool, } impl FromStr for Cmd { @@ -138,8 +142,9 @@ impl Cmd { key: self.key.clone(), ledgers_to_extend, config: self.config.clone(), - fee: self.fee.clone(), + soroban_data: self.soroban_data.clone(), ttl_ledger_only: false, + build_only: self.build_only, } .run(global_args) .await?; @@ -178,7 +183,7 @@ impl NetworkRunnable for Cmd { let tx = Box::new(Transaction { source_account, - fee: self.fee.inclusion_fee(), + fee: config.get_inclusion_fee()?, seq_num: SequenceNumber(sequence + 1), cond: Preconditions::None, memo: Memo::None, @@ -196,21 +201,21 @@ impl NetworkRunnable for Cmd { read_only: vec![].try_into()?, read_write: entry_keys.clone().try_into()?, }, - instructions: self.fee.instructions.unwrap_or_default(), + instructions: self.soroban_data.instructions.unwrap_or_default(), disk_read_bytes: 0, write_bytes: 0, }, resource_fee: 0, }), }); - if self.fee.build_only { + if self.build_only { return Ok(TxnResult::Txn(tx)); } let assembled = simulate_and_assemble_transaction( &client, &tx, - self.fee.resource_config(), - self.fee.resource_fee, + self.soroban_data.resource_config(), + self.soroban_data.resource_fee, ) .await?; @@ -218,7 +223,7 @@ impl NetworkRunnable for Cmd { let res = client .send_transaction_polling(&config.sign(tx, quiet).await?) .await?; - self.fee.print_cost_info(&res)?; + self.soroban_data.print_cost_info(&res)?; if args.is_none_or(|a| !a.no_cache) { data::write(res.clone().try_into()?, &network.rpc_uri()?)?; } diff --git a/cmd/soroban-cli/src/commands/contract/upload.rs b/cmd/soroban-cli/src/commands/contract/upload.rs index 1be2213805..4506b5bcee 100644 --- a/cmd/soroban-cli/src/commands/contract/upload.rs +++ b/cmd/soroban-cli/src/commands/contract/upload.rs @@ -36,7 +36,7 @@ pub struct Cmd { pub config: config::Args, #[command(flatten)] - pub fee: crate::fee::Args, + pub soroban_data: crate::soroban_data::Args, #[command(flatten)] pub wasm: wasm::Args, @@ -44,6 +44,10 @@ pub struct Cmd { #[arg(long, short = 'i', default_value = "false")] /// Whether to ignore safety checks when deploying contracts pub ignore_checks: bool, + + /// Build the transaction and only write the base64 xdr to stdout + #[arg(long)] + pub build_only: bool, } #[derive(thiserror::Error, Debug)] @@ -171,11 +175,11 @@ impl NetworkRunnable for Cmd { let (tx_without_preflight, hash) = build_install_contract_code_tx( &contract, sequence + 1, - self.fee.inclusion_fee(), + config.get_inclusion_fee()?, &source_account, )?; - if self.fee.build_only { + if self.build_only { return Ok(TxnResult::Txn(Box::new(tx_without_preflight))); } @@ -217,18 +221,17 @@ impl NetworkRunnable for Cmd { let assembled = simulate_and_assemble_transaction( &client, &tx_without_preflight, - self.fee.resource_config(), - self.fee.resource_fee, + self.soroban_data.resource_config(), + self.soroban_data.resource_fee, ) .await?; - let assembled = self.fee.apply_to_assembled_txn(assembled); - + let assembled = self.soroban_data.apply_to_assembled_txn(assembled); let txn = Box::new(assembled.transaction().clone()); let signed_txn = &self.config.sign(*txn, quiet).await?; print.globeln("Submitting install transaction…"); let txn_resp = client.send_transaction_polling(signed_txn).await?; - self.fee.print_cost_info(&txn_resp)?; + self.soroban_data.print_cost_info(&txn_resp)?; if args.is_none_or(|a| !a.no_cache) { data::write(txn_resp.clone().try_into().unwrap(), &network.rpc_uri()?)?; @@ -251,9 +254,10 @@ impl NetworkRunnable for Cmd { durability: super::Durability::Persistent, }, config: config.clone(), - fee: self.fee.clone(), + soroban_data: self.soroban_data.clone(), ledgers_to_extend: None, ttl_ledger_only: true, + build_only: self.build_only, } .run_against_rpc_server(args, None) .await?; diff --git a/cmd/soroban-cli/src/commands/fees/default.rs b/cmd/soroban-cli/src/commands/fees/default.rs new file mode 100644 index 0000000000..dae48813ef --- /dev/null +++ b/cmd/soroban-cli/src/commands/fees/default.rs @@ -0,0 +1,129 @@ +use clap::{command, ValueEnum}; + +use crate::{ + commands::global, + config::{locator, network}, + print::Print, + rpc, +}; + +#[derive(thiserror::Error, Debug)] +pub enum Error { + #[error(transparent)] + Config(#[from] locator::Error), + #[error(transparent)] + Serde(#[from] serde_json::Error), + #[error(transparent)] + Network(#[from] network::Error), + #[error(transparent)] + Rpc(#[from] rpc::Error), + #[error("Fee amount must be at least 100 stroops, but got {0}")] + FeeTooSmall(u32), + #[error("Invalid fee stats metric {0}: {1}")] + InvalidFeeStatsResult(String, String), +} + +// `clap` converts variants to kebab-case (e.g., `FeeMetric::Max` -> `max`). +#[derive(Clone, Copy, Debug, ValueEnum)] +pub enum FeeMetric { + Max, + Min, + Mode, + P10, + P20, + P30, + P40, + P50, + P60, + P70, + P80, + P90, + P95, + P99, +} + +#[derive(Debug, clap::Parser, Clone)] +#[command(group( + clap::ArgGroup::new("Fee Source") + .required(true) + .args(& ["amount", "fee_metric", "clear"]), +))] +pub struct Cmd { + /// Set the default inclusion fee amount, in stroops. 1 stroop = 0.0000001 xlm + #[arg(long)] + pub amount: Option, + + /// Set the default inclusion fee based on a metric from the network's fee stats + #[arg(long, value_enum)] + pub fee_metric: Option, + + /// Clear the default inclusion fee setting + #[arg(long)] + pub clear: bool, + + #[command(flatten)] + pub network: network::Args, + + #[command(flatten)] + pub config_locator: locator::Args, +} + +impl Cmd { + pub async fn run(&self, global_args: &global::Args) -> Result<(), Error> { + let printer = Print::new(global_args.quiet); + + if std::env::var("STELLAR_INCLUSION_FEE").is_ok() + && std::env::var("STELLAR_INCLUSION_FEE_SOURCE").is_err() + { + printer.warnln("Environment variable STELLAR_INCLUSION_FEE is set, which will override this default inclusion fee."); + } + + if self.clear { + self.config_locator.write_default_inclusion_fee(None)?; + printer.infoln("The default inclusion fee has been cleared"); + return Ok(()); + } + + let mut inclusion_fee: u32 = 0; + if let Some(fee_metric) = self.fee_metric { + let network = self.network.get(&global_args.locator)?; + let client = network.rpc_client()?; + let fee_stats = client.get_fee_stats().await?; + + let as_string = match fee_metric { + FeeMetric::Max => fee_stats.soroban_inclusion_fee.max, + FeeMetric::Min => fee_stats.soroban_inclusion_fee.min, + FeeMetric::Mode => fee_stats.soroban_inclusion_fee.mode, + FeeMetric::P10 => fee_stats.soroban_inclusion_fee.p10, + FeeMetric::P20 => fee_stats.soroban_inclusion_fee.p20, + FeeMetric::P30 => fee_stats.soroban_inclusion_fee.p30, + FeeMetric::P40 => fee_stats.soroban_inclusion_fee.p40, + FeeMetric::P50 => fee_stats.soroban_inclusion_fee.p50, + FeeMetric::P60 => fee_stats.soroban_inclusion_fee.p60, + FeeMetric::P70 => fee_stats.soroban_inclusion_fee.p70, + FeeMetric::P80 => fee_stats.soroban_inclusion_fee.p80, + FeeMetric::P90 => fee_stats.soroban_inclusion_fee.p90, + FeeMetric::P95 => fee_stats.soroban_inclusion_fee.p95, + FeeMetric::P99 => fee_stats.soroban_inclusion_fee.p99, + }; + inclusion_fee = as_string.parse::().map_err(|_| { + Error::InvalidFeeStatsResult(format!("{fee_metric:?}"), as_string.clone()) + })?; + } else if let Some(amount) = self.amount { + inclusion_fee = amount; + } + + if inclusion_fee < 100 { + return Err(Error::FeeTooSmall(inclusion_fee)); + } + + self.config_locator + .write_default_inclusion_fee(Some(inclusion_fee))?; + + printer.infoln(format!( + "The default inclusion fee is set to `{inclusion_fee}`" + )); + + Ok(()) + } +} diff --git a/cmd/soroban-cli/src/commands/fees/mod.rs b/cmd/soroban-cli/src/commands/fees/mod.rs new file mode 100644 index 0000000000..6b8907b6a9 --- /dev/null +++ b/cmd/soroban-cli/src/commands/fees/mod.rs @@ -0,0 +1,32 @@ +use crate::commands::global; +use clap::Subcommand; + +mod default; +mod stats; + +#[derive(Debug, Subcommand)] +pub enum Cmd { + /// Fetch the feestats from the network + Stats(stats::Cmd), + /// Set the default inclusion fee settings for the CLI + #[command(name = "use")] + Default(default::Cmd), +} + +#[derive(thiserror::Error, Debug)] +pub enum Error { + #[error(transparent)] + Stats(#[from] stats::Error), + #[error(transparent)] + Default(#[from] default::Error), +} + +impl Cmd { + pub async fn run(&self, global_args: &global::Args) -> Result<(), Error> { + match &self { + Cmd::Stats(cmd) => cmd.run(global_args).await?, + Cmd::Default(cmd) => cmd.run(global_args).await?, + } + Ok(()) + } +} diff --git a/cmd/soroban-cli/src/commands/fees/stats.rs b/cmd/soroban-cli/src/commands/fees/stats.rs new file mode 100644 index 0000000000..3ecea0649f --- /dev/null +++ b/cmd/soroban-cli/src/commands/fees/stats.rs @@ -0,0 +1,57 @@ +use crate::{commands::global, config::network, rpc}; + +#[derive(thiserror::Error, Debug)] +pub enum Error { + #[error(transparent)] + Serde(#[from] serde_json::Error), + #[error(transparent)] + Network(#[from] network::Error), + #[error(transparent)] + Rpc(#[from] rpc::Error), +} + +#[derive(Clone, Copy, Debug, Eq, Hash, PartialEq, clap::ValueEnum, Default)] +pub enum OutputFormat { + /// Text output of network info + #[default] + Text, + /// JSON result of the RPC request + Json, + /// Formatted (multiline) JSON output of the RPC request + JsonFormatted, +} + +#[derive(Debug, clap::Parser)] +pub struct Cmd { + #[command(flatten)] + pub network: network::Args, + + /// Format of the output + #[arg(long, value_enum, default_value_t)] + pub output: OutputFormat, +} + +impl Cmd { + pub async fn run(&self, global_args: &global::Args) -> Result<(), Error> { + let network = self.network.get(&global_args.locator)?; + let client = network.rpc_client()?; + let fee_stats = client.get_fee_stats().await?; + + match self.output { + OutputFormat::Text => { + println!( + "Max Soroban Inclusion Fee: {}", + fee_stats.soroban_inclusion_fee.max + ); + println!("Max Inclusion Fee: {}", fee_stats.inclusion_fee.max); + println!("Latest Ledger: {}", fee_stats.latest_ledger); + } + OutputFormat::Json => println!("{}", serde_json::to_string(&fee_stats)?), + OutputFormat::JsonFormatted => { + println!("{}", serde_json::to_string_pretty(&fee_stats)?); + } + } + + Ok(()) + } +} diff --git a/cmd/soroban-cli/src/commands/keys/default.rs b/cmd/soroban-cli/src/commands/keys/default.rs index 9aa180b6dd..6e1d1335e7 100644 --- a/cmd/soroban-cli/src/commands/keys/default.rs +++ b/cmd/soroban-cli/src/commands/keys/default.rs @@ -21,8 +21,14 @@ pub struct Cmd { impl Cmd { pub fn run(&self, global_args: &global::Args) -> Result<(), Error> { let printer = Print::new(global_args.quiet); - let _ = self.config_locator.read_identity(&self.name)?; + if std::env::var("STELLAR_ACCOUNT").is_ok() + && std::env::var("STELLAR_ACCOUNT_SOURCE").is_err() + { + printer.warnln("Environment variable STELLAR_ACCOUNT is set, which will override this default source account."); + } + + let _ = self.config_locator.read_identity(&self.name)?; self.config_locator.write_default_identity(&self.name)?; printer.infoln(format!( diff --git a/cmd/soroban-cli/src/commands/mod.rs b/cmd/soroban-cli/src/commands/mod.rs index a6aa805618..a2074a8733 100644 --- a/cmd/soroban-cli/src/commands/mod.rs +++ b/cmd/soroban-cli/src/commands/mod.rs @@ -14,6 +14,7 @@ pub mod doctor; pub mod env; pub mod events; pub mod fee_stats; +pub mod fees; pub mod global; pub mod keys; pub mod ledger; @@ -139,6 +140,7 @@ impl Root { Cmd::Ledger(ledger) => ledger.run(&self.global_args).await?, Cmd::Cache(cache) => cache.run()?, Cmd::Env(env) => env.run(&self.global_args)?, + Cmd::Fees(env) => env.run(&self.global_args).await?, Cmd::FeeStats(env) => env.run(&self.global_args).await?, } Ok(()) @@ -187,7 +189,7 @@ pub enum Cmd { #[command(subcommand)] Container(container::Cmd), - /// Manage cli configuration + /// Manage CLI configuration #[command(subcommand)] Config(cfg::Cmd), @@ -221,8 +223,12 @@ pub enum Cmd { #[command(subcommand)] Ledger(ledger::Cmd), - /// Fetch network feestats + /// ⚠️ Deprecated, use `fees stats` instead. Fetch network feestats FeeStats(fee_stats::Cmd), + + /// Fetch network feestats and configure CLI fee settings + #[command(subcommand)] + Fees(fees::Cmd), } #[derive(thiserror::Error, Debug)] @@ -278,6 +284,9 @@ pub enum Error { #[error(transparent)] FeeStats(#[from] fee_stats::Error), + + #[error(transparent)] + Fees(#[from] fees::Error), } #[async_trait] diff --git a/cmd/soroban-cli/src/commands/network/default.rs b/cmd/soroban-cli/src/commands/network/default.rs index 337e08a698..4687abab88 100644 --- a/cmd/soroban-cli/src/commands/network/default.rs +++ b/cmd/soroban-cli/src/commands/network/default.rs @@ -23,8 +23,14 @@ pub struct Cmd { impl Cmd { pub fn run(&self, global_args: &global::Args) -> Result<(), Error> { let printer = Print::new(global_args.quiet); - let _ = self.config_locator.read_network(&self.name)?; + if std::env::var("STELLAR_NETWORK").is_ok() + && std::env::var("STELLAR_NETWORK_SOURCE").is_err() + { + printer.warnln("Environment variable STELLAR_NETWORK is set, which will override this default network."); + } + + let _ = self.config_locator.read_network(&self.name)?; self.config_locator.write_default_network(&self.name)?; printer.infoln(format!("The default network is set to `{}`", self.name)); diff --git a/cmd/soroban-cli/src/commands/tx/args.rs b/cmd/soroban-cli/src/commands/tx/args.rs index 5cf15c1a8c..2b4c766c3e 100644 --- a/cmd/soroban-cli/src/commands/tx/args.rs +++ b/cmd/soroban-cli/src/commands/tx/args.rs @@ -5,7 +5,6 @@ use crate::{ address::{self, UnresolvedMuxedAccount}, data, network, secret, }, - fee, rpc::{self, Client, GetTransactionResponse}, tx::builder::{self, asset, TxExt}, xdr::{self, Limits, WriteXdr}, @@ -14,10 +13,11 @@ use crate::{ #[derive(Debug, clap::Args, Clone)] #[group(skip)] pub struct Args { - #[clap(flatten)] - pub fee: fee::Args, #[clap(flatten)] pub config: config::Args, + /// Build the transaction and only write the base64 xdr to stdout + #[arg(long)] + pub build_only: bool, } #[derive(thiserror::Error, Debug)] @@ -59,6 +59,7 @@ impl Args { .config .next_sequence_number(source_account.clone().account_id()) .await?; + // Once we have a way to add operations this will be updated to allow for a different source account let operation = xdr::Operation { source_account: None, @@ -66,7 +67,7 @@ impl Args { }; Ok(xdr::Transaction::new_tx( source_account, - self.fee.fee, + self.config.get_inclusion_fee()?, seq_num, operation, )) @@ -105,7 +106,7 @@ impl Args { ) -> Result, Error> { let network = self.config.get_network()?; let client = Client::new(&network.rpc_url)?; - if self.fee.build_only { + if self.build_only { return Ok(TxnEnvelopeResult::TxnEnvelope(Box::new(tx.into()))); } diff --git a/cmd/soroban-cli/src/config/locator.rs b/cmd/soroban-cli/src/config/locator.rs index 56a9e6a844..1d9486861c 100644 --- a/cmd/soroban-cli/src/config/locator.rs +++ b/cmd/soroban-cli/src/config/locator.rs @@ -216,6 +216,10 @@ impl Args { Config::new()?.set_identity(name).save() } + pub fn write_default_inclusion_fee(&self, inclusion_fee: Option) -> Result<(), Error> { + Config::new()?.set_inclusion_fee(inclusion_fee).save() + } + pub fn list_identities(&self) -> Result, Error> { Ok(KeyType::Identity .list_paths(&self.local_and_global()?)? diff --git a/cmd/soroban-cli/src/config/mod.rs b/cmd/soroban-cli/src/config/mod.rs index 358c135c91..d7b60e86b9 100644 --- a/cmd/soroban-cli/src/config/mod.rs +++ b/cmd/soroban-cli/src/config/mod.rs @@ -60,7 +60,7 @@ pub struct Args { /// Can be an identity (--source alice), a public key (--source GDKW...), /// a muxed account (--source MDA…), a secret key (--source SC36…), /// or a seed phrase (--source "kite urban…"). - /// If `--build-only` or `--sim-only` flags were NOT provided, this key will also be used to + /// If `--build-only` was NOT provided, this key will also be used to /// sign the final transaction. In that case, trying to sign with public key will fail. pub source_account: UnresolvedMuxedAccount, @@ -69,6 +69,14 @@ pub struct Args { #[command(flatten)] pub sign_with: sign_with::Args, + + /// ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm + #[arg(long, env = "STELLAR_FEE")] + pub fee: Option, + + /// Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm. Defaults to 100 if no arg, env, or config value is provided + #[arg(long, env = "STELLAR_INCLUSION_FEE")] + pub inclusion_fee: Option, } impl Args { @@ -131,6 +139,17 @@ impl Args { Ok(self.network.get(&self.locator)?) } + /// Get the inclusion fee if available from args, otherwise fall back to fee, + /// and finally return 100 if nothing is set. + /// + /// Precedence is: + /// 1. inclusion_fee (via clap, arg then env var) + /// 2. fee (via clap, arg then env var) + /// 3. default of 100 stroops + pub fn get_inclusion_fee(&self) -> Result { + Ok(self.inclusion_fee.or(self.fee).unwrap_or(100)) + } + pub async fn next_sequence_number( &self, account: impl Into, @@ -182,6 +201,7 @@ pub struct Config { pub struct Defaults { pub network: Option, pub identity: Option, + pub inclusion_fee: Option, } impl Config { @@ -208,6 +228,12 @@ impl Config { self } + #[must_use] + pub fn set_inclusion_fee(mut self, uint: Option) -> Self { + self.defaults.inclusion_fee = uint; + self + } + pub fn save(&self) -> Result<(), locator::Error> { let toml_string = toml::to_string(&self)?; let path = cli_config_file()?; diff --git a/cmd/soroban-cli/src/config/network.rs b/cmd/soroban-cli/src/config/network.rs index 014dac3ce6..bfcee3425f 100644 --- a/cmd/soroban-cli/src/config/network.rs +++ b/cmd/soroban-cli/src/config/network.rs @@ -233,14 +233,12 @@ impl Network { .try_into() .map_err(|_| Error::InvalidHeader)?; - Ok( - rpc::Client::new_with_headers(&self.rpc_url, header_map).map_err(|e| match e { - rpc::Error::InvalidRpcUrl(..) | rpc::Error::InvalidRpcUrlFromUriParts(..) => { - Error::InvalidUrl(self.rpc_url.clone()) - } - other => Error::Rpc(other), - })?, - ) + rpc::Client::new_with_headers(&self.rpc_url, header_map).map_err(|e| match e { + rpc::Error::InvalidRpcUrl(..) | rpc::Error::InvalidRpcUrlFromUriParts(..) => { + Error::InvalidUrl(self.rpc_url.clone()) + } + other => Error::Rpc(other), + }) } } diff --git a/cmd/soroban-cli/src/lib.rs b/cmd/soroban-cli/src/lib.rs index 5d2cecf56a..5547bc1e46 100644 --- a/cmd/soroban-cli/src/lib.rs +++ b/cmd/soroban-cli/src/lib.rs @@ -15,12 +15,12 @@ pub mod assembled; pub mod commands; pub mod config; mod env_vars; -pub mod fee; pub mod get_spec; pub mod key; pub mod log; pub mod print; pub mod signer; +pub mod soroban_data; pub mod toid; pub mod tx; pub mod upgrade_check; diff --git a/cmd/soroban-cli/src/fee.rs b/cmd/soroban-cli/src/soroban_data.rs similarity index 59% rename from cmd/soroban-cli/src/fee.rs rename to cmd/soroban-cli/src/soroban_data.rs index 97cb0cda6a..921e17d592 100644 --- a/cmd/soroban-cli/src/fee.rs +++ b/cmd/soroban-cli/src/soroban_data.rs @@ -8,30 +8,21 @@ use crate::commands::tx::fetch; use crate::commands::tx::fetch::fee::FeeTable; use crate::commands::HEADING_RPC; -#[derive(Debug, clap::Args, Clone)] +#[derive(Debug, clap::Args, Clone, Default)] #[group(skip)] pub struct Args { - /// ⚠️ Deprecated, use `--inclusion-fee`. Fee amount for transaction, in stroops. 1 stroop = 0.0000001 xlm - #[arg(long, default_value = "100", env = "STELLAR_FEE", help_heading = HEADING_RPC)] - pub fee: u32, - /// Maximum fee amount for transaction inclusion, in stroops. 1 stroop = 0.0000001 xlm - #[arg(long, default_value = "100", env = "STELLAR_INCLUSION_FEE", help_heading = HEADING_RPC)] - pub inclusion_fee: u32, /// Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee #[arg(long, env = "STELLAR_RESOURCE_FEE", help_heading = HEADING_RPC)] pub resource_fee: Option, - /// Output the cost execution to stderr - #[arg(long = "cost", help_heading = HEADING_RPC)] - pub cost: bool, /// ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction #[arg(long, help_heading = HEADING_RPC)] pub instructions: Option, /// Allow this many extra instructions when budgeting resources with transaction simulation #[arg(long, help_heading = HEADING_RPC)] pub instruction_leeway: Option, - /// Build the transaction and only write the base64 xdr to stdout - #[arg(long, help_heading = HEADING_RPC)] - pub build_only: bool, + /// Output the cost execution to stderr + #[arg(long = "cost", help_heading = HEADING_RPC)] + pub cost: bool, } impl Args { @@ -60,28 +51,4 @@ impl Args { Ok(()) } - - // TODO: Use field directly instead of getter once `--fee` is removed - /// Fetch the inclusion fee, prioritizing `inclusion_fee` over `fee` - pub fn inclusion_fee(&self) -> u32 { - if self.inclusion_fee == 100 { - self.fee - } else { - self.inclusion_fee - } - } -} - -impl Default for Args { - fn default() -> Self { - Self { - fee: 100, - inclusion_fee: 100, - resource_fee: None, - cost: false, - instructions: None, - instruction_leeway: None, - build_only: false, - } - } } From 9537e2a017ac6f6adc9d20917340c8c1f0cd6a74 Mon Sep 17 00:00:00 2001 From: mootz12 <38118608+mootz12@users.noreply.github.com> Date: Wed, 17 Dec 2025 09:04:21 -0500 Subject: [PATCH 04/13] Update cmd/soroban-cli/src/soroban_data.rs Co-authored-by: Nando Vieira --- cmd/soroban-cli/src/soroban_data.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/soroban-cli/src/soroban_data.rs b/cmd/soroban-cli/src/soroban_data.rs index 921e17d592..b607ba63a0 100644 --- a/cmd/soroban-cli/src/soroban_data.rs +++ b/cmd/soroban-cli/src/soroban_data.rs @@ -14,7 +14,7 @@ pub struct Args { /// Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee #[arg(long, env = "STELLAR_RESOURCE_FEE", help_heading = HEADING_RPC)] pub resource_fee: Option, - /// ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction + /// ⚠️ Deprecated, use `--instruction-leeway` to increase instructions. Number of instructions to allocate for the transaction #[arg(long, help_heading = HEADING_RPC)] pub instructions: Option, /// Allow this many extra instructions when budgeting resources with transaction simulation From 3111c1c8d921279e8c04cebaef07d85dbccffea4 Mon Sep 17 00:00:00 2001 From: mootz12 Date: Wed, 17 Dec 2025 09:41:01 -0500 Subject: [PATCH 05/13] chore: feedback on inclusion fee env var usage --- cmd/soroban-cli/src/cli.rs | 8 +++----- cmd/soroban-cli/src/env_vars.rs | 1 + 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/cmd/soroban-cli/src/cli.rs b/cmd/soroban-cli/src/cli.rs index 5e079e399a..5a01ef38a2 100644 --- a/cmd/soroban-cli/src/cli.rs +++ b/cmd/soroban-cli/src/cli.rs @@ -102,16 +102,14 @@ fn set_env_from_config() { if let Ok(config) = Config::new() { set_env_value_from_config("STELLAR_ACCOUNT", config.defaults.identity); set_env_value_from_config("STELLAR_NETWORK", config.defaults.network); - if let Some(inclusion_fee) = config.defaults.inclusion_fee { - set_env_value_from_config("STELLAR_INCLUSION_FEE", Some(inclusion_fee.to_string())); - } + set_env_value_from_config("STELLAR_INCLUSION_FEE", config.defaults.inclusion_fee); } } // Set an env var from a config file if the env var is not already set. // Additionally, a `$NAME_SOURCE` variant will be set, which allows // `stellar env` to properly identity the source. -fn set_env_value_from_config(name: &str, value: Option) { +fn set_env_value_from_config(name: &str, value: Option) { let Some(value) = value else { return; }; @@ -119,7 +117,7 @@ fn set_env_value_from_config(name: &str, value: Option) { std::env::remove_var(format!("{name}_SOURCE")); if std::env::var(name).is_err() { - std::env::set_var(name, value); + std::env::set_var(name, value.to_string()); std::env::set_var(format!("{name}_SOURCE"), "use"); } } diff --git a/cmd/soroban-cli/src/env_vars.rs b/cmd/soroban-cli/src/env_vars.rs index b756459d97..7f2122291b 100644 --- a/cmd/soroban-cli/src/env_vars.rs +++ b/cmd/soroban-cli/src/env_vars.rs @@ -8,6 +8,7 @@ pub fn unprefixed() -> Vec<&'static str> { "CONTRACT_ID", "DATA_HOME", "FEE", + "INCLUSION_FEE", "INVOKE_VIEW", "NETWORK", "NETWORK_PASSPHRASE", From aad8765c185fff167f3febd1af8f65f2933cf900 Mon Sep 17 00:00:00 2001 From: mootz12 Date: Wed, 17 Dec 2025 09:50:14 -0500 Subject: [PATCH 06/13] chore: rename soroban_data to resources --- .../src/commands/contract/deploy/asset.rs | 10 +++++----- .../src/commands/contract/deploy/wasm.rs | 14 +++++++------- cmd/soroban-cli/src/commands/contract/extend.rs | 12 ++++++------ cmd/soroban-cli/src/commands/contract/invoke.rs | 14 +++++++------- cmd/soroban-cli/src/commands/contract/restore.rs | 12 ++++++------ cmd/soroban-cli/src/commands/contract/upload.rs | 12 ++++++------ cmd/soroban-cli/src/lib.rs | 2 +- .../src/{soroban_data.rs => resources.rs} | 0 8 files changed, 38 insertions(+), 38 deletions(-) rename cmd/soroban-cli/src/{soroban_data.rs => resources.rs} (100%) diff --git a/cmd/soroban-cli/src/commands/contract/deploy/asset.rs b/cmd/soroban-cli/src/commands/contract/deploy/asset.rs index 15306e54fb..4ac2427f47 100644 --- a/cmd/soroban-cli/src/commands/contract/deploy/asset.rs +++ b/cmd/soroban-cli/src/commands/contract/deploy/asset.rs @@ -82,7 +82,7 @@ pub struct Cmd { pub config: config::Args, #[command(flatten)] - pub soroban_data: crate::soroban_data::Args, + pub resources: crate::resources::Args, /// The alias that will be used to save the assets's id. /// Whenever used, `--alias` will always overwrite the existing contract id @@ -178,17 +178,17 @@ impl NetworkRunnable for Cmd { let assembled = simulate_and_assemble_transaction( &client, &tx, - self.soroban_data.resource_config(), - self.soroban_data.resource_fee, + self.resources.resource_config(), + self.resources.resource_fee, ) .await?; - let assembled = self.soroban_data.apply_to_assembled_txn(assembled); + let assembled = self.resources.apply_to_assembled_txn(assembled); let txn = assembled.transaction().clone(); let get_txn_resp = client .send_transaction_polling(&self.config.sign(txn, args.is_some_and(|g| g.quiet)).await?) .await?; - self.soroban_data.print_cost_info(&get_txn_resp)?; + self.resources.print_cost_info(&get_txn_resp)?; if args.is_none_or(|a| !a.no_cache) { data::write(get_txn_resp.clone().try_into()?, &network.rpc_uri()?)?; diff --git a/cmd/soroban-cli/src/commands/contract/deploy/wasm.rs b/cmd/soroban-cli/src/commands/contract/deploy/wasm.rs index 821b4d70e0..4af8c74579 100644 --- a/cmd/soroban-cli/src/commands/contract/deploy/wasm.rs +++ b/cmd/soroban-cli/src/commands/contract/deploy/wasm.rs @@ -1,5 +1,5 @@ use crate::commands::contract::deploy::utils::alias_validator; -use crate::soroban_data; +use crate::resources; use std::array::TryFromSliceError; use std::ffi::OsString; use std::fmt::Debug; @@ -62,7 +62,7 @@ pub struct Cmd { #[arg(long, value_parser = clap::builder::ValueParser::new(alias_validator))] pub alias: Option, #[command(flatten)] - pub soroban_data: soroban_data::Args, + pub resources: resources::Args, /// Build the transaction and only write the base64 xdr to stdout #[arg(long)] pub build_only: bool, @@ -209,7 +209,7 @@ impl NetworkRunnable for Cmd { upload::Cmd { wasm: wasm::Args { wasm: wasm.clone() }, config: config.clone(), - soroban_data: self.soroban_data.clone(), + resources: self.resources.clone(), ignore_checks: self.ignore_checks, build_only: is_build, } @@ -315,11 +315,11 @@ impl NetworkRunnable for Cmd { let assembled = simulate_and_assemble_transaction( &client, &txn, - self.soroban_data.resource_config(), - self.soroban_data.resource_fee, + self.resources.resource_config(), + self.resources.resource_fee, ) .await?; - let assembled = self.soroban_data.apply_to_assembled_txn(assembled); + let assembled = self.resources.apply_to_assembled_txn(assembled); let txn = Box::new(assembled.transaction().clone()); print.log_transaction(&txn, &network, true)?; @@ -328,7 +328,7 @@ impl NetworkRunnable for Cmd { let get_txn_resp = client.send_transaction_polling(signed_txn).await?; - self.soroban_data.print_cost_info(&get_txn_resp)?; + self.resources.print_cost_info(&get_txn_resp)?; if global_args.is_none_or(|a| !a.no_cache) { data::write(get_txn_resp.clone().try_into()?, &network.rpc_uri()?)?; diff --git a/cmd/soroban-cli/src/commands/contract/extend.rs b/cmd/soroban-cli/src/commands/contract/extend.rs index 518b1fb313..37d22ed4a0 100644 --- a/cmd/soroban-cli/src/commands/contract/extend.rs +++ b/cmd/soroban-cli/src/commands/contract/extend.rs @@ -3,7 +3,7 @@ use std::{fmt::Debug, num::TryFromIntError, path::Path, str::FromStr}; use crate::{ log::extract_events, print::Print, - soroban_data, + resources, xdr::{ ConfigSettingEntry, ConfigSettingId, Error as XdrError, ExtendFootprintTtlOp, ExtensionPoint, LedgerEntry, LedgerEntryChange, LedgerEntryData, LedgerFootprint, @@ -45,7 +45,7 @@ pub struct Cmd { pub config: config::Args, #[command(flatten)] - pub soroban_data: soroban_data::Args, + pub resources: resources::Args, /// Build the transaction and only write the base64 xdr to stdout #[arg(long)] @@ -234,7 +234,7 @@ impl NetworkRunnable for Cmd { read_only: keys.clone().try_into()?, read_write: vec![].try_into()?, }, - instructions: self.soroban_data.instructions.unwrap_or_default(), + instructions: self.resources.instructions.unwrap_or_default(), disk_read_bytes: 0, write_bytes: 0, }, @@ -247,8 +247,8 @@ impl NetworkRunnable for Cmd { let assembled = simulate_and_assemble_transaction( &client, &tx, - self.soroban_data.resource_config(), - self.soroban_data.resource_fee, + self.resources.resource_config(), + self.resources.resource_fee, ) .await?; @@ -256,7 +256,7 @@ impl NetworkRunnable for Cmd { let res = client .send_transaction_polling(&config.sign(tx, quiet).await?) .await?; - self.soroban_data.print_cost_info(&res)?; + self.resources.print_cost_info(&res)?; if args.is_none_or(|a| !a.no_cache) { data::write(res.clone().try_into()?, &network.rpc_uri()?)?; diff --git a/cmd/soroban-cli/src/commands/contract/invoke.rs b/cmd/soroban-cli/src/commands/contract/invoke.rs index 204d8af526..2ad502b7da 100644 --- a/cmd/soroban-cli/src/commands/contract/invoke.rs +++ b/cmd/soroban-cli/src/commands/contract/invoke.rs @@ -63,7 +63,7 @@ pub struct Cmd { pub config: config::Args, #[command(flatten)] - pub soroban_data: crate::soroban_data::Args, + pub resources: crate::resources::Args, /// Whether or not to send a transaction #[arg(long, value_enum, default_value_t, env = "STELLAR_SEND")] @@ -242,8 +242,8 @@ impl Cmd { Ok(simulate_and_assemble_transaction( rpc_client, &tx, - self.soroban_data.resource_config(), - self.soroban_data.resource_fee, + self.resources.resource_config(), + self.resources.resource_fee, ) .await?) } @@ -351,11 +351,11 @@ impl NetworkRunnable for Cmd { let txn = simulate_and_assemble_transaction( &client, &tx, - self.soroban_data.resource_config(), - self.soroban_data.resource_fee, + self.resources.resource_config(), + self.resources.resource_fee, ) .await?; - let assembled = self.soroban_data.apply_to_assembled_txn(txn); + let assembled = self.resources.apply_to_assembled_txn(txn); let mut txn = Box::new(assembled.transaction().clone()); let sim_res = assembled.sim_response(); @@ -374,7 +374,7 @@ impl NetworkRunnable for Cmd { .send_transaction_polling(&config.sign(*txn, quiet).await?) .await?; - self.soroban_data.print_cost_info(&res)?; + self.resources.print_cost_info(&res)?; if !no_cache { data::write(res.clone().try_into()?, &network.rpc_uri()?)?; diff --git a/cmd/soroban-cli/src/commands/contract/restore.rs b/cmd/soroban-cli/src/commands/contract/restore.rs index 979c625809..bf2e0fb147 100644 --- a/cmd/soroban-cli/src/commands/contract/restore.rs +++ b/cmd/soroban-cli/src/commands/contract/restore.rs @@ -44,7 +44,7 @@ pub struct Cmd { pub config: config::Args, #[command(flatten)] - pub soroban_data: crate::soroban_data::Args, + pub resources: crate::resources::Args, /// Build the transaction and only write the base64 xdr to stdout #[arg(long)] @@ -142,7 +142,7 @@ impl Cmd { key: self.key.clone(), ledgers_to_extend, config: self.config.clone(), - soroban_data: self.soroban_data.clone(), + resources: self.resources.clone(), ttl_ledger_only: false, build_only: self.build_only, } @@ -201,7 +201,7 @@ impl NetworkRunnable for Cmd { read_only: vec![].try_into()?, read_write: entry_keys.clone().try_into()?, }, - instructions: self.soroban_data.instructions.unwrap_or_default(), + instructions: self.resources.instructions.unwrap_or_default(), disk_read_bytes: 0, write_bytes: 0, }, @@ -214,8 +214,8 @@ impl NetworkRunnable for Cmd { let assembled = simulate_and_assemble_transaction( &client, &tx, - self.soroban_data.resource_config(), - self.soroban_data.resource_fee, + self.resources.resource_config(), + self.resources.resource_fee, ) .await?; @@ -223,7 +223,7 @@ impl NetworkRunnable for Cmd { let res = client .send_transaction_polling(&config.sign(tx, quiet).await?) .await?; - self.soroban_data.print_cost_info(&res)?; + self.resources.print_cost_info(&res)?; if args.is_none_or(|a| !a.no_cache) { data::write(res.clone().try_into()?, &network.rpc_uri()?)?; } diff --git a/cmd/soroban-cli/src/commands/contract/upload.rs b/cmd/soroban-cli/src/commands/contract/upload.rs index f1cf380e6f..338b0a806f 100644 --- a/cmd/soroban-cli/src/commands/contract/upload.rs +++ b/cmd/soroban-cli/src/commands/contract/upload.rs @@ -36,7 +36,7 @@ pub struct Cmd { pub config: config::Args, #[command(flatten)] - pub soroban_data: crate::soroban_data::Args, + pub resources: crate::resources::Args, #[command(flatten)] pub wasm: wasm::Args, @@ -221,17 +221,17 @@ impl NetworkRunnable for Cmd { let assembled = simulate_and_assemble_transaction( &client, &tx_without_preflight, - self.soroban_data.resource_config(), - self.soroban_data.resource_fee, + self.resources.resource_config(), + self.resources.resource_fee, ) .await?; - let assembled = self.soroban_data.apply_to_assembled_txn(assembled); + let assembled = self.resources.apply_to_assembled_txn(assembled); let txn = Box::new(assembled.transaction().clone()); let signed_txn = &self.config.sign(*txn, quiet).await?; print.globeln("Submitting install transaction…"); let txn_resp = client.send_transaction_polling(signed_txn).await?; - self.soroban_data.print_cost_info(&txn_resp)?; + self.resources.print_cost_info(&txn_resp)?; if args.is_none_or(|a| !a.no_cache) { data::write(txn_resp.clone().try_into().unwrap(), &network.rpc_uri()?)?; @@ -254,7 +254,7 @@ impl NetworkRunnable for Cmd { durability: super::Durability::Persistent, }, config: config.clone(), - soroban_data: self.soroban_data.clone(), + resources: self.resources.clone(), ledgers_to_extend: None, ttl_ledger_only: true, build_only: self.build_only, diff --git a/cmd/soroban-cli/src/lib.rs b/cmd/soroban-cli/src/lib.rs index 5547bc1e46..b53d120164 100644 --- a/cmd/soroban-cli/src/lib.rs +++ b/cmd/soroban-cli/src/lib.rs @@ -19,8 +19,8 @@ pub mod get_spec; pub mod key; pub mod log; pub mod print; +pub mod resources; pub mod signer; -pub mod soroban_data; pub mod toid; pub mod tx; pub mod upgrade_check; diff --git a/cmd/soroban-cli/src/soroban_data.rs b/cmd/soroban-cli/src/resources.rs similarity index 100% rename from cmd/soroban-cli/src/soroban_data.rs rename to cmd/soroban-cli/src/resources.rs From d097eb54abb081a5dc1a2656f3c9cafe124864ae Mon Sep 17 00:00:00 2001 From: mootz12 Date: Wed, 17 Dec 2025 10:01:00 -0500 Subject: [PATCH 07/13] chore: use 'unset' instead of '--clear' --- .../tests/it/integration/fee_args.rs | 45 +++++++++++++++++++ cmd/soroban-cli/src/commands/fees/default.rs | 12 +---- cmd/soroban-cli/src/commands/fees/mod.rs | 7 +++ cmd/soroban-cli/src/commands/fees/unset.rs | 24 ++++++++++ 4 files changed, 77 insertions(+), 11 deletions(-) create mode 100644 cmd/soroban-cli/src/commands/fees/unset.rs diff --git a/cmd/crates/soroban-test/tests/it/integration/fee_args.rs b/cmd/crates/soroban-test/tests/it/integration/fee_args.rs index a30cfdbd3d..76d249b1d0 100644 --- a/cmd/crates/soroban-test/tests/it/integration/fee_args.rs +++ b/cmd/crates/soroban-test/tests/it/integration/fee_args.rs @@ -92,4 +92,49 @@ async fn inclusion_fee_arg() { .success() .stdout_as_str(); assert_eq!(get_inclusion_fee_from_xdr(&tx_xdr), 100u32); + + // Update manually to 200 + sandbox + .new_assert_cmd("fees") + .arg("use") + .args(["--amount", "200"]) + .assert() + .stderr(predicate::str::contains( + "The default inclusion fee is set to `200`", + )) + .success(); + + let tx_xdr = sandbox + .new_assert_cmd("contract") + .arg("invoke") + .args(["--id", &id.to_string()]) + .arg("--build-only") + .arg("--") + .arg("inc") + .assert() + .success() + .stdout_as_str(); + assert_eq!(get_inclusion_fee_from_xdr(&tx_xdr), 200u32); + + // Verify unset clears the config + sandbox + .new_assert_cmd("fees") + .arg("unset") + .assert() + .stderr(predicate::str::contains( + "The default inclusion fee has been cleared", + )) + .success(); + + let tx_xdr = sandbox + .new_assert_cmd("contract") + .arg("invoke") + .args(["--id", &id.to_string()]) + .arg("--build-only") + .arg("--") + .arg("inc") + .assert() + .success() + .stdout_as_str(); + assert_eq!(get_inclusion_fee_from_xdr(&tx_xdr), 100u32); } diff --git a/cmd/soroban-cli/src/commands/fees/default.rs b/cmd/soroban-cli/src/commands/fees/default.rs index dae48813ef..fc9d7f899a 100644 --- a/cmd/soroban-cli/src/commands/fees/default.rs +++ b/cmd/soroban-cli/src/commands/fees/default.rs @@ -46,7 +46,7 @@ pub enum FeeMetric { #[command(group( clap::ArgGroup::new("Fee Source") .required(true) - .args(& ["amount", "fee_metric", "clear"]), + .args(& ["amount", "fee_metric"]), ))] pub struct Cmd { /// Set the default inclusion fee amount, in stroops. 1 stroop = 0.0000001 xlm @@ -57,10 +57,6 @@ pub struct Cmd { #[arg(long, value_enum)] pub fee_metric: Option, - /// Clear the default inclusion fee setting - #[arg(long)] - pub clear: bool, - #[command(flatten)] pub network: network::Args, @@ -78,12 +74,6 @@ impl Cmd { printer.warnln("Environment variable STELLAR_INCLUSION_FEE is set, which will override this default inclusion fee."); } - if self.clear { - self.config_locator.write_default_inclusion_fee(None)?; - printer.infoln("The default inclusion fee has been cleared"); - return Ok(()); - } - let mut inclusion_fee: u32 = 0; if let Some(fee_metric) = self.fee_metric { let network = self.network.get(&global_args.locator)?; diff --git a/cmd/soroban-cli/src/commands/fees/mod.rs b/cmd/soroban-cli/src/commands/fees/mod.rs index 6b8907b6a9..fab5361349 100644 --- a/cmd/soroban-cli/src/commands/fees/mod.rs +++ b/cmd/soroban-cli/src/commands/fees/mod.rs @@ -3,6 +3,7 @@ use clap::Subcommand; mod default; mod stats; +mod unset; #[derive(Debug, Subcommand)] pub enum Cmd { @@ -11,6 +12,9 @@ pub enum Cmd { /// Set the default inclusion fee settings for the CLI #[command(name = "use")] Default(default::Cmd), + /// Remove the default inclusion fee settings for the CLI + #[command(name = "unset")] + Unset(unset::Cmd), } #[derive(thiserror::Error, Debug)] @@ -19,6 +23,8 @@ pub enum Error { Stats(#[from] stats::Error), #[error(transparent)] Default(#[from] default::Error), + #[error(transparent)] + Unset(#[from] unset::Error), } impl Cmd { @@ -26,6 +32,7 @@ impl Cmd { match &self { Cmd::Stats(cmd) => cmd.run(global_args).await?, Cmd::Default(cmd) => cmd.run(global_args).await?, + Cmd::Unset(cmd) => cmd.run(global_args).await?, } Ok(()) } diff --git a/cmd/soroban-cli/src/commands/fees/unset.rs b/cmd/soroban-cli/src/commands/fees/unset.rs new file mode 100644 index 0000000000..e24c292b87 --- /dev/null +++ b/cmd/soroban-cli/src/commands/fees/unset.rs @@ -0,0 +1,24 @@ +use clap::command; + +use crate::{commands::global, config::locator, print::Print}; + +#[derive(thiserror::Error, Debug)] +pub enum Error { + #[error(transparent)] + Config(#[from] locator::Error), +} + +#[derive(Debug, clap::Parser, Clone)] +pub struct Cmd { + #[command(flatten)] + pub config_locator: locator::Args, +} + +impl Cmd { + pub async fn run(&self, global_args: &global::Args) -> Result<(), Error> { + let printer = Print::new(global_args.quiet); + self.config_locator.write_default_inclusion_fee(None)?; + printer.infoln("The default inclusion fee has been cleared"); + Ok(()) + } +} From b8b80d2857db00c1e12868fe4340d1382d612f9b Mon Sep 17 00:00:00 2001 From: mootz12 Date: Wed, 17 Dec 2025 10:02:14 -0500 Subject: [PATCH 08/13] chore: make docs --- FULL_HELP_DOCS.md | 90 +++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 80 insertions(+), 10 deletions(-) diff --git a/FULL_HELP_DOCS.md b/FULL_HELP_DOCS.md index f1c0fb6db5..cb4bad9740 100644 --- a/FULL_HELP_DOCS.md +++ b/FULL_HELP_DOCS.md @@ -53,6 +53,7 @@ Anything after the `--` double dash (the "slop") is parsed as arguments to the c - `snapshot` — Download a snapshot of a ledger from an archive - `tx` — Sign, Simulate, and Send transactions - `xdr` — Decode and encode XDR +- `strkey` — Decode and encode strkey - `completion` — Print shell completion code for the specified shell - `cache` — Cache for transactions and contract specs - `version` — Print version information @@ -165,7 +166,7 @@ Deploy builtin Soroban Asset Contract - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instructions ` — ⚠️ Deprecated, use `--instruction-leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--cost` — Output the cost execution to stderr @@ -448,7 +449,7 @@ If no keys are specified the contract itself is extended. - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instructions ` — ⚠️ Deprecated, use `--instruction-leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--cost` — Output the cost execution to stderr @@ -493,7 +494,7 @@ Deploy a wasm contract - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instructions ` — ⚠️ Deprecated, use `--instruction-leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--cost` — Output the cost execution to stderr @@ -816,7 +817,7 @@ Install a WASM file to the ledger without creating a contract instance - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instructions ` — ⚠️ Deprecated, use `--instruction-leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--cost` — Output the cost execution to stderr @@ -854,7 +855,7 @@ Install a WASM file to the ledger without creating a contract instance - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instructions ` — ⚠️ Deprecated, use `--instruction-leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--cost` — Output the cost execution to stderr @@ -906,7 +907,7 @@ stellar contract invoke ... -- --help - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instructions ` — ⚠️ Deprecated, use `--instruction-leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--cost` — Output the cost execution to stderr @@ -1009,7 +1010,7 @@ If no keys are specificed the contract itself is restored. - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config - `--resource-fee ` — Set the fee for smart contract resource consumption, in stroops. 1 stroop = 0.0000001 xlm. Overrides the simulated resource fee -- `--instructions ` — ⚠️ Deprecated, use `--instruction_leeway` to increase instructions. Number of instructions to allocate for the transaction +- `--instructions ` — ⚠️ Deprecated, use `--instruction-leeway` to increase instructions. Number of instructions to allocate for the transaction - `--instruction-leeway ` — Allow this many extra instructions when budgeting resources with transaction simulation - `--cost` — Output the cost execution to stderr @@ -3922,6 +3923,65 @@ Print version information **Usage:** `stellar xdr version` +## `stellar strkey` + +Decode and encode strkey + +**Usage:** `stellar strkey ` + +###### **Subcommands:** + +- `decode` — Decode strkey +- `encode` — Encode strkey +- `zero` — Generate the zero strkey +- `version` — Print version information + +## `stellar strkey decode` + +Decode strkey + +**Usage:** `stellar strkey decode ` + +###### **Arguments:** + +- `` — Strkey to decode + +## `stellar strkey encode` + +Encode strkey + +**Usage:** `stellar strkey encode ` + +###### **Arguments:** + +- `` — JSON for Strkey to encode + +## `stellar strkey zero` + +Generate the zero strkey + +**Usage:** `stellar strkey zero [OPTIONS] ` + +###### **Arguments:** + +- `` — Strkey type to generate the zero value for + + Possible values: `public_key_ed25519`, `pre_auth_tx`, `hash_x`, `muxed_account_ed25519`, `signed_payload_ed25519`, `contract`, `liquidity_pool`, `claimable_balance_v0` + +###### **Options:** + +- `--output ` — Output format + + Default value: `strkey` + + Possible values: `strkey`, `json` + +## `stellar strkey version` + +Print version information + +**Usage:** `stellar strkey version` + ## `stellar completion` Print shell completion code for the specified shell @@ -4432,6 +4492,7 @@ Fetch network feestats and configure CLI fee settings - `stats` — Fetch the feestats from the network - `use` — Set the default inclusion fee settings for the CLI +- `unset` — Remove the default inclusion fee settings for the CLI ## `stellar fees stats` @@ -4461,7 +4522,7 @@ Fetch the feestats from the network Set the default inclusion fee settings for the CLI -**Usage:** `stellar fees use [OPTIONS] <--amount |--fee-metric |--clear>` +**Usage:** `stellar fees use [OPTIONS] <--amount |--fee-metric >` ###### **Options:** @@ -4470,8 +4531,6 @@ Set the default inclusion fee settings for the CLI Possible values: `max`, `min`, `mode`, `p10`, `p20`, `p30`, `p40`, `p50`, `p60`, `p70`, `p80`, `p90`, `p95`, `p99` -- `--clear` — Clear the default inclusion fee setting - ###### **Options (Global):** - `--global` — ⚠️ Deprecated: global config is always on @@ -4483,3 +4542,14 @@ Set the default inclusion fee settings for the CLI - `--rpc-header ` — RPC Header(s) to include in requests to the RPC provider, example: "X-API-Key: abc123". Multiple headers can be added by passing the option multiple times - `--network-passphrase ` — Network passphrase to sign the transaction sent to the rpc server - `-n`, `--network ` — Name of network to use from config + +## `stellar fees unset` + +Remove the default inclusion fee settings for the CLI + +**Usage:** `stellar fees unset [OPTIONS]` + +###### **Options (Global):** + +- `--global` — ⚠️ Deprecated: global config is always on +- `--config-dir ` — Location of config directory. By default, it uses `$XDG_CONFIG_HOME/stellar` if set, falling back to `~/.config/stellar` otherwise. Contains configuration files, aliases, and other persistent settings From 372b25059a06afb4ad98d0a633c10dd31eb550c9 Mon Sep 17 00:00:00 2001 From: mootz12 Date: Wed, 17 Dec 2025 10:21:50 -0500 Subject: [PATCH 09/13] chore: fix check --- cmd/soroban-cli/src/commands/fees/default.rs | 2 +- cmd/soroban-cli/src/commands/fees/mod.rs | 2 +- cmd/soroban-cli/src/commands/fees/unset.rs | 4 +--- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/cmd/soroban-cli/src/commands/fees/default.rs b/cmd/soroban-cli/src/commands/fees/default.rs index fc9d7f899a..5c635e4d18 100644 --- a/cmd/soroban-cli/src/commands/fees/default.rs +++ b/cmd/soroban-cli/src/commands/fees/default.rs @@ -1,4 +1,4 @@ -use clap::{command, ValueEnum}; +use clap::ValueEnum; use crate::{ commands::global, diff --git a/cmd/soroban-cli/src/commands/fees/mod.rs b/cmd/soroban-cli/src/commands/fees/mod.rs index fab5361349..14beaf16c9 100644 --- a/cmd/soroban-cli/src/commands/fees/mod.rs +++ b/cmd/soroban-cli/src/commands/fees/mod.rs @@ -32,7 +32,7 @@ impl Cmd { match &self { Cmd::Stats(cmd) => cmd.run(global_args).await?, Cmd::Default(cmd) => cmd.run(global_args).await?, - Cmd::Unset(cmd) => cmd.run(global_args).await?, + Cmd::Unset(cmd) => cmd.run(global_args)?, } Ok(()) } diff --git a/cmd/soroban-cli/src/commands/fees/unset.rs b/cmd/soroban-cli/src/commands/fees/unset.rs index e24c292b87..95cdc42187 100644 --- a/cmd/soroban-cli/src/commands/fees/unset.rs +++ b/cmd/soroban-cli/src/commands/fees/unset.rs @@ -1,5 +1,3 @@ -use clap::command; - use crate::{commands::global, config::locator, print::Print}; #[derive(thiserror::Error, Debug)] @@ -15,7 +13,7 @@ pub struct Cmd { } impl Cmd { - pub async fn run(&self, global_args: &global::Args) -> Result<(), Error> { + pub fn run(&self, global_args: &global::Args) -> Result<(), Error> { let printer = Print::new(global_args.quiet); self.config_locator.write_default_inclusion_fee(None)?; printer.infoln("The default inclusion fee has been cleared"); From c020e7d6e0112f3ad132c149cf956222acacf4c4 Mon Sep 17 00:00:00 2001 From: mootz12 Date: Mon, 22 Dec 2025 13:27:41 -0500 Subject: [PATCH 10/13] chore: use consistent fn naming for inclusion fee config --- cmd/soroban-cli/src/commands/fees/default.rs | 2 +- cmd/soroban-cli/src/commands/fees/unset.rs | 2 +- cmd/soroban-cli/src/config/locator.rs | 8 ++++++-- cmd/soroban-cli/src/config/mod.rs | 9 +++++++-- 4 files changed, 15 insertions(+), 6 deletions(-) diff --git a/cmd/soroban-cli/src/commands/fees/default.rs b/cmd/soroban-cli/src/commands/fees/default.rs index 5c635e4d18..eaf0c753eb 100644 --- a/cmd/soroban-cli/src/commands/fees/default.rs +++ b/cmd/soroban-cli/src/commands/fees/default.rs @@ -108,7 +108,7 @@ impl Cmd { } self.config_locator - .write_default_inclusion_fee(Some(inclusion_fee))?; + .write_default_inclusion_fee(inclusion_fee)?; printer.infoln(format!( "The default inclusion fee is set to `{inclusion_fee}`" diff --git a/cmd/soroban-cli/src/commands/fees/unset.rs b/cmd/soroban-cli/src/commands/fees/unset.rs index 95cdc42187..86ee1bb87c 100644 --- a/cmd/soroban-cli/src/commands/fees/unset.rs +++ b/cmd/soroban-cli/src/commands/fees/unset.rs @@ -15,7 +15,7 @@ pub struct Cmd { impl Cmd { pub fn run(&self, global_args: &global::Args) -> Result<(), Error> { let printer = Print::new(global_args.quiet); - self.config_locator.write_default_inclusion_fee(None)?; + self.config_locator.unset_default_inclusion_fee()?; printer.infoln("The default inclusion fee has been cleared"); Ok(()) } diff --git a/cmd/soroban-cli/src/config/locator.rs b/cmd/soroban-cli/src/config/locator.rs index 8f4d4d14d8..0d279162ab 100644 --- a/cmd/soroban-cli/src/config/locator.rs +++ b/cmd/soroban-cli/src/config/locator.rs @@ -215,10 +215,10 @@ impl Args { Config::new()?.set_identity(name).save() } - pub fn write_default_inclusion_fee(&self, inclusion_fee: Option) -> Result<(), Error> { + pub fn write_default_inclusion_fee(&self, inclusion_fee: u32) -> Result<(), Error> { Config::new()?.set_inclusion_fee(inclusion_fee).save() } - + pub fn unset_default_identity(&self) -> Result<(), Error> { Config::new()?.unset_identity().save() } @@ -227,6 +227,10 @@ impl Args { Config::new()?.unset_network().save() } + pub fn unset_default_inclusion_fee(&self) -> Result<(), Error> { + Config::new()?.unset_inclusion_fee().save() + } + pub fn list_identities(&self) -> Result, Error> { Ok(KeyType::Identity .list_paths(&self.local_and_global()?)? diff --git a/cmd/soroban-cli/src/config/mod.rs b/cmd/soroban-cli/src/config/mod.rs index d21f5539a0..19e0c4586f 100644 --- a/cmd/soroban-cli/src/config/mod.rs +++ b/cmd/soroban-cli/src/config/mod.rs @@ -228,8 +228,8 @@ impl Config { } #[must_use] - pub fn set_inclusion_fee(mut self, uint: Option) -> Self { - self.defaults.inclusion_fee = uint; + pub fn set_inclusion_fee(mut self, uint: u32) -> Self { + self.defaults.inclusion_fee = Some(uint); self } @@ -245,6 +245,11 @@ impl Config { self } + pub fn unset_inclusion_fee(mut self) -> Self { + self.defaults.inclusion_fee = None; + self + } + pub fn save(&self) -> Result<(), locator::Error> { let toml_string = toml::to_string(&self)?; let path = cli_config_file()?; From 5848846ecfdd6161384a0b2770a4b01a46fcf156 Mon Sep 17 00:00:00 2001 From: mootz12 Date: Mon, 22 Dec 2025 14:39:15 -0500 Subject: [PATCH 11/13] chore: patch clippy warning --- cmd/soroban-cli/src/config/mod.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/cmd/soroban-cli/src/config/mod.rs b/cmd/soroban-cli/src/config/mod.rs index 19e0c4586f..8c63fb0314 100644 --- a/cmd/soroban-cli/src/config/mod.rs +++ b/cmd/soroban-cli/src/config/mod.rs @@ -245,6 +245,7 @@ impl Config { self } + #[must_use] pub fn unset_inclusion_fee(mut self) -> Self { self.defaults.inclusion_fee = None; self From 233696729f1455a70d933abe41c06f8fcb22743a Mon Sep 17 00:00:00 2001 From: mootz12 Date: Tue, 23 Dec 2025 14:51:04 -0500 Subject: [PATCH 12/13] chore: add deprecate message when fee arg is used --- cmd/soroban-cli/src/config/mod.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/cmd/soroban-cli/src/config/mod.rs b/cmd/soroban-cli/src/config/mod.rs index 8c63fb0314..cd86dc1324 100644 --- a/cmd/soroban-cli/src/config/mod.rs +++ b/cmd/soroban-cli/src/config/mod.rs @@ -7,6 +7,7 @@ use std::{ use crate::{ print::Print, signer::{self, Signer}, + utils::deprecate_message, xdr::{self, SequenceNumber, Transaction, TransactionEnvelope, TransactionV1Envelope, VecM}, Pwd, }; @@ -146,6 +147,13 @@ impl Args { /// 2. fee (via clap, arg then env var) /// 3. default of 100 stroops pub fn get_inclusion_fee(&self) -> Result { + if self.fee.is_some() { + deprecate_message( + Print::new(false), + "--fee [env: STELLAR_FEE]", + "Use `--inclusion-fee [env: STELLAR_INCLUSION_FEE]` instead.", + ); + } Ok(self.inclusion_fee.or(self.fee).unwrap_or(100)) } From 23865ce3cd144a538e42a3f40cbac12141035800 Mon Sep 17 00:00:00 2001 From: mootz12 <38118608+mootz12@users.noreply.github.com> Date: Tue, 23 Dec 2025 14:51:15 -0500 Subject: [PATCH 13/13] Update cmd/soroban-cli/src/resources.rs Co-authored-by: Nando Vieira --- cmd/soroban-cli/src/resources.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/soroban-cli/src/resources.rs b/cmd/soroban-cli/src/resources.rs index c465a81321..d000c2ddbf 100644 --- a/cmd/soroban-cli/src/resources.rs +++ b/cmd/soroban-cli/src/resources.rs @@ -20,7 +20,7 @@ pub struct Args { #[arg(long, help_heading = HEADING_RPC)] pub instruction_leeway: Option, /// Output the cost execution to stderr - #[arg(long = "cost", help_heading = HEADING_RPC)] + #[arg(long, help_heading = HEADING_RPC)] pub cost: bool, }