Wed Feb 26 15:19:20 2020 UTC ()
graphicsmagick: Update to 1.3.35

1.3.35 (February 23, 2020)
==========================

Special Issues:

* It has been discovered that the 'ICU' library (a perhaps 30MB C++
  library) which is now often a libxml2 dependendency causes huge
  process initialization overhead.  This is noticed as unexpected
  slowness when GraphicsMagick utilities are used to process small to
  medium sized files.  The time to initialize the 'ICU' library is
  often longer than the time that GraphicsMagick would otherwise
  require to read the input file, process the image, and write the
  output file.  If the 'ICU' dependency can not be avoided, then make
  sure to use the modules build so there is only impact for file
  formats which require libxml2.  Please lobby the 'ICU' library
  developers to change their implementation to avoid long start-up
  times due to merely linking with the library.

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, 398 issues have been opened by oss-fuzz (some of which were
  benign build issues) and 11 issues remain open.
  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:

* Fix broken definition of ResourceInfinity which resulted in that
  GetMagickResource() would return -1 rather than the maximum range
  value for the return type as documented. (problem added by the
  1.3.32 release).

* ModifyCache(): Re-open the pixel cache if the cache rows/columns do
  not match the owning image rows/columns.

* Fix DisplayImages() return status.  The return status was inverted.

* HISTOGRAM: Histogram once again includes the histogram as a text
  comment.  This became broken by previous security fixes.

* PICT: Fixed heap buffer overuns reported multiple sources.

* JNG: Detect when JPEG encoder has failed and throw an exception.

* MVG/DrawImage(): Performs even more parsing validations.

* Clang static analyzer fixes: A great many fixes were made based on
  problem reports by the Clang static analyzer.

* Visual Studio static analyzer fixes: A great many fixes were made
  based on problem reports by the Visual Studio 2019 static analyzer.
  Many of these may improve the robustness of 64-bit code.

New Features:

* GRADIENT/GradientImage(): Improved accuracy of gradient levels as
  well as dramaticaly improving performance.  Output PseudoClass
  images if we can.  Add support for using the image 'gravity'
  attribute as well as the "gradient:direction" definition to produce
  gradient vector directions corresponding to SouthGravity (the
  previously-existing default), NorthGravity, WestGravity,
  EastGravity, NorthWestGravity, NorthEastGravity, SouthWestGravity,
  and SouthEastGravity.

API Updates:

* InitializeMagickEx(): New function which may be used in place of
  InitializeMagick() to initialize GraphicsMagick.  This
  initialization function returns an error status value, may update a
  passed ExceptionInfo structure with error information, and provides
  an options parameter which supports simple bit-flags to tailor
  initialization.  The signal handler registrations are skipped if the
  MAGICK_OPT_NO_SIGNAL_HANDER flag is set in the options.

Feature improvements:

* Replace use of non-reentrant legacy POSIX functions with reentrant
  equivalents.

* Timing of image reads should now be very accurate.  The timer was
  sometimes not stopped as soon as it should be.

* PICT: The PICT reader is working pretty good now.  It handles all
  the PICT image files I have available to me.

Windows Delegate Updates/Additions:

* None

Build Changes:

* Visual Studio Build: Configure program now provides a checkbox to
  enable common optimizations for better performance.

Behavior Changes:

* POSIX Signals: Use the normal termination signal handler for SIGXCPU
  and SIGXFSZ so that ulimit or setrlimit(2) may be used to apply CPU
  (RLIMIT_CPU) and output file size (RLIMIT_FSIZE) limits with the
  normal cleanup, and without dumping core. Note that any output files
  currently being written may be truncated and files being written by
  external programs (e.g. Ghostscript) might be left behind unless
  they are to a temporary file assigned by GraphicsMagick.

* Some private string and integer constants were removed from the
  apparent library ABI.  Some private functions were marked static and
  removed from the apparent library ABI.  This is mentioned because
  someone is sure to notice and be concerned about it.

* The remaining private content in installed header files was moved
  into -private.h header files which are not installed.  This should
  not be cause for concern but is mentiond because someone is sure to
  notice and be concerned about it.


(nia)
diff -r1.25 -r1.26 pkgsrc/graphics/GraphicsMagick/Makefile.common
diff -r1.28 -r1.29 pkgsrc/graphics/GraphicsMagick/PLIST
diff -r1.51 -r1.52 pkgsrc/graphics/GraphicsMagick/distinfo

