Subject: CVS commit: pkgsrc/graphics
From: Adam Ciarcinski
Date: 2018-11-20 11:19:29
Message id: 20181120101929.94AD1FB1F@cvs.NetBSD.org

Log Message:
GraphicsMagick: updated to 1.3.31

1.3.31:

Special Issues:
Firmware and operating system updates to address the Spectre vulnerability (and \ 
possibly to some extent the Meltdown vulnerability) have substantially penalized \ 
GraphicsMagick's OpenMP performance. Performance is reduced even with GCC 7 and \ 
8's improved optimizers. There does not appear to be anything we can do about \ 
this.
Security Fixes:

GraphicsMagick is now participating in Google's oss-fuzz project due to the \ 
contributions and assistance of Alex Gaynor. Since February 4 2018, 292 issues \ 
have been opened by oss-fuzz and 279 of those issues have been resolved. The \ 
issues list is available at https://bugs.chromium.org/p/oss-fuzz/issues/list \ 
under search term "graphicsmagick". Issues are available for anyone to \ 
view and duplicate if they have been in "Verified" status for 30 days, \ 
or if they have been in "New" status for 90 days. There are too many \ 
fixes to list here. Please consult the GraphicsMagick ChangeLog file, Mercurial \ 
repository commit log, and the oss-fuzz issues list for details.

Bug fixes:
See above note about oss-fuzz fixes.
CINEON: Fix unexpected hang on a crafted Cineon image. SourceForge issue 571.
Drawing recursion is limited to 100 and may be tuned via the \ 
MAX_DRAWIMAGE_RECURSION pre-processor definition.
Fix reading MIFF files using legacy keyword 'color-profile' for ICC color \ 
profile as was used by ImageMagick 4.2.9.
Fix reading/writing files when 'magick' is specified in lower case. This bug was \ 
a regression in 1.3.30.

New Features:
TIFF: Support Zstd compression in TIFF. This requires libtiff 4.0.10 or later.
TIFF: Support WebP compression in TIFF. This requires libtiff 4.0.10 or later.

API Updates:
MagickMonitor() is marked as deprecated. Code should not be using this function \ 
any more.

Feature improvements:
The progress monitor callbacks (registered using MagickMonitor() or \ 
MagickMonitorFormatted()) are serialized via a common semaphore rather than via \ 
critical sections in OpenMP loops. OpenMP loops are updated to use OpenMP \ 
'atomic' and 'flush' to update shared loop variables rather than using a OpenMP \ 
'critical' construct, reducing contention. Performance on some targets is \ 
observed to have been improved by this change.

Build Changes:
There was already a 'compare' command installed with the \ 
'--enable-magick-compat' configure option was used but it did not function. Now \ 
it functions. There was no compare command in ImageMagick 5.5.2 and this compare \ 
command is only roughly similar to a compare command in some subsequent \ 
ImageMagick release.
Removed Remove Ghostscript library support (--with-gslib) from configure script. \ 
The 'HasGS' pre-processor defines which were enabled by this remain in the \ 
source code so it is still possible to use this library if absolutely necessary \ 
(e.g. CPPFLAGS=-DHasGS LIBS=-lgs).
No longer explicitly link with the OpenMP library when it will be supplied \ 
already due to CFLAGS.

Behavior Changes:
JPEG: Libjpeg-turbo is allowed 1/5th the memory resource limit provided for \ 
Graphicsmagick via the cinfo->mem->max_memory_to_use option, which is part \ 
of the IJG JPEG API/ABI, but usually not supported there. This feature works for \ 
libjpeg-turbo 1.5.2 and later. Limiting the memory usage is useful since \ 
libjpeg-turbo may otherwise consume arbitrary amounts of memory even before \ 
Graphicsmagick is informed of the image dimensions.
JPEG: The maximum number of JPEG progressive scans is limited to 50. Otherwise \ 
some technically valid files could be read for almost forever.

Files:
RevisionActionfile
1.92modifypkgsrc/graphics/GraphicsMagick/Makefile
1.22modifypkgsrc/graphics/GraphicsMagick/Makefile.common
1.48modifypkgsrc/graphics/GraphicsMagick/distinfo
1.7modifypkgsrc/graphics/GraphicsMagick/options.mk
1.2modifypkgsrc/graphics/GraphicsMagick/patches/patch-config_delegates.mgk.in
1.42modifypkgsrc/graphics/p5-GraphicsMagick/Makefile