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>
16 lines
483 B
YAML
16 lines
483 B
YAML
# 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
|