cvs diff -r1.25 -r1.26 pkgsrc/graphics/GraphicsMagick/Makefile.common (expand / switch to unified diff)

--- pkgsrc/graphics/GraphicsMagick/Makefile.common 2020/01/08 12:11:36 1.25
+++ pkgsrc/graphics/GraphicsMagick/Makefile.common 2020/02/26 15:19:20 1.26
@@ -1,16 +1,16 @@ @@ -1,16 +1,16 @@
1# $NetBSD: Makefile.common,v 1.25 2020/01/08 12:11:36 nia Exp $ 1# $NetBSD: Makefile.common,v 1.26 2020/02/26 15:19:20 nia Exp $
2# 2#
3# used by graphics/GraphicsMagick/Makefile 3# used by graphics/GraphicsMagick/Makefile
4# used by graphics/p5-GraphicsMagick/Makefile 4# used by graphics/p5-GraphicsMagick/Makefile
5 5
6GM_MAJOR_VER= 1.3 6GM_MAJOR_VER= 1.3
7GM_MINOR_VER= 34 7GM_MINOR_VER= 35
8DISTVERSION= ${GM_MAJOR_VER}.${GM_MINOR_VER} 8DISTVERSION= ${GM_MAJOR_VER}.${GM_MINOR_VER}
9DISTNAME= GraphicsMagick-${DISTVERSION} 9DISTNAME= GraphicsMagick-${DISTVERSION}
10CATEGORIES= graphics 10CATEGORIES= graphics
11MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=graphicsmagick/} 11MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=graphicsmagick/}
12MASTER_SITES+= ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/${GM_MAJOR_VER}/ 12MASTER_SITES+= ftp://ftp.graphicsmagick.org/pub/GraphicsMagick/${GM_MAJOR_VER}/
13EXTRACT_SUFX= .tar.xz 13EXTRACT_SUFX= .tar.xz
14 14
15DISTINFO_FILE= ${.CURDIR}/../../graphics/GraphicsMagick/distinfo 15DISTINFO_FILE= ${.CURDIR}/../../graphics/GraphicsMagick/distinfo
16PATCHDIR= ${.CURDIR}/../../graphics/GraphicsMagick/patches 16PATCHDIR= ${.CURDIR}/../../graphics/GraphicsMagick/patches

cvs diff -r1.28 -r1.29 pkgsrc/graphics/GraphicsMagick/PLIST (expand / switch to unified diff)

--- pkgsrc/graphics/GraphicsMagick/PLIST 2019/06/18 13:30:52 1.28
+++ pkgsrc/graphics/GraphicsMagick/PLIST 2020/02/26 15:19:20 1.29
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1@comment $NetBSD: PLIST,v 1.28 2019/06/18 13:30:52 adam Exp $ 1@comment $NetBSD: PLIST,v 1.29 2020/02/26 15:19:20 nia Exp $
2bin/GraphicsMagick++-config 2bin/GraphicsMagick++-config
3bin/GraphicsMagick-config 3bin/GraphicsMagick-config
4bin/GraphicsMagickWand-config 4bin/GraphicsMagickWand-config
5bin/gm 5bin/gm
6include/GraphicsMagick/Magick++.h 6include/GraphicsMagick/Magick++.h
7include/GraphicsMagick/Magick++/Blob.h 7include/GraphicsMagick/Magick++/Blob.h
8include/GraphicsMagick/Magick++/CoderInfo.h 8include/GraphicsMagick/Magick++/CoderInfo.h
9include/GraphicsMagick/Magick++/Color.h 9include/GraphicsMagick/Magick++/Color.h
10include/GraphicsMagick/Magick++/Drawable.h 10include/GraphicsMagick/Magick++/Drawable.h
11include/GraphicsMagick/Magick++/Exception.h 11include/GraphicsMagick/Magick++/Exception.h
12include/GraphicsMagick/Magick++/Geometry.h 12include/GraphicsMagick/Magick++/Geometry.h
13include/GraphicsMagick/Magick++/Image.h 13include/GraphicsMagick/Magick++/Image.h
14include/GraphicsMagick/Magick++/Include.h 14include/GraphicsMagick/Magick++/Include.h
@@ -212,46 +212,48 @@ share/doc/GraphicsMagick/ChangeLog.2005 @@ -212,46 +212,48 @@ share/doc/GraphicsMagick/ChangeLog.2005
212share/doc/GraphicsMagick/ChangeLog.2006 212share/doc/GraphicsMagick/ChangeLog.2006
213share/doc/GraphicsMagick/ChangeLog.2007 213share/doc/GraphicsMagick/ChangeLog.2007
214share/doc/GraphicsMagick/ChangeLog.2008 214share/doc/GraphicsMagick/ChangeLog.2008
215share/doc/GraphicsMagick/ChangeLog.2009 215share/doc/GraphicsMagick/ChangeLog.2009
216share/doc/GraphicsMagick/ChangeLog.2010 216share/doc/GraphicsMagick/ChangeLog.2010
217share/doc/GraphicsMagick/ChangeLog.2011 217share/doc/GraphicsMagick/ChangeLog.2011
218share/doc/GraphicsMagick/ChangeLog.2012 218share/doc/GraphicsMagick/ChangeLog.2012
219share/doc/GraphicsMagick/ChangeLog.2013 219share/doc/GraphicsMagick/ChangeLog.2013
220share/doc/GraphicsMagick/ChangeLog.2014 220share/doc/GraphicsMagick/ChangeLog.2014
221share/doc/GraphicsMagick/ChangeLog.2015 221share/doc/GraphicsMagick/ChangeLog.2015
222share/doc/GraphicsMagick/ChangeLog.2016 222share/doc/GraphicsMagick/ChangeLog.2016
223share/doc/GraphicsMagick/ChangeLog.2017 223share/doc/GraphicsMagick/ChangeLog.2017
224share/doc/GraphicsMagick/ChangeLog.2018 224share/doc/GraphicsMagick/ChangeLog.2018
 225share/doc/GraphicsMagick/ChangeLog.2019
