Release Date: 09.12.2024
This is the first stable release of PictureComparer, delivering new features, performance improvements, and significant codebase modernization.
What's New?
Added:
- New Interfaces and Classes:
Grouperinterface and its implementationCRC32Grouper.Processorclass, which orchestrates the entire processing pipeline.AdaptiveCacheclass: Implements an Adaptive Cache System using the Caffeine Cache library.
- Logging:
- Integrated the SLF4J framework with Logback as the native implementation.
- Tests:
- Added tests for algorithms and the new
Processorclass.
- Added tests for algorithms and the new
Changed:
AlgorithmInterface:- Refactored the
Algorithminterface. - Adjusted all
Algorithmimplementations to align with the updated interface version.
- Refactored the
- Core Components:
- Updated
FileOperatorandFileVisitorto use the new logging system.
- Updated
- Algorithms:
- Refactored the PixelByPixel algorithm implementation.
- Updated JavaDoc for thePerceptualHashalgorithm. - Documentation:
- Updated
pom.xmlandREADME.md.
- Updated
Removed:
- Removed Deprecated Components:
RecordProcessor,ImageRecord, andRecordclasses.LoggingInterfaceand TinyLog support.FileUtilsinterface.
Release Notes
- This version focuses on scalability, modularity, and modernizing the codebase.
- Performance improvements have been achieved via the Caffeine Cache integration.
- All major logging has been streamlined using SLF4J.
- Check out our new documentation for more details.
How to Upgrade
- Ensure you are running JDK 21 or higher.
- Update your dependencies to include the latest version of PictureComparer
- Review the new
Processorclass and updatedAlgorithminterface to adapt custom implementation if necessary.