{"name":"sdforge","vers":"0.1.0","deps":[{"name":"anyhow","req":"^1.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8.8","features":["ws"],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"axum-extra","req":"^0.9","features":["typed-header"],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"axum-test","req":"^16.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"bytes","req":"^1.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"cached","req":"^0.49","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"cached_proc_macro","req":"^0.23","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"chrono","req":"^0.4","features":["serde"],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4.5","features":["derive"],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"dashmap","req":"^5.5","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"futures-util","req":"^0.3","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"hmac","req":"^0.12","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"http","req":"^1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"inventory","req":"^0.3","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"mcp-sdk","req":"^0.0.3","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"notify","req":"^7.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"once_cell","req":"^1.20","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"once_cell","req":"^1.20","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"proptest","req":"^1.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"prost","req":"^0.13","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"redis","req":"^1.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"regex","req":"^1.10","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"reqwest","req":"^0.12","features":["json"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"sdforge-macros","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sdforge-macros","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"secrets","req":"^1.2","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1.0","features":["derive","derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"subtle","req":"^2.5","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"tera","req":"^1.19","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"thiserror","req":"^2.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1.41","features":["sync"],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1.41","features":["rt","rt-multi-thread","macros"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"tokio-stream","req":"^0.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.23","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^0.9","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tonic","req":"^0.12","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tonic-build","req":"^0.12","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tonic-build","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"tower","req":"^0.5","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tower-http","req":"^0.6.3","features":["cors","limit","timeout","set-header","compression-gzip","compression-deflate"],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trybuild","req":"^1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"uuid","req":"^1.0","features":["v4"],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"validator","req":"^0.18","features":["derive"],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"walkdir","req":"^2.5","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"zeroize","req":"^1.5","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"ef237c306ed289fc57101093b80cc464e1cc6cd1a4910dbae9c8ff8dc4dd2efd","features":{},"features2":{"cache":["http","dep:cached","dep:sha2","dep:futures-util","dep:cached_proc_macro","dep:bytes"],"cache-redis":["cache","dep:redis"],"cli":["dep:clap","dep:anyhow","dep:tera","dep:walkdir","dep:tracing","dep:tracing-subscriber"],"default":["http"],"full":["http","mcp","streaming","timestamp","logging","security","hot-reload","cache","websocket","grpc"],"grpc":["http","dep:tonic","dep:prost","dep:tonic-build"],"hot-reload":["http","dep:notify"],"http":["dep:axum","dep:tower","dep:tower-http","dep:inventory","dep:chrono","dep:validator","dep:regex","dep:dashmap","dep:uuid","dep:toml","dep:once_cell","dep:notify","dep:tokio","dep:axum-extra"],"logging":["dep:tracing","dep:tracing-subscriber","dep:tracing-appender","tracing-subscriber/env-filter"],"mcp":["dep:mcp-sdk","dep:inventory","dep:anyhow"],"security":["http","dep:dashmap","dep:uuid","dep:hmac","dep:sha2","dep:chrono","dep:tokio","dep:secrets","dep:zeroize","dep:subtle","dep:once_cell"],"streaming":["http","dep:tokio-stream","dep:tokio","dep:futures-util"],"timestamp":["dep:chrono"],"websocket":["http","streaming","dep:tokio-tungstenite","dep:axum-extra","dep:async-trait"]},"yanked":false,"pubtime":"2026-01-19T11:59:47Z","v":2} {"name":"sdforge","vers":"0.3.0","deps":[{"name":"anyhow","req":"^1.0","features":["std"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"axum","req":"~0.8.9","features":["http1","json","form","matched-path","original-uri","query","tokio","tower-log","tracing","ws"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"axum-extra","req":"~0.12","features":["typed-header","typed-header"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"axum-test","req":"~21","features":["ws"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"base64","req":"~0.22","features":["std","alloc"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"bincode","req":"~2.0","features":["std","serde"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"chrono","req":"~0.4","features":["std","serde","clock"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"criterion","req":"~0.8","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"futures-util","req":"~0.3","features":["std","async-await","async-await-macro"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"hex","req":"~0.4","features":["alloc"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"hmac","req":"~0.13","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"http","req":"~1.4","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"inventory","req":"~0.3","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"log","req":"~0.4","features":["std"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"once_cell","req":"~1.21","features":["std"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"once_cell","req":"~1.21","features":["std"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"oxcache","req":"^0.3.2","features":["minimal"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"proptest","req":"~1.11","features":["std","alloc","bit-set"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"prost","req":"~0.14","features":["derive"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"rand","req":"~0.10","features":["std","std_rng"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"regex","req":"~1.12","features":["std","perf"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"reqwest","req":"~0.13","features":["json"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rmcp","req":"~2.1","features":["server"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"sdforge-macros","req":"^0.3.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sdforge-macros","req":"^0.3.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde","req":"~1.0","features":["std","derive"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"serde_json","req":"~1.0","features":["std"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"serial_test","req":"~3.5","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"sha2","req":"~0.11","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"simd-json","req":"~0.17","features":["serde_impl"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"subtle","req":"~2.6","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tempfile","req":"~3.27","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"thiserror","req":"~2.0","features":[],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"tokio","req":"~1.52","features":["rt-multi-thread","macros","sync","time","net"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tokio","req":"~1.52","features":["rt-multi-thread","macros","sync","time","net"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"tokio-stream","req":"~0.1","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tokio-stream","req":"~0.1","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"toml","req":"~1.1","features":["parse","display"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tonic","req":"~0.14","features":["transport","codegen","router"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tonic-build","req":"^0.14","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"tonic-prost","req":"~0.14","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tonic-prost-build","req":"^0.14","features":[],"optional":false,"default_features":true,"target":null,"kind":"build"},{"name":"tower","req":"~0.5","features":["log","util","timeout","limit","load-shed","retry"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tower-http","req":"~0.7","features":["cors","limit","timeout","set-header","compression-gzip","compression-deflate"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"trybuild","req":"~1.0","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"url","req":"~2.5","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"utoipa","req":"~5.5","features":["macros"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"uuid","req":"~1.23","features":["std","v4"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"validator","req":"~0.20","features":["derive"],"optional":true,"default_features":false,"target":null,"kind":"normal"}],"cksum":"d6d41b875b2181599580d012627a9e3e1b6614bab3a703056194c951c168ff86","features":{"default":["http"],"grpc":["http","tonic","prost","tonic-prost"],"http":["axum","tower","tower-http","inventory","tokio","axum-extra","toml","regex","once_cell","validator","uuid"],"logging":["chrono","tokio"],"openapi":["utoipa","http"],"streaming":["http","tokio-stream","futures-util","chrono"],"timestamp":["chrono"],"websocket":["http","streaming","axum-extra","chrono"]},"features2":{"cache":["dep:http","oxcache/minimal"],"full":["http","mcp","streaming","timestamp","security","cache","websocket","grpc","logging","openapi"],"hex":["dep:hex"],"mcp":["rmcp","inventory","anyhow","dep:http"],"security":["http","uuid","hmac","sha2","chrono","tokio","subtle","once_cell","rand","regex","oxcache/minimal","bincode","cache","hex","base64"],"simd-json":["dep:simd-json"]},"yanked":false,"pubtime":"2026-07-04T19:35:41Z","v":2} {"name":"sdforge","vers":"0.3.1","deps":[{"name":"anyhow","req":"^1.0","features":["std"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"axum","req":"~0.8.9","features":["http1","json","form","matched-path","original-uri","query","tokio","tower-log","tracing","ws"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"axum-extra","req":"~0.12","features":["typed-header","typed-header"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"axum-test","req":"~21","features":["ws"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"base64","req":"~0.22","features":["std","alloc"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"bincode","req":"~2.0","features":["std","serde"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"chrono","req":"~0.4","features":["std","serde","clock"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"clap","req":"~4.6","features":["std","derive","help","usage","error-context","suggestions","string"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"clap-markdown","req":"~0.1","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"criterion","req":"~0.8","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"futures-util","req":"~0.3","features":["std","async-await","async-await-macro"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"hex","req":"~0.4","features":["alloc"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"hmac","req":"~0.13","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"http","req":"~1.4","features":["std"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"inventory","req":"~0.3","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"limiteron","req":"~0.2","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"log","req":"~0.4","features":["std"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"once_cell","req":"~1.21","features":["std"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"once_cell","req":"~1.21","features":["std"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"oxcache","req":"^0.3.2","features":["minimal"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"proptest","req":"~1.11","features":["std","alloc","bit-set"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"prost","req":"~0.14","features":["derive"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"rand","req":"~0.10","features":["std","std_rng"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"regex","req":"~1.12","features":["std","perf"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"reqwest","req":"~0.13","features":["json"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rmcp","req":"~2.1","features":["server"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"sdforge-macros","req":"^0.3.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sdforge-macros","req":"^0.3.1","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"serde","req":"~1.0","features":["std","derive"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"serde_json","req":"~1.0","features":["std"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"serial_test","req":"~3.5","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"sha2","req":"~0.11","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"simd-json","req":"~0.17","features":["serde_impl"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"subtle","req":"~2.6","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tempfile","req":"~3.27","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"thiserror","req":"~2.0","features":[],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"tokio","req":"~1.52","features":["rt-multi-thread","macros","sync","time","net"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tokio","req":"~1.52","features":["rt-multi-thread","macros","sync","time","net","test-util"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"tokio-stream","req":"~0.1","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tokio-stream","req":"~0.1","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"toml","req":"~1.1","features":["parse","display"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tonic","req":"~0.14","features":["transport","codegen","router"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tonic-build","req":"^0.14","features":[],"optional":false,"default_features":false,"target":null,"kind":"build"},{"name":"tonic-prost","req":"~0.14","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tonic-prost-build","req":"^0.14","features":[],"optional":false,"default_features":false,"target":null,"kind":"build"},{"name":"tower","req":"~0.5","features":["log","util","timeout","limit","load-shed","retry"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tower-http","req":"~0.7","features":["cors","limit","timeout","set-header","compression-gzip","compression-deflate"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"trybuild","req":"~1.0","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"url","req":"~2.5","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"utoipa","req":"~5.5","features":["macros"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"utoipa-swagger-ui","req":"~8.0","features":["axum"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"uuid","req":"~1.23","features":["std","v4"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"validator","req":"~0.20","features":["derive"],"optional":true,"default_features":false,"target":null,"kind":"normal"}],"cksum":"9dd8499cfc70961d0ab365c56725fc6069f17e7d1889f97f76e1ec43a8b59994","features":{"default":["http"],"grpc":["http","tonic","prost","tonic-prost"],"http":["axum","tower","tower-http","inventory","tokio","axum-extra","toml","regex","once_cell","validator","uuid"],"logging":["chrono","tokio"],"openapi":["utoipa","http"],"streaming":["http","tokio-stream","futures-util","chrono"],"timestamp":["chrono"],"websocket":["http","streaming","axum-extra","chrono"]},"features2":{"cache":["dep:http","oxcache/minimal"],"cli":["http","dep:clap"],"docs":["openapi","dep:utoipa-swagger-ui","dep:clap-markdown","cli"],"full":["http","mcp","streaming","timestamp","security","cache","websocket","grpc","logging","openapi","cli","docs"],"hex":["dep:hex"],"mcp":["rmcp","inventory","anyhow","dep:http"],"ratelimit":["http","dep:limiteron","limiteron/tower-middleware","limiteron/ban-manager","limiteron/quota-control","limiteron/circuit-breaker"],"security":["http","uuid","hmac","sha2","chrono","tokio","subtle","once_cell","rand","regex","oxcache/minimal","bincode","cache","hex","base64","ratelimit"],"simd-json":["dep:simd-json"]},"yanked":false,"pubtime":"2026-07-07T17:37:25Z","v":2} {"name":"sdforge","vers":"0.3.2","deps":[{"name":"anyhow","req":"^1.0","features":["std"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"axum","req":"~0.8.9","features":["http1","json","form","matched-path","original-uri","query","tokio","tower-log","tracing","ws"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"axum-extra","req":"~0.12","features":["typed-header","typed-header"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"axum-test","req":"~21","features":["ws"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"base64","req":"~0.22","features":["std","alloc"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"bincode","req":"~2.0","features":["std","serde"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"chrono","req":"~0.4","features":["std","serde","clock"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"clap","req":"~4.6","features":["std","derive","help","usage","error-context","suggestions","string"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"clap-markdown","req":"~0.1","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"criterion","req":"~0.8","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"futures-util","req":"~0.3","features":["std","async-await","async-await-macro"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"hex","req":"~0.4","features":["alloc"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"hmac","req":"~0.13","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"http","req":"~1.4","features":["std"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"inventory","req":"~0.3","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"limiteron","req":"~0.2","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"log","req":"~0.4","features":["std"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"once_cell","req":"~1.21","features":["std"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"once_cell","req":"~1.21","features":["std"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"oxcache","req":"^0.3.2","features":["minimal"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"proptest","req":"~1.11","features":["std","alloc","bit-set"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"prost","req":"~0.14","features":["derive"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"rand","req":"~0.10","features":["std","std_rng"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"regex","req":"~1.12","features":["std","perf"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"reqwest","req":"~0.13","features":["json"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rmcp","req":"~2.1","features":["server"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"sdforge-macros","req":"^0.3.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sdforge-macros","req":"^0.3.2","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"serde","req":"~1.0","features":["std","derive"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"serde_json","req":"~1.0","features":["std"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"serial_test","req":"~3.5","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"sha2","req":"~0.11","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"simd-json","req":"~0.17","features":["serde_impl"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"subtle","req":"~2.6","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tempfile","req":"~3.27","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"thiserror","req":"~2.0","features":[],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"tokio","req":"~1.52","features":["rt-multi-thread","macros","sync","time","net"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tokio","req":"~1.52","features":["rt-multi-thread","macros","sync","time","net","test-util"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"tokio-stream","req":"~0.1","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tokio-stream","req":"~0.1","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"toml","req":"~1.1","features":["parse","display"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tonic","req":"~0.14","features":["transport","codegen","router"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tonic-build","req":"^0.14","features":[],"optional":false,"default_features":false,"target":null,"kind":"build"},{"name":"tonic-prost","req":"~0.14","features":[],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tonic-prost-build","req":"^0.14","features":[],"optional":false,"default_features":false,"target":null,"kind":"build"},{"name":"tower","req":"~0.5","features":["log","util","timeout","limit","load-shed","retry"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"tower-http","req":"~0.7","features":["cors","limit","timeout","set-header","compression-gzip","compression-deflate"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"trait-kit","req":"^0.2.3","features":["async"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"trybuild","req":"~1.0","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"url","req":"~2.5","features":[],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"utoipa","req":"~5.5","features":["macros"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"utoipa-swagger-ui","req":"~8.0","features":["axum"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"uuid","req":"~1.23","features":["std","v4"],"optional":true,"default_features":false,"target":null,"kind":"normal"},{"name":"validator","req":"~0.20","features":["derive"],"optional":true,"default_features":false,"target":null,"kind":"normal"}],"cksum":"e6f05decc0565d5330e817226f9269bbf3e4a29188f272c109359dc2610eee41","features":{"default":["http"],"grpc":["http","tonic","prost","tonic-prost"],"http":["axum","tower","tower-http","inventory","tokio","axum-extra","toml","regex","once_cell","validator","uuid"],"logging":["chrono","tokio"],"openapi":["utoipa","http"],"streaming":["http","tokio-stream","futures-util","chrono"],"timestamp":["chrono"],"websocket":["http","streaming","axum-extra","chrono"]},"features2":{"cache":["dep:http","oxcache/minimal"],"cli":["http","dep:clap"],"docs":["openapi","dep:utoipa-swagger-ui","dep:clap-markdown","cli"],"full":["http","mcp","streaming","timestamp","security","cache","websocket","grpc","logging","openapi","cli","docs"],"hex":["dep:hex"],"kit":["dep:trait-kit","limiteron-integration","limiteron/kit"],"limiteron-integration":["dep:limiteron"],"mcp":["rmcp","inventory","anyhow","dep:http"],"ratelimit":["http","dep:limiteron","limiteron/tower-middleware","limiteron/ban-manager","limiteron/quota-control","limiteron/circuit-breaker"],"security":["http","uuid","hmac","sha2","chrono","tokio","subtle","once_cell","rand","regex","oxcache/minimal","bincode","cache","hex","base64","ratelimit"],"simd-json":["dep:simd-json"]},"yanked":false,"pubtime":"2026-07-10T11:02:40Z","v":2}