Files
dbx/CHANGELOG.md
T
end 08f8387856 feat(tx): add WithTxValue for transactional return values
WithTxValue runs a callback inside a transaction and returns its result,
with rollback on error. Includes tests and documentation updates.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-06-29 18:25:08 -07:00

28 lines
1.3 KiB
Markdown

# Changelog
## Unreleased (v1.0.0)
### Breaking changes
- Removed `UUID`, `NewUUID`, and `ParseUUID`.
- Added `StringKSUID` and `BinaryKSUID` with distinct SQL encodings and shared GraphQL string scalar transit.
- Removed `DBConfig.AutoMigrate`, `SQLOFunc`, and `JSONB.ToMap()`.
- Replaced `Column` / `ColumnList` intersection interfaces with dialect-neutral type aliases.
- `Apply*` and `Expr*` helpers now accept `Column` / `ColumnList` / `Expression` aliases instead of `mysql.*` types.
### Added
- `StringKSUID.Equal` / `IsZero`, `BinaryKSUID.Equal` / `IsZero`, and nil sentinel vars for [ApplyInterfacePtr].
- `Query`, `MustQuery`, and `UpdateOne` helpers (+ Context variants).
- `WithTxValue` for transactional functions that return a value.
- Context-aware variants for all query and mutation helpers.
- `Delete`, `DeleteAffected`, `WithTx`, `ContainsCol`, and `CurrentDialect()`.
- Package documentation (`doc.go`), expanded README, and subpackage docs for `dbxm` / `dbxp`.
- Comprehensive tests for KSUID types, CRUD helpers, column utilities, and module lifecycle.
### Changed
- Debug logger setup returns an error instead of panicking when `DebugLog` is enabled without a dialect logger blank import.
- `DestName` skips logging when the database module is not initialized.
- Source reorganized into domain-focused files (`query.go`, `exec.go`, `apply.go`, etc.).