0
Fork 0
mirror of https://github.com/willnorris/imageproxy.git synced 2024-12-16 21:56:43 -05:00
imageproxy/docs/changelog.md
2019-06-11 05:40:00 +00:00

12 KiB

Changelog

This file contains all notable changes to imageproxy. The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased

0.9.0 (2019-06-10)

Added

  • allow request signatures to cover options (#145)
  • add simple imageproxy-sign tool for calculating signatures (e1558d5)
  • allow overriding the Logger used by Proxy (#174 hmhealey)
  • allow using environment variables for configuration (50e0d11)
  • add support for BMP images (d4ba520)

Changed

  • improvements to docker image: run as non-privileged user, use go1.12 compiler, and build imageproxy as a go module.

  • options are now sorted when converting to string. This is a breaking change for anyone relying on the option order, and will additionally invalidate most cached values, since the option string is part of the cache key.

    Both the original remote image, as well as any transformations on that image are cached, but only the transformed images will be impacted by this change. This will result in imageproxy having to re-perform the transformations, but should not result in re-fetching the remote image, unless it has already otherwise expired.

Fixed

  • properly include Accept header on remote URL requests (#165, 6aca1e0)
  • detect response content type if content-type header is missing (cf54b2c)

Removed

  • removed deprecated whitelist flag and Proxy.Whitelist struct field. Use allowHosts and Proxy.AllowHosts instead.

0.8.0 (2019-03-21)

Added

Changed

  • when a remote URL is denied, return a generic error message that does not specify exactly why it failed (7e19b5c)

Deprecated

  • whitelist flag and Proxy.Whitelist struct field renamed to allowHosts and Proxy.AllowHosts. Old values are still supported, but will be removed in a future release.

Fixed

0.7.0 (2018-02-06)

Added

Changed

  • rotate values are normalized, such that r-90 is the same as r270 (07c54b4)
  • now return 200 OK response for requests to root / (5ee7e28)
  • switch to using official AWS Go SDK for s3 cache storage. This is a breaking change for anyone using that cache implementation, since the URL syntax has changed. This adds support for the newer v4 auth method, as well as additional s3 regions. (0ee5167)
  • switched to standard go log library. Added -verbose flag for more logging in-memory cache backend supports limiting the max cache size (a57047f)
  • docker image sized reduced by using scratch image and multistage build (#113, matematik7)

Removed

  • removed deprecated cacheDir and cacheSize flags

Fixed

  • fixed interpretation of Last-Modified and If-Modified-Since headers (#108, jamesreggio)
  • preserve original URL encoding (#115)

0.6.0 (2017-08-29)

Added

  • added health check endpoint (#54, immunda)
  • preserve Link headers from remote image (#68, xavren)
  • added support for per-request timeout (#75)
  • added support for specifying output image format (b9cc9df)
  • added webp support (decode only) (3280445)
  • added CORS support (#96, romdim)

Fixed

  • improved error messages for some authorization failures (27d5378)
  • skip transformation when not needed (#64)
  • properly handled "cleaned" remote URLs (a1af9aa, b61992e)

0.5.1 (2015-12-07)

Fixed

0.5.0 (2015-12-07)

Added

Changed

  • change default cache to none, and add -cache flag for specifying caches. This deprecates the -cacheDir flag.
  • on-disk cache now stores files in a two-level trie. For example, for a file named "c0ffee", store file as "c0/ff/c0ffee".

Fixed

  • skip resizing if requested dimensions larger than original (#46, orian)

0.4.0 (2015-05-21)

Added

  • added support for animated gifs (#23)

Changed

  • non-200 responses from remote servers are proxied as-is

0.3.0 (2015-12-07)

Added

  • added support for signing requests using a sha-256 HMAC. (a9efefc)
  • more complete logging of requests and whether response is from the cache (#17)
  • added support for a base URL for remote images. This allows shorter relative URLs to be specified in requests. (#15)

Fixed

  • be more precise in copying over all headers from remote image response (1bf0515)

0.2.3 (2015-02-20)

Added

0.2.2 (2014-12-08)

Added

  • added cacheSize flag to command line

Changed

  • improved documentation and error messages
  • negative width or height transformation values interpreted as 0

0.2.1 (2014-08-13)

Changed

  • restructured package so that the command line tools is now installed from willnorris.com/go/imageproxy/cmd/imageproxy

0.2.0 (2014-07-02)

Added

  • transformed images are cached in addition to the original image (#1)
  • support etag and last-modified headers on incoming requests (#3)
  • support wildcards in list of allowed hosts

Changed

  • options can be specified in any order
  • images cannot be resized larger than their original dimensions

0.1.0 (2013-12-26)

Initial release. Supported transformation options include:

  • width and height
  • different crop modes
  • rotation (in 90 degree increments)
  • flip (horizontal or vertical)

Images can be cached in-memory or on-disk.