Skip to content

v3.3

Compare
Choose a tag to compare
@adolski adolski released this 28 Feb 20:59
· 2426 commits to develop since this release

Endpoints

  • Auto-computed tile sizes of source images with an odd number of pixels in a dimension in information responses are rounded up, to prevent clients from requesting extremely narrow edge tiles.
  • Operations that would have no effect in their context—for example, a crop to 0,0/300×200, followed by a scale-to-fit to 300 pixels wide—are skipped.
  • Improved request validation.
  • Added a RESTful API endpoint to retrieve and update the configuration.

Processors

  • Most processor-specific configuration settings now apply across all processors, making them integrate better into the caching architecture.
  • Added an auto-normalize option to all image processors.
  • Added an option to all processors to output progressive JPEGs.
  • Added experimental support for DICOM images to GraphicsMagickProcessor, ImageMagickProcessor, Java2dProcessor, and JaiProcessor. (This is a very complex format and not all variants are working.)
  • FfmpegProcessor uses a Java 2D processing pipeline, giving it more capabilities.
  • Java2dProcessor and JaiProcessor support 16-bit LZW- and ZIP-compressed TIFFs.
  • GraphicsMagickProcessor and ImageMagickProcessor support selectable resample filters.
  • GraphicsMagickProcessor and ImageMagickProcessor respect the EXIF Orientation tag.
  • ImageMagickProcessor supports ImageMagick 7.
  • PdfBoxProcessor supports JBIG2-encoded embedded images.
  • PdfBoxProcessor returns HTTP 400 when given an illegal page number.
  • FfmpegProcessor returns HTTP 400 when given an illegal time.

Caching

  • The -Dcantaloupe.cache.purge VM option accepts an identifier argument to purge all content related to an individual identifier.
  • Added a RESTful API endpoint to purge individual images from the cache.
  • A cache=false URL query option can be used in all endpoints to bypass the derivative cache and disable the Cache-Control header per-request.
  • FilesystemCache supports identifiers longer than the filesystem's filename length limit.

Overlays

  • Watermarks have been renamed to overlays.
  • Added textual overlays.
  • Overlay images can be located on the filesystem or an HTTP(S) server.
  • Overlay images are cached in memory for better efficiency.

Delegate Script

  • Added an optional delegate method invocation cache.
  • Added the ability to redirect to another URL via the authorized?() delegate method.
  • The delegate script is reloaded on change rather than per-request.