Optimize Images Versions Save

A command-line interface (CLI) utility written in pure Python to help you reduce the file size of images.

v.1.5.1

2 years ago
  • Adjusted requirements in order to allow installation in a more diverse set of environments.

v.1.5.0

3 years ago
  • Replaced temporary files with in-memory buffers which, at the expense of a bit higher RAM usage, prevents unnecessary I/O and may result in faster performance when working with slower disks.
  • Added information about the running environment to the -v/--version CLI argument, so that you can check which python version is being used, as well as some information about required and optional third-party packages.
  • Added a minimum space saving threshold (1% per file). Files are only replaced if the space saved is at least 1% of the original file size. Contributed by varnav@GitHub.
  • Added a check for the presence of the required package Piexif.
  • Added new methods intended to allow optimize-images to be imported and used as a package. The initial refactoring was kindly contributed by Tharindu N. (truethari@GitHub)
  • Added custom exceptions to better support the public API.

v.1.4.0

3 years ago
  • New feature: watch a directory for changes and optimize any new image file as soon as it is created (no multiprocessing for now, sorry). This feature is not compatible with Pythonista for iOS, since it requires a third-party package called Watchdog, which is currently not available on Pythonista).
  • Long running tasks, like optimizing recursively a folder containing a large number of image files, or watching for new files a a directory, can now be interrupted by the user with CTRL+C. Instead of an ugly traceback, the final report is presented with the usual statistics for the images that were processed.
  • Added the ability to specify the number of tasks to run simultaneously, so that you can optionally limit the number of processor cores being used by this application and keep in reserve some CPU power for any other tasks.

v.1.3.6

3 years ago
  • Fixed a UnicodeEncodeError that would occur in some environments when printing Emoji to screen (Windows, Haiku, maybe others).
  • Fixed a strange multiprocessing error that apparently only occured on... you guessed (yeah, Windows, we are looking at you!...).
  • Improved stability on format detection.

v.1.3.5

4 years ago

v.1.3.5 - 07-04-2020

  • Fixed a small bug in unsupported image format treatment.
  • Added experimental support for MPO images, which are now treated as JPEG image files (if multiple pictures are present in one MPO file, only the first one will be processed).

v.1.3.4

4 years ago
  • Ignore unsupported image formats (contributed by Petro (liashchynskyi@GitHub).
  • Added brief instructions (and a script for macOS) for Pillow-SIMD installation, as a faster alternative to Pillow.

v.1.3.3

4 years ago
  • Any temporary files (e.g.: ~temp~filename.jpg) created by this utility are now ignored, to avoid stepping on its own feet. As a side effect, if you have the strange habit of naming your image files ~temp~something.xxx, they will also be ignored. So, please get a better naming scheme until we come out with a better solution. ;-)
  • Trying to run optimize-images without Pillow installed now results in a simple message being printed out to the screen, instead of a full exception traceback.

v.1.3.2

4 years ago
  • Added a symbol legend to the beginning of the optimization report, so that the user knows what each symbol means.
  • Fixed a UnicodeEncodeError that would occur in some environments when printing Emoji to screen.

v.1.3.1

5 years ago
  • Fixed a PermissionError that would occur when trying to optimize a single image in the current directory without explicitly specifying its path.
  • Added basic Exception handling for piexif related instructions. This is a temporary solution that should silence, for now, some errors related to issue #3 but we should still check if we can provide a more specific treatment for those piexif exceptions. We still have a few TODO items related to issue #3. Let's hope they can be addressed in the next release.

v.1.3

5 years ago
  • Added dynamic (variable) JPG quality setting.
  • Some code cleaning.