Path to this page:
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: