Add sqlc configuration and core queries
sqlc.yaml (sqlite, schema migrations/, queries migrations/queries/) generates internal/db with emit_interface. Queries cover dinners (create, get, list by status, update, archive, set favorite), recipes with ingredients and steps (upsert by source_url, get, replace children), photos (insert, get by sha256) and get/upsert for the five settings singletons. Repository tests run every query against a migrated temp database. make sqlc regenerates with the pinned sqlc v1.31.1 (dev tool only, not in go.mod); make sqlc-check regenerates and fails on any drift in internal/db, and CI runs it after make test. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
# sqlc code generation. Regenerate with `make sqlc` (pinned sqlc version in the
|
||||
# Makefile); `make sqlc-check` fails when internal/db is stale. sqlc reads only
|
||||
# the top-level *.sql files of the schema directory, so migrations/queries/ is
|
||||
# not treated as schema.
|
||||
version: "2"
|
||||
sql:
|
||||
- engine: sqlite
|
||||
schema: migrations
|
||||
queries: migrations/queries
|
||||
gen:
|
||||
go:
|
||||
package: db
|
||||
out: internal/db
|
||||
sql_package: database/sql
|
||||
emit_interface: true
|
||||
Reference in New Issue
Block a user