{"name":"trojan-server","vers":"0.1.0","deps":[{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics","req":"^0.23","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.14","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.13","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.5","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-auth","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.1.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"41c7a5538dd462cecfd1acb0ae39c41541b7628fdf66815d071f76a13e1a36c7","features":{"default":["ws"],"ws":[]},"yanked":false,"pubtime":"2026-01-27T14:51:10Z"} {"name":"trojan-server","vers":"0.1.3","deps":[{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.5","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.24","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.1.3","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.1.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.1.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.1.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.1.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.1.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"ab39b145c5325ce21fc1ea2a6b0a22fe40e40a3d14ba1899049e0e53bc4d780b","features":{"analytics":["trojan-analytics"],"default":["ws"],"ws":["tokio-tungstenite","trojan-core/ws"]},"yanked":false,"pubtime":"2026-01-28T14:13:34Z"} {"name":"trojan-server","vers":"0.1.4","deps":[{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.5","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.24","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.1.4","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.1.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.1.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.1.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.1.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.1.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"9be219ad2c1c2b1a9efaaedb3be173e7ace541204794ba7657cbd49902d5db9f","features":{"analytics":["trojan-analytics"],"default":["ws"],"ws":["tokio-tungstenite","trojan-core/ws"]},"yanked":false,"pubtime":"2026-01-28T14:41:39Z"} {"name":"trojan-server","vers":"0.1.8","deps":[{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.5","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.24","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.1.8","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.1.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.1.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.1.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.1.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.1.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"f088c901f9b09931e8df9576047374bafffc54e464ab1cf1c194396c86143436","features":{"analytics":["trojan-analytics"],"default":["ws"],"ws":["tokio-tungstenite","trojan-core/ws"]},"yanked":false,"pubtime":"2026-01-28T17:19:48Z"} {"name":"trojan-server","vers":"0.2.0","deps":[{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.5","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.24","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.2.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.2.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.2.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.2.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.2.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.2.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"4c108558079e005bb8734462b8059cd42d5db269c6d99dd49f2ad45fe56b75ea","features":{"analytics":["trojan-analytics"],"default":["ws"],"ws":["tokio-tungstenite","trojan-core/ws"]},"yanked":false,"pubtime":"2026-01-30T07:35:01Z"} {"name":"trojan-server","vers":"0.2.3","deps":[{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.5","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.24","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.2.3","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.2.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.2.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.2.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.2.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.2.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"5ec19c1ac602c8d8c2a98440a6e382fbc39d85e99b534cf8b3136309db808694","features":{"analytics":["trojan-analytics"],"default":["ws"],"ws":["tokio-tungstenite","trojan-core/ws"]},"yanked":false,"pubtime":"2026-01-30T15:32:44Z"} {"name":"trojan-server","vers":"0.3.0","deps":[{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.5","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.24","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.3.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.3.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.3.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.3.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.3.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.3.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"3e7728dfab75c89655da7e353c8fe169cd36a12abbbe4628992e2d95e6cfbaf0","features":{"analytics":["trojan-analytics"],"default":["ws"],"ws":["tokio-tungstenite","trojan-core/ws"]},"yanked":false,"pubtime":"2026-01-30T16:26:34Z"} {"name":"trojan-server","vers":"0.4.0","deps":[{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.5","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.24","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.4.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.4.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.4.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.4.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.4.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.4.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"}],"cksum":"07e64deb45db9e18bf6b337cba23395095968ab19af84cde809add055800941b","features":{"analytics":["trojan-analytics"],"default":["ws"],"ws":["tokio-tungstenite","trojan-core/ws"]},"yanked":false,"pubtime":"2026-01-31T06:59:20Z"} {"name":"trojan-server","vers":"0.5.0","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.5.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.5.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.5.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.5.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.5.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.5.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.5.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"c6cabe7a79d516d04c1d7ad28f2ac9e8b95ba501aea4e4721ad615ffd898e298","features":{"analytics":["trojan-analytics"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-02-16T18:49:51Z","v":2} {"name":"trojan-server","vers":"0.5.1","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.5.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.5.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.5.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.5.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.5.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.5.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.5.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"4193fa1a0a6a83e851c3cfc6dc9f4c4916502d290068d3603e8d3b75fa68f24e","features":{"analytics":["trojan-analytics"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-02-17T04:03:52Z","v":2} {"name":"trojan-server","vers":"0.5.2","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.5.2","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.5.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.5.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.5.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.5.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.5.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.5.2","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"96d42a42a39d37fd39b9277d4104671420b66e7ae637236161288c030895b543","features":{"analytics":["trojan-analytics"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-02-17T04:19:24Z","v":2} {"name":"trojan-server","vers":"0.5.3","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.5.3","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.5.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.5.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.5.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.5.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.5.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.5.3","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"519d414549b0a24b1345cb66800dfbe723db22b1f9b8987dcadc76f630757154","features":{"analytics":["trojan-analytics"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-02-17T05:01:51Z","v":2} {"name":"trojan-server","vers":"0.5.4","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.5.4","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.5.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.5.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.5.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.5.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.5.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.5.4","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"fb0d78d715e9c2cb73dc1c192b984aa2db0e01514626b8ae85965188fdf4fcd0","features":{"analytics":["trojan-analytics"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-02-17T05:26:32Z","v":2} {"name":"trojan-server","vers":"0.5.6","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.5.6","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.5.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.5.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.5.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.5.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.5.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.5.6","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"6ce1cc3b07f33c8e4c6372102156732e6b29db0ead8fa74fb7c2389e641f3e8a","features":{"analytics":["trojan-analytics"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-02-17T06:09:46Z","v":2} {"name":"trojan-server","vers":"0.6.0","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.6.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.6.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.6.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.6.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.6.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.6.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.6.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"8851636d385ed3d4a89db5f8f0122d9914f1d0c084fe71cc438211926d9614f8","features":{"analytics":["trojan-analytics"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-02-17T14:37:41Z","v":2} {"name":"trojan-server","vers":"0.6.1","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.6.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.6.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.6.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.6.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.6.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.6.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.6.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"dd427cdfc19dbe757bc7635cd4c2f7e263c6496bb8f4ff454d1cc94f661cef6b","features":{"analytics":["trojan-analytics"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-02-17T15:00:17Z","v":2} {"name":"trojan-server","vers":"0.7.0","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.7.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.7.0","features":["http"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.7.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.7.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.7.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.7.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.7.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"83e9bcd138cec6517cd98064db820e7351832b284ea3f72236c1dbae70c9bb52","features":{"analytics":["trojan-analytics"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-02-17T16:55:33Z","v":2} {"name":"trojan-server","vers":"0.8.0","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.8.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.8.0","features":["http"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-dns","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.8.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.8.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"8df70713b608a728abd57e28fddf975fe6144046a41f0ea9d97aaeba46987ad5","features":{"analytics":["trojan-analytics"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-02-18T08:11:56Z","v":2} {"name":"trojan-server","vers":"0.8.1","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.8.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.8.1","features":["http"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.8.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.8.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-dns","req":"^0.8.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.8.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.8.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.8.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"7d6df5647eca360359d62c5618e37dc9bd99ddd31b07daf6014ac1cfa1f30a47","features":{"analytics":["trojan-analytics"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-02-18T19:10:43Z","v":2} {"name":"trojan-server","vers":"0.9.0","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.9.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.9.0","features":["http"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.9.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.9.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-ddns","req":"^0.9.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-dns","req":"^0.9.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.9.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.9.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.9.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"0acdf3aaaeff852db92a314af3a1f4648fe5694bada6f10a6a01ebadebfe1e7c","features":{"analytics":["trojan-analytics"],"ddns":["trojan-ddns"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules","ddns"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-02-24T12:48:53Z","v":2} {"name":"trojan-server","vers":"0.9.1","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.9.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.9.1","features":["http"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.9.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.9.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-ddns","req":"^0.9.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-dns","req":"^0.9.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.9.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.9.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.9.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"dc5191ad9aacbc5d5b19cf8e7aefd21f58ed29aa2ce022eae23af496628f5f0a","features":{"analytics":["trojan-analytics"],"ddns":["trojan-ddns"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules","ddns"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-02-28T07:20:47Z","v":2} {"name":"trojan-server","vers":"0.10.0","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.28","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.10.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.10.0","features":["http"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.10.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.10.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-ddns","req":"^0.10.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-dns","req":"^0.10.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.10.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.10.0","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.10.0","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"1d7ab021799099b70d7ba9e78bc800ad43fae03e85ce8f0e95c572f4b883cbb4","features":{"analytics":["trojan-analytics"],"ddns":["trojan-ddns"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules","ddns"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-04-28T12:13:13Z","v":2} {"name":"trojan-server","vers":"0.10.1","deps":[{"name":"arc-swap","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"async-trait","req":"^0.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"axum","req":"^0.8","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"bytes","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"clap","req":"^4","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"criterion","req":"^0.8","features":["async_tokio"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"ctor","req":"^0.10","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"futures-util","req":"^0.3","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"hex","req":"^0.4","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"libc","req":"^0.2","features":[],"optional":false,"default_features":true,"target":"cfg(target_os = \"linux\")","kind":"normal"},{"name":"metrics","req":"^0.24","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"metrics-exporter-prometheus","req":"^0.18","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"parking_lot","req":"^0.12","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rcgen","req":"^0.14","features":["aws_lc_rs","pem"],"optional":false,"default_features":false,"target":null,"kind":"dev"},{"name":"rustls","req":"^0.23","features":["aws_lc_rs","logging","std","tls12"],"optional":false,"default_features":false,"target":null,"kind":"normal"},{"name":"rustls-pemfile","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"rustls-pki-types","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde","req":"^1","features":["derive"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"serde_json","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"serde_yaml","req":"^0.9","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"sha2","req":"^0.11","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"socket2","req":"^0.6","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tempfile","req":"^3","features":[],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"thiserror","req":"^2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio","req":"^1","features":["rt-multi-thread","macros","net","io-util","time","signal","sync"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-rustls","req":"^0.26","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-tungstenite","req":"^0.29","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"tokio-util","req":"^0.7","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"toml","req":"^1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing","req":"^0.1","features":["attributes"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-appender","req":"^0.2","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt","json"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"tracing-subscriber","req":"^0.3","features":["env-filter","fmt"],"optional":false,"default_features":true,"target":null,"kind":"dev"},{"name":"trojan-analytics","req":"^0.10.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-auth","req":"^0.10.1","features":["http"],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-config","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-core","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-ddns","req":"^0.10.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-dns","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-metrics","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-proto","req":"^0.10.1","features":[],"optional":false,"default_features":true,"target":null,"kind":"normal"},{"name":"trojan-rules","req":"^0.10.1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"},{"name":"webpki-roots","req":"^1","features":[],"optional":true,"default_features":true,"target":null,"kind":"normal"}],"cksum":"a2478ea9912bc75ee66e03a9d56fcc607e1f3cbd49609ba0df746b2eee770d27","features":{"analytics":["trojan-analytics"],"ddns":["trojan-ddns"],"ws":["tokio-tungstenite","trojan-core/ws"]},"features2":{"default":["ws","rules","ddns"],"geoip":["rules","trojan-rules/geoip"],"rules":["trojan-rules","dep:webpki-roots","dep:arc-swap"]},"yanked":false,"pubtime":"2026-04-28T16:26:10Z","v":2}