[package]
name = "mircuda"
version.workspace = true
edition.workspace = true
license.workspace = true
description = "Native, explicit-stream Rust gateway to NVIDIA CUDA"
readme = "README.md"
repository.workspace = true
keywords = ["cuda", "gpu", "nvidia", "inference"]
categories = ["api-bindings", "hardware-support"]
[workspace]
members = ["macros", "sys"]
resolver = "3"
[workspace.package]
version = "0.1.0"
edition = "2024"
license = "Apache-2.0"
repository = "https://codeberg.org/mirmir/mircuda"
[workspace.dependencies]
blake3 = "1"
half = "2"
parking_lot = "0.12"
proc-macro2 = "1"
quote = "1"
syn = { version = "2", features = ["full"] }
thiserror = "2"
[features]
default = ["cutlass"]
cutlass = ["mircuda-sys/cutlass"]
[dependencies]
blake3.workspace = true
half.workspace = true
mircuda-macros = { path = "macros", version = "0.1" }
mircuda-sys = { path = "sys", version = "0.1" }
parking_lot.workspace = true
thiserror.workspace = true
[lints]
workspace = true
[workspace.lints.rust]
future_incompatible = { level = "deny", priority = -1 }
keyword_idents = { level = "deny", priority = -1 }
let_underscore = { level = "deny", priority = -1 }
nonstandard_style = { level = "deny", priority = -1 }
rust_2018_idioms = { level = "deny", priority = -1 }
rust_2021_compatibility = { level = "deny", priority = -1 }
rust_2024_compatibility = { level = "deny", priority = -1 }
unsafe_op_in_unsafe_fn = "deny"
unused = { level = "deny", priority = -1 }
unused_lifetimes = "deny"
[workspace.lints.clippy]
all = { level = "deny", priority = -1 }
cargo = { level = "deny", priority = -1 }
correctness = { level = "deny", priority = -1 }
nursery = { level = "deny", priority = -1 }
pedantic = { level = "deny", priority = -1 }
perf = { level = "deny", priority = -1 }
style = { level = "deny", priority = -1 }
suspicious = { level = "deny", priority = -1 }
arithmetic_side_effects = "allow"
blanket_clippy_restriction_lints = "allow"
cargo_common_metadata = "allow"
expect_used = "deny"
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
multiple_crate_versions = "allow"
panic = "deny"
print_stderr = "deny"
print_stdout = "deny"
self_named_module_files = "deny"
todo = "deny"
undocumented_unsafe_blocks = "deny"
unimplemented = "deny"
unwrap_used = "deny"