diff --git a/Cargo.lock b/Cargo.lock index f780bd9..82305e3 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -747,7 +747,7 @@ dependencies = [ [[package]] name = "k-core" -version = "0.1.1" +version = "0.1.2" dependencies = [ "anyhow", "chrono", diff --git a/Cargo.toml b/Cargo.toml index 2406b85..cbd935a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,13 +1,14 @@ [package] name = "k-core" -version = "0.1.1" +version = "0.1.2" edition = "2024" [features] default = ["logging", "db-sqlx", "auth"] logging = ["dep:tracing", "dep:tracing-subscriber"] db-sqlx = ["dep:sqlx"] -postgres = ["sqlx/postgres"] +postgres = ["db-sqlx", "sqlx/postgres"] +sqlite = ["db-sqlx", "sqlx/sqlite"] auth = ["dep:tower-sessions"] [dependencies] @@ -22,8 +23,6 @@ tokio = { version = "1.48.0", features = ["full"], optional = true } sqlx = { version = "0.8.6", features = [ "runtime-tokio", "macros", - "sqlite", - "postgres", "chrono", "uuid", ], optional = true } diff --git a/src/db.rs b/src/db.rs index a1ae176..2ddc7a3 100644 --- a/src/db.rs +++ b/src/db.rs @@ -1,5 +1,8 @@ use std::time::Duration; -use sqlx::{Pool, Sqlite}; +use sqlx::{Pool}; + +#[cfg(feature = "sqlite")] +use sqlx::Sqlite; #[cfg(feature = "postgres")] use sqlx::Postgres; @@ -26,6 +29,7 @@ impl Default for DatabaseConfig { /// The Template uses this type so it doesn't care if it's Sqlite or Postgres. #[derive(Clone, Debug)] pub enum DatabasePool { + #[cfg(feature = "sqlite")] Sqlite(Pool), #[cfg(feature = "postgres")] Postgres(Pool), @@ -44,17 +48,27 @@ pub async fn connect(config: &DatabaseConfig) -> Result Result, sqlx::Error> { sqlx::sqlite::SqlitePoolOptions::new().connect(url).await } \ No newline at end of file