[package] name = "ruma-common" version = "0.10.3" description = "Common types for other ruma crates." homepage = "https://www.ruma.io/" keywords = ["matrix", "chat", "messaging", "ruma"] license = "MIT" readme = "README.md" repository = "https://github.com/ruma/ruma" edition = "2021" rust-version = "1.62" [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "docsrs"] [features] # These feature gates exist only for the tests. Disabling them results in a # compile error. default = ["client", "server"] client = [] server = [] api = ["dep:http", "dep:thiserror"] canonical-json = [] compat = ["ruma-macros/compat", "ruma-identifiers-validation/compat"] events = ["dep:thiserror"] js = ["dep:js-sys", "getrandom?/js", "uuid?/js"] markdown = ["pulldown-cmark"] rand = ["dep:rand", "dep:uuid"] unstable-exhaustive-types = [] unstable-msc1767 = [] unstable-msc2448 = [] unstable-msc2677 = [] unstable-msc2746 = [] unstable-msc2870 = [] unstable-msc3245 = ["unstable-msc3246"] unstable-msc3246 = ["unstable-msc3551", "dep:thiserror"] unstable-msc3381 = ["unstable-msc1767"] unstable-msc3488 = ["unstable-msc1767"] unstable-msc3551 = ["unstable-msc1767"] unstable-msc3552 = ["unstable-msc3551"] unstable-msc3553 = ["unstable-msc3552"] unstable-msc3554 = ["unstable-msc1767"] unstable-pdu = [] unstable-sanitize = ["dep:html5ever", "dep:phf"] unstable-unspecified = [] [dependencies] base64 = "0.13.0" bytes = "1.0.1" form_urlencoded = "1.0.0" getrandom = { version = "0.2.6", optional = true } html5ever = { version = "0.25.2", optional = true } http = { version = "0.2.2", optional = true } indexmap = { version = "1.9.1", features = ["serde"] } itoa = "1.0.1" js_int = { version = "0.2.0", features = ["serde"] } js_option = "0.1.0" percent-encoding = "2.1.0" phf = { version = "0.10.1", features = ["macros"], optional = true } pulldown-cmark = { version = "0.9.1", default-features = false, optional = true } rand = { version = "0.8.3", optional = true } regex = { version = "1.5.6", default-features = false, features = ["std", "perf"] } ruma-identifiers-validation = { version = "0.9.0", path = "../ruma-identifiers-validation", default-features = false } ruma-macros = { version = "0.10.3", path = "../ruma-macros" } serde = { version = "1.0.118", features = ["derive"] } serde_json = { version = "1.0.64", features = ["raw_value"] } thiserror = { version = "1.0.26", optional = true } tracing = "0.1.25" url = "2.2.2" uuid = { version = "1.0.0", optional = true, features = ["v4"] } wildmatch = "2.0.0" # dev-dependencies can't be optional, so this is a regular dependency criterion = { version = "0.3.3", optional = true } [target.'cfg(all(target_arch = "wasm32", target_os = "unknown"))'.dependencies] js-sys = { version = "0.3", optional = true } [dev-dependencies] assert_matches = "1.5.0" assign = "1.1.1" http = "0.2.2" maplit = "1.0.2" trybuild = "1.0.42" [[bench]] name = "event_deserialize" harness = false required-features = ["criterion"]