Repository navigation
v0.2.6
A small release on top of v0.2.5: seeds drop goose for plain Go.
Changed: Seeds are plain Go, not goose (DESIGN.md §4.1)
The original design reused goose for seeds, the same way migrations do: versioned SQL files tracked in a seed_db_version table, with a seed-down to roll back. That diverges from how Rails' db/seeds.rb actually works — it re-runs the whole script every time and relies on find_or_create_by! for idempotency, not a version table. A version table also had no path to a seed calling real application code without inventing a second Go-migration wiring marker.
No mature Go seeding tool exists to glue in instead (the one candidate found, 2kims/peng, is unproven), and the ecosystem's common fallback — reusing the migration tool — is what Bogie already did, at the cost of a second goose provider, a second table, and a db seed-down that Rails doesn't have either.
New design:
bogie g seed demo_posts # db/seeds/demo_posts.go, registered above // bogie:seeds
bogie db seed # runs every seed, every time; write each to be safe to run twice
bogie d seed demo_posts # reverses it, registration includeddb/seeds/seeds.go ships with every app from bogie new, like app/controllers/routes.go — seeds have no new dependency and are wanted from day one, unlike jobs (opt-in via --jobs).
Install / upgrade
go install github.com/bogie-go/bogie@latest # v0.2.6An existing app: commit your work, then run bogie app:update to carry the new db/seeds/seeds.go runner and the trimmed app/services/migrate forward. If the app already has goose-based seeds, port them into db/seeds/*.go by hand first — app:update does not translate seed content, only layout.
Full Changelog: v0.2.5...v0.2.6