[package]
name = "fuel-tx"
version = { workspace = true }
authors = { workspace = true }
categories = { workspace = true }
edition = { workspace = true }
homepage = { workspace = true }
keywords = ["blockchain", "cryptocurrencies", "fuel", "fuel-vm"]
license = "Apache-2.0"
repository = { workspace = true }
description = "FuelVM transaction."
[dependencies]
bitflags = { workspace = true }
derivative = { version = "2.2.0", default-features = false, features = ["use_core"], optional = true }
derive_more = { version = "0.99", default-features = false, features = ["display"] }
fuel-asm = { workspace = true, default-features = false }
fuel-crypto = { workspace = true, default-features = false }
fuel-merkle = { workspace = true, default-features = false, optional = true }
fuel-types = { workspace = true, default-features = false, features = ["serde"] }
hashbrown = { version = "0.14", optional = true }
itertools = { version = "0.10", default-features = false, optional = true }
js-sys = { version = "0.3", optional = true }
postcard = { version = "1.0", features = ["alloc"] }
rand = { version = "0.8", default-features = false, features = ["std_rng"], optional = true }
serde = { version = "1.0", default-features = false, features = ["alloc", "derive"] }
serde-wasm-bindgen = { version = "0.6", optional = true }
serde_json = { version = "1.0", default-features = false, features = ["alloc"], optional = true }
strum = { version = "0.24", default-features = false, optional = true }
strum_macros = { version = "0.24", optional = true }
wasm-bindgen = { version = "0.2.88", optional = true }
[dev-dependencies]
bincode = { workspace = true }
fuel-crypto = { workspace = true, default-features = false, features = ["random"] }
fuel-tx = { path = ".", features = ["random", "serde", "test-helpers"] }
fuel-types = { workspace = true, default-features = false, features = ["random"] }
hex = { version = "0.4", default-features = false }
insta = "1.0"
quickcheck = "1.0"
quickcheck_macros = "1.0"
rand = { version = "0.8", default-features = false, features = ["std_rng"] }
rstest = "0.15"
serde_json = { version = "1.0" }
[features]
default = ["fuel-asm/default", "fuel-crypto/default", "fuel-merkle/default", "fuel-types/default", "std"]
test-helpers = ["alloc", "internals"]
internals = []
typescript = ["alloc", "js-sys", "wasm-bindgen", "serde", "serde-wasm-bindgen", "fuel-types/typescript"]
random = ["fuel-crypto/random", "fuel-types/random", "rand"]
std = ["alloc", "fuel-asm/std", "fuel-crypto/std", "fuel-merkle/std", "fuel-types/std", "itertools/default", "rand?/default", "serde/default", "hex/std"]
alloc = ["hashbrown", "fuel-types/alloc", "itertools/use_alloc", "derivative", "fuel-merkle", "strum", "strum_macros"]
serde = ["alloc", "fuel-asm/serde", "fuel-crypto/serde", "fuel-merkle/serde", "serde_json", "hashbrown/serde", "bitflags/serde"]