0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-03-03 17:34:47 -05:00

chore(ext/kv): update denokv crates (#21357)

This commit is contained in:
Igor Zinkovsky 2023-11-28 21:04:07 -08:00 committed by GitHub
parent 32c041c8d7
commit 75ec650f08
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 17 additions and 14 deletions

13
Cargo.lock generated
View file

@ -1704,9 +1704,9 @@ dependencies = [
[[package]] [[package]]
name = "denokv_proto" name = "denokv_proto"
version = "0.2.1" version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8952fb8c38c1dcd796d49b00030afb74aa184160ae86817b72a32a994c8e16f0" checksum = "dd501a6b10a8b7fe7e605cafe4aad1d266ed0791b788dab78889df14b1a23e5f"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"async-trait", "async-trait",
@ -1720,9 +1720,9 @@ dependencies = [
[[package]] [[package]]
name = "denokv_remote" name = "denokv_remote"
version = "0.2.3" version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "edfc8447324d783b01e215bd5040ff9149c34d9715c7b7b5080dd648ebf1148a" checksum = "7d94fd3da7d1fa9ef1515bf3bc5b2fe75389edb3f15e9445e345679fda44987c"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"async-trait", "async-trait",
@ -1742,9 +1742,9 @@ dependencies = [
[[package]] [[package]]
name = "denokv_sqlite" name = "denokv_sqlite"
version = "0.2.1" version = "0.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8ec76b691ff069f14e56e3e053c2b2163540b27e4b60179f2b120064a7e4960d" checksum = "c2d2ab5fe45079dc41ab76549bb9fc3aeb9be4e54fddbdfb16a779db4a0b38df"
dependencies = [ dependencies = [
"anyhow", "anyhow",
"async-trait", "async-trait",
@ -1756,6 +1756,7 @@ dependencies = [
"rand", "rand",
"rusqlite", "rusqlite",
"serde_json", "serde_json",
"thiserror",
"tokio", "tokio",
"uuid", "uuid",
] ]

View file

@ -49,10 +49,10 @@ test_util = { path = "./test_util" }
deno_lockfile = "0.17.2" deno_lockfile = "0.17.2"
deno_media_type = { version = "0.1.1", features = ["module_specifier"] } deno_media_type = { version = "0.1.1", features = ["module_specifier"] }
denokv_proto = "0.2.1" denokv_proto = "0.4.0"
# denokv_sqlite brings in bundled sqlite if we don't disable the default features # denokv_sqlite brings in bundled sqlite if we don't disable the default features
denokv_sqlite = { default-features = false, version = "0.2.1" } denokv_sqlite = { default-features = false, version = "0.4.0" }
denokv_remote = "0.2.3" denokv_remote = "0.4.0"
# exts # exts
deno_broadcast_channel = { version = "0.119.0", path = "./ext/broadcast_channel" } deno_broadcast_channel = { version = "0.119.0", path = "./ext/broadcast_channel" }

View file

@ -18,7 +18,7 @@ use deno_core::error::AnyError;
use deno_core::unsync::spawn_blocking; use deno_core::unsync::spawn_blocking;
use deno_core::OpState; use deno_core::OpState;
use deno_node::PathClean; use deno_node::PathClean;
pub use denokv_sqlite::TypeError; pub use denokv_sqlite::SqliteBackendError;
use rand::RngCore; use rand::RngCore;
use rand::SeedableRng; use rand::SeedableRng;
use rusqlite::OpenFlags; use rusqlite::OpenFlags;
@ -95,14 +95,16 @@ impl<P: SqliteDbHandlerPermissions> DatabaseHandler for SqliteDbHandler<P> {
(Some(path), _) => { (Some(path), _) => {
let flags = let flags =
OpenFlags::default().difference(OpenFlags::SQLITE_OPEN_URI); OpenFlags::default().difference(OpenFlags::SQLITE_OPEN_URI);
let resolved_path = canonicalize_path(&PathBuf::from(path))?; let resolved_path = canonicalize_path(&PathBuf::from(path))
.map_err(|_| SqliteBackendError::DatabaseClosed)?;
( (
rusqlite::Connection::open_with_flags(path, flags)?, rusqlite::Connection::open_with_flags(path, flags)?,
Some(resolved_path), Some(resolved_path),
) )
} }
(None, Some(path)) => { (None, Some(path)) => {
std::fs::create_dir_all(path)?; std::fs::create_dir_all(path)
.map_err(|_| SqliteBackendError::DatabaseClosed)?;
let path = path.join("kv.sqlite3"); let path = path.join("kv.sqlite3");
(rusqlite::Connection::open(path.clone())?, Some(path)) (rusqlite::Connection::open(path.clone())?, Some(path))
} }
@ -110,7 +112,7 @@ impl<P: SqliteDbHandlerPermissions> DatabaseHandler for SqliteDbHandler<P> {
conn.pragma_update(None, "journal_mode", "wal")?; conn.pragma_update(None, "journal_mode", "wal")?;
Ok::<_, AnyError>((conn, queue_waker_key)) Ok::<_, SqliteBackendError>((conn, queue_waker_key))
}) })
}) })
.await .await

View file

@ -212,7 +212,7 @@ pub fn get_error_class_name(e: &AnyError) -> Option<&'static str> {
.map(get_url_parse_error_class) .map(get_url_parse_error_class)
}) })
.or_else(|| { .or_else(|| {
e.downcast_ref::<deno_kv::sqlite::TypeError>() e.downcast_ref::<deno_kv::sqlite::SqliteBackendError>()
.map(|_| "TypeError") .map(|_| "TypeError")
}) })
.or_else(|| { .or_else(|| {