225share/doc/GraphicsMagick/Copyright.txt 226share/doc/GraphicsMagick/Copyright.txt
226share/doc/GraphicsMagick/NEWS.txt 227share/doc/GraphicsMagick/NEWS.txt
227share/doc/GraphicsMagick/www/ChangeLog-2001.html 228share/doc/GraphicsMagick/www/ChangeLog-2001.html
228share/doc/GraphicsMagick/www/ChangeLog-2002.html 229share/doc/GraphicsMagick/www/ChangeLog-2002.html
229share/doc/GraphicsMagick/www/ChangeLog-2003.html 230share/doc/GraphicsMagick/www/ChangeLog-2003.html
230share/doc/GraphicsMagick/www/ChangeLog-2004.html 231share/doc/GraphicsMagick/www/ChangeLog-2004.html
231share/doc/GraphicsMagick/www/ChangeLog-2005.html 232share/doc/GraphicsMagick/www/ChangeLog-2005.html
232share/doc/GraphicsMagick/www/ChangeLog-2006.html 233share/doc/GraphicsMagick/www/ChangeLog-2006.html
233share/doc/GraphicsMagick/www/ChangeLog-2007.html 234share/doc/GraphicsMagick/www/ChangeLog-2007.html
234share/doc/GraphicsMagick/www/ChangeLog-2008.html 235share/doc/GraphicsMagick/www/ChangeLog-2008.html
235share/doc/GraphicsMagick/www/ChangeLog-2009.html 236share/doc/GraphicsMagick/www/ChangeLog-2009.html
236share/doc/GraphicsMagick/www/ChangeLog-2010.html 237share/doc/GraphicsMagick/www/ChangeLog-2010.html
237share/doc/GraphicsMagick/www/ChangeLog-2011.html 238share/doc/GraphicsMagick/www/ChangeLog-2011.html
238share/doc/GraphicsMagick/www/ChangeLog-2012.html 239share/doc/GraphicsMagick/www/ChangeLog-2012.html
239share/doc/GraphicsMagick/www/ChangeLog-2013.html 240share/doc/GraphicsMagick/www/ChangeLog-2013.html
240share/doc/GraphicsMagick/www/ChangeLog-2014.html 241share/doc/GraphicsMagick/www/ChangeLog-2014.html
241share/doc/GraphicsMagick/www/ChangeLog-2015.html 242share/doc/GraphicsMagick/www/ChangeLog-2015.html
242share/doc/GraphicsMagick/www/ChangeLog-2016.html 243share/doc/GraphicsMagick/www/ChangeLog-2016.html
243share/doc/GraphicsMagick/www/ChangeLog-2017.html 244share/doc/GraphicsMagick/www/ChangeLog-2017.html
244share/doc/GraphicsMagick/www/ChangeLog-2018.html 245share/doc/GraphicsMagick/www/ChangeLog-2018.html
 246share/doc/GraphicsMagick/www/ChangeLog-2019.html
