[package] name = "ruint2" description = "Unsigned integer type with cont-generic bit length" authors = ["Remco Bloemen "] version = "1.9.0" edition = "2021" homepage = "https://github.com/recmo/uint" repository = "https://github.com/recmo/uint" keywords = ["uint"] categories = ["mathematics"] readme = "Readme.md" license = "MIT" [workspace] members = ["ruint-macro"] [features] default = [] bench = ["dep:criterion", "proptest", "rand"] dyn = ["dep:smallvec"] generic_const_exprs = [] postgres = ["dep:postgres-types", "dep:bytes"] sqlx = ["dep:sqlx-core"] [[bench]] name = "criterion" harness = false path = "criterion.rs" required-features = ["bench"] [dependencies] arbitrary = { version = "1.1", optional = true } ark-ff = { version = "0.4.0", optional = true } bn-rs = { version = "0.2", optional = true } bytes = { version = "1.1", optional = true } criterion = { version = "0.4", optional = true } # Secretly dev-dependencies derive_more = "0.99.17" fastrlp = { version = "0.3.1", optional = true } alloy-rlp = { version = "0.1.0", optional = true } num-bigint = { version = "0.4.3", optional = true } parity-scale-codec = { version = "3.2.1", optional = true, features = [ "max-encoded-len" ] } postgres-types = { version = "0.2.3", optional = true } primitive-types = { version = "<1", optional = true } proptest = { version = "1.0", optional = true } pyo3 = { version = "0.18.3", optional = true } quickcheck = { version = "1.0", optional = true } rand = { version = "0.8.5", optional = true } rlp = { version = "0.5.1", optional = true } ruint2-macro = { version = "1.0.3", path = "./ruint-macro" } serde = { version = "1.0", optional = true } smallvec = { version = "1.8.0", optional = true, features = [ "union" ] } # for UintDyn # HACK: (BLOCKED) sqlx requires a runtime to be specified. # sqlx-core = { version = "0.6", optional = true, features = [ "runtime-tokio-native-tls" ] } thiserror = "1.0" valuable = { version = "0.1.0", optional = true } zeroize = { version = "1.5", optional = true } [build-dependencies] # Rust currently has no way to conditionally compile based on compiler features. # `autocfg` is a workaround, but doesn't support probing for `#[features(...)]` # yet (there's a PR though, but crates.io doesn't allow us to use it). # So instead, we do the dumb thing and just check for nightly. rustc_version = "0.4.0" [dev-dependencies] ruint2 = { path = ".", features = ["arbitrary", "proptest"] } approx = "0.5.1" ark-bn254 = "0.4.0" bincode = "1.3" coverage-helper = "0.1" hex = "0.4.3" hex-literal = "0.4.1" postgres = "0.19.3" proptest = { version = "1.0" } serde_json = "1.0" # Compilation profile for any non-workspace member. # Dependencies are optimized, even in a dev build. This improves dev performance # while having negligible impact on incremental build times. [profile.dev.package."*"] opt-level = 3 # Produce debug info for release builds [profile.release] debug = true [package.metadata.docs.rs] rustdoc-args = ["--cfg", "has_cfg_doc", "--html-in-header", ".cargo/katex-header.html"] all-features = true