mirror of
https://github.com/lexmount/moli.git
synced 2026-11-13 08:08:10 +00:00
Return immutable stored Blob/File sources without eagerly reading their bodies. Keep metadata, clone and slice lazy; route consumption through the owner, stream in chunks, and preserve handed-out data before destructive changes or retirement. Adapt FileReader, Clipboard, WebSocket and OPFS together with the source representation. Share Fetch/XHR object-body extraction and propagate Blob and multipart read failures instead of string coercion. Preserve cancellation, ordering, backpressure, quota, permission/error semantics and realm cleanup across consumers.
40 lines
2.0 KiB
TOML
40 lines
2.0 KiB
TOML
[package]
|
|
license.workspace = true
|
|
name = "moli-websocket"
|
|
version = "0.1.0"
|
|
edition = "2024"
|
|
|
|
[features]
|
|
test-support = ["dep:rcgen", "dep:openssl", "dep:tokio-tungstenite", "dep:tokio-rustls", "dep:rustls", "dep:futures-util", "tokio/net", "tokio/io-util"]
|
|
|
|
[dependencies]
|
|
moli-header-field = { path = "../moli-header-field" }
|
|
base64 = "0.22"
|
|
moli-curl = { path = "../moli-curl" }
|
|
moli-crypto = { path = "../moli-crypto" }
|
|
moli-file-api = { path = "../moli-file-api" }
|
|
futures-util = { version = "0.3", default-features = false, features = ["sink", "std"], optional = true }
|
|
http = "1"
|
|
moli-url = { path = "../moli-url" }
|
|
urlencoding = "2.1"
|
|
rcgen = { version = "0.13", default-features = false, features = ["aws_lc_rs", "pem"], optional = true }
|
|
openssl = { version = "0.10", optional = true }
|
|
rustls = { version = "0.23", default-features = false, features = ["aws_lc_rs", "logging", "prefer-post-quantum", "std", "tls12"], optional = true }
|
|
tokio = { version = "1.51.0", features = ["macros", "rt-multi-thread", "sync", "time"] }
|
|
tokio-rustls = { version = "0.26", default-features = false, features = ["aws_lc_rs", "logging", "tls12"], optional = true }
|
|
tokio-tungstenite = { version = "0.28.0", default-features = false, features = ["handshake", "__rustls-tls"], optional = true }
|
|
url = "2.5.7"
|
|
|
|
[dev-dependencies]
|
|
parking_lot = "0.12"
|
|
futures-util = { version = "0.3", default-features = false, features = ["sink", "std"] }
|
|
rustls = { version = "0.23", default-features = false, features = ["aws_lc_rs", "logging", "prefer-post-quantum", "std", "tls12"] }
|
|
tokio = { version = "1.51.0", features = ["io-util", "macros", "net", "rt-multi-thread", "sync", "time"] }
|
|
tokio-rustls = { version = "0.26", default-features = false, features = ["aws_lc_rs", "logging", "tls12"] }
|
|
tokio-tungstenite = { version = "0.28.0", default-features = false, features = ["handshake", "__rustls-tls"] }
|
|
rcgen = { version = "0.13", default-features = false, features = ["aws_lc_rs", "pem"] }
|
|
openssl = "0.10"
|
|
|
|
[lints]
|
|
workspace = true
|