redis-module 2.0.8

A toolkit for building Redis modules in Rust
Documentation
[workspace]
members = [".", "redismodule-rs-macros", "redismodule-rs-macros-internals"]

[workspace.package]
version = "2.0.8"
license = "BSD-3-Clause"
edition = "2021"
repository = "https://github.com/RedisLabsModules/redismodule-rs"

[package]
name = "redis-module"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
authors = ["Gavrie Philipson <gavrie@redis.com>", "Guy Korland <guy.korland@redis.com>"]
build = "build.rs"
description = "A toolkit for building Redis modules in Rust"
readme = "README.md"
keywords = ["redis", "plugin"]
categories = ["database", "api-bindings"]

[[example]]
name = "hello"
crate-type = ["cdylib"]

[[example]]
name = "string"
crate-type = ["cdylib"]

[[example]]
name = "configuration"
crate-type = ["cdylib"]

[[example]]
name = "proc_macro_commands"
crate-type = ["cdylib"]

[[example]]
name = "acl"
crate-type = ["cdylib"]

[[example]]
name = "call"
crate-type = ["cdylib"]
required-features = ["min-redis-compatibility-version-7-2"]

[[example]]
name = "keys_pos"
crate-type = ["cdylib"]

[[example]]
name = "lists"
crate-type = ["cdylib"]

[[example]]
name = "timer"
crate-type = ["cdylib"]

[[example]]
name = "threads"
crate-type = ["cdylib"]

[[example]]
name = "block"
crate-type = ["cdylib"]

[[example]]
name = "data_type"
crate-type = ["cdylib"]

[[example]]
name = "load_unload"
crate-type = ["cdylib"]

[[example]]
name = "ctx_flags"
crate-type = ["cdylib"]

[[example]]
name = "server_events"
crate-type = ["cdylib"]

[[example]]
name = "events"
crate-type = ["cdylib"]

[[example]]
name = "test_helper"
crate-type = ["cdylib"]

[[example]]
name = "info_handler_macro"
crate-type = ["cdylib"]

[[example]]
name = "info_handler_builder"
crate-type = ["cdylib"]

[[example]]
name = "info_handler_struct"
crate-type = ["cdylib"]

[[example]]
name = "info_handler_multiple_sections"
crate-type = ["cdylib"]

[[example]]
name = "info"
crate-type = ["cdylib"]

[[example]]
name = "scan_keys"
crate-type = ["cdylib"]

[[example]]
name = "stream"
crate-type = ["cdylib"]

[[example]]
name = "response"
crate-type = ["cdylib"]

[[example]]
name = "open_key_with_flags"
crate-type = ["cdylib"]

[[example]]
name = "expire"
crate-type = ["cdylib"]

[dependencies]
bitflags = "2"
libc = "0.2"
enum-primitive-derive = "^0.1"
num-traits = "^0.2"
regex = "1"
strum_macros = "0.24"
backtrace = "0.3"
linkme = "0.3"
serde = { version = "1", features = ["derive"] }
nix = { version = "0.26", default-features = false }
cfg-if = "1"
redis-module-macros-internals = { path = "./redismodule-rs-macros-internals", version = "2.0.8" }
log = "0.4"
common = { path = "./common", package = "redis-module-common", version = "0.1.1" }

[dev-dependencies]
anyhow = "1"
redis = "0.23"
lazy_static = "1"
redis-module-macros = { path = "./redismodule-rs-macros" }
redis-module = { path = "./", default-features = false }

[build-dependencies]
bindgen = { version = "0.72.1", default-features = false, features = ["logging", "prettyplease"]}
cc = "1"

[features]
default = ["min-redis-compatibility-version-6-0", "bindgen-runtime"]

# xor having minimum compatibility version
min-redis-compatibility-version-8-0 = ["redis-module/min-redis-compatibility-version-8-0"]
min-redis-compatibility-version-7-4 = ["redis-module/min-redis-compatibility-version-7-4"]
min-redis-compatibility-version-7-2 = ["redis-module/min-redis-compatibility-version-7-2"]
min-redis-compatibility-version-7-0 = ["redis-module/min-redis-compatibility-version-7-0"]
min-redis-compatibility-version-6-2 = ["redis-module/min-redis-compatibility-version-6-2"]
min-redis-compatibility-version-6-0 = ["redis-module/min-redis-compatibility-version-6-0"]

# Enable static linking to libclang in bindgen (incompatible with `bindgen-runtime`)
bindgen-static = ["bindgen/static"]
# Enable dynamic linking to libclang in bindgen (default, incompatible with `bindgen-static`)
bindgen-runtime = ["bindgen/runtime"]

# List all features here, that are not in a exclusive or relationship
all-features-but-xor = []