pilgrimage 0.16.4

A Kafka-like message broker in Rust
Documentation
[[bench]]
harness = false
name = "performance_benchmarks"
path = "benches/performance_benchmarks.rs"

[[bin]]
name = "pilgrimage"
path = "src/bin/pilgrimage.rs"

[[bin]]
name = "web"
path = "src/main.rs"

[dependencies.actix-web]
version = "4"

[dependencies.aes-gcm]
version = "0.10.3"

[dependencies.argon2]
version = "0.5"

[dependencies.async-trait]
version = "0.1"

[dependencies.bincode]
version = "1.3"

[dependencies.bytes]
version = "1.0"

[dependencies.chrono]
features = ["serde"]
version = "0.4"

[dependencies.clap]
version = "3.2.0"

[dependencies.crc32fast]
version = "1.3"

[dependencies.crossbeam-channel]
version = "0.5"

[dependencies.ctrlc]
version = "3.4.5"

[dependencies.dashmap]
version = "6.1"

[dependencies.dirs]
version = "5.0"

[dependencies.flate2]
version = "1.0.35"

[dependencies.futures-util]
version = "0.3"

[dependencies.glob]
version = "0.3.2"

[dependencies.hex]
version = "0.4"

[dependencies.hostname]
version = "0.3"

[dependencies.jsonwebtoken]
version = "8.1.1"

[dependencies.lapin]
version = "2.5.0"

[dependencies.lazy_static]
version = "1.4"

[dependencies.libc]
version = "0.2"

[dependencies.log]
version = "0.4"

[dependencies.md5]
version = "0.7.0"

[dependencies.notify]
version = "6"

[dependencies.num_cpus]
version = "1.0"

[dependencies.opentelemetry]
version = "0.20"

[dependencies.opentelemetry-jaeger]
version = "0.19"

[dependencies.opentelemetry-otlp]
version = "0.13"

[dependencies.opentelemetry-prometheus]
version = "0.13"

[dependencies.opentelemetry-semantic-conventions]
version = "0.12"

[dependencies.parking_lot]
version = "0.12.4"

[dependencies.password-hash]
features = ["std"]
version = "0.5"

[dependencies.prometheus]
version = "0.13"

[dependencies.rand]
version = "0.8.5"

[dependencies.rcgen]
optional = true
version = "0.11"

[dependencies.regex]
version = "1.5"

[dependencies.reqwest]
features = ["json"]
version = "0.12.19"

[dependencies.ring]
version = "0.16"

[dependencies.rpassword]
version = "7.0"

[dependencies.rustls]
version = "0.23"

[dependencies.rustls-native-certs]
version = "0.7"

[dependencies.rustls-pemfile]
version = "2.0"

[dependencies.serde]
features = ["derive"]
version = "1.0"

[dependencies.serde_bytes]
version = "0.11"

[dependencies.serde_json]
version = "1.0"

[dependencies.serde_yaml]
version = "0.9"

[dependencies.sha2]
version = "0.10"

[dependencies.simplelog]
version = "0.9"

[dependencies.socket2]
version = "0.5"

[dependencies.tempfile]
version = "3.2"

[dependencies.thiserror]
version = "2.0.12"

[dependencies.tokio]
features = ["full"]
version = "1"

[dependencies.tokio-amqp]
version = "2.0.0"

[dependencies.tokio-rustls]
version = "0.25"

[dependencies.tokio-util]
features = ["codec"]
version = "0.7"

[dependencies.toml]
version = "0.8"

[dependencies.tracing]
version = "0.1.41"

[dependencies.uuid]
features = ["v4", "serde"]
version = "1.0"

[dependencies.webpki-roots]
version = "0.26"

[dependencies.x509-parser]
version = "0.15"

[dev-dependencies.actix-rt]
version = "2.5"

[dev-dependencies.actix-test]
version = "0.1.5"

[dev-dependencies.assert_cmd]
version = "2"

[dev-dependencies.criterion]
version = "0.3"

[dev-dependencies.env_logger]
version = "0.10"

[dev-dependencies.predicates]
version = "3"

[dev-dependencies.tempfile]
version = "3.2"

[[example]]
name = "01_basic_messaging"
path = "examples/01_basic_messaging.rs"

[[example]]
name = "02_schema_registry"
path = "examples/02_schema_registry.rs"

[[example]]
name = "03_distributed_cluster"
path = "examples/03_distributed_cluster.rs"

[[example]]
name = "04_security_auth"
path = "examples/04_security_auth.rs"

[[example]]
name = "05_monitoring_metrics"
path = "examples/05_monitoring_metrics.rs"

[[example]]
name = "06_web_console"
path = "examples/06_web_console.rs"

[[example]]
name = "07_advanced_integration"
path = "examples/07_advanced_integration.rs"

[[example]]
name = "08_comprehensive_test"
path = "examples/08_comprehensive_test.rs"

[[example]]
name = "09_tls_demo"
path = "examples/09_tls_demo.rs"

[features]
default = []
test-certs = ["rcgen"]

[lib]
crate-type = ["rlib"]
name = "pilgrimage"
path = "src/lib.rs"

[package]
authors = ["Kenny Miller Song"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["rust-patterns"]
description = "A Kafka-like message broker in Rust"
edition = "2024"
keywords = ["kafka", "message", "broker", "rust"]
license = "MIT"
name = "pilgrimage"
readme = "README.md"
repository = "https://github.com/mila411/rust-kafka-like"
version = "0.16.4"

[profile.bench]
opt-level = 3

[profile.release]
codegen-units = 1
lto = true

[[test]]
name = "integration_auth"
path = "tests/integration_auth.rs"

[[test]]
name = "integration_disaster_recovery"
path = "tests/integration_disaster_recovery.rs"

[[test]]
name = "integration_messaging"
path = "tests/integration_messaging.rs"

[[test]]
name = "integration_performance"
path = "tests/integration_performance.rs"

[[test]]
name = "integration_schema"
path = "tests/integration_schema.rs"

[[test]]
name = "integration_security"
path = "tests/integration_security.rs"

[[test]]
name = "integration_tls"
path = "tests/integration_tls.rs"