Release v2.11.2
This release extends the TUI Dashboard with 4 new panes, adds powerful table search and seed generation commands, and includes numerous bug fixes and improvements.
🎉 Major Features
Extended TUI Dashboard with Dual-Screen Support
The dashboard now includes 8 panes across 2 screens with full keyboard navigation:
- Schema Browser - Browse database tables, view columns, indexes, and foreign keys
- Migration Manager - List migrations with status, view file content with syntax highlighting, apply/rollback actions
- Server Variables - View and search server configuration variables across all dialects
- SQL Scratchpad - Interactive SQL query editor with autocomplete and query history
Navigate between screens with Tab/arrows, use keys 1-8 to jump to any pane, and activate global search with '/' key.
New Commands
Table Search (pdodb table search <table>)
- Search values across all columns in a table
- Support for JSON and array column search across all dialects
- Options:
--column,--limit,--json,--format
Seed Generate (pdodb seed generate <table>)
- Extract data from database and generate seed files
- Flexible filtering, sorting, and selective column export
- Options:
--limit,--where,--order-by,--exclude,--include,--format,--chunk-size,--preserve-ids,--skip-timestamps
🔧 Improvements
- Enhanced IDE autocompletion for
schema()method in migrations - New
EnvConfigLoaderclass for better environment variable isolation - Centered pane titles and compact UI to fit 80x24 terminal
- Optimized imports across 74 files
🐛 Bug Fixes
TUI Dashboard
- Fixed connection count discrepancy in Connection Pool pane
- Fixed Server Metrics pane showing incorrect Uptime and connection metrics
- Fixed flickering in Active Queries pane in fullscreen mode
- Fixed right border being overwritten by content
- Fixed arrow key navigation (2-character escape sequences)
- Fixed SQL Scratchpad autocomplete positioning and screen refresh
- Fixed ESC key handling to exit fullscreen mode
Database Dialects
- Fixed MySQL/MariaDB connection count calculation
- Fixed MySQL/MariaDB uptime retrieval from SHOW VARIABLES
- Fixed Oracle connection details display (added support for 'sid' and 'schema' keys)
- Improved ServerMetricsPane metric labels for clarity
Code Quality
- Fixed PHPStan errors in SeedCommand and SeedDataGenerator
- Fixed event dispatcher state leakage in tests
- Fixed Oracle tests failing due to environment variable pollution
- Fixed CacheManager reflection issues with typed properties
📊 Test Coverage
- Code coverage increased from ~65% to ~67% (Lines: 18519/27596)
- Added comprehensive tests for Oracle classes, UI panes, and CLI commands
- Total: 3806 tests, 12180 assertions
📝 Full Changelog
See CHANGELOG.md for complete list of changes.