Cargo Features

[dependencies]
zyx = { version = "0.14.0", default-features = false, features = ["rand", "half", "complex", "py", "wgsl"] }
default = rand

The rand feature is set by default whenever zyx is added without default-features = false somewhere in the dependency tree.

rand default py?

Enables random number generation for randn, uniform ...

Enables rand

Optional dependencies
Support for random number generation
MIT or Apache 2.0

half py?

Enables f16 and bf16 dtypes

Enables half

Support for f16 and bf16 dtypes
MIT or Apache 2.0

Affects scalar::Scalar.from_bf16, scalar::Scalar.from_f16

complex py?

Enables complex f32 and complex f64 dtypes

Enables num-complex

Support for cf32 and cf64 dtypes
MIT or Apache 2.0

Affects scalar::Scalar.from_cf32, scalar::Scalar.from_cf64

py = complex, half, rand

Enables us to create python bindings with pyo3, annotates structs with pyclass

Enables pyo3 ^0.22.2

Pyo3 is used only for python bindings
MIT or Apache 2.0

wgsl

Enables futures

Futures for wgpu axync mess. Some functions are async, while others using polling and it's a mess that deadlocks

and wgpu ^22.1.0

Lot of dependencies from wgpu, probably just don't use that

Affects runtime::DeviceConfig.wgsl