forc-run
Run script project. Crafts a script transaction then sends it to a running node
USAGE:
forc run [OPTIONS] [SIGNING_KEY]
ARGS:
<SIGNING_KEY> Set the key to be used for signing
OPTIONS:
--ast
Print the generated Sway AST (Abstract Syntax Tree)
--build-profile
<BUILD_PROFILE>
Name of the build profile to use.
If unspecified, forc will use debug build profile.
--contract
<CONTRACT>
32-byte contract ID that will be called during the transaction
-d
, --data
<DATA>
Hex string of data to input to script
--dca-graph
<DCA_GRAPH>
Print the computed Sway DCA graph. DCA graph is printed to the specified path. If specified '' graph is printed to stdout
--dca-graph-url-format
<DCA_GRAPH_URL_FORMAT>
Specifies the url format to be used in the generated dot file. Variables {path}, {line} {col} can be used in the provided format. An example for vscode would be: "vscode://file/{path}:{line}:{col}"
--dry-run
Only craft transaction and print it out
--error-on-warnings
Treat warnings as errors
--finalized-asm
Print the finalized ASM.
This is the state of the ASM with registers allocated and optimisations applied.
-g
, --output-debug
<DEBUG_FILE>
If set, outputs source file mapping in JSON format
--gas-limit
<LIMIT>
Gas limit for the transaction
[default: 100000000]
--gas-price
<PRICE>
Gas price for the transaction
[default: 0]
-h
, --help
Print help information
--intermediate-asm
Print the generated ASM.
This is the state of the ASM prior to performing register allocation and other ASM optimisations.
--ir
Print the generated Sway IR (Intermediate Representation)
--json-abi
By default the JSON for ABIs is formatted for human readability. By using this option JSON output will be "minified", i.e. all on one line without whitespace
--json-abi-with-callpaths
Outputs json abi with callpaths instead of names for struct and enums
--json-storage-slots
By default the JSON for initial storage slots is formatted for human readability. By using this option JSON output will be "minified", i.e. all on one line without whitespace
--locked
Requires that the Forc.lock file is up-to-date. If the lock file is missing, or it needs to be updated, Forc will exit with an error
--maturity
<MATURITY>
Block height until which tx cannot be included
[default: 0]
--node-url
<NODE_URL>
The URL of the Fuel node to which we're submitting the transaction. If unspecified,
checks the manifest's network
table, then falls back to [crate::default::NODE_URL
]
[env: FUEL_NODE_URL=]
-o
, --output-bin
<BIN_FILE>
If set, outputs a binary file representing the script bytes
--offline
Offline mode, prevents Forc from using the network when managing dependencies. Meaning it will only try to use previously downloaded dependencies
--output-directory
<OUTPUT_DIRECTORY>
The directory in which the sway compiler output artifacts are placed.
By default, this is <project-root>/out
.
-p
, --path
<PATH>
Path to the project, if not specified, current working directory will be used
-r
, --pretty-print
Pretty-print the outputs from the node
--release
Use release build plan. If a custom release plan is not specified, it is implicitly added to the manifest file.
If --build-profile is also provided, forc omits this flag and uses provided build-profile.
--simulate
Execute the transaction and return the final mutated transaction along with receipts (which includes whether the transaction reverted or not). The transaction is not inserted in the node's view of the blockchain, (i.e. it does not affect the chain state)
-t
, --terse
Terse mode. Limited warning and error output
--time-phases
Output the time elapsed over each part of the compilation process
--unsigned
Do not sign the transaction
-V
, --version
Print version information