2022-03-26  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * version.sh: Prepare for 1.3.38 release.

        * Makefile.am (release, snapshot): Generate SHA-256 checksums as a
        by-product of 'make snapshot' or 'make release'.

        * www/download.rst: Add documentation regaring SHA-256 checksums.

        * NEWS.txt: Update the news again.

        * coders/miff.c (ReadMIFFImage): Validate claimed bzip2-compressed
        row length prior to reading data into fixed size buffer.
        Addresses SourceForge bug #664 "[bug]Heap buffer overflow when
        parsing MIFF".  This severe bug only impacts builds with BZLIB
        support.

2022-03-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * coders/jxl.c (ReadJXLImage): Added patch from Tobias Mark to
        optimize EOF detection if the input file size is known.  Avoids
        waiting for ReadBlob() to report EOF.

2022-03-20  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * Magick++/lib/Magick++/Include.h: Support 'ReadResource'.

2022-03-19  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * coders/jxl.c: Added some debug logging instrumentation so we can
        see the information the JXL reader is provided by libjxl.

        * configure.ac: JXL is working well enough to enable it by
        default.

2022-03-11  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * coders/jxl.c (WriteJXLImage): Call JxlEncoderCloseInput() so
        that encoder output is not corrupt.  JXL passes testsuite tests
        now!

        * magick/command.c (CompareImageCommand): Add -auto-orient support
        to 'compare'.  This tries to assure that the two images are right
        side up before comparing.

2022-03-05  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * coders/jxl.c (WriteJXLImage): Work to update JXL writer code to
        compile clean with libjxl v0.7.0.  Still not working!

2022-02-26  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * coders/heif.c (ReadHEIFImage): Pass decode options to
        heif_decode_image().  Include rough implementation of progress
        monitor support but leave it disabled since libheif does not
        currently invoke the callbacks.

        * coders/jpeg.c (ReadJPEGImage): Store embedded profiles in image,
        even if in 'ping' mode.  This addresses a problem discovered when
        interfacing with minimagick (Debian bug #1006374 "graphicsmagick
        breaks ruby-mini-magick").

        * coders/url.c (ReadURLImage): Deal with libxml2 not offering HTTP
        or FTP capabilities.  It seems that support for FTP has now been
        removed by default.

2022-02-06  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * README.txt: Recomend using JasPer 3.0.0 (or later).

        * VisualMagick/magick/magick_config.h.in: Disable building with
        bundled JasPer sources by default since the bundled sources are
        archaic.

        * coders/jp2.c: Fix compilation with JasPer 3.0.0 (which is now
        released).

2022-02-05  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * magick/fx.c (ColorizeImagePixelsCB): Apply clipping and rounding
        to handle out of range values and provide the most accurate
        result.  Addresses SourceForge bug #662 "Broken -colorize".

2022-01-30  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * coders/jp2.c (ReadJP2Image): Jasper 3.0.0 hid the functions we
        were using so switch back to using jas_image_decode(), but in a
        more secure way than before.

2022-01-28  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * www/download.rst: Document how to retrieve the PGP signing key
        from a key server.

2022-01-23  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * coders/jp2.c (ReadJP2Image): Always use
        ThrowJP2ReaderException().  Should address oss-fuzz Issue 43979:
        "graphicsmagick:enhance_fuzzer: ASSERT: jas_get_ctx() ==
        jas_global.ctx".

2022-01-22  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * utilities/tests: Write compressed MIFF files to reduce disk
        space usage.

        * magick/command.c (CompareImageCommand): Support '-compress'
        option.

        * coders/mpc.c: Fix warnings from GCC 11.

        * coders/miff.c: Fix warnings from GCC 11.

2022-01-21  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * coders/jp2.c: Adaptations to work with Jasper 3.0.0's
        jas_init_library() and other related functions.  Add missing
        jas_cleanup_thread().  Do not request a higher memory limit than
        JasPer's own limit in order to avoid a warning.

2022-01-16  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * coders/miff.c (ReadMIFFImage): Do not proceed to next image in
        sequence unless the character read is the expected 'i' character.
        Inspired by GraphicsMagick bug #659 "Can not escape $0 in a batch
        command".

        * coders/heif.c (ReadHEIFImage): Take row stride into account when
        reading pixel rows. Add support for 'ping' mode.  Add header magic
        detection.  Add module aliases.  Add useful traces.

2022-01-15  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * coders/jxl.c: Added preliminary JPEG XL support written by
        Tobias Mark.  From Code Merge Request #14: "Added (basic) jpeg-xl
        support".  The writer is not working properly at this time.

        * www/formats.rst: Add HEIF to the list of supported formats.

        * README.txt: Expand the text regarding support for HEIF/HVEC
        support.

2022-01-14  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * coders/heif.c: HEIF reader written by Tobias Mark.  From
        SourceForge Code Merge Request #15: "Added minimal heif support".

        * magick/blob.c (ReadBlobStream): Fix EOF logic similar to
        ReadBlob. Addresses oss-fuzz 43617
        "graphicsmagick:coder_P7_fuzzer: Use-of-uninitialized-value in
        WritePNMImage".

2022-01-12  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * magick/blob.c (ReadBlob): Fix EOF logic. Addresses oss-fuzz
        43490 "graphicsmagick:coder_PNM_fuzzer: Use-of-uninitialized-value
        in SyncImageCallBack".

        * coders/pnm.c (ReadPNMImage): Make sure that we don't lose the
        image exception.

2022-01-11  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * magick/blob.c: Throw a user-friendly exception when the read
        limit has been exceeded.

        * coders/jpeg.c: Add tracing and fallback for longjmp().

        * coders/pict.c (DecodeImage): Assure that the claimed scanline
        length is within the bounds of the scanline allocation to avoid
        possible heap overflow.

2022-01-09  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * magick/blob.c: Make sure that read resource limiting can support
        very large files.

2022-01-08  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * magick/resource.c: Add support for setting a read resource limit
        via the MAGICK_LIMIT_READ environment variable, or similar to
        '-limit read 5mb'.

        * magick/resource.h: Added a ReadResource limit, which is a limit
        on how many uncompressed file bytes may be read while decoding an
        input file.

2022-01-01  Bob Friesenhahn  <bfriesen@simple.dallas.tx.us>

        * ChangeLog.2021: Rotate ChangeLog for 2022.  Happy New Year!
