mirror of
https://github.com/saymrwulf/risc0-curve25519-dalek-source.git
synced 2026-09-04 20:03:40 +00:00
Since Criterion can only benchmark public API, these changes just drop all internal benchmarks (e.g., benchmarks for field operations). But those are usually microbenchmarks whose meaning is kind of questionable anyways, so I don't think this is a big loss. The `bench` feature disappears, since Criterion works on stable Rust.
73 lines
2.5 KiB
TOML
73 lines
2.5 KiB
TOML
[package]
|
|
name = "curve25519-dalek"
|
|
version = "0.16.0"
|
|
authors = ["Isis Lovecruft <isis@patternsinthevoid.net>",
|
|
"Henry de Valence <hdevalence@hdevalence.ca>"]
|
|
readme = "README.md"
|
|
license = "BSD-3-Clause"
|
|
repository = "https://github.com/dalek-cryptography/curve25519-dalek"
|
|
homepage = "https://dalek.rs/curve25519-dalek"
|
|
documentation = "https://docs.rs/curve25519-dalek"
|
|
categories = ["cryptography", "no-std"]
|
|
keywords = ["cryptography", "ristretto", "curve25519", "ECC"]
|
|
description = "A pure-Rust implementation of group operations on Ristretto and Curve25519"
|
|
exclude = [
|
|
"**/.gitignore",
|
|
".gitignore",
|
|
".travis.yml",
|
|
]
|
|
build = "build.rs"
|
|
|
|
[package.metadata.docs.rs]
|
|
rustdoc-args = ["--html-in-header", ".cargo/registry/src/github.com-1ecc6299db9ec823/curve25519-dalek-0.13.2/rustdoc-include-katex-header.html"]
|
|
features = ["nightly"]
|
|
|
|
[badges]
|
|
travis-ci = { repository = "dalek-cryptography/curve25519-dalek", branch = "master"}
|
|
|
|
[dev-dependencies]
|
|
sha2 = "0.7"
|
|
serde_cbor = "0.6"
|
|
criterion = "0.2"
|
|
|
|
[[bench]]
|
|
name = "dalek_benchmarks"
|
|
harness = false
|
|
|
|
# Note: we generate precomputed tables by building the crate twice: once as
|
|
# part of build.rs, and then once "for real".
|
|
#
|
|
# This means that the [dependencies] and [build-dependencies] sections must
|
|
# match exactly, since the build.rs uses the crate itself as a library.
|
|
|
|
[dependencies]
|
|
digest = "0.7"
|
|
generic-array = "0.9"
|
|
clear_on_drop = "=0.2.3"
|
|
subtle = { version = "0.6", features = ["generic-impls"], default-features = false }
|
|
stdsimd = { version = "0.0.4", optional = true }
|
|
serde = { version = "1.0", optional = true }
|
|
rand = { version = "0.4", optional = true }
|
|
|
|
[build-dependencies]
|
|
digest = "0.7"
|
|
generic-array = "0.9"
|
|
clear_on_drop = "=0.2.3"
|
|
subtle = { version = "0.6", features = ["generic-impls"], default-features = false }
|
|
stdsimd = { version = "0.0.4", optional = true }
|
|
serde = { version = "1.0", optional = true }
|
|
# Allowing rand to be optional during builds causes a build failure when compiling for no_std targets
|
|
rand = { version = "0.4", optional = false }
|
|
|
|
[features]
|
|
nightly = ["radix_51", "subtle/nightly", "clear_on_drop/nightly"]
|
|
default = ["std"]
|
|
std = ["rand", "subtle/std"]
|
|
alloc = []
|
|
yolocrypto = ["avx2_backend"]
|
|
# Radix-51 arithmetic using u128
|
|
radix_51 = []
|
|
# Include precomputed basepoint tables. This is off by default so that build.rs can generate the tables, and then re-enabled by build.rs in the main-stage compilation.
|
|
precomputed_tables = []
|
|
# experimental avx2 support
|
|
avx2_backend = ["nightly", "stdsimd"]
|