[package]
edition = "2021"
rust-version = "1.95.0"
name = "rocketmq-client-rust"
version = "1.0.0"
authors = ["mxsm <mxsm@apache.org>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Rust implementation of Apache rocketmq client"
homepage = "https://github.com/mxsm/rocketmq-rust"
readme = "README.md"
keywords = [
"rocketmq-rust",
"async",
"rocketmq-client",
"futures",
]
categories = [
"api-bindings",
"asynchronous",
]
license = "Apache-2.0"
repository = "https://github.com/mxsm/rocketmq-rust"
[features]
admin-full = [
"admin-read",
"admin-mutation",
]
admin-mutation = []
admin-read = []
default = ["admin-full"]
nameserver-dns-discovery = ["dep:hickory-resolver"]
observability = [
"rocketmq-observability/otel-traces",
"rocketmq-transport/observability-traces",
]
observability-metrics = [
"rocketmq-observability/otel-metrics",
"rocketmq-transport/observability",
]
otlp-traces = [
"observability",
"rocketmq-observability/otlp-traces",
]
test-support = []
[lib]
name = "rocketmq_client_rust"
path = "src/lib.rs"
[[example]]
name = "broadcast-consumer"
path = "examples/broadcast/push_consumer.rs"
[[example]]
name = "callback-batch-producer"
path = "examples/batch/callback_batch_producer.rs"
[[example]]
name = "client-production-benchmark"
path = "examples/benchmark/client_production_benchmark.rs"
[[example]]
name = "consumer"
path = "examples/quickstart/consumer.rs"
[[example]]
name = "dashboard-debug-client"
path = "examples/quickstart/dashboard_debug_client.rs"
[[example]]
name = "hash-selector-producer"
path = "examples/ordermessage/hash_selector_producer.rs"
[[example]]
name = "ordermessage-consumer"
path = "examples/ordermessage/ordermessage_consumer.rs"
[[example]]
name = "ordermessage-producer"
path = "examples/ordermessage/ordermessage_producer.rs"
[[example]]
name = "pop-consumer"
path = "examples/consumer/pop_consumer.rs"
[[example]]
name = "producer"
path = "examples/quickstart/producer.rs"
[[example]]
name = "random-selector-producer"
path = "examples/ordermessage/random_selector_producer.rs"
[[example]]
name = "request-callback-producer"
path = "examples/rpc/request_callback_producer.rs"
[[example]]
name = "request-producer"
path = "examples/rpc/request_producer.rs"
[[example]]
name = "simple-batch-producer"
path = "examples/batch/simple_batch_producer.rs"
[[example]]
name = "simple-producer"
path = "examples/producer/simple_producer.rs"
[[example]]
name = "transaction-producer"
path = "examples/transaction/transaction_producer.rs"
[[test]]
name = "admin_capability_compile_tests"
path = "tests/admin_capability_compile_tests.rs"
[[test]]
name = "admin_mutation_trait_compat"
path = "tests/admin_mutation_trait_compat.rs"
[[test]]
name = "batch_admin_delete"
path = "tests/batch_admin_delete.rs"
[[test]]
name = "broker_backed_smoke"
path = "tests/broker_backed_smoke.rs"
[[test]]
name = "classic_pull_equivalence"
path = "tests/classic_pull_equivalence.rs"
[[test]]
name = "client_capability_boundaries"
path = "tests/client_capability_boundaries.rs"
[[test]]
name = "client_config_behavior"
path = "tests/client_config_behavior.rs"
[[test]]
name = "client_lifecycle_probes_test"
path = "tests/client_lifecycle_probes_test.rs"
required-features = ["test-support"]
[[test]]
name = "client_runtime_ownership"
path = "tests/client_runtime_ownership.rs"
[[test]]
name = "client_runtime_scope_compile_fail"
path = "tests/client_runtime_scope_compile_fail.rs"
[[test]]
name = "integration_tests"
path = "tests/integration_tests.rs"
required-features = ["test-support"]
[[test]]
name = "latency_fault_java_compat"
path = "tests/latency_fault_java_compat.rs"
required-features = ["test-support"]
[[test]]
name = "lite_pull_assignment_registry_tests"
path = "tests/lite_pull_assignment_registry_tests.rs"
required-features = ["test-support"]
[[test]]
name = "lite_pull_capability_tests"
path = "tests/lite_pull_capability_tests.rs"
[[test]]
name = "lite_pull_concurrency_contract_tests"
path = "tests/lite_pull_concurrency_contract_tests.rs"
required-features = ["test-support"]
[[test]]
name = "lite_pull_suspend_timeout"
path = "tests/lite_pull_suspend_timeout.rs"
required-features = ["test-support"]
[[test]]
name = "model_type_identity"
path = "tests/model_type_identity.rs"
[[test]]
name = "nameserver_dns_discovery"
path = "tests/nameserver_dns_discovery.rs"
[[test]]
name = "pop_retry_policy"
path = "tests/pop_retry_policy.rs"
[[test]]
name = "producer_capability_tests"
path = "tests/producer_capability_tests.rs"
[[test]]
name = "producer_oneway_egress"
path = "tests/producer_oneway_egress.rs"
[[test]]
name = "public_api_contract"
path = "tests/public_api_contract.rs"
[[test]]
name = "public_api_exports_test"
path = "tests/public_api_exports_test.rs"
[[test]]
name = "pull_message_service_test"
path = "tests/pull_message_service_test.rs"
required-features = ["test-support"]
[[test]]
name = "rebalance_concurrent_safety_test"
path = "tests/rebalance_concurrent_safety_test.rs"
required-features = ["test-support"]
[[test]]
name = "remoting_defaults_startup"
path = "tests/remoting_defaults_startup.rs"
[[test]]
name = "send_oneway_tests"
path = "tests/send_oneway_tests.rs"
[[test]]
name = "socks_proxy_config"
path = "tests/socks_proxy_config.rs"
[[test]]
name = "target_recursion_limit_contract"
path = "tests/target_recursion_limit_contract.rs"
[[test]]
name = "thread_local_index_test"
path = "tests/thread_local_index_test.rs"
[[test]]
name = "transaction_producer_test"
path = "tests/transaction_producer_test.rs"
[[test]]
name = "transport_security_profiles"
path = "tests/transport_security_profiles.rs"
[[test]]
name = "typed_error_client_flow_tests"
path = "tests/typed_error_client_flow_tests.rs"
[[test]]
name = "windows_consumer_process_startup"
path = "tests/windows_consumer_process_startup.rs"
[[bench]]
name = "client_consume_pipeline_benchmark"
path = "benches/client_consume_pipeline_benchmark.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "client_hot_path_benchmark"
path = "benches/client_hot_path_benchmark.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "client_pull_scheduler_benchmark"
path = "benches/client_pull_scheduler_benchmark.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "client_runtime_spawn_benchmark"
path = "benches/client_runtime_spawn_benchmark.rs"
harness = false
[[bench]]
name = "client_send_pipeline_benchmark"
path = "benches/client_send_pipeline_benchmark.rs"
harness = false
[[bench]]
name = "concurrent_clean_expire_lifecycle_bench"
path = "benches/concurrent_clean_expire_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "concurrent_optimization_benchmark"
path = "benches/concurrent_optimization_benchmark.rs"
harness = false
[[bench]]
name = "connection_event_listener_lifecycle_bench"
path = "benches/connection_event_listener_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "consumer_stats_manager_lifecycle_bench"
path = "benches/consumer_stats_manager_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "latency_fault_detector_lifecycle_bench"
path = "benches/latency_fault_detector_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "lite_pull_task_lifecycle_bench"
path = "benches/lite_pull_task_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "local_file_offset_store_lifecycle_bench"
path = "benches/local_file_offset_store_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "message_util_bench"
path = "benches/message_util_bench.rs"
harness = false
[[bench]]
name = "namesrv_refresh_lifecycle_bench"
path = "benches/namesrv_refresh_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "oneway_benchmark"
path = "benches/oneway_benchmark.rs"
harness = false
[[bench]]
name = "orderly_lock_periodic_lifecycle_bench"
path = "benches/orderly_lock_periodic_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "pop_orderly_lock_refresh_lifecycle_bench"
path = "benches/pop_orderly_lock_refresh_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "produce_accumulator_benchmark"
path = "benches/produce_accumulator_benchmark.rs"
harness = false
[[bench]]
name = "produce_accumulator_guard_lifecycle_bench"
path = "benches/produce_accumulator_guard_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "producer_oneway_egress"
path = "benches/producer_oneway_egress.rs"
harness = false
[[bench]]
name = "pull_message_service_lifecycle_bench"
path = "benches/pull_message_service_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "rebalance_service_lifecycle_bench"
path = "benches/rebalance_service_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "request_future_holder_lifecycle_bench"
path = "benches/request_future_holder_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[[bench]]
name = "select_queue_benchmark"
path = "benches/select_queue_benchmark.rs"
harness = false
[[bench]]
name = "thread_local_index_bench"
path = "benches/thread_local_index_bench.rs"
harness = false
[[bench]]
name = "trace_worker_lifecycle_bench"
path = "benches/trace_worker_lifecycle_bench.rs"
harness = false
required-features = ["test-support"]
[dependencies.arc-swap]
version = "1.9"
[dependencies.bytes]
version = "1.11.1"
[dependencies.cheetah-string]
version = "3.1.0"
features = [
"serde",
"bytes",
"simd",
]
[dependencies.dashmap]
version = "6.2.1"
[dependencies.futures]
version = "0.3"
[dependencies.hickory-resolver]
version = "0.26.1"
features = [
"system-config",
"tokio",
]
optional = true
default-features = false
[dependencies.num_cpus]
version = "1.17"
[dependencies.parking_lot]
version = "0.12"
[dependencies.rand]
version = "0.10.1"
[dependencies.rocketmq-auth]
version = "1.0.0"
[dependencies.rocketmq-error]
version = "1.0.0"
[dependencies.rocketmq-model]
version = "1.0.0"
[dependencies.rocketmq-observability]
version = "1.0.0"
[dependencies.rocketmq-protocol]
version = "1.0.0"
[dependencies.rocketmq-runtime]
version = "1.0.0"
[dependencies.rocketmq-security-api]
version = "1.0.0"
[dependencies.rocketmq-transport]
version = "1.0.0"
features = ["socks"]
default-features = false
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.smallvec]
version = "1.13"
[dependencies.tokio]
version = "1.52"
features = [
"fs",
"io-std",
"io-util",
"macros",
"net",
"process",
"rt-multi-thread",
"signal",
"sync",
"time",
]
[dependencies.tokio-util]
version = "0.7.18"
features = [
"codec",
"compat",
"io-util",
"net",
"rt",
"time",
]
[dependencies.tracing]
version = "0.1.44"
[dependencies.trait-variant]
version = "0.1.2"
[dev-dependencies.criterion]
version = "0.8.2"
features = ["async_tokio"]
[dev-dependencies.pkcs8]
version = "0.11.0"
features = [
"encryption",
"getrandom",
"pem",
"std",
]
[dev-dependencies.rcgen]
version = "0.14"
[dev-dependencies.rocketmq-transport]
version = "1.0.0"
features = [
"socks",
"test-support",
"tls",
]
default-features = false
[dev-dependencies.tempfile]
version = "3.27.0"
[dev-dependencies.tokio]
version = "1.52"
features = [
"fs",
"io-std",
"io-util",
"macros",
"net",
"process",
"rt-multi-thread",
"signal",
"sync",
"time",
"test-util",
]
[dev-dependencies.tokio-rustls]
version = "0.26"
[dev-dependencies.trybuild]
version = "1.0.116"