Skip to content

Releases: elisemercury/Duplicate-Image-Finder

v4.2.1

14 Jan 22:43
8d93014
Compare
Choose a tag to compare

Bug fix:

  • Fixed issue #119 where difPy would set same_dim = True when similarity = "similar".

v4.2.0

07 Jan 22:28
Compare
Choose a tag to compare

Major updates:

  • New feature: renamed the lazy parameter to same_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:
    • Implemented fix for #110 where difPy would throw an error when writing the lower_quality files to the output file during CLI usage.
    • Implemented fix for #111 where difPy would falsely accept both the move_to and delete parameters.
  • Deprecated backwards compatibility with logs parameter. difPy now throws an exception if logs is given.
  • Improved error handling
  • Improved parameter validation

v4.1.3

17 Nov 14:26
b0f8851
Compare
Choose a tag to compare

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

16 Nov 17:01
Compare
Choose a tag to compare

Minor updates:

  • Removed constraint that would not allow recursive to be set to True when in_folder would be set to True.
  • 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 to True.
  • Implemented fix for #105 where the search.results output would be inaccurate when in_folder would be set to True.
  • Other minor code improvements.
  • Fixed typos in README.md.

v4.1.1

09 Oct 21:05
Compare
Choose a tag to compare

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

20 Feb 22:37
Compare
Choose a tag to compare

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:
    • processes has been added to difPy.build and difPy.search, and defines the number of worker processes for multiprocessing. Read more here.
    • chunksize has been added to difPy.search and sets the batch size at which the job is simultaneously processed when multiprocessing. Read more here.
  • 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 to difPy.search which allows difPy to search more efficiently for exact duplicates (i. e. two exact file copies). By default, lazy is set to True 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 the rotate parameter. If set to False, 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, and search.lower_quality now comes as a list. 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

19 Feb 22:39
Compare
Choose a tag to compare
v4.1.0-beta Pre-release
Pre-release

Initial beta version release of difPy v4.1.0.

v4.0.1

27 Sep 19:10
Compare
Choose a tag to compare

Minor bug fixes:

  • Fixed issue #77 where difPy would throw an error when extracting the file extension from files that contain a dot in the name.
  • Fixed issue #78 where search.delete() would never successfully delete the lower quality images.
  • Implemented and fixed handling for issue #75.

v4.0.0

31 Aug 20:18
7389ccb
Compare
Choose a tag to compare

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 and difPy.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

28 Aug 18:11
Compare
Choose a tag to compare
v4.0.0-beta Pre-release
Pre-release

Initial beta version release of difPy v4.