[workspace] resolver = "2" members = [ ".", "internal_macros", ] [package] name = "indexed_db_futures" version = "0.6.0" authors = ["Arturas Molcanovas <amolc@pm.me>"] edition = "2021" rust-version = "1.75.0" license = "MIT" description = "Future bindings for IndexedDB via web_sys" repository = "https://github.com/Alorel/rust-indexed-db" keywords = ["wasm", "indexeddb", "future", "webassembly", "idb"] categories = ["asynchronous", "database", "wasm", "web-programming"] include = [ "src/", "Cargo.toml", "README.md" ] [features] async-upgrade = [] cursors = [ "web-sys/IdbCursor", "web-sys/IdbCursorWithValue", "web-sys/IdbCursorDirection", ] dates = [ "dep:web-time", "_serialise-deserialise-dyn", ] indices = [ "web-sys/IdbIndex", "web-sys/IdbIndexParameters", ] list-databases = [ "dep:impartial-ord", ] serde = [ "dep:serde", "dep:serde-wasm-bindgen", "smallvec/serde", "web-time/serde", ] streams = [ "dep:futures-core", "wasm_evt_listener/streams", ] switch = [] tx-done = ["dep:wasm_evt_listener"] typed-arrays = [] version-change = ["tokio/macros", "dep:wasm_evt_listener"] _serialise-deserialise-dyn = [] # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [lib] crate-type = ["lib"] [workspace.dependencies] accessory = { version = "2" } cfg-if = "1" console_log = "1" delegate-display = { version = "3" } derive_more = { version = "1", default-features = false } fancy_constructor = { version = "2" } futures = "0.3.30" futures-core = "0.3" impartial-ord = "1.0.6" js-sys = "0.3.72" log = "0.4.22" macroific = { version = "2" } rand = "0.8" sealed = "0.6" serde = "1" serde-wasm-bindgen = "0.6" smallvec = "1.13" thiserror = "1" tokio = { version = "1.30", default-features = false } uuid = "1.8" wasm-bindgen = "0.2.95" wasm-bindgen-futures = "0.4.45" wasm-bindgen-test = "0.3.45" wasm_evt_listener = "0.1" web-time = "1.1" web-sys = "0.3.72" proc-macro2 = "1" quote = "1" syn = "2" [dependencies] accessory = { workspace = true } cfg-if = { workspace = true } delegate-display = { workspace = true } derive_more = { workspace = true, features = ["as_ref", "from", "deref", "deref_mut", "into", "debug"], default-features = false } fancy_constructor = { workspace = true } futures-core = { workspace = true, optional = true } impartial-ord = { workspace = true, optional = true } js-sys = { workspace = true } sealed = { workspace = true } serde = { workspace = true, optional = true } smallvec = { workspace = true } serde-wasm-bindgen = { workspace = true, optional = true } thiserror = { workspace = true } tokio = { workspace = true, features = ["sync"], default-features = false } wasm-bindgen = { workspace = true } wasm-bindgen-futures = { workspace = true } wasm_evt_listener = { workspace = true, optional = true } web-time = { workspace = true, optional = true } [dependencies.internal_macros] version = "1" package = "indexed_db_futures_macros_internal" path = "internal_macros" [dependencies.web-sys] workspace = true features = [ "console", "DomException", "DomStringList", "Event", "EventTarget", "IdbDatabase", "IdbFactory", "IdbObjectStore", "IdbObjectStoreParameters", "IdbRequestReadyState", "IdbOpenDbRequest", "IdbKeyRange", "IdbRequest", "IdbTransaction", "IdbTransactionMode", "IdbVersionChangeEvent", "Window", "WorkerGlobalScope", ] [dev-dependencies] console_log = { workspace = true } futures = { workspace = true } impartial-ord = { workspace = true } log = { workspace = true } rand = { workspace = true } uuid = { workspace = true, features = ["v4", "js"] } wasm-bindgen-test = { workspace = true } [package.metadata.docs.rs] all-features = true rustdoc-args = ["--cfg", "doc_cfg"] [lints.rust] unexpected_cfgs = { level = "warn", check-cfg = ['cfg(doc_cfg)'] }