openmls 0.7.2

A Rust implementation of the Messaging Layer Security (MLS) protocol, as defined in RFC 9420.
Documentation
# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
name = "openmls"
version = "0.7.2"
authors = ["OpenMLS Authors"]
build = false
exclude = ["/test_vectors"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A Rust implementation of the Messaging Layer Security (MLS) protocol, as defined in RFC 9420."
documentation = "https://docs.rs/openmls"
readme = "README.md"
keywords = [
    "MLS",
    "IETF",
    "RFC9420",
    "Encryption",
    "E2EE",
]
license = "MIT"
repository = "https://github.com/openmls/openmls/"

[features]
backtrace = ["dep:backtrace"]
content-debug = []
crypto-debug = []
crypto-subtle = []
extensions-draft-08 = [
    "openmls_traits/extensions-draft-08",
    "openmls_memory_storage/extensions-draft-08",
    "openmls_sqlite_storage/extensions-draft-08",
]
fork-resolution = []
js = [
    "dep:getrandom_old",
    "dep:fluvio-wasm-timer",
    "getrandom_old/js",
]
libcrux-provider = [
    "dep:openmls_libcrux_crypto",
    "openmls_test?/libcrux-provider",
]
libcrux-provider-js = [
    "dep:getrandom",
    "getrandom/wasm_js",
]
sqlite-provider = [
    "dep:openmls_sqlite_storage",
    "openmls_test?/sqlite-provider",
]
test-utils = [
    "dep:serde_json",
    "dep:itertools",
    "openmls_rust_crypto/test-utils",
    "dep:rand",
    "dep:wasm-bindgen-test",
    "dep:openmls_basic_credential",
    "dep:openmls_memory_storage",
    "dep:openmls_test",
    "dep:once_cell",
    "backtrace",
]

[lib]
name = "openmls"
path = "src/lib.rs"

[[example]]
name = "large-groups"
path = "examples/large-groups.rs"

[[test]]
name = "book_code"
path = "tests/book_code.rs"

[[test]]
name = "book_code_discard_commit"
path = "tests/book_code_discard_commit.rs"

[[test]]
name = "book_code_discard_welcome"
path = "tests/book_code_discard_welcome.rs"

[[test]]
name = "book_code_fork_resolution"
path = "tests/book_code_fork_resolution.rs"

[[test]]
name = "decryption_key_index"
path = "tests/decryption_key_index.rs"

[[test]]
name = "external_commit"
path = "tests/external_commit.rs"

[[test]]
name = "interop_scenarios"
path = "tests/interop_scenarios.rs"

[[test]]
name = "join"
path = "tests/join.rs"

[[test]]
name = "managed_api"
path = "tests/managed_api.rs"

[[test]]
name = "mls_group"
path = "tests/mls_group.rs"

[[test]]
name = "opaque_extension"
path = "tests/opaque_extension.rs"

[[test]]
name = "own_messages"
path = "tests/own_messages.rs"

[[test]]
name = "store"
path = "tests/store.rs"

[[bench]]
name = "benchmark"
path = "benches/benchmark.rs"
harness = false

[dependencies.backtrace]
version = "0.3"
optional = true

[dependencies.fluvio-wasm-timer]
version = "0.2.5"
optional = true

[dependencies.getrandom]
version = "0.3.2"
optional = true

[dependencies.getrandom_old]
version = "0.2.15"
optional = true
package = "getrandom"

[dependencies.itertools]
version = "0.14"
optional = true

[dependencies.log]
version = "0.4"
features = ["std"]

[dependencies.once_cell]
version = "1.19.0"
optional = true

[dependencies.openmls_basic_credential]
version = "0.4.1"
features = [
    "clonable",
    "test-utils",
]
optional = true

[dependencies.openmls_libcrux_crypto]
version = "0.2.2"
optional = true

[dependencies.openmls_memory_storage]
version = "0.4.1"
features = ["test-utils"]
optional = true

[dependencies.openmls_rust_crypto]
version = "0.4.2"
optional = true

[dependencies.openmls_sqlite_storage]
version = "0.1.1"
optional = true

[dependencies.openmls_test]
version = "0.2.1"
optional = true

[dependencies.openmls_traits]
version = "0.4.1"

[dependencies.rand]
version = "0.8"
optional = true

[dependencies.rayon]
version = "^1.5.0"

[dependencies.serde]
version = "^1.0"
features = ["derive"]

[dependencies.serde_bytes]
version = "0.11.17"

[dependencies.serde_json]
version = "1.0"
optional = true

[dependencies.thiserror]
version = "^2.0"

[dependencies.tls_codec]
version = "0.4.2"
features = [
    "derive",
    "serde",
    "mls",
]

[dependencies.wasm-bindgen-test]
version = "0.3.50"
optional = true

[dependencies.zeroize]
version = "1.8.1"

[dev-dependencies.base64]
version = "0.22.1"

[dev-dependencies.clap]
version = "4"
features = ["derive"]

[dev-dependencies.criterion]
version = "^0.5"
default-features = false

[dev-dependencies.flate2]
version = "1.0"

[dev-dependencies.hex]
version = "0.4"
features = ["serde"]

[dev-dependencies.indicatif]
version = "0.17.8"

[dev-dependencies.lazy_static]
version = "1.4"

[dev-dependencies.openmls_traits]
version = "0.4.1"
features = ["test-utils"]

[dev-dependencies.pretty_env_logger]
version = "0.5"

[dev-dependencies.tempfile]
version = "3"

[dev-dependencies.wasm-bindgen]
version = "0.2.100"

[dev-dependencies.wasm-bindgen-test]
version = "0.3.50"

[target.'cfg(any(target_arch = "wasm32", all(target_arch = "x86", target_os = "windows")))'.dev-dependencies]

[target.'cfg(not(any(target_arch = "wasm32", all(target_arch = "x86", target_os = "windows"))))'.dev-dependencies]