Releases: elisemercury/Duplicate-Image-Finder
Releases · elisemercury/Duplicate-Image-Finder
v4.2.1
v4.2.0
Major updates:
- New feature: renamed the
lazy
parameter tosame_dim
to make the usage of difPy more intuitive. The functionality remains the same. - Enhancements:
- Improved the CLI usage by ensuring parameter validation is performed before any search is performed.
- Improved
search.stats
generation by using dict literals, as suggested by @AliSot2000 in #112
- Bug fixes:
- Deprecated backwards compatibility with
logs
parameter. difPy now throws an exception iflogs
is given. - Improved error handling
- Improved parameter validation
v4.1.3
Major update to the behavior of lower_quality
:
- Previously, difPy would compare the file sizes to determine whether an image would be lower or higher quality.
- Starting with v.4.1.3, difPy now considers the image resolution (pixel width x pixel height) the determine image quality. This is a more accurate measure, since image file sizes could be lower for certain file types even though images would have higher resolutions (this is due to the difference in the way images are compressed with different file type algorithms).
v4.1.2
Minor updates:
- Removed constraint that would not allow
recursive
to be set toTrue
whenin_folder
would be set toTrue
. - Implemented fix for #94 where difPy would not search through files in folders containing brackets ("[" or "]") in the file path when
in_folder
would be set toTrue
. - Implemented fix for #105 where the
search.results
output would be inaccurate whenin_folder
would be set toTrue
. - Other minor code improvements.
- Fixed typos in
README.md
.
v4.1.1
Bug fixes and minor code updates:
- Implemented a fix for #85 which would cause multiprocessing to throw an error when multiple processes would be running. The fix involves integrating
multiprocessing.freeze_support()
as suggested by @pauljohn2000. - @dmcken fixed #96 by adding better support for error handling.
- @FlavienRx improved the
search.delete
function structure.
v4.1.0
Major enhancements and new features:
- Enhancement: provides a fix for #80. difPy now comes with an improved algorithm for handling larger datasets in order to be more memory efficient, see Using difPy with Large Datasets. As part of this enhancement, two new parameters were added:
- Enhancement: difPy comes with improved performance due to major improvements in the comparison algorithms. As part of this enhancement, a new parameter was added:
lazy
was added todifPy.search
which allows difPy to search more efficiently for exact duplicates (i. e. two exact file copies). By default,lazy
is set toTrue
and should only be turned off when searching for images that are not exact duplicates (i. e. having different dimensions, different file types, etc.). Read more here.
- Enhancement: the default value of the
similarity
parameter was reduced from 50 to 5. - Enhancement: the progress bar has been improved.
- New feature:
difPy.search
now supports therotate
parameter. If set toFalse
, images will not be rotated on comparison, which can significantly reduce comparison times. Read more here. - New feature: the output structure of difPy has been adjusted for improved user-friendliness: the structure of
search.result
is now simpler with less levels of depth, andsearch.lower_quality
now comes as alist
. When invoked via the CLI, the lower_quality output file will now be in.txt
format.
See the difPy usage guide for more details. Happy deduplicating! 🎉
v4.1.0-beta
Initial beta version release of difPy v4.1.0.
v4.0.1
v4.0.0
difPy v4 comes with major updates, code improvements and new features 🎉
- Enhancement: difPy now leverages Python's multiprocessing capabilities which results in significant performance increases. In tests, difPy v4 was on average 10x faster than it's previous versions on the same datasets. Suggested by @TheLastGimbus and @thecodingchicken.
- Enhancement: difPy's processes have been split into
difPy.build
anddifPy.search
so that multiple searches can be performed on the same image repository and not having to re-build it. - Enhancement: difPy is now more lightweight thanks to reduced dependency on external packages and increased usage of Numpy capabilities.
- New feature: difPy now supports
in_folder
search, allowing to search separately among directories, instead of in the union of all directories. Suggested by @audiomuze in #53. - New feature: when running from the CLI, if no folder is specified, difPy will run by default in the working directory.
- Various other minor code improvements
The usage of difPy v4 varies significantly to previous versions. It is therefore recommended to see the updated difPy Usage Documentation.
v4.0.0-beta
Initial beta version release of difPy v4.