Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Releases: thumbor/thumbor

Release 6.5.0

11 Jun 18:00

Choose a tag to compare

Changelog

There's an automated conversion from PNG to JPEG if the source image has no transparency. In order to enable this feature, there's a new flag called AUTO_PNG_TO_JPG that must be set to True in your thumbor.conf file.

WARNING

Enabling this behavior may lead to degradation of the image, or increase in final size. Usually images with texts, or dark images may experience this behavior. You should evaluate that this is a good choice for your own use case. At globo.com, we deal mostly with photos and this category of images renders itself very well to this type of conversion.

Features

Diff to previous release

Release 6.4.3

08 Jun 17:34

Choose a tag to compare

Changelog

Improvements

  • Defensive code to run optimizers (@caeugusmao)
  • Optimize travis build: static ffmpeg and pyexiv2 from sources(@kkopachev)
  • Add adaptive and full fit-in documentation(@cristiandean)
  • Update available detector documentation (@Enalmada)
  • Allow Pillow up to 5.1(@kkopachev)
  • Allowing the usage of environment variables to override configs(@caeugusmao)
  • Bump minimal pillow version to 4.3 to remove 16b tiff load workaround(@kkopachev)

Bug fixes

  • Fix expiry check in file storage (@eax64)
  • Return a 404 if a request tries to fetch a dir (@shabadoo75)
  • Don't decode twice and encode unnecessarily (@savar)
  • Fail silently on piexif errors(@nicolaspanel)
  • Fix blur filter with zero value(@cristiandean)

Diff to previous release

Release 6.4.2

12 Mar 13:28

Choose a tag to compare

Changelog

Improvements

  • Optimize resizing of some jpegs using pillow draft (@kkopachev)

Bug fixes

  • Fix Context object memory leak caused by circular references (@kkopachev)
  • Bring back 'headers' context property as it is used by result storages (@kkopachev)
  • Fix posterization issues for P mode PNG without transparency (and with) (@kkopachev)
  • Check for quantization method existence in pillow before use (@kkopachev)

Diff to previous release

Release 6.4.1

23 Jan 23:57

Choose a tag to compare

Changelog

Improvements

  • Default HTTP Loader now returns response headers in metadata (@heynemann)

Bug fixes

  • fix issues with the jpegtran optimizer and the epoll IOLoop (@savar)

Maintenance & Python 3 support

  • replaced the deprecated library dlitz/pycrypto by legrandin/pycryptome (@afbase)
  • fixing codacy trailing space issue (@afbase)
  • using proper ubuntu apt repository in travis (@heynemann)

Documentation

  • Fix upscale example in the documentation (@Kmaschta)

Diff to previous release

Release 6.4.0

15 Jan 17:01

Choose a tag to compare

Changelog

Warning

This release has a breaking change if you are using the distributed collage filter. We did not update the major version number, though, because this is an undocumented filter.

It introduces hard dependencies on OpenCV and NumPy that should not be there in the first place. Other than that, thumbor is engineered to allow dependencies to be injected depending on each use case.

If you require the distributed collage filter, it's very simple to keep using it. Just check the instructions at the new repo at: https://github.com/globocom/thumbor-distributed-collage-filter

We are working hard to reduce thumbor's codebase as it is a tough job keeping a codebase, that does as much as thumbor does, since 2011 and still improving. We require the help of the whole community in ensuring this is the case and have been very fortunate so far.

There are many very talented individuals that work with us to ensure thumbor keeps evolving and improving. We wholeheartedly thank you and welcome new contributors to step forward and help us keep trailing the continuous improvement path we're in.

Features

  • #905 Add manual garbage collection to free memory (@okor)
  • #878 Add new filter upscale() [fixes #726 #856] (@savar)
  • #908 Add new timeout setting if using curl HTTP client (@savar)
  • #907 Add background_color option to gifv (@okor)
  • #940 Add new strip_exif filter in order to remove exif on demand (@franek)
  • #928 Add the ability to return custom HTTP error code (@gi11es)
  • #963 Add options to allow header forwarding for the HTTP_Loader (@asvinours)
  • #890 Add options for watermark resizing relative to image [fixes #874] (@savar)

Improvements

  • #892 Improve the way to determine extention using the content detection (@savar)
  • #902 Jpegtran now preserves ICC profile if not forced to strip (@kkopachev)
  • #934 Pillow 4.X is now allowed [fixes #931] (@kkopachev)
  • #886 Resync BaseEngine API with existing implementations (@savar)
  • 98d90b0 Improve the red eye filter based on cv2/cv3 (@kkopachev)

Bug fixes

  • #877 Fix issue with full-fit-in and requested width/height (@savar)
  • #883 Fix exception with smart detection + gif + meta endpoint (@savar)
  • #890 Fix watermark resizing relative to image [fixes #874] (@savar)
  • #901 Fix race condition for preserving exif data (@mb-m)
  • 4bb3da9 Fix memory usage explosion [fixes #753] (@SergioJorge)
  • #887 Fix _composite.apply with bigger source images (@savar)
  • 58d4bb9 Fix resize causing transparency loss on paletted images [fixes #987 #945 #943] (@kkopachev)
  • #995 Fix exception thrown when fit-in and requested size has "orig" (@kkopachev)
  • #995 Fix transformer tests and fix exception thrown when fit-in + requested size has "orig" (@kkopachev)
  • #997 Fix the error when combining watermark with an S3 loader [fixes #996] (@gingerlime)

Maintenance & Python 3 support

Documentation

Thanks @Kmaschta and @sgoger for the hard work towards releasing this version.

Diff to previous release

6.3.2

10 Apr 16:11

Choose a tag to compare

Fixes a gif to video conversion (gifv) bug for mp4s. See #904 and #903 for more details.

Diff to previous release

Release 6.3.1

27 Mar 21:47

Choose a tag to compare

Features:

  • Raises error only when gifsicle returns empty result, logs any gifsicle errors/warnings

Diff to previous release

Release 6.3.0

14 Mar 23:26

Choose a tag to compare

Features

Fixes / Improvements

  • Fix reorientation when no Exif information is available (thanks @seffenberg-naspers – #849)
  • Fix a quality loss issue by removing the draft option so PNGs get colorspace converted before resizing operations (thanks @okor#858)
  • Convert 1bit PNGs before resizing (thanks @kevin1024 – #859)
  • Make Transformer.smart_detect() a coroutine and fix issues with S3 storage (thanks @mpilar and @decebal – #859, #721 and #722)
  • Improve SVG detection and conversion
  • Improve the distributed_collage filter
  • Fix unhandled 'NoneType' object has no attribute 'mode' detector exceptions (thanks @mvdklip#841)
  • Return 400 - Bad Request on watermark errors (thanks @noamsml and @nerdrew#854)
  • Convert indexed color images back to their original mode after resizing (thanks @okor – #873)
  • Do not hang request on Engine.read() exceptions (thanks @savar – #871)
  • Do not hang request on Storage.get() exceptions

Docs

Diff to previous release
pypi release

Release 6.1.4

16 Aug 22:45

Choose a tag to compare

Features:

  • Fix: Catching exception in ThreadPool to force callback to be executed
  • Raises error when gitsicle returns error in GifEngine

Diff to previous release
pypi release

Release 6.1.3

01 Aug 23:34

Choose a tag to compare

Features:

  • Fix: #781 Added some log when Image.DecompressionBombWarning happens, thanks @phoet

Diff to previous release
pypi release