Releases: mayhew3/Postgres-Object
Releases · mayhew3/Postgres-Object
Release list
0.22.9
Changes
- Migrate to JUnit 5: Replace JUnit 4 with JUnit Jupiter 5.11.0
- Update all test annotations (
@Before→@BeforeEach) - Convert
@Test(expected=...)toassertThrows() - Add
useJUnitPlatform()to Gradle test task
Why This Matters
Dependent projects can now extend PostgresSchemaTest and DatabaseTest using pure JUnit 5 without requiring junit-vintage-engine.
0.22.8
0.22.7 - Fix pg_dump authentication
Changes
- Fix pg_dump authentication by explicitly passing PostgreSQL environment variables (PGPASSFILE, PGPASSWORD) to ProcessBuilder
- This resolves CI test failures where pg_dump was failing with exit code 1
Technical Details
The ProcessBuilder.inheritIO() method inherits I/O streams but doesn't automatically pass environment variables to subprocesses. This release adds explicit environment variable configuration for pg_dump authentication.
Files Changed
- DataBackupLocalExecutor.java: Added PGPASSFILE and PGPASSWORD environment variables to ProcessBuilder
- build.gradle: Version bump to 0.22.7
0.22.6
Changes
- Cross-platform file path handling: Fixed DataArchiver to use
File.separatorinstead of hardcoded backslashes for better cross-platform compatibility - Improved directory creation: Replaced
mkdir()withmkdirs()to properly create nested directories - Better logging: Added proper logging when creating archive directories instead of suppressing warnings
Installation
Add this dependency to your build.gradle:
implementation 'com.mayhew3.postgresobject:postgres-object:0.22.6'0.22.5 - Attach Sources
What's New in 0.22.5
Improvements
- Attached sources to the build for better IDE integration
For full feature list, see 0.22.1 release notes.
0.22.4 - Bug Fixes
What's New in 0.22.4
Bug Fixes
- Additional bug fixes and improvements
For full feature list, see 0.22.1 release notes.
0.22.3 - Bug Fixes
What's New in 0.22.3
Bug Fixes
- Additional bug fixes and improvements
For full feature list, see 0.22.1 release notes.
0.22.2 - Bug Fixes
What's New in 0.22.2
Bug Fixes
- Various bug fixes and improvements
For full feature list, see 0.22.1 release notes.
0.22.1 - Heroku Backup Support
What's New in 0.22.1
Features
- Heroku-Compatible Backup/Restore System: Made backup and restore functionality OS-agnostic and compatible with Heroku environments
- Refactored backup executors to work without direct file system access
- Added support for running backups from cloud environments
- Improved compatibility for containerized deployments
Improvements
- PostgreSQL 17 Support: Upgraded to PostgreSQL 17 compatibility
- Configurable Schema: Made database schema configurable for better test isolation
- Java 21: Upgraded to Java 21
- Gradle 9.2: Upgraded to Gradle 9.2.0 for better compatibility and performance
Technical Updates
- Fixed all Gradle 9 deprecation warnings for future compatibility
- Improved CI/CD pipeline with better schema handling
- Enhanced test infrastructure with configurable schemas
For more details, see commits since 0.21.0.
v0.21.0 - PostgreSQL 17, Configurable Schema, Integration Tests
Release 0.21.0: Phase 2.3 Complete
🚀 Major Changes
- Upgraded to PostgreSQL 17 (from PostgreSQL 16)
- Configurable schema support via
POSTGRES_SCHEMAenvironment variable - Comprehensive integration tests - 6 new PostgreSQL CRUD tests
- CI integration tests - All tests now run in CI with Docker databases
- Local test scripts - Easy
test-local.sh/test-local.batfor local testing
✨ Test Infrastructure
- ✅ All 146 tests pass in CI (120+ unit tests + 26 integration tests)
- 🐳 Docker Compose setup for local PostgreSQL/MySQL testing
- 📚 Comprehensive test documentation in
TESTING.md - 🔧 Automatic environment variable configuration
⚙️ Configuration
- Default Port: 5440 (configurable via
POSTGRES_PORT) - Default Version: PostgreSQL 17 (configurable via
POSTGRES_VERSION) - Schema: Configurable via
POSTGRES_SCHEMA(defaults to "test") - Gradle automatically passes environment variables to test JVM
📖 Documentation
- Added comprehensive
TESTING.mdguide - Updated
CLAUDE.mdwith test script usage - CI troubleshooting and schema configuration docs
🔧 JitPack Usage
repositories {
maven { url 'https://jitpack.io' }
}
dependencies {
implementation 'com.github.mayhew3:Postgres-Object:0.21.0'
}🐛 Bug Fixes
- Fixed CI schema mismatch issues
- Corrected PostgreSQLCRUDIntegrationTest table names
- Fixed ResultSet positioning bugs in integration tests
- Fixed null handling test expectations
All tests passing in CI: https://github.com/mayhew3/Postgres-Object/actions