Summary
v0.28.0 brings type-based ANSI styling for query results, fuzzy completion improvements, and a large internal architecture overhaul that simplifies the codebase significantly.
Highlights
CLI_TYPE_STYLESsystem variable: Configure per-type ANSI colors for query results using a colon-separatedTYPE=STYLEformat (e.g.,SET CLI_TYPE_STYLES = 'STRING=green:INT64=cyan:NULL=dim'). Supports named colors, attributes, raw SGR numbers, 256-color, and truecolor. See docs/system_variables.md for full reference.- SQL statement skeletons in fuzzy finder: Fuzzy completion now includes SQL statement templates for faster query authoring.
- Format system rewrite: New
Cellinterface withPlainCell/StyledCell, format registry, and unified table rendering. Migrated from go-runewidth to go-tabwrap. - Architecture simplifications: Extracted
TransactionManager, restructured system variables into nested groups, migrated to named capture groups, simplified SQL execution pipeline. Net reduction in code complexity. - spanemuboost v0.3.4: Adopted
LazyEmulatorfor deferred emulator startup in tests andTestMainhelper for cleaner test infrastructure.
What's Changed
New Features
- feat(fuzzy): add SQL statement skeletons to fuzzy completion by @apstndb in #552
- refactor: migrate to spanemuboost v0.3.x new API by @apstndb in #553
- feat(format): add CLI_TYPE_STYLES system variable for type-based ANSI styling by @apstndb in #559
Misc
- refactor: restructure systemVariables into nested struct groups by @apstndb in #543
- refactor: extract TransactionManager from Session by @apstndb in #544
- refactor: migrate statement definitions to named capture groups by @apstndb in #545
- refactor: simplify execute_sql.go pipeline by extracting DDL/DML/partitioned/row-iter by @apstndb in #546
- refactor: simplify initializeSystemVariables with table-driven mappings by @apstndb in #547
- refactor: replace CurrentSession *Session with inTransaction callback by @apstndb in #549
- refactor: quick-win architecture improvements (#5, #7, #8) by @apstndb in #548
- test: add unit tests for format/ package by @apstndb in #550
- test: add unit tests for metrics/ package by @apstndb in #551
- refactor(format): add Cell interface, format registry, and unified table rendering by @apstndb in #556
- refactor(format): migrate from go-runewidth/go-runewidthex to go-tabwrap and add StyledCell by @apstndb in #557
- chore(deps): migrate to spanemuboost v0.3.3 with LazyEmulator by @apstndb in #560
- chore(deps): update spanemuboost v0.3.3 → v0.3.4, use TestMain helper by @apstndb in #561
Full Changelog: v0.27.0...v0.28.0