DBDiff v2.0.0 — What's New
✅ Tested Matrix (all passing)
| PHP | MySQL 8.0 | MySQL 8.4 | MySQL 9.3 | MySQL 9.6 |
|---|---|---|---|---|
| 7.4 | ✅ | ✅ | ✅ | ✅ |
| 8.3 | ✅ | ✅ | ✅ | ✅ |
| 8.4 | ✅ | ✅ | ✅ | ✅ |
| 8.5 | ✅ | ✅ | ✅ | ✅ |
🏗️ Local Dev Environment
- Added Docker (
docker-compose) setup with MySQL & PHP for consistent local dev - New
./start.shand./stop.shscripts to spin the environment up/down - Watch mode added to the test runner for instant feedback while coding
🔌 Modern PHP & Dependency Support
- Now supports PHP 7.4, 8.3, 8.4, and 8.5 (fixes deprecated dynamic properties & static call warnings)
- Updated
illuminate/*packages (Database, View, Container) to support v8–v11 - Updated
phpunit/phpunitto support v10 & v11 - Updated
diff/diffto v3.0 for PHP 8.4+ compatibility
🧪 Testing
- Added 10+ new integration tests covering schema and data diff scenarios
- Added Record Mode to auto-generate/update test fixtures
- Deterministic sorting of SQL dumps to prevent flaky cross-platform tests
- Full MySQL 8.0, 8.4, 9.3, and 9.6 compatibility confirmed
- New
--fastand--testdoxflags added to the test runner
🔒 Security & CI/CD
- GitHub Actions workflows added for automated PHAR builds and releases
- Added
SECURITY.mdpolicy - Integrated SonarCloud for automated code quality & security scanning
- Improved Dockerfile security
📚 Docs
- New
DOCKER.mdguide for local dev setup README.mdupdated to reflect modern workflow and install steps
⚠️ Breaking Change
- Drops support for versions earlier than PHP 7.3 (v1.x era infrastructure)
- PHP 7.3 may be supported but it is not tested. PHP 7.4 is still supported; PHP 8.x and MySQL 8/9 are now fully supported
- This is a major version bump (v1 → v2) — although the config largely remains backwards compatible with v1.0.0
What's Changed
- v2.0.0 Preparation by @jasdeepkhalsa in #136
- Adding support for PHP 8.5 and MySQL 9.6 by @jasdeepkhalsa in #139
Full Changelog: v1.0.0...v2.0.0
PHAR
Requires PHP ≥ 7.3.
chmod +x dbdiff.phar
sudo mv dbdiff.phar /usr/local/bin/dbdiff
dbdiff --versionTo build a PHAR locally from source, see Building a PHAR.
Build locally
See DOCKER.md for cross-version testing, Podman usage, and start.sh flags.