@@ -7,6 +7,90 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
77
88## [ Unreleased]
99
10+ ## [ 2.11.2] - 2025-12-06
11+
12+ ### Added
13+ - ** Extended TUI Dashboard** - Added 4 new panes with dual-screen support:
14+ - ** Schema Browser pane** - Browse database tables, view columns, indexes, and foreign keys
15+ - ** Migration Manager pane** - List migrations with status, view file content with syntax highlighting, apply/rollback actions
16+ - ** Server Variables pane** - View and search server configuration variables across all dialects
17+ - ** SQL Scratchpad pane** - Interactive SQL query editor with autocomplete and query history
18+ - Dual-screen navigation: keys 1-8 work globally, tab/arrows switch between screens
19+ - Global search filter for Schema Browser and Server Variables panes (activate with '/' key)
20+ - PageUp/PageDown support for paginated navigation in fullscreen mode
21+ - Migration actions: 'a' key to apply pending migrations, 'r' key to rollback last applied migration
22+ - Improved migration detail view with structured display and syntax highlighting
23+
24+ - ** Table Search Command** (` pdodb table search <table> ` ):
25+ - Search values across all columns in a table
26+ - Support for JSON and array column search across all dialects
27+ - Options: ` --column=COL ` , ` --limit=N ` , ` --json=0|1 ` , ` --format=table|json|yaml `
28+ - Automatic column type detection and appropriate search condition building
29+ - Comprehensive unit tests and CLI tests
30+
31+ - ** Seed Generate Command** (` pdodb seed generate <table> ` ):
32+ - Extract data from database and generate seed files
33+ - Options: ` --limit ` , ` --where ` , ` --order-by ` , ` --exclude ` , ` --include ` , ` --format ` , ` --chunk-size ` , ` --preserve-ids ` , ` --skip-timestamps `
34+ - Support for filtering, sorting, and selective column export
35+
36+ - ** IDE Autocompletion for Migrations** :
37+ - Enhanced IDE autocompletion for ` schema() ` method in migration classes
38+ - Full support for all DdlQueryBuilder methods with proper type hints
39+ - Improved developer experience with better code completion
40+
41+ - ** Environment Config Loader** :
42+ - New ` EnvConfigLoader ` class to centralize environment variable parsing
43+ - Improved isolation of database and cache configuration loading
44+ - Prevents environment variable pollution between tests
45+
46+ ### Changed
47+ - ** TUI Dashboard UI Improvements** :
48+ - Centered pane titles horizontally in border rendering
49+ - Compact header and footer to fit 80x24 terminal
50+ - Changed pending migration icon from ✗ to ⏳ (hourglass) with yellow color
51+ - Updated README with current test count: 3806 tests, 12180 assertions
52+
53+ - ** Code Quality** :
54+ - Optimized imports by converting fully qualified names to use statements (74 files)
55+ - Added ` fully_qualified_strict_types ` rule to PHP CS Fixer config
56+
57+ ### Fixed
58+ - ** TUI Dashboard Fixes** :
59+ - Fixed connection count discrepancy in Connection Pool pane (summary vs. list)
60+ - Fixed Server Metrics pane showing incorrect Uptime (0s) and connection metrics
61+ - Fixed flickering in Active Queries pane when in fullscreen mode
62+ - Fixed right border being overwritten by content in Active Queries pane
63+ - Fixed visible height calculation in ConnectionPoolPane to account for all header rows
64+ - Fixed dashboard pane borders rendering (Status/Type duplication, border visibility)
65+ - Fixed arrow key navigation in TUI Dashboard (2-character escape sequences)
66+ - Fixed SQL Scratchpad autocomplete positioning and immediate screen refresh
67+ - Fixed SQL Scratchpad editor navigation and multi-statement query execution
68+ - Fixed ESC key handling to exit fullscreen mode
69+
70+ - ** Database Dialect Fixes** :
71+ - Fixed MySQL/MariaDB ` getActiveConnections ` to use actual visible connections count
72+ - Fixed MySQL/MariaDB ` getServerMetrics ` to properly extract Uptime value from SHOW VARIABLES
73+ - Fixed Oracle connection details display (added support for 'sid' and 'schema' keys)
74+ - Fixed SchemaBrowserPane to handle array table data correctly
75+ - Improved ServerMetricsPane metric labels for clarity
76+
77+ - ** Code Fixes** :
78+ - Fixed PHPStan errors in SeedCommand and SeedDataGenerator
79+ - Fixed unreachable code after ` showError() ` calls
80+ - Fixed event dispatcher state leakage in tests (added tearDown methods)
81+ - Fixed Oracle tests failing due to environment variable pollution
82+ - Fixed CacheManager reflection issues with typed properties
83+
84+ ### Tests
85+ - ** Significant Test Coverage Increase** :
86+ - Added comprehensive tests for Oracle classes (OracleDdlBuilder, OracleDdlQueryBuilder, OracleSqlFormatter)
87+ - Added tests for all UI panes (ActiveQueriesPane, CacheStatsPane, ConnectionPoolPane, ServerMetricsPane, SchemaBrowserPane, MigrationManagerPane, ServerVariablesPane, SqlScratchpadPane)
88+ - Added tests for InputHandler, Terminal, MonitorManager, TestGenerator classes
89+ - Added tests for UserCommand, KillConnectionAction, KillQueryAction
90+ - Added tests for TableSearcher and seed generate command
91+ - Code coverage increased from ~ 65% to ~ 67% (Lines: 18519/27596)
92+ - Total: 3806 tests, 12180 assertions
93+
1094## [ 2.11.1] - 2025-12-02
1195
1296### Added
@@ -1897,7 +1981,8 @@ Initial tagged release with basic PDO database abstraction functionality.
18971981
18981982---
18991983
1900- [Unreleased]: https://github.com/tommyknocker/pdo-database-class/compare/v2.11.1...HEAD
1984+ [Unreleased]: https://github.com/tommyknocker/pdo-database-class/compare/v2.11.2...HEAD
1985+ [2.11.2]: https://github.com/tommyknocker/pdo-database-class/compare/v2.11.1...v2.11.2
19011986[2.11.1]: https://github.com/tommyknocker/pdo-database-class/compare/v2.11.0...v2.11.1
19021987[2.11.0]: https://github.com/tommyknocker/pdo-database-class/compare/v2.10.3...v2.11.0
19031988[2.10.3]: https://github.com/tommyknocker/pdo-database-class/compare/v2.10.2...v2.10.3
0 commit comments