From 74dfaefc1ed6949ca0e2141878b01341bf45d773 Mon Sep 17 00:00:00 2001 From: David Marcin Date: Fri, 18 Jun 2021 23:29:01 -0700 Subject: [PATCH] Support the immutable option on SQLite connections --- 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 77f10db369..401a673c16 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 + } } diff --git a/sqlx-core/src/sqlite/options/parse.rs b/sqlx-core/src/sqlite/options/parse.rs index 7c21adf469..f677df62b6 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!(