From e89cf48b34343145b0da47dc43955267b893fc79 Mon Sep 17 00:00:00 2001 From: Gabriel Kaszewski Date: Sat, 11 Jul 2026 21:51:34 +0200 Subject: [PATCH] fix: sqlite create_if_missing on connect --- crates/adapters/sqlite/src/repository.rs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/crates/adapters/sqlite/src/repository.rs b/crates/adapters/sqlite/src/repository.rs index 9fe4402..45ad7da 100644 --- a/crates/adapters/sqlite/src/repository.rs +++ b/crates/adapters/sqlite/src/repository.rs @@ -3,6 +3,7 @@ use domain::{ DomainError, Song, SongRepositoryPort, SongSummary, SortField, SortOrder, StoredSong, song_preview_chords, }; +use std::str::FromStr; use sqlx::SqlitePool; use uuid::Uuid; @@ -15,7 +16,9 @@ pub struct SqliteSongRepository { impl SqliteSongRepository { pub async fn new(database_url: &str) -> Result { - let pool = SqlitePool::connect(database_url).await?; + let opts = sqlx::sqlite::SqliteConnectOptions::from_str(database_url)? + .create_if_missing(true); + let pool = SqlitePool::connect_with(opts).await?; sqlx::migrate!("./migrations").run(&pool).await?; Ok(Self { pool }) }