Releases: tareq-halaby/sql-powertools
Releases · tareq-halaby/sql-powertools
v1.3.0 - Pagination & Rate Limiting Release
What's New in v1.3.0
New Features
- Paginator: Offset-based pagination with metadata for any QueryBuilder query
- RateLimiter: Token bucket rate limiting for query execution control
- MigrationRunner: Schema migration execution engine with rollback support
Improvements
- Full PHP 8.1+ type-safe implementations across all new classes
- Chainable API consistency across QueryBuilder ecosystem
- Comprehensive PHPDoc coverage for all public methods
Breaking Changes
- None
Migration Guide
This release is fully backward compatible with v1.2.x.
v1.2.0 - Query Builder & Performance Release
What's New in v1.2.0
This release introduces significant performance improvements and new architectural components for the SQL Powertools library.
New Features
- QueryBuilder: Fluent interface for constructing SQL queries with automatic parameter binding
- CacheManager: In-memory and file-based caching layer for query results
- ConnectionPool: PDO connection pooling to reduce connection overhead
- EventDispatcher: Query lifecycle event system for hooks and monitoring
- SchemaInspector: Runtime database schema introspection utilities
Improvements
- Enhanced type safety with strict PHP 8.1+ declarations
- Full CRUD support in QueryBuilder (SELECT, INSERT, UPDATE, DELETE)
- Thread-safe cache with TTL support
- Event-driven architecture for extensibility
Breaking Changes
- None
Migration Guide
This release is fully backward compatible with v1.1.x.
SQL PowerTools v1.1.0 - Enhanced Security & Logging
What's New in v1.1.0
New Features
- SessionManager - Secure PHP session handling with hardened cookie settings (HttpOnly, Secure, SameSite)
- Configurable Masking - New
config/masking.phpfor custom sensitive column patterns includingnational_id,iban,tax_reference, and more - Logger - PSR-3 inspired audit logging for all database operations
- InputValidator - Centralized input validation and sanitization to prevent SQL injection
- DatabaseExporter - Dedicated class for SQL export operations
Improvements
- Added API reference documentation (
docs/api-reference.md) - Added CONTRIBUTING guide (
docs/CONTRIBUTING.md) - Added CODEOWNERS file for automatic review assignment
- Added PR template for contributors
- Added comprehensive unit tests for DatabaseCloner
Security
- All session cookies now have HttpOnly, Secure, and SameSite=Strict flags
- Input validation is now centralized via InputValidator class
- Masking patterns extended to cover financial identifiers (IBAN, tax IDs)
Full Changelog: v1.0.0...v1.1.0
SQL PowerTools v1.0.0 - Initial Release
What's New in v1.0.0
This is the first stable release of SQL PowerTools!
Features
- Database Cloning - Safely clone MySQL databases with configurable row sampling
- Sensitive Data Masking - Automatic masking of sensitive columns (passwords, emails, etc.)
- Session-backed Credentials - Secure credential management using PHP sessions
- Safe mysqldump Execution - Secure shell execution of mysqldump with sanitized inputs
- Sample Export - Export a configurable number of rows from each table
- Database Backup - Create compressed or uncompressed database backups
Documentation
- Full API reference in
/docs/api-reference.md - Contributing guide in
/docs/CONTRIBUTING.md - FAQ document in
/docs/faq.md - Security policy in
SECURITY.md
Requirements
- PHP 7.4+
- MySQL 5.7+ or MariaDB 10.3+
mysqldumpavailable on the server
Installation
- Clone this repository
- Copy
.env.exampleto.envand configure your database credentials - Run
composer install - Open
index.phpin your browser
Full Changelog: https://github.com/tareq-halaby/sql-powertools/commits/v1.0.0