[package]
name          = "ohkami"
version       = "0.18.2"
edition       = "2021"
authors       = ["kanarus <kanarus786@gmail.com>"]
description   = "Build web app in intuitive and declarative code"
documentation = "https://docs.rs/ohkami"
homepage      = "https://crates.io/crates/ohkami"
repository    = "https://github.com/kana-rus/ohkami"
readme        = "../README.md"
keywords      = ["async", "http", "web", "server", "framework"]
categories    = ["asynchronous", "web-programming::http-server"]
license       = "MIT"


[package.metadata.docs.rs]
features      = ["rt_tokio"]


[dependencies]
ohkami_lib    = { version = "=0.2.3", path = "../ohkami_lib" }
ohkami_macros = { version = "=0.7.3", path = "../ohkami_macros" }

tokio         = { version = "1",     optional = true, features = ["net", "rt", "io-util", "sync", "time"] }
async-std     = { version = "1",     optional = true }
worker        = { version = "0.2.0", optional = true, features = ["d1", "queue"] }

byte_reader   = { workspace = true }
serde         = { workspace = true }

serde_json    = { version = "1.0" }
rustc-hash    = { version = "1.1" }

hmac          = { version = "0.12.1", default-features = false }
sha2          = { version = "0.10.8", default-features = false }
#sha1         = { version = "0.10.6", optional = true, default-features = false }


[features]
default       = ["testing"]

rt_tokio      = ["dep:tokio"]
rt_async-std  = ["dep:async-std"]
rt_worker     = ["dep:worker", "ohkami_macros/worker"]

nightly       = []
testing       = []
#websocket    = ["dep:sha1"]
#sse          = []

##### DEBUG #####
DEBUG = [
    "tokio?/macros",
    "tokio?/rt-multi-thread",
    "async-std?/attributes",
]
#default = [
#    "testing",
#    "nightly",
#    #"websocket",
#    "rt_tokio",
#    #"rt_async-std",
#    #"rt_worker",
#    "DEBUG",
#]