binseq 0.9.0

A high efficiency binary format for sequencing data
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2024"
name = "binseq"
version = "0.9.0"
authors = ["Noam Teyssier <noam.teyssier@arcinstitute.org>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A high efficiency binary format for sequencing data"
documentation = "https://docs.rs/binseq"
readme = "README.md"
keywords = [
    "binary",
    "nucleotide",
    "sequencing",
    "genomics",
    "fastq",
]
categories = [
    "science::bioinformatics",
    "encoding",
    "data-structures",
]
license = "MIT"
repository = "https://github.com/arcinstitute/binseq"

[features]
anyhow = ["dep:anyhow"]
default = [
    "paraseq",
    "anyhow",
]
paraseq = [
    "dep:paraseq",
    "dep:parking_lot",
]

[lib]
name = "binseq"
path = "src/lib.rs"

[[example]]
name = "auto-write"
path = "examples/auto-write.rs"

[[example]]
name = "grep"
path = "examples/grep.rs"

[[example]]
name = "network_streaming"
path = "examples/network_streaming.rs"

[[example]]
name = "parallel_range"
path = "examples/parallel_range.rs"

[[example]]
name = "read"
path = "examples/read.rs"

[[example]]
name = "streaming"
path = "examples/streaming.rs"

[[example]]
name = "write"
path = "examples/write.rs"

[dependencies.anyhow]
version = "1.0.100"
optional = true

[dependencies.auto_impl]
version = "1.3.0"

[dependencies.bitnuc]
version = "0.4.0"

[dependencies.bytemuck]
version = "1.24.0"
features = [
    "derive",
    "extern_crate_alloc",
]

[dependencies.byteorder]
version = "1.5.0"

[dependencies.itoa]
version = "1.0.17"

[dependencies.memchr]
version = "2.7.6"

[dependencies.memmap2]
version = "0.9.9"

[dependencies.num_cpus]
version = "1.17.0"

[dependencies.paraseq]
version = "0.4.8"
optional = true

[dependencies.parking_lot]
version = "0.12.5"
optional = true

[dependencies.rand]
version = "0.9.2"
features = ["small_rng"]

[dependencies.sucds]
version = "0.8.3"

[dependencies.thiserror]
version = "2.0.17"

[dependencies.zstd]
version = "0.13.3"
features = ["zstdmt"]

[dev-dependencies.anyhow]
version = "1.0.100"

[dev-dependencies.clap]
version = "4.5.54"
features = ["derive"]

[dev-dependencies.paraseq]
version = "0.4.8"

[dev-dependencies.parking_lot]
version = "0.12.5"

[lints.clippy]
cast_possible_truncation = "allow"
missing_errors_doc = "allow"

[lints.clippy.pedantic]
level = "warn"
priority = -1