[package]
authors = ["nathanielsimard <nathaniel.simard.42@gmail.com>"]
categories = ["science"]
description = "Automatic differentiation backend for the Burn framework"
edition.workspace = true
keywords = ["deep-learning", "machine-learning", "data"]
license.workspace = true
name = "burn-autodiff"
readme.workspace = true
repository = "https://github.com/tracel-ai/burn/tree/main/crates/burn-autodiff"
documentation = "https://docs.rs/burn-autodiff"
version.workspace = true

[lints]
workspace = true

[features]
default = ["std", "tracing"]
std = ["dep:parking_lot"]
export_tests = []         # check checkpointer is_empty in tests

tracing = [
    "dep:tracing",
    "burn-std/tracing",
    "burn-backend/tracing",
]

[dependencies]
burn-std = { path = "../burn-std", version = "=0.21.0-pre.2", default-features = false }
burn-backend = { path = "../burn-backend", version = "=0.21.0-pre.2", default-features = false }


derive-new = { workspace = true }
spin = { workspace = true }
parking_lot = { workspace = true, optional = true }
log = { workspace = true }
hashbrown = { workspace = true }
num-traits = { workspace = true }
portable-atomic = { workspace = true }
tracing = { workspace = true, optional = true, features = ["default"] }


[package.metadata.docs.rs]
features = ["default"]
rustdoc-args = ["--cfg", "docsrs"]
