[package] name = "concrete-fft" version = "0.5.1" edition = "2021" authors = ["sarah el kazdadi "] description = "Concrete-FFT is a pure Rust high performance fast Fourier transform library." readme = "README.md" repository = "https://github.com/zama-ai/concrete-fft" license = "BSD-3-Clause-Clear" homepage = "https://zama.ai/" keywords = ["fft"] [dependencies] aligned-vec = { version = "0.5", default-features = false } bytemuck = "1" dyn-stack = { version = "0.10", default-features = false } num-complex = { version = "0.4", features = ["bytemuck"] } pulp = { version = "0.18.22", default-features = false } serde = { version = "1.0", optional = true, default-features = false } [target.'cfg(target_arch = "wasm32")'.dependencies] js-sys = "0.3" [features] default = ["std"] fft128 = [] nightly = ["pulp/nightly"] std = ["pulp/std"] serde = ["dep:serde", "num-complex/serde"] [dev-dependencies] rustfft = "6.0" rand = "0.8" bincode = "1.3" more-asserts = "0.3.1" serde_json = "1.0.96" [target.'cfg(target_arch = "wasm32")'.dev-dependencies] wasm-bindgen-test = "0.3" wasm-bindgen = "0.2.86" getrandom = { version = "0.2", features = ["js"] } [target.'cfg(all(not(target_os = "windows"), not(target_arch = "wasm32")))'.dev-dependencies] rug = "1.19.1" [target.'cfg(not(target_arch = "wasm32"))'.dev-dependencies] criterion = "0.4" fftw-sys = { version = "0.6", default-features = false, features = ["system"] } [[bench]] name = "fft" harness = false required-features = ["serde"] [package.metadata.docs.rs] all-features = true rustdoc-args = ["--html-in-header", "katex-header.html", "--cfg", "docsrs"] [profile.dev] lto = "off"