[package]
edition = "2024"
name = "edge-rs"
version = "0.3.2"
authors = ["Gregor Lueg <gregorlueg@me.com>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Negative binomial differential expression for bulk and single-cell RNA-seq: the edgeR numerical stack and NEBULA mixed models."
readme = "README.md"
keywords = [
"bioinformatics",
"rna-seq",
"statistics",
"single-cell",
"glm",
]
categories = [
"science",
"mathematics",
]
license = "MIT"
repository = "https://github.com/GregorLueg/edge-rs"
[features]
default = []
gpu = [
"cubecl",
"cubecl-utils-rs",
]
gpu-tests = ["gpu"]
[lib]
name = "edge_rs"
path = "src/lib.rs"
[[test]]
name = "e2e_bulk_classic"
path = "tests/e2e_bulk_classic.rs"
[[test]]
name = "e2e_bulk_glm"
path = "tests/e2e_bulk_glm.rs"
[[test]]
name = "e2e_bulk_ql"
path = "tests/e2e_bulk_ql.rs"
[[test]]
name = "e2e_ebayes"
path = "tests/e2e_ebayes.rs"
[[test]]
name = "e2e_nebula"
path = "tests/e2e_nebula.rs"
[[test]]
name = "e2e_nebula_gpu"
path = "tests/e2e_nebula_gpu.rs"
[[test]]
name = "e2e_voom"
path = "tests/e2e_voom.rs"
[[bench]]
name = "bulk_bench"
path = "benches/bulk_bench.rs"
harness = false
[[bench]]
name = "nebula_bench"
path = "benches/nebula_bench.rs"
harness = false
[[bench]]
name = "nebula_gpu_bench"
path = "benches/nebula_gpu_bench.rs"
harness = false
required-features = ["gpu"]
[dependencies.cubecl]
version = "0.11.0"
features = ["wgpu"]
optional = true
[dependencies.cubecl-utils-rs]
version = "0.2.0"
optional = true
[dependencies.faer]
version = "0.24.4"
features = [
"std",
"rayon",
"sparse-linalg",
"rand",
]
default-features = false
[dependencies.faer-traits]
version = "0.24.0"
[dependencies.num-traits]
version = "0.2.19"
[dependencies.rayon]
version = "1.11.0"
[dependencies.rustc-hash]
version = "2.1.1"
[dependencies.statrs]
version = "0.18.0"
[dependencies.thiserror]
version = "2.0.18"
[dependencies.wide]
version = "1.4.0"
[dev-dependencies.approx]
version = "0.5.1"
[dev-dependencies.rand]
version = "0.9.2"
[dev-dependencies.rand_distr]
version = "0.5.1"
[profile.release]
opt-level = 3
lto = "thin"
codegen-units = 4