Skip to content

v0.10.0: awesome-go preparation, API cleanup, GitHub Flow#9

Merged
kolkov merged 6 commits into
mainfrom
develop
Mar 5, 2026
Merged

v0.10.0: awesome-go preparation, API cleanup, GitHub Flow#9
kolkov merged 6 commits into
mainfrom
develop

Conversation

@kolkov

@kolkov kolkov commented Mar 5, 2026

Copy link
Copy Markdown
Contributor

Summary

Prepare Relica for awesome-go submission: comprehensive testing, API cleanup, documentation overhaul, and workflow migration to GitHub Flow.

Changes

  • Tests: 1500+ test cases, 88%+ coverage — new tests for db.go, dialects, util, security
  • API: Add BatchInsert(), BatchUpdate(), Upsert() direct shortcuts on DB (no more Builder() needed)
  • Docs: Remove all Builder() and Select("*") patterns from 20+ documentation files
  • Docs: Validate all documentation against actual code (fix incorrect signatures, imports, API usage)
  • Fix: Implement extractTableName() (was TODO), fix all lint issues (prealloc, staticcheck, misspell, cyclop)
  • Workflow: Switch from Git Flow (develop branch) to GitHub Flow (main + feature branches)

Test plan

  • go test ./... — all pass
  • golangci-lint run ./... — 0 issues
  • go mod verify — clean
  • No Builder() patterns in public docs (except CHANGELOG historical entries)
  • No Select("*") in public docs

kolkov added 5 commits March 5, 2026 16:27
- internal/dialects: 0% → 100% coverage (all 3 dialects)
- internal/util: 41% → 97% coverage (PK ops, sanitize, context)
- db.go public API: 66% → 99% coverage (Model, Transactional, Stats)
- Total coverage: 80.7% → 88.3%, 1500+ test cases
- Fix extractTableName TODO in security/auditor.go
- Fix lint issues: misspell, prealloc, staticcheck, cyclop
- Fix Transactional() signature in AGENTS.md (add ctx parameter)
- Fix In()/NotIn() examples to use variadic args in AGENTS.md
- Fix relica.Raw() → relica.NewExp() in README (Raw doesn't exist)
- Fix db.stmtCache.Stats() → db.Stats() in README (private field)
- Fix With/WithRecursive call order in CTE and Advanced guides
- Fix relica.NewDB() → relica.Open() in Security docs
- Fix WithStrictMode() → WithStrict(true) in Security docs
- Remove internal/security code examples from README (unexportable)
- Add extractTableName/findTableStart tests for auditor
- Add internal package usage notes to Security guides
- Add db.BatchInsert(), db.BatchUpdate(), db.Upsert() direct methods
- Remove all db.Builder().X() from README in favor of db.X()
- Fix non-compiling JOIN examples (methods on SelectQuery, not QueryBuilder)
- Update CHANGELOG for v0.10.0 release
…cumentation

- Remove all db.Builder().Method() patterns in favor of db.Method()
- Replace Select("*") with Select() (no-arg defaults to SELECT *)
- Update 20 documentation files for consistent API usage
- Net reduction of 231 lines by removing Builder() indirection
- RELEASE_GUIDE.md: complete rewrite for GitHub Flow (main + feature branches)
- CONTRIBUTING.md: update PR workflow to use main as base branch
- No more develop branch — main is the single source of truth
@codecov

codecov Bot commented Mar 5, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 77.14286% with 8 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
db.go 0.00% 6 Missing ⚠️
internal/security/auditor.go 92.00% 1 Missing and 1 partial ⚠️

📢 Thoughts on this report? Let us know!

@kolkov kolkov merged commit c550ff1 into main Mar 5, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant