From 687fbf990905175f4183059acd8ddc4b05697771 Mon Sep 17 00:00:00 2001 From: David Marcin Date: Fri, 10 Sep 2021 15:47:30 -0700 Subject: [PATCH] Support the immutable option on SQLite connections (#1289) Co-authored-by: Austin Bonander --- sqlx-core/src/sqlite/connection/establish.rs | 9 +++++++-- sqlx-core/src/sqlite/options/mod.rs | 7 +++++++ sqlx-core/src/sqlite/options/parse.rs | 14 ++++++++++++++ 3 files changed, 28 insertions(+), 2 deletions(-) diff --git a/sqlx-core/src/sqlite/connection/establish.rs b/sqlx-core/src/sqlite/connection/establish.rs index 77f10db3..401a673c 100644 --- a/sqlx-core/src/sqlite/connection/establish.rs +++ b/sqlx-core/src/sqlite/connection/establish.rs @@ -29,8 +29,6 @@ pub(crate) async fn establish(options: &SqliteConnectOptions) -> Result Result Self { + self.immutable = immutable; + self + } + /// Sets the log settings. /// /// # Example diff --git a/sqlx-core/src/sqlite/options/parse.rs b/sqlx-core/src/sqlite/options/parse.rs index 7c21adf4..f677df62 100644 --- a/sqlx-core/src/sqlite/options/parse.rs +++ b/sqlx-core/src/sqlite/options/parse.rs @@ -94,6 +94,20 @@ impl FromStr for SqliteConnectOptions { } }, + "immutable" => match &*value { + "true" | "1" => { + options.immutable = true; + } + "false" | "0" => { + options.immutable = false; + } + _ => { + return Err(Error::Configuration( + format!("unknown value {:?} for `immutable`", value).into(), + )); + } + }, + _ => { return Err(Error::Configuration( format!(