[[bench]]
harness = false
name = "adaptive_benchmarks"
path = "benches/adaptive_benchmarks.rs"
[[bench]]
name = "adaptive_network_bench"
path = "benches/adaptive_network_bench.rs"
[[bench]]
name = "dht_benchmark"
path = "benches/dht_benchmark.rs"
[[bench]]
name = "eigentrust_bench"
path = "benches/eigentrust_bench.rs"
[[bench]]
name = "gossipsub_bench"
path = "benches/gossipsub_bench.rs"
[[bench]]
name = "integration_benchmarks"
path = "benches/integration_benchmarks.rs"
[[bench]]
name = "security_benchmark"
path = "benches/security_benchmark.rs"
[[bench]]
name = "simple_bench"
path = "benches/simple_bench.rs"
[[bench]]
harness = false
name = "validation_bench"
path = "benches/validation_bench.rs"
[dependencies.ant-quic]
features = ["pqc"]
version = "0.10.4"
[dependencies.anyhow]
version = "1.0"
[dependencies.argon2]
version = "0.5"
[dependencies.array-init]
version = "2.1"
[dependencies.async-trait]
version = "0.1"
[dependencies.axum]
version = "0.7"
[dependencies.base64]
version = "0.21"
[dependencies.bincode]
version = "1.3"
[dependencies.blake3]
version = "1.5"
[dependencies.bytes]
version = "1.5"
[dependencies.chacha20poly1305]
version = "0.10"
[dependencies.chrono]
features = ["serde"]
version = "0.4.38"
[dependencies.clap]
features = ["derive"]
version = "4.4"
[dependencies.deadpool-sqlite]
version = "0.12.1"
[dependencies.dirs]
version = "5.0"
[dependencies.fastrand]
version = "2.0"
[dependencies.flate2]
version = "1.0"
[dependencies.four-word-networking]
version = "2.6"
[dependencies.futures]
version = "0.3"
[dependencies.hex]
version = "0.4"
[dependencies.hkdf]
version = "0.12"
[dependencies.hmac]
version = "0.12"
[dependencies.lazy_static]
version = "1.4"
[dependencies.log]
version = "0.4"
[dependencies.lru]
version = "0.12"
[dependencies.num_cpus]
version = "1.16"
[dependencies.once_cell]
version = "1.19"
[dependencies.parking_lot]
version = "0.12"
[dependencies.prometheus]
default-features = false
optional = true
version = "0.14"
[dependencies.rand]
version = "0.8"
[dependencies.rand_chacha]
version = "0.3"
[dependencies.rand_core]
version = "0.6"
[dependencies.regex]
version = "1.10"
[dependencies.reqwest]
default-features = false
features = ["stream", "rustls-tls"]
version = "0.12"
[dependencies.rusqlite]
features = ["chrono", "serde_json", "uuid", "bundled"]
version = "0.37"
[dependencies.saorsa-pqc]
version = "0.3.12"
[dependencies.saorsa-rsps]
version = "0.2.0"
[dependencies.saorsa-webrtc]
version = "0.1.2"
[dependencies.serde]
features = ["derive"]
version = "1.0"
[dependencies.serde-big-array]
version = "0.5"
[dependencies.serde_cbor]
version = "0.11"
[dependencies.serde_json]
version = "1.0"
[dependencies.sha2]
version = "0.10.9"
[dependencies.smallvec]
features = ["serde"]
version = "1.13"
[dependencies.statrs]
version = "0.16"
[dependencies.thiserror]
version = "1.0"
[dependencies.time]
features = ["serde", "parsing", "formatting"]
version = "0.3.36"
[dependencies.tokio]
features = ["full"]
version = "1.35"
[dependencies.tokio-stream]
version = "0.1"
[dependencies.toml]
version = "0.8"
[dependencies.tower]
features = ["util"]
version = "0.4"
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
features = ["env-filter"]
version = "0.3"
[dependencies.uuid]
features = ["v4", "serde"]
version = "1.6"
[dependencies.zeroize]
features = ["derive"]
version = "1.7"
[dev-dependencies.approx]
version = "0.5"
[dev-dependencies.clap]
features = ["derive"]
version = "4.4"
[dev-dependencies.criterion]
features = ["html_reports"]
version = "0.5"
[dev-dependencies.pretty_assertions]
version = "1.4"
[dev-dependencies.proptest]
version = "1.4"
[dev-dependencies.quickcheck]
version = "1.0"
[dev-dependencies.quickcheck_macros]
version = "1.0"
[dev-dependencies.serial_test]
version = "3.1"
[dev-dependencies.tempfile]
version = "3.10"
[dev-dependencies.tokio-test]
version = "0.4"
[[example]]
name = "adaptive_network_monitor"
path = "examples/adaptive_network_monitor.rs"
[[example]]
name = "chat"
path = "examples/chat.rs"
[[example]]
name = "dht_performance_demo"
path = "examples/dht_performance_demo.rs"
[[example]]
name = "security_example"
path = "examples/security_example.rs"
[[example]]
name = "spec_usage"
path = "examples/spec_usage.rs"
[[example]]
name = "test_api"
path = "examples/test_api.rs"
[[example]]
name = "test_four_word_port"
path = "examples/test_four_word_port.rs"
[[example]]
name = "test_keygen"
path = "examples/test_keygen.rs"
[[example]]
name = "test_network"
path = "examples/test_network.rs"
[[example]]
name = "test_words"
path = "examples/test_words.rs"
[features]
default = ["metrics"]
h2_greedy = []
metrics = ["dep:prometheus", "ant-quic/prometheus"]
mocks = []
test-utils = []
[lib]
name = "saorsa_core"
path = "src/lib.rs"
[package]
authors = ["Saorsa Labs Limited <david@saorsalabs.com>"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["network-programming", "asynchronous", "cryptography"]
description = "Saorsa - Core P2P networking library with DHT, QUIC transport, and four-word addresses"
documentation = "https://docs.rs/saorsa-core"
edition = "2024"
homepage = "https://github.com/dirvine/saorsa-core-foundation"
keywords = ["p2p", "networking", "dht", "quic", "decentralized"]
license = "AGPL-3.0"
name = "saorsa-core"
readme = "README.md"
repository = "https://github.com/dirvine/saorsa-core-foundation"
version = "0.7.13"
[package.metadata.docs.rs]
default-target = "x86_64-unknown-linux-gnu"
features = []
no-default-features = true
[target."cfg(unix)".dependencies.libc]
version = "0.2"
[target."cfg(windows)".dependencies.winapi]
features = ["memoryapi"]
version = "0.3"
[[test]]
name = "adaptive_components_corrected_test"
path = "tests/adaptive_components_corrected_test.rs"
[[test]]
name = "adaptive_components_test"
path = "tests/adaptive_components_test.rs"
[[test]]
name = "adaptive_integration_tests"
path = "tests/adaptive_integration_tests.rs"
[[test]]
name = "adaptive_network_integration_test"
path = "tests/adaptive_network_integration_test.rs"
[[test]]
name = "adaptive_property_tests"
path = "tests/adaptive_property_tests.rs"
[[test]]
name = "ant_quic_integration_test"
path = "tests/ant_quic_integration_test.rs"
[[test]]
name = "chaos_engineering_tests"
path = "tests/chaos_engineering_tests.rs"
[[test]]
name = "config_test"
path = "tests/config_test.rs"
[[test]]
name = "connection_lifecycle_integration_test"
path = "tests/connection_lifecycle_integration_test.rs"
[[test]]
name = "connection_lifecycle_proof_test"
path = "tests/connection_lifecycle_proof_test.rs"
[[test]]
name = "coordinator_integration_test"
path = "tests/coordinator_integration_test.rs"
[[test]]
name = "dht_client_tests"
path = "tests/dht_client_tests.rs"
[[test]]
name = "dht_core_operations_test"
path = "tests/dht_core_operations_test.rs"
[[test]]
name = "dht_property_tests"
path = "tests/dht_property_tests.rs"
[[test]]
name = "dual_stack_security_integration_test"
path = "tests/dual_stack_security_integration_test.rs"
[[test]]
name = "eigentrust_integration_test"
path = "tests/eigentrust_integration_test.rs"
[[test]]
name = "end_to_end_scenarios_test"
path = "tests/end_to_end_scenarios_test.rs"
[[test]]
name = "eviction_strategy_test"
path = "tests/eviction_strategy_test.rs"
[[test]]
name = "four_word_integration_test"
path = "tests/four_word_integration_test.rs"
[[test]]
name = "full_network_simulation"
path = "tests/full_network_simulation.rs"
[[test]]
name = "geoip_integration_test"
path = "tests/geoip_integration_test.rs"
[[test]]
name = "gossipsub_integration_test"
path = "tests/gossipsub_integration_test.rs"
[[test]]
name = "health_integration_test"
path = "tests/health_integration_test.rs"
[[test]]
name = "hyperbolic_greedy_test"
path = "tests/hyperbolic_greedy_test.rs"
[[test]]
name = "hyperbolic_routing_test"
path = "tests/hyperbolic_routing_test.rs"
[[test]]
name = "identity_cli_test"
path = "tests/identity_cli_test.rs"
[[test]]
name = "identity_encryption_basic_test"
path = "tests/identity_encryption_basic_test.rs"
[[test]]
name = "identity_encryption_comprehensive_test"
path = "tests/identity_encryption_comprehensive_test.rs"
[[test]]
name = "identity_encryption_performance_test"
path = "tests/identity_encryption_performance_test.rs"
[[test]]
name = "identity_encryption_test"
path = "tests/identity_encryption_test.rs"
[[test]]
name = "identity_management_test"
path = "tests/identity_management_test.rs"
[[test]]
name = "identity_tests"
path = "tests/identity_tests.rs"
[[test]]
name = "integration_test_runner"
path = "tests/integration_test_runner.rs"
[[test]]
name = "key_exchange_integration_test"
path = "tests/key_exchange_integration_test.rs"
[[test]]
name = "multi_armed_bandit_integration_test"
path = "tests/multi_armed_bandit_integration_test.rs"
[[test]]
name = "multi_device_tests"
path = "tests/multi_device_tests.rs"
[[test]]
name = "network_error_tests"
path = "tests/network_error_tests.rs"
[[test]]
name = "network_integration_comprehensive_test"
path = "tests/network_integration_comprehensive_test.rs"
[[test]]
name = "node_identity_comprehensive_test"
path = "tests/node_identity_comprehensive_test.rs"
[[test]]
name = "node_identity_test"
path = "tests/node_identity_test.rs"
[[test]]
name = "p2p_nat_integration_test"
path = "tests/p2p_nat_integration_test.rs"
[[test]]
name = "port_configuration_test"
path = "tests/port_configuration_test.rs"
[[test]]
name = "presence_tests"
path = "tests/presence_tests.rs"
[[test]]
name = "production_integration_test"
path = "tests/production_integration_test.rs"
[[test]]
name = "property_tests"
path = "tests/property_tests.rs"
[[test]]
name = "proptest_network_join"
path = "tests/proptest_network_join.rs"
[[test]]
name = "q_learning_cache_integration_test"
path = "tests/q_learning_cache_integration_test.rs"
[[test]]
name = "rsps_integration_test"
path = "tests/rsps_integration_test.rs"
[[test]]
name = "security_comprehensive_test"
path = "tests/security_comprehensive_test.rs"
[[test]]
name = "security_integration_comprehensive_test"
path = "tests/security_integration_comprehensive_test.rs"
[[test]]
name = "security_integration_verification"
path = "tests/security_integration_verification.rs"
[[test]]
name = "security_metrics_integration_test"
path = "tests/security_metrics_integration_test.rs"
[[test]]
name = "skademlia_adversarial_test"
path = "tests/skademlia_adversarial_test.rs"
[[test]]
name = "som_test"
path = "tests/som_test.rs"
[[test]]
name = "storage_integration_comprehensive_test"
path = "tests/storage_integration_comprehensive_test.rs"
[[test]]
name = "storage_tests"
path = "tests/storage_tests.rs"
[[test]]
name = "test_exports"
path = "tests/test_exports.rs"
[[test]]
name = "trust_simple_test"
path = "tests/trust_simple_test.rs"
[[test]]
name = "trust_weighted_dht_test"
path = "tests/trust_weighted_dht_test.rs"
[[test]]
name = "validation_security_test"
path = "tests/validation_security_test.rs"
[[test]]
name = "validation_test"
path = "tests/validation_test.rs"