-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathCargo.toml
154 lines (143 loc) · 4.85 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
[package]
name = "lorikeet-genome"
version = "0.8.2"
authors = ["Rhys Newell <rhys.newell94@gmail.com>"]
license = "GPL-3.0"
description = "Strain resolver and variant caller via local reassembly for metagenomics"
homepage = "https://rhysnewell.github.io/Lorikeet/"
repository = "https://github.com/rhysnewell/Lorikeet"
documentation = "https://github.com/rhysnewell/Lorikeet"
readme = "README.md"
keywords = ["bioinformatics", "metagenomics", "variant-calling", "strain-anlaysis"]
categories = ["bioinformatics::metagenomics", "bioinformatics::variant-calling", "bioinformatics::strain-analysis"]
include = [
"/src", "/LICENSE", "/README.md", "/Cargo.toml"
]
default-run = "lorikeet"
edition = "2021"
[features]
# Force openssl-sys to staticly link in the openssl library. Necessary when
# cross compiling to x86_64-unknown-linux-musl.
# vendored-openssl = ["openssl-sys/vendored"]
default = ["fst", "bam"]
fst = ["dep:pyo3"]
bam = []
[dependencies]
approx = "^0.5"
ansi_term = "^0.12"
bio = "^1.1"
bio-types = "^1.0"
bird_tool_utils = "^0.4"
bird_tool_utils-man = "^0.4"
bstr = "^0.2.17"
clap = { version="^4", features = ["cargo"] } # cargo feature required for crate_version!
clap_complete = "^4"
compare = "^0.1"
hashlink = "^0.7"
enum-ordinalize = "^3.1"
env_logger = "^0.6"
glob = "^0.3"
gkl = "^0.1.1"
indexmap = "^1.7"
itertools = "^0.8"
lazy_static = "^1.3"
log = "^0.4"
libm = "^0.2"
mathru = "^0.14"
multimap = "^0.9"
ndarray-npy = "^0.8"
ndarray = {version = "^0.15", features = ["rayon"]}
needletail = "^0.5"
nix = "0.26.2"
num = "0.4.0"
ordered-float = "1"
partitions = "^0.2"
petgraph = {version = "^0.6", features = ["stable_graph"]}
pyo3 = { version = "^0.17", optional = true }
rand = "0.6"
rayon = "^1.5.1"
roff = "^0.2"
rust-htslib = { version="^0.44", default-features = false}
serde = "^1"
serde_derive = "^1"
strum = "^0.17"
strum_macros = "^0.17"
statrs = "^0.16"
tempdir = "^0.3"
tempfile = "^3"
term = "^0.7"
indicatif = "^0.17"
scoped_threadpool = "^0.1.9"
anyhow = "1.0.70"
[lib]
bench = false
#[[bench]]
#name = "benchmarks"
#harness = false
[dev-dependencies]
assert_cli = "0.6.*"
# Run things before commit but not push
#cargo-husky = { version="1", default-features = false, features=["precommit-hook", "run-cargo-test", "run-cargo-fmt"] }
# The development profile, used for `cargo build`.
[profile.dev]
opt-level = 0 # controls the `--opt-level` the compiler builds with.
# 0-1 is good for debugging. 2 is well-optimized. Max is 3.
# 's' attempts to reduce size, 'z' reduces size even more.
debug = true # (u32 or bool) Include debug information (debug symbols).
# Equivalent to `-C debuginfo=2` compiler flag.
rpath = false # controls whether compiler should set loader paths.
# If true, passes `-C rpath` flag to the compiler.
lto = true # Link Time Optimization usually reduces size of binaries
# and _2 libraries. Increases compilation time.
# If true, passes `-C lto` flag to the compiler, and if a
# string is specified like 'thin' then `-C lto=thin` will
# be passed.
debug-assertions = true # controls whether debug assertions are enabled
# (e.g., debug_assert!() and arithmetic overflow checks)
codegen-units = 16 # if > 1 enables parallel code generation which improves
# compile times, but prevents some optimizations.
# Passes `-C codegen-units`.
panic = 'unwind' # panic strategy (`-C panic=...`), can also be 'abort'
incremental = true # whether or not incremental compilation is enabled
# This can be overridden globally with the CARGO_INCREMENTAL
# environment variable or `build.incremental` config
# variable. Incremental is only used for path sources.
overflow-checks = true # use overflow checks for integer arithmetic.
# Passes the `-C overflow-checks=...` flag to the compiler.
# The release profile, used for `cargo build --release` (and the dependencies
# for `cargo test --release`, including the local library or binary).
[profile.release]
opt-level = 3
debug = false
rpath = false
strip = true
lto = true
debug-assertions = false
codegen-units = 16
panic = 'unwind'
incremental = false
overflow-checks = false
# The testing profile, used for `cargo test` (for `cargo test --release` see
# the `release` and `bench` profiles).
[profile.test]
opt-level = 3
debug = 2
rpath = false
lto = true
debug-assertions = true
codegen-units = 16
panic = 'unwind'
incremental = true
overflow-checks = true
# The benchmarking profile, used for `cargo bench` (and the test targets and
# unit tests for `cargo test --release`).
[profile.bench]
opt-level = 3
debug = false
rpath = false
lto = true
debug-assertions = false
codegen-units = 16
panic = 'unwind'
incremental = false
overflow-checks = false