[package] name = "rutin" version = "0.1.0" edition = "2021" author = "sqfzy" license = "MIT" description = "redis implemented using rust" readme = "README.md" homepage = "https://github.com/sqfzy/rutin" repository = "https://github.com/sqfzy/rutin" keywords = ["redis", "async", "database", "kv"] categories = ["database"] [dependencies] anyhow = "1.0.59" # error handling futures = "0.3" bytes = "1.5" # helps manage buffers clap = { version = "4.5", features = ["derive"] } config = "0.14.0" crc = "3.0.1" dashmap = { version = "6.0.0", features = ["raw-api", "inline", "rayon"] } once_cell = "1.19.0" rand = "0.8.5" skiplist = "0.5.1" tokio = { version = "1", features = ["full", "tracing"] } # async networking tracing = "0.1.40" tracing-subscriber = "0.3.18" serde = { version = "1.0", features = ["derive"] } crossbeam = { version = "0.8.4", features = ["crossbeam-queue", "nightly"] } itoa = "1.0.11" ryu = "1.0.17" tokio-util = { version = "0.7.11", features = ["full"] } atoi = "2.0.0" async-shutdown = "0.2.2" flume = { version = "0.11.0", features = ["async", "spin"] } parking_lot = "0.12.1" ahash = "0.8.11" strum = { version = "0.26", features = ["derive"] } num_cpus = "1.16.0" regex = "1.10.4" # monoio = "0.2.3" # lockfree-object-pool = "0.1.5" # async-recursion = "1.1.1" snafu = "0.8.2" # tokio-uring = { version = "0.4.0", features = ["bytes"] } backon = "0.4.4" rayon = "1.10.0" # tokio-async-drop = "0.1.0" console-subscriber = "0.3.0" try-lock = "0.2.5" kanal = "0.1.0-pre8" tokio-rustls = "0.26.0" tokio-rustls-acme = "0.3.0" rustls-pemfile = "2.1.2" rustls = "0.23.7" mlua = { version = "0.9.8", features = ["async", "lua54", "send", "vendored"] } either = "1.12.0" pin-project = "1.1.5" yoke = { version = "0.7.4", features = ["derive"] } owning_ref = "0.4.1" polonius-the-crab = "0.4.1" num-bigint = "0.4.5" memchr = "2.7.2" smallvec = "1.13.2" mimalloc = "0.1" arc-swap = "1.7.1" bus = "2.4.1" tokio-uring = "0.5.0" event-listener = "5.3.1" # bstr = "1.9.1" bytestring = "1.3.1" # neat-date-time = "0.2.0" # [target.'cfg(not(target_env = "msvc"))'.dependencies] # tikv-jemallocator = "0.5" [dev-dependencies] assert_cmd = { version = "2.0.14", features = ["color-auto"] } # redis = "0.25" criterion = { version = "0.5", features = ["async_tokio", "html_reports"] } [[bench]] name = "rutin_benchmark" harness = false # [profile.dev] # rustflags = ["--cfg", "tokio_unstable"] # [profile.release] # rustflags = ["--cfg", "tokio_unstable"] # opt-level = "z" # 或者 "s",表示进行更小的尺寸优化 opt-level = 3 # 最大优化 # lto = "fat" # 启用链接时优化(Link Time Optimization) lto = true # debug = false # 关闭调试信息 debug = false # 关闭调试信息 codegen-units = 1 # 减少代码生成单元以提高优化效果 panic = "abort" [features] debug = [] fake_client = [] fake_server = []