[package] name = "eternaltwin_rest" version = "0.16.0" authors = ["Charles Samborski "] description = "HTTP REST interface for Eternal-Twin" documentation = "https://gitlab.com/eternaltwin/eternaltwin" homepage = "https://gitlab.com/eternaltwin/eternaltwin" repository = "https://gitlab.com/eternaltwin/eternaltwin" readme = "./README.md" keywords = ["etwin"] license.workspace = true edition.workspace = true rust-version.workspace = true [dependencies] axum = { workspace = true, features = ["form", "json", "matched-path", "original-uri", "query", "tokio"] } axum-extra = { workspace = true, features = ["cookie", "typed-header", "protobuf"] } async-trait = "0.1.66" bytes = { workspace = true } compact_str = { version = "0.7.1", features = ["serde"] } cookie = "0.18.0" eternaltwin_auth_store = { version = "0.16.0", path = "../auth_store" } eternaltwin_config = { version = "0.16.0", path = "../config" } eternaltwin_core = { version = "0.16.0", path = "../core" } eternaltwin_dinoparc_store = { version = "0.16.0", path = "../dinoparc_store" } eternaltwin_email_formatter = { version = "0.16.0", path = "../email_formatter" } eternaltwin_forum_store = { version = "0.16.0", path = "../forum_store" } eternaltwin_hammerfest_store = { version = "0.16.0", path = "../hammerfest_store" } eternaltwin_job_store = { version = "0.16.0", path = "../job_store" } eternaltwin_link_store = { version = "0.16.0", path = "../link_store" } eternaltwin_log = { version = "0.16.0", path = "../log" } eternaltwin_mailer = { version = "0.16.0", path = "../mailer", features = ["store-mem", "store-pg", "client-smtp", "client-mock"] } eternaltwin_oauth_provider_store = { version = "0.16.0", path = "../oauth_provider_store" } eternaltwin_oauth_client = { version = "0.16.0", path = "../oauth_client" } eternaltwin_password = { version = "0.16.0", path = "../password" } eternaltwin_serde_tools = { version = "0.16.0", path = "../serde_tools" } eternaltwin_services = { version = "0.16.0", path = "../services" } eternaltwin_system = { version = "0.16.0", path = "../system" } eternaltwin_twinoid_store = { version = "0.16.0", path = "../twinoid_store" } eternaltwin_user_store = { version = "0.16.0", path = "../user_store" } headers = "0.4.0" mime = "0.3.16" opentelemetry = { workspace = true, features = ["logs", "logs_level_enabled", "metrics", "trace"] } opentelemetry-semantic-conventions = { workspace = true } opentelemetry-proto = { workspace = true, features = ["logs", "trace", "prost"] } opentelemetry_sdk = { workspace = true } pin-project-lite = "0.2.13" prost = { workspace = true } serde = { version = "1.0.155", features = ["derive"] } serde_json = "1.0.94" serde_urlencoded = "0.7.1" sqlx = { workspace = true, default-features = false, features = ["postgres", "runtime-tokio-rustls"] } thiserror = "1.0.39" tokio = { version = "1.26.0", features = ["full"] } tonic = { workspace = true } tower = "0.4.13" url = "2.3.1" [dev-dependencies] cookie_store = "0.19.0" eternaltwin_token_store = { version = "0.16.0", path = "../token_store" } hyper = "1.2.0" tower = "0.4.13" # TODO: Remove this workaround for serde support in `declare_*` macros [features] default = ["serde"] serde = []