# 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 = "2021"
name = "hdf5-pure-rust"
version = "0.3.9"
build = false
include = [
    "/src/**/*",
    "/benches/**/*",
    "/examples/**/*",
    "/scripts/*.py",
    "/scripts/*.sh",
    "/scripts/*.R",
    "/tests/*.rs",
    "/tests/data/*.h5",
    "/tests/data/hdf5_ref/**/*",
    "/Cargo.toml",
    "/README.md",
    "/LICENSE",
    "/LICENSE-*",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Pure Rust implementation of the HDF5 file format"
homepage = "https://github.com/henriksson-lab/hdf5-pure-rs"
readme = "README.md"
keywords = [
    "hdf5",
    "h5",
    "scientific",
    "ndarray",
    "data",
]
categories = [
    "science",
    "filesystem",
    "parsing",
    "encoding",
]
license = "BSD-3-Clause"
repository = "https://github.com/henriksson-lab/hdf5-pure-rs"

[features]
blosc = ["dep:blosc2-pure-rs"]
default = ["derive"]
derive = ["dep:hdf5-pure-rust-derive"]
lz4 = ["dep:lz4_flex"]
tracehash = ["dep:tracehash"]

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

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

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

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

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

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

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

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

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

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

[[test]]
name = "attr_write_test"
path = "tests/attr_write_test.rs"

[[test]]
name = "attribute_test"
path = "tests/attribute_test.rs"

[[test]]
name = "chunked_write_test"
path = "tests/chunked_write_test.rs"

[[test]]
name = "compact_write_test"
path = "tests/compact_write_test.rs"

[[test]]
name = "compound_test"
path = "tests/compound_test.rs"

[[test]]
name = "dataset_test"
path = "tests/dataset_test.rs"

[[test]]
name = "dense_test"
path = "tests/dense_test.rs"

[[test]]
name = "derive_compile_fail"
path = "tests/derive_compile_fail.rs"

[[test]]
name = "derive_test"
path = "tests/derive_test.rs"
required-features = ["derive"]

[[test]]
name = "endian_test"
path = "tests/endian_test.rs"

[[test]]
name = "enum_test"
path = "tests/enum_test.rs"

[[test]]
name = "external_storage_test"
path = "tests/external_storage_test.rs"

[[test]]
name = "group_test"
path = "tests/group_test.rs"

[[test]]
name = "link_test"
path = "tests/link_test.rs"

[[test]]
name = "modern_chunk_index_test"
path = "tests/modern_chunk_index_test.rs"

[[test]]
name = "plist_test"
path = "tests/plist_test.rs"

[[test]]
name = "real_world_rss_test"
path = "tests/real_world_rss_test.rs"

[[test]]
name = "real_world_test"
path = "tests/real_world_test.rs"

[[test]]
name = "resize_test"
path = "tests/resize_test.rs"

[[test]]
name = "robustness_test"
path = "tests/robustness_test.rs"

[[test]]
name = "selection_test"
path = "tests/selection_test.rs"

[[test]]
name = "storage_allocation_test"
path = "tests/storage_allocation_test.rs"

[[test]]
name = "string_test"
path = "tests/string_test.rs"

[[test]]
name = "superblock_test"
path = "tests/superblock_test.rs"

[[test]]
name = "t10_write_roundtrip"
path = "tests/t10_write_roundtrip.rs"

[[test]]
name = "t11_cross_platform"
path = "tests/t11_cross_platform.rs"

[[test]]
name = "t1_reference_files"
path = "tests/t1_reference_files.rs"

[[test]]
name = "t2_corrupt_files"
path = "tests/t2_corrupt_files.rs"

[[test]]
name = "t3_datatypes"
path = "tests/t3_datatypes.rs"

[[test]]
name = "t4_datasets"
path = "tests/t4_datasets.rs"

[[test]]
name = "t6_groups_links"
path = "tests/t6_groups_links.rs"

[[test]]
name = "t7_selections"
path = "tests/t7_selections.rs"

[[test]]
name = "t8_object_headers"
path = "tests/t8_object_headers.rs"

[[test]]
name = "t9_heaps_indices"
path = "tests/t9_heaps_indices.rs"

[[test]]
name = "typed_read_test"
path = "tests/typed_read_test.rs"

[[test]]
name = "vds_test"
path = "tests/vds_test.rs"

[[test]]
name = "write_api_test"
path = "tests/write_api_test.rs"

[[test]]
name = "write_test"
path = "tests/write_test.rs"

[[bench]]
name = "benchmark"
path = "benches/benchmark.rs"
harness = false

[dependencies.bitflags]
version = "2.4"

[dependencies.blosc2-pure-rs]
version = "0.2.1"
optional = true

[dependencies.crc32fast]
version = "1.4"

[dependencies.flate2]
version = "1.0"
features = ["zlib-rs"]
default-features = false

[dependencies.hdf5-pure-rust-derive]
version = "0.3.5"
optional = true

[dependencies.lz4_flex]
version = "0.12"
optional = true

[dependencies.ndarray]
version = "0.15"

[dependencies.parking_lot]
version = "0.12"

[dependencies.tracehash]
version = "0.1"
optional = true
package = "tracehash-rs"

[dev-dependencies.criterion]
version = "0.5"

[dev-dependencies.tempfile]
version = "3.9"
