Skip to content

Commit d54a066

Browse files
committed
chore: prepare release v2.11.2
- Update CHANGELOG.md with all changes since v2.11.1 - Update CLI version to 2.11.2 - Add 4 new dashboard panes with dual-screen support - Add table search and seed generate commands - Fix multiple TUI Dashboard issues - Increase test coverage to ~67%
1 parent a3234e7 commit d54a066

File tree

2 files changed

+87
-2
lines changed

2 files changed

+87
-2
lines changed

CHANGELOG.md

Lines changed: 86 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -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

src/cli/Application.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ protected function detectVersion(): string
275275
*/
276276
public function getVersion(): string
277277
{
278-
return $this->version ?? '2.11.1';
278+
return $this->version ?? '2.11.2';
279279
}
280280

281281
/**

0 commit comments

Comments
 (0)