[package]
edition = "2021"
rust-version = "1.94"
name = "fastnum"
version = "0.7.5"
authors = ["Neo"]
build = "build.rs"
exclude = [
"examples/*",
"benchmark/*",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Fast decimal numbers library"
homepage = "https://github.com/neogenie/fastnum/"
documentation = "https://docs.rs/fastnum/"
readme = "README.md"
keywords = [
"numeric",
"decimal",
"const",
"fixed-point",
"crypto",
]
categories = [
"mathematics",
"science",
"no-std",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/neogenie/fastnum"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
borsh = [
"dep:borsh",
"bnum/borsh",
]
default = ["std"]
dev = []
diesel = ["dep:diesel"]
diesel_mysql = [
"diesel",
"diesel/mysql_backend",
]
diesel_postgres = [
"diesel",
"diesel/postgres_backend",
"extra-postgres",
]
extra-postgres = ["num-traits"]
extra-postgres-encode = [
"extra-postgres",
"bytes",
"byteorder",
]
numtraits = [
"num-traits/libm",
"bnum/numtraits",
"num-integer",
]
rand = ["dep:rand"]
serde = [
"dep:serde",
"bnum/serde",
]
serde-arbitrary-precision = [
"serde",
"serde_json/arbitrary_precision",
]
sqlx = ["dep:sqlx"]
sqlx_mysql = [
"sqlx",
"sqlx/mysql",
]
sqlx_postgres = [
"sqlx",
"sqlx/postgres",
"extra-postgres-encode",
]
std = [
"num-integer/std",
"num-traits/std",
]
test-util = ["num-traits/std"]
tokio-postgres = [
"dep:tokio-postgres",
"extra-postgres-encode",
]
utoipa = [
"dep:utoipa",
"utoipa/macros",
]
zeroize = ["dep:zeroize"]
[lib]
name = "fastnum"
path = "src/lib.rs"
bench = false
[[test]]
name = "tests"
path = "tests/tests.rs"
required-features = ["test-util"]
[dependencies.bnum]
version = "0.12.0"
default-features = false
[dependencies.borsh]
version = ">= 1.0.0"
optional = true
default-features = false
[dependencies.byteorder]
version = "1.5.0"
optional = true
default-features = false
[dependencies.bytes]
version = "1"
optional = true
default-features = false
[dependencies.diesel]
version = ">=2.2.4"
features = ["numeric"]
optional = true
default-features = false
[dependencies.num-integer]
version = "0.1"
optional = true
default-features = false
[dependencies.num-traits]
version = "0.2"
optional = true
default-features = false
[dependencies.rand]
version = "0.8"
features = ["min_const_gen"]
optional = true
default-features = false
[dependencies.serde]
version = ">= 1.0.0"
optional = true
default-features = false
[dependencies.serde_json]
version = "1.0"
optional = true
default-features = false
[dependencies.sqlx]
version = ">=0.8.0"
optional = true
default-features = false
[dependencies.tokio-postgres]
version = "0.7"
optional = true
default-features = false
[dependencies.utoipa]
version = ">= 5.0.0"
optional = true
default-features = false
[dependencies.zeroize]
version = "1.6"
optional = true
default-features = false
[dev-dependencies.itertools]
version = "0.14.0"
[dev-dependencies.paste]
version = "1.0.15"
[dev-dependencies.rstest]
version = "0.23.0"
[dev-dependencies.serde_json]
version = ">=0.8.0, <2.0"
[dev-dependencies.serde_test]
version = ">= 1.0.0"
[build-dependencies]
[profile.release]
opt-level = 3
lto = true