2021-06-25 13:47:51 +01:00
[ package ]
name = "librqbit"
2024-09-13 09:28:00 +01:00
version = "7.1.0-beta.1"
2021-06-25 13:47:51 +01:00
authors = [ "Igor Katson <igor.katson@gmail.com>" ]
2023-11-22 23:13:27 +00:00
edition = "2021"
2023-11-15 14:26:50 +00:00
description = "The main library used by rqbit torrent client. The binary is just a small wrapper on top of it."
license = "Apache-2.0"
2023-11-16 07:39:49 +00:00
documentation = "https://docs.rs/librqbit"
2023-11-15 14:26:50 +00:00
repository = "https://github.com/ikatson/rqbit"
readme = "README.md"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
2021-07-01 19:17:44 +01:00
[ features ]
2024-03-29 15:57:30 +00:00
default = [ "default-tls" ]
2024-08-29 00:35:03 +01:00
tokio-console = [ "console-subscriber" , "tokio/tracing" ]
2024-08-15 18:54:59 +01:00
http-api = [ "axum" , "tower-http" ]
2024-08-21 23:57:21 +01:00
upnp-serve-adapter = [ "upnp-serve" ]
2023-11-20 20:15:40 +00:00
webui = [ ]
2023-11-19 19:40:45 +00:00
timed_existence = [ ]
2024-08-28 13:32:42 +01:00
default-tls = [
"reqwest/default-tls" ,
"sha1w/sha1-crypto-hash" ,
"bencode/sha1-crypto-hash" ,
"librqbit-core/sha1-crypto-hash" ,
]
rust-tls = [
"reqwest/rustls-tls" ,
"sha1w/sha1-ring" ,
"sha1w/sha1-ring" ,
"bencode/sha1-ring" ,
"librqbit-core/sha1-ring" ,
]
2024-05-03 13:38:22 +01:00
storage_middleware = [ "lru" ]
2024-05-03 08:46:46 +01:00
storage_examples = [ ]
2024-08-15 18:54:59 +01:00
tracing-subscriber-utils = [ "tracing-subscriber" ]
2024-08-15 14:18:55 +01:00
postgres = [ "sqlx" ]
2024-08-19 13:40:01 +01:00
async-bt = [ "async-backtrace" ]
2024-09-13 12:34:51 +01:00
watch = [ "notify" ]
2024-10-03 09:01:38 +01:00
disable-upload = [ ]
2021-06-25 13:47:51 +01:00
[ dependencies ]
2024-09-13 09:28:00 +01:00
sqlx = { version = "0.8.2" , features = [
2024-08-15 14:18:55 +01:00
"runtime-tokio" ,
"postgres" ,
] , optional = true }
2024-08-15 14:46:26 +01:00
bencode = { path = "../bencode" , default-features = false , package = "librqbit-bencode" , version = "3" }
2024-08-27 17:26:39 +01:00
tracker_comms = { path = "../tracker_comms" , default-features = false , package = "librqbit-tracker-comms" , version = "2" }
2024-08-19 17:29:22 +01:00
buffers = { path = "../buffers" , package = "librqbit-buffers" , version = "4.1" }
2024-08-27 18:57:32 +01:00
librqbit-core = { path = "../librqbit_core" , default-features = false , version = "4" }
2024-08-15 14:46:26 +01:00
clone_to_owned = { path = "../clone_to_owned" , package = "librqbit-clone-to-owned" , version = "3" }
2024-08-27 15:11:34 +01:00
peer_binary_protocol = { path = "../peer_binary_protocol" , default-features = false , package = "librqbit-peer-protocol" , version = "4.1" }
2024-08-27 17:26:39 +01:00
sha1w = { path = "../sha1w" , default-features = false , package = "librqbit-sha1-wrapper" , version = "4" }
2024-08-15 14:46:26 +01:00
dht = { path = "../dht" , package = "librqbit-dht" , version = "5.1.0" }
2024-08-19 17:29:22 +01:00
librqbit-upnp = { path = "../upnp" , version = "0.1.1" }
2024-08-27 18:32:09 +01:00
upnp-serve = { path = "../upnp-serve" , package = "librqbit-upnp-serve" , default-features = false , version = "0.1.0" , optional = true }
2021-07-03 19:10:59 +01:00
2024-08-15 10:40:48 +01:00
tokio = { version = "1" , features = [
"macros" ,
"rt-multi-thread" ,
"fs" ,
"io-util" ,
] }
2024-11-16 10:55:33 +00:00
governor = "0.7"
2024-08-29 00:35:03 +01:00
console-subscriber = { version = "0.4" , optional = true }
2024-08-28 11:27:44 +01:00
axum = { version = "0.7" , optional = true }
2024-08-15 18:54:59 +01:00
tower-http = { version = "0.5" , features = [ "cors" , "trace" ] , optional = true }
2021-07-12 19:55:23 +01:00
tokio-stream = "0.1"
2024-03-29 21:06:59 +00:00
serde = { version = "1" , features = [ "derive" ] }
2021-07-08 23:03:58 +01:00
serde_json = "1"
2023-11-15 14:43:41 +00:00
serde_urlencoded = "0.7"
2021-06-25 13:47:51 +01:00
anyhow = "1"
2024-08-28 11:44:01 +01:00
itertools = "0.13"
2023-12-01 11:56:07 +00:00
http = "1"
2021-10-09 15:03:42 +01:00
regex = "1"
2024-08-08 00:35:32 +01:00
reqwest = { version = "0.12" , default-features = false , features = [
"json" ,
"socks" ,
] }
2022-12-04 13:11:40 +00:00
urlencoding = "2"
2021-06-25 13:47:51 +01:00
byteorder = "1"
bincode = "1"
2022-12-04 13:11:40 +00:00
bitvec = "1"
parking_lot = "0.12"
2023-11-19 12:50:11 +00:00
tracing = "0.1.40"
2021-06-26 18:13:46 +01:00
size_format = "1"
2021-06-27 10:10:59 +01:00
rand = "0.8"
2024-03-29 21:06:59 +00:00
tracing-subscriber = { version = "0.3" , default-features = false , features = [
"json" ,
"fmt" ,
"env-filter" ,
2024-08-15 18:54:59 +01:00
] , optional = true }
2024-03-29 21:06:59 +00:00
uuid = { version = "1.2" , features = [ "v4" ] }
2021-06-25 13:47:51 +01:00
futures = "0.3"
2024-12-03 20:58:21 +00:00
url = { version = "2" , default-features = false }
2024-12-03 21:07:44 +00:00
idna = "=0.5.0" # we don't need this crate, but see https://github.com/servo/rust-url/issues/992. It's a dependency of reqwest that we can't turn off, but we need to force pin it to a lower version.
2021-07-03 15:22:17 +01:00
hex = "0.4"
2023-11-17 23:30:07 +00:00
backoff = "0.4.0"
2024-08-28 11:44:01 +01:00
dashmap = "6"
2024-08-28 11:27:44 +01:00
base64 = "0.22"
2023-12-02 15:35:26 +00:00
serde_with = "3.4.0"
2024-08-21 23:57:21 +01:00
tokio-util = { version = "0.7.10" , features = [ "io" ] }
2023-12-08 19:47:48 +00:00
bytes = "1.5.0"
2023-12-17 13:01:59 +00:00
rlimit = "0.10.1"
2024-02-26 20:45:21 +00:00
async-stream = "0.3.5"
2024-05-02 22:08:00 +01:00
memmap2 = { version = "0.9.4" }
lru = { version = "0.12.3" , optional = true }
2024-08-06 13:49:03 +01:00
mime_guess = { version = "2.0.5" , default-features = false }
2024-08-08 00:35:32 +01:00
tokio-socks = "0.5.2"
2024-08-15 10:40:48 +01:00
async-trait = "0.1.81"
2024-08-19 13:40:01 +01:00
async-backtrace = { version = "0.2" , optional = true }
2024-09-13 12:34:51 +01:00
notify = { version = "6.1.1" , optional = true }
2024-09-13 12:58:09 +01:00
walkdir = "2.5.0"
2024-11-16 11:11:56 +00:00
arc-swap = "1.7.1"
2021-06-25 13:47:51 +01:00
2024-08-12 20:59:21 +01:00
[ build-dependencies ]
anyhow = "1"
2021-06-25 13:47:51 +01:00
[ dev-dependencies ]
2024-03-29 21:06:59 +00:00
futures = { version = "0.3" }
2023-11-26 09:59:44 +00:00
tracing-subscriber = "0.3"
2023-12-07 08:10:17 +00:00
tokio-test = "0.4"
2024-03-05 09:18:22 +00:00
tempfile = "3"
2024-03-29 21:06:59 +00:00
rand = { version = "0.8" , features = [ "small_rng" ] }