[package]
edition = "2024"
rust-version = "1.85"
name = "chie-core"
version = "0.2.0"
authors = ["COOLJAPAN OU"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Core protocol logic for CHIE Protocol"
readme = "README.md"
keywords = [
"chie",
"protocol",
"p2p",
"distributed",
"content-delivery",
]
categories = [
"network-programming",
"asynchronous",
"caching",
]
license = "Apache-2.0"
repository = "https://github.com/cool-japan/chie"
resolver = "2"
[lib]
name = "chie_core"
path = "src/lib.rs"
[[test]]
name = "bandwidth_proof_pipeline"
path = "tests/bandwidth_proof_pipeline.rs"
[[test]]
name = "stress_tests"
path = "tests/stress_tests.rs"
[[bench]]
name = "adaptive_ratelimit_bench"
path = "benches/adaptive_ratelimit_bench.rs"
[[bench]]
name = "adaptive_retry_bench"
path = "benches/adaptive_retry_bench.rs"
[[bench]]
name = "alerting_bench"
path = "benches/alerting_bench.rs"
[[bench]]
name = "analytics_bench"
path = "benches/analytics_bench.rs"
harness = false
[[bench]]
name = "anomaly_bench"
path = "benches/anomaly_bench.rs"
harness = false
[[bench]]
name = "auto_repair_bench"
path = "benches/auto_repair_bench.rs"
[[bench]]
name = "backup_bench"
path = "benches/backup_bench.rs"
harness = false
[[bench]]
name = "bandwidth_estimation_bench"
path = "benches/bandwidth_estimation_bench.rs"
[[bench]]
name = "batch_bench"
path = "benches/batch_bench.rs"
[[bench]]
name = "cache_admission_bench"
path = "benches/cache_admission_bench.rs"
[[bench]]
name = "cache_bench"
path = "benches/cache_bench.rs"
harness = false
[[bench]]
name = "cache_invalidation_bench"
path = "benches/cache_invalidation_bench.rs"
[[bench]]
name = "cache_warming_bench"
path = "benches/cache_warming_bench.rs"
[[bench]]
name = "checkpoint_bench"
path = "benches/checkpoint_bench.rs"
[[bench]]
name = "chunk_encryption_bench"
path = "benches/chunk_encryption_bench.rs"
[[bench]]
name = "circuit_breaker_bench"
path = "benches/circuit_breaker_bench.rs"
[[bench]]
name = "compression_bench"
path = "benches/compression_bench.rs"
harness = false
[[bench]]
name = "config_bench"
path = "benches/config_bench.rs"
[[bench]]
name = "connection_multiplexing_bench"
path = "benches/connection_multiplexing_bench.rs"
[[bench]]
name = "content_aware_cache_bench"
path = "benches/content_aware_cache_bench.rs"
[[bench]]
name = "content_bench"
path = "benches/content_bench.rs"
harness = false
[[bench]]
name = "content_router_bench"
path = "benches/content_router_bench.rs"
harness = false
[[bench]]
name = "dashboard_bench"
path = "benches/dashboard_bench.rs"
[[bench]]
name = "dedup_bench"
path = "benches/dedup_bench.rs"
harness = false
[[bench]]
name = "degradation_bench"
path = "benches/degradation_bench.rs"
[[bench]]
name = "events_bench"
path = "benches/events_bench.rs"
harness = false
[[bench]]
name = "expiration_bench"
path = "benches/expiration_bench.rs"
[[bench]]
name = "forecasting_bench"
path = "benches/forecasting_bench.rs"
[[bench]]
name = "gc_bench"
path = "benches/gc_bench.rs"
harness = false
[[bench]]
name = "geo_selection_bench"
path = "benches/geo_selection_bench.rs"
[[bench]]
name = "health_bench"
path = "benches/health_bench.rs"
[[bench]]
name = "http_pool_bench"
path = "benches/http_pool_bench.rs"
[[bench]]
name = "integrity_bench"
path = "benches/integrity_bench.rs"
harness = false
[[bench]]
name = "lifecycle_bench"
path = "benches/lifecycle_bench.rs"
[[bench]]
name = "logging_bench"
path = "benches/logging_bench.rs"
[[bench]]
name = "metrics_bench"
path = "benches/metrics_bench.rs"
[[bench]]
name = "metrics_exporter_bench"
path = "benches/metrics_exporter_bench.rs"
[[bench]]
name = "network_diag_bench"
path = "benches/network_diag_bench.rs"
harness = false
[[bench]]
name = "node_bench"
path = "benches/node_bench.rs"
[[bench]]
name = "orchestrator_bench"
path = "benches/orchestrator_bench.rs"
harness = false
[[bench]]
name = "partial_chunk_bench"
path = "benches/partial_chunk_bench.rs"
[[bench]]
name = "peer_selection_bench"
path = "benches/peer_selection_bench.rs"
harness = false
[[bench]]
name = "pinning_bench"
path = "benches/pinning_bench.rs"
harness = false
[[bench]]
name = "popularity_bench"
path = "benches/popularity_bench.rs"
harness = false
[[bench]]
name = "prefetch_bench"
path = "benches/prefetch_bench.rs"
harness = false
[[bench]]
name = "priority_eviction_bench"
path = "benches/priority_eviction_bench.rs"
[[bench]]
name = "profiler_bench"
path = "benches/profiler_bench.rs"
harness = false
[[bench]]
name = "proof_submit_bench"
path = "benches/proof_submit_bench.rs"
harness = false
[[bench]]
name = "protocol_bench"
path = "benches/protocol_bench.rs"
harness = false
[[bench]]
name = "qos_bench"
path = "benches/qos_bench.rs"
[[bench]]
name = "quic_transport_bench"
path = "benches/quic_transport_bench.rs"
harness = false
[[bench]]
name = "ratelimit_bench"
path = "benches/ratelimit_bench.rs"
harness = false
[[bench]]
name = "reputation_bench"
path = "benches/reputation_bench.rs"
harness = false
[[bench]]
name = "request_pipeline_bench"
path = "benches/request_pipeline_bench.rs"
[[bench]]
name = "resilience_bench"
path = "benches/resilience_bench.rs"
harness = false
[[bench]]
name = "resource_mgmt_bench"
path = "benches/resource_mgmt_bench.rs"
[[bench]]
name = "storage_bench"
path = "benches/storage_bench.rs"
harness = false
[[bench]]
name = "storage_health_bench"
path = "benches/storage_health_bench.rs"
[[bench]]
name = "streaming_bench"
path = "benches/streaming_bench.rs"
harness = false
[[bench]]
name = "streaming_verification_bench"
path = "benches/streaming_verification_bench.rs"
[[bench]]
name = "system_coordinator_bench"
path = "benches/system_coordinator_bench.rs"
[[bench]]
name = "tier_migration_bench"
path = "benches/tier_migration_bench.rs"
[[bench]]
name = "tiered_cache_bench"
path = "benches/tiered_cache_bench.rs"
[[bench]]
name = "tiered_storage_bench"
path = "benches/tiered_storage_bench.rs"
harness = false
[[bench]]
name = "transaction_bench"
path = "benches/transaction_bench.rs"
[[bench]]
name = "utils_bench"
path = "benches/utils_bench.rs"
harness = false
[[bench]]
name = "validation_bench"
path = "benches/validation_bench.rs"
harness = false
[[bench]]
name = "wal_bench"
path = "benches/wal_bench.rs"
[dependencies.anyhow]
version = "1.0"
[dependencies.chie-crypto]
version = "0.2.0"
[dependencies.chie-p2p]
version = "0.2.0"
[dependencies.chie-shared]
version = "0.2.0"
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.hex]
version = "0.4"
[dependencies.oxiarc-deflate]
version = "0.2.6"
[dependencies.oxicode]
version = "0.2"
features = [
"serde",
"derive",
]
[dependencies.quinn]
version = "0.11"
[dependencies.rand]
version = "0.10"
[dependencies.rcgen]
version = "0.14"
[dependencies.reqwest]
version = "0.13"
features = [
"json",
"multipart",
]
[dependencies.rustls]
version = "0.23"
features = ["ring"]
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.sysinfo]
version = "0.38"
[dependencies.thiserror]
version = "2.0"
[dependencies.tokio]
version = "1.51"
features = ["full"]
[dependencies.tracing]
version = "0.1"
[dependencies.uuid]
version = "1.23"
features = [
"v4",
"serde",
]
[dev-dependencies.criterion]
version = "0.8"
features = ["html_reports"]
[dev-dependencies.tempfile]
version = "3.27"
[target."cfg(unix)".dependencies.libc]
version = "0.2"