Releases
v0.0.1
Compare
Sorry, something went wrong.
No results found
Changelog
Features
1bd07a9 feat(cli): wire --config and --verbose flags
7215828 feat(cli): wire pipeline, add --exclude and orphan-FK preflight
57c76bf feat(compose): add MySQL dogfood schema
564e09f feat(config): introduce seeder.yaml parser package
666944b feat(config): support per-column yaml overrides
ccb407c feat(dsn): recognize mysql scheme and convert to driver format
8f68d26 feat(generator): add gofakeit-based Kind dispatch with type fallback
1d82999 feat(infer): add Explain for verbose inference reporting
e5cb01f feat(infer): add UNIQUE-aware wrap and Image-placeholder rule
eba9121 feat(infer): pick generator by column name with Kind fallback
cb16d0d feat(infer,cli): add --locale ja for Japanese-aware fake data
010a971 feat(insert): accept per-table rows, verbose output, value Table
368de88 feat(insert): add MySQL driver
8f67e81 feat(insert): add bulk insert via pgx CopyFrom behind Driver interface
a8900cb feat(insert): batch insertion + LRU pool with --batch-size flag
da170f3 feat(insert): rework planColumns for raw default and forward-referenced self-FK
7fa14e9 feat(insert,config,cli): polymorphic FK, alternate outputs, and CDC stream
99584f9 feat(insert,introspect): pick composite FK targets as a single tuple
0378c2a feat(introspect): add Kind.String and convert Schema to value types
bd62a22 feat(introspect): add MySQL driver
a7f9d65 feat(introspect): add Postgres schema introspection with Kind via Driver
909086a feat(introspect): cache introspected schema with --cache flag
7f508d8 feat(introspect): expose raw column_default and single-column UNIQUE
ad4f31f feat(plan): add BuildWithDeps for non-FK ordering hints
95aea26 feat(plan): topologically sort tables by FK dependency
Bug fixes
c56cd1a fix(cli): detect unknown table names in seeder.yaml
a3748e0 fix(cli): handle --version/--help when arguments are reordered
0c5c2a1 fix(cli): reject negative --seed with a usage error
d34a831 fix(cli): treat unknown columns as NOT NULL in orphan FK preflight
7baf077 fix(cli,insert): make --seed 0 deterministic via optional pointer
89cf744 fix(config): reject duplicate polymorphic type_col / id_col within a table
54ad187 fix(config): reject non-scalar yaml values in column overrides
fc34b3c fix(dsn): decode URI userinfo and escape @ in MySQL driver DSN
d49bce1 fix(dsn): drop @-escape in password; driver splits on last @
68a62d3 fix(dsn): list both postgres and postgresql in scheme error messages
029c805 fix(dsn): validate ToMySQLDSN input (scheme/host/database)
b718688 fix(generator): emit []byte for KindBytes so bytea COPY succeeds
07b6a57 fix(infer): gate name rules by Kind so type mismatch falls back
35ee49f fix(infer): keep image URLs valid and bound int range under UNIQUE
2e3b8bf fix(infer): route prefecture columns to State rule, not Country
a52ab65 fix(infer): start UNIQUE-aware int counter at 1 for tinyint/smallint
03389af fix(insert): detect FKs before int-default skip and ignore empty overrides
62f394d fix(insert): emit OVERRIDING SYSTEM VALUE for Postgres IDENTITY inserts in --output sql
02a2f11 fix(insert): error out when a table has no writable columns
1d05229 fix(insert): filter inBatch rows by FK referenced columns in pickSelfFKRow
fe0f3df fix(insert): let column overrides win over the int-with-default skip
175dbbd fix(insert): list postgresql:// in the --output=sql DSN scheme error
88bd5d7 fix(insert): mirror override precedence in explainColumn verbose output
b60b077 fix(insert): populate FK pool for UNIQUE non-PK referenced columns
a8cf373 fix(insert,cli): address Copilot review on polymorphic validation, output mode, time format, and rate doc
d5372b5 fix(insert,cli): keep stream pool across ticks and reject --output with --dry-run
393c591 fix(insert,cli): split --output stdout from progress, bound output buffers, harden MySQL escapes and PK uniqueness
3d5e5ec fix(introspect): describe enum escape in prose to dodge gofmt rewrite
2f64656 fix(introspect): key MySQL UNIQUE constraints by (table, name)
487a757 fix(introspect): make Column.Default a *string to keep NULL distinct from empty
b2ad26f fix(introspect): pair composite FK columns via pg_constraint ordinality
b0e1409 fix(introspect): rewrite enum escape comment to bypass gofmt typographic rewrite
1026367 fix(introspect): use os.CreateTemp for cache write to avoid stale tmp collisions
6143ad2 fix(introspect,insert): list postgresql in supported schemes error
bfeabe6 fix(matchers): use reflect.DeepEqual for safe Equal compares
aa5dd7a fix(mysql): harden Truncate FK restore and broaden kind detection
8ecfe9c fix(test): filter base tables and quote identifiers in MySQL reset helper
b093e6d fix(tsql): add doc.go so the package is visible to non-integration builds
d6042cc fix(tsql): pin a single connection so FOREIGN_KEY_CHECKS=0 covers reset DROPs
5cd776f fix: align seeder.example.yaml with dogfood schema
Performance
0ebb3e7 perf(infer): hoist phoneJA prefixes to package-level var
fa2e738 perf(insert): cap in-batch self-FK buffer at 100k entries
49500ac perf(insert): only append self-FK-referenced columns to inBatch
Refactor
afc377f Revert "refactor(test): pass Seed via &seed instead of new(uint64(42))"
13099ce refactor(cli): use slices.Sort for codebase consistency
0f0333c refactor(insert): clarify self-FK error wording and rename lookupOwnPK to lookupOwnRef
a8b0a66 refactor(insert): document Pool zero-value and tail-trim semantics
28d1d6a refactor(insert): hold FK pool as row tuples
93750be refactor(introspect): inline enum labels into Column (drop Schema.Enums)
ed7cdf5 refactor(test): pass Seed via &seed instead of new(uint64(42))
38f67f5 refactor(test): rename testutil package to tsql
499f329 refactor(test): share MySQL reset helper via internal/testutil
Documentation
3600d16 docs(cli): align --seed flag wording with the implementation
9d5c2ac docs(copilot): document that Go regexp supports lazy quantifiers
41f98a4 docs(copilot): document that new(value) is valid Go 1.26 syntax
725deed docs(example): correct preflight discovery hint for generators
fbcdebd docs(introspect): align UNIQUE query comments with helper behavior
aac7e2b docs(introspect): note that postgres constraint names are schema-unique
f1104e7 docs(readme): add Homebrew tap and Windows zip install instructions
318a38e docs(readme): correct preflight discovery hint for generators
2fbc096 docs(readme): describe overridden defaults, UNIQUE-aware, image, and self-FK
a9fba46 docs(readme): detect Windows arch in install snippet and clarify PATH step
ebe0b37 docs(readme): document --batch-size, --cache, and bounded memory
8c84318 docs(readme): document MySQL support
46ce751 docs(readme): document polymorphic FK, --output, and --stream
e74ec8c docs(readme): document seeder.yaml configuration
096ad43 docs(readme): drop per-table row counts from v0.2.0 planned list
b970717 docs(readme): link bench/ and refresh json column guidance
9aa1815 docs(readme): note jsonb size caveat for v0.1
ef31473 docs(readme): note that image rule also matches _url-suffixed names
d8ed501 docs(readme): note that self-FK in-batch buffer is also bounded
cda29a2 docs(readme): note that yaml generator overrides bypass --locale
d7b1c3d docs(readme): warn about memory usage at very large --rows
45a8182 docs(readme,cli): clarify FK column override behavior
Others
1eeeabc Merge remote-tracking branch 'origin/main' into feat/advanced-fk
209a5ab Merge remote-tracking branch 'origin/main' into feat/locale-column-override
bb25728 bench: add Postgres insert benchmarks and the bench/README write-up
a339800 bench: gate destructive schema reset behind dedicated SEEDER_BENCH_DSN
68f1171 build(goreleaser): add Windows targets and group release notes by commit type
0f07054 build(goreleaser): publish brew formula into Formula/ subdir
4ae9bfc build(goreleaser): replace existing artifacts on retry
4a4eaa4 chore(compose): auto-load dogfood schema on postgres startup
b0f4ddf chore: add README and compose.yaml for v0.1 MVP
5713e21 chore: initial commit
0ab0162 chore: resolve golangci-lint warnings in v0.2 advanced FK additions
e6dd048 chore: use v0.x.0 semver for version references
86a27f5 ci: add MySQL service container to integration job
1da1a1a test(cli): cover Truncate precedence in buildInsertOptions
a2de296 test(cli): isolate TestRun_UnknownLocale from ambient seeder.yaml
2ba4d5d test(infer): drop redundant t.Parallel call in loop
9619288 test(infer): give each parallel subtest its own faker
cf4f7e0 test(infer,cli): cover LocaleEN invariant and locale wire-through
e8008c2 test(insert): cover column override precedence in planColumns
50157af test(insert): cover per-table rows override in insertTable
a075d6a test(integration): add MySQL tests and split SEEDER_TEST_DSN per driver
8642e2e test(integration): cover defaults, UNIQUE, and self-FK behaviors
9c1ac8f test(introspect): cover mySQLKind and parseMySQLEnumLabels
4513ab5 test(mysql): drop redundant DROP TABLE IF EXISTS in schema SQL
You can’t perform that action at this time.