245share/doc/GraphicsMagick/www/Changelog.html 247share/doc/GraphicsMagick/www/Changelog.html
246share/doc/GraphicsMagick/www/Changes.html 248share/doc/GraphicsMagick/www/Changes.html
247share/doc/GraphicsMagick/www/Copyright.html 249share/doc/GraphicsMagick/www/Copyright.html
248share/doc/GraphicsMagick/www/FAQ.html 250share/doc/GraphicsMagick/www/FAQ.html
249share/doc/GraphicsMagick/www/GraphicsMagick.html 251share/doc/GraphicsMagick/www/GraphicsMagick.html
250share/doc/GraphicsMagick/www/Hg.html 252share/doc/GraphicsMagick/www/Hg.html
251share/doc/GraphicsMagick/www/INSTALL-unix.html 253share/doc/GraphicsMagick/www/INSTALL-unix.html
252share/doc/GraphicsMagick/www/INSTALL-windows.html 254share/doc/GraphicsMagick/www/INSTALL-windows.html
253share/doc/GraphicsMagick/www/ImageMagickObject.html 255share/doc/GraphicsMagick/www/ImageMagickObject.html
254share/doc/GraphicsMagick/www/Magick++/Blob.html 256share/doc/GraphicsMagick/www/Magick++/Blob.html
255share/doc/GraphicsMagick/www/Magick++/Cache.png 257share/doc/GraphicsMagick/www/Magick++/Cache.png
256share/doc/GraphicsMagick/www/Magick++/ChangeLog.html 258share/doc/GraphicsMagick/www/Magick++/ChangeLog.html
257share/doc/GraphicsMagick/www/Magick++/CoderInfo.html 259share/doc/GraphicsMagick/www/Magick++/CoderInfo.html

cvs diff -r1.51 -r1.52 pkgsrc/graphics/GraphicsMagick/distinfo (expand / switch to unified diff)

--- pkgsrc/graphics/GraphicsMagick/distinfo 2020/01/08 12:11:36 1.51
+++ pkgsrc/graphics/GraphicsMagick/distinfo 2020/02/26 15:19:20 1.52
@@ -1,8 +1,8 @@ @@ -1,8 +1,8 @@
1$NetBSD: distinfo,v 1.51 2020/01/08 12:11:36 nia Exp $ 1$NetBSD: distinfo,v 1.52 2020/02/26 15:19:20 nia Exp $
2 2
3SHA1 (GraphicsMagick-1.3.34.tar.xz) = cc1b77b7f2e4b0b345f97f7963704dbb4d0d3e3b 3SHA1 (GraphicsMagick-1.3.35.tar.xz) = b0460d7fb8b2d542a44446322ea62c053bc54b0c
4RMD160 (GraphicsMagick-1.3.34.tar.xz) = 62ae36203e0b456da54e5c261513f14b020b6182 4RMD160 (GraphicsMagick-1.3.35.tar.xz) = 5f0ae6461cbcb0aece88e9e1430e6085351b747e
5SHA512 (GraphicsMagick-1.3.34.tar.xz) = 50bfd016badd6a1a336ba8b10fdfdde2d760d6c098d44c80ff95e4df9a811957127ee24d241df6a1f6daff34b8a6b0c0d892f1050c003d651a1bbbecbf28ced8 5SHA512 (GraphicsMagick-1.3.35.tar.xz) = baae92089d52147ef961f93495abc8a9d8b1a963af61d87a650c1ab105d46816aa38c83f654edcb5a0e1b7f07ccc06eaeaa443b9bde3a63a0b9bfb45f3ae144c
6Size (GraphicsMagick-1.3.34.tar.xz) = 5518784 bytes 6Size (GraphicsMagick-1.3.35.tar.xz) = 5543224 bytes
7SHA1 (patch-config_delegates.mgk.in) = c52192a35bede530d310688a576ef2181a9f073c 7SHA1 (patch-config_delegates.mgk.in) = c52192a35bede530d310688a576ef2181a9f073c
8SHA1 (patch-configure) = bdb76557cd8a5c116b6c84dc63f4e35ddde39c87 8SHA1 (patch-configure) = bdb76557cd8a5c116b6c84dc63f4e35ddde39c87