From 2391aa32d2f95dcc4d370d4ab89329e868de4719 Mon Sep 17 00:00:00 2001 From: dwrz Date: Sat, 26 Sep 2026 17:18:05 +0000 Subject: [PATCH] Refactor db package logging --- internal/db/queries_test.go | 3 ++- internal/db/schema.go | 5 +++-- internal/db/schema_test.go | 5 +++-- 3 files changed, 8 insertions(+), 5 deletions(-) diff --git a/internal/db/queries_test.go b/internal/db/queries_test.go index 7665678..aefd2f6 100644 --- a/internal/db/queries_test.go +++ b/internal/db/queries_test.go @@ -2,6 +2,7 @@ package db import ( "context" + "log/slog" "testing" ) @@ -12,7 +13,7 @@ func TestQueries(t *testing.T) { ) defer db.Close() - if err := db.ApplySchema(ctx, nil); err != nil { + if err := db.ApplySchema(ctx, slog.Default()); err != nil { t.Fatalf("ApplySchema: %v", err) } diff --git a/internal/db/schema.go b/internal/db/schema.go index c3dca08..b0b7cee 100644 --- a/internal/db/schema.go +++ b/internal/db/schema.go @@ -17,7 +17,8 @@ var migrations embed.FS // ApplySchema reads the current database version from PRAGMA user_version // and applies any pending migrations in a single transaction. Each migration // file runs in order; if any fail the entire transaction rolls back and the -// version is unchanged. +// version is unchanged. log must be non-nil; pass +// slog.New(slog.DiscardHandler) to run without logs. // // Migration files are named .. The version // must be a non-negative integer. On success, PRAGMA user_version is set @@ -27,7 +28,7 @@ var migrations embed.FS // the application code expects a schema that matches the latest migration. func (s *SQLite) ApplySchema(ctx context.Context, log *slog.Logger) error { if log == nil { - log = slog.Default() + return fmt.Errorf("logger is nil") } var currentVersion int diff --git a/internal/db/schema_test.go b/internal/db/schema_test.go index 6cb99a4..ef88d6e 100644 --- a/internal/db/schema_test.go +++ b/internal/db/schema_test.go @@ -2,6 +2,7 @@ package db import ( "context" + "log/slog" "testing" ) @@ -20,7 +21,7 @@ func TestSchema(t *testing.T) { testInitialVersion(t, ctx, db) }) - if err := db.ApplySchema(ctx, nil); err != nil { + if err := db.ApplySchema(ctx, slog.Default()); err != nil { t.Fatalf("ApplySchema: %v", err) } @@ -92,7 +93,7 @@ func testTablesExist(t *testing.T, ctx context.Context, db *SQLite) { func testSchemaIdempotent(t *testing.T, ctx context.Context, db *SQLite) { // Apply schema again; should succeed without error. - if err := db.ApplySchema(ctx, nil); err != nil { + if err := db.ApplySchema(ctx, slog.Default()); err != nil { t.Fatalf("second ApplySchema: %v", err) }