Cargo Features
[dependencies]
rustube = { version = "0.6.0", default-features = false, features = ["std", "callback", "microformat", "download", "fetch", "descramble", "stream", "blocking", "default-tls", "native-tls", "rustls-tls"] }
- default = default-tls, download, std
-
By default, the minimal features for downloading a video are enabled. If you compile with default-features = false,
you get only the Id type as well as the Error type. - std default blocking? fetch? = regex, thiserror
-
Affects
rustube::Result
,rustube::error
… - callback = download, futures
-
Affects
stream::callback
… - microformat = fetch
-
Affects
player_response::microformat
,player_response::PlayerResponse.microformat
… - download default callback? = fetch, tokio-stream
-
Enables fs, io-util and parking_lot of tokio
Affects
blocking::download_best_quality
,blocking::download_worst_quality
,rustube::download_best_quality
,rustube::download_worst_quality
… - fetch descramble? download microformat? = bytes, chrono, descramble, mime, serde_json, serde_qs, std
-
could be usefull if you don't want to download videos, but just want to get information like title, view-count, ...
Enables cookies, gzip, json and stream of reqwest ^0.11.5, rc of serde, json of serde_with ^1.10.0, macros of tokio, serde of url
Affects
blocking::fetcher
,rustube::video_info
,rustube::fetcher
… - descramble fetch? stream? = fetch, stream
-
Affects
blocking::descrambler
,blocking::video
,rustube::descrambler
,rustube::video
… - stream descramble? = descramble
-
Affects
rustube::stream
… - blocking = std
-
Enables rt and rt-multi-thread of tokio
Affects
rustube::blocking
… - default-tls default
-
Enables default-tls of reqwest ^0.11.5
reqwest:
Note: this doesn't enable the 'native-tls' feature, which adds specific functionality for it.
- native-tls
-
Enables native-tls of reqwest ^0.11.5
reqwest:
Enables native-tls specific functionality not available by default.
- rustls-tls
-
Enables rustls-tls of reqwest ^0.11.5
Features from optional dependencies
In crates that don't use the dep:
syntax, optional dependencies automatically become Cargo features. These features may have been created by mistake, and this functionality may be removed in the future.
todo: add features to opt in/out of deserialization of some data (title, view_count, ...)
- bytes fetch?
- chrono fetch? microformat? stream?
- futures callback?
- mime fetch?
- regex std
-
Affects
id::ID_PATTERNS
,id::WATCH_URL_PATTERN
,id::SHORTS_URL_PATTERN
,id::EMBED_URL_PATTERN
,id::SHARE_URL_PATTERN
,id::ID_PATTERN
,blocking::download_best_quality
,blocking::download_worst_quality
,rustube::download_best_quality
,rustube::download_worst_quality
… - reqwest default-tls fetch? native-tls? rustls-tls?
-
Enables reqwest ^0.11.5
- serde_qs fetch?
-
Enables serde_qs ^0.8.5
- serde_json fetch?
- serde_with fetch?
-
Enables serde_with ^1.10.0
- thiserror std
- tokio blocking? callback? download fetch?
- tokio-stream download