v1.12.5 - 2025-04-06
--------------------
Kim Woelders (8):
      autofoo: Optionally link modules with libImlib2.la
      autofoo: Some defaults for RTLD_LOCAL support
      blend: Fixup after "blend: Rename some variables for clarity"
      test: Add test_scale_2
      autofoo: Use pkg-config for libyuv if available
      autofoo: Cosmetics
      autofoo: Enable RTLD_LOCAL support by default
      v1.12.5

NRK (1):
      autofoo: fix libyuv detection

v1.12.4 - 2025-03-15
--------------------
Chema Gonzalez (1):
      Y4M loader: add support for images with no framerate info

Kim Woelders (49):
      imlib2_view: Toggle anti-alias flag on 'a'
      test_load_2: Add another y4m test image
      scaling: Fix potential crash when scaling large images
      test_grab: Work around linewidth=0 bug
      test: Enable skipping tests for specific files
      test: By default skip CRC checks on jxl images
      test: Colorize Skip message
      SVG loader: Suppress warning
      test: Enable skipping loader flushing
      test: Correct CFLAGS when building with alternative library packages
      test_load_2: Adjustment for libheif-1.19.x
      imlib2_load/view: Show image alpha status too
      imlib2_load/view: Add -h option for help
      imlib2_conv: Optionally produce scaled image
      imlib2_conv: Optionally render image on background before saving
      test: Change test images
      savers: Add common save parameter handler
      HEIF saver: Add one
      scale: Rearrange some variable declarations
      scale/blend: Add some missing consts
      blend: Some mostly cosmetic changes
      blend: Rename some variables for clarity
      loaders: Fix gcc15 warnings
      test: Make top-level clean clean test too
      SVG loader: Handle .svgz too
      test: Fix top-level distclean
      PNG loader: Debug printout tweaks
      image: Trivial simplification
      image: Add optional alpha check requested by loaders
      SVG loader: Check alpha in pixel data
      imlib2_view: Optionally show crc32 of image data
      test: Some trivial ouput tweaks
      test: Change many no-alpha test images to not have alpha data
      test: Corrections after no-alpha update
      GIF loader: Fix minor issue when loading transparent gifs
      test: Add transparent gif check
      Y4M Loader: Trivial simplification
      autofoo: Make building demo programs optional (default enabled)
      autofoo: No longer link modules with libImlib2.la
      test_save: Add qoi
      specs: Optionally build split rpms
      XBM loader: Debug printout tweaks
      AVIF loader: Indent
      AVIF saver: Add one
      HEIF loader: Demote avif support if regular avif loader is built
      test: Add basic avif test
      test: test_grab needs -lX11
      test: Avoid warnings from _FORTIFY_SOURCE
      v1.12.4

NRK (6):
      AVIF loader: add new loader based on libavif
      Y4M Loader: replace fps_{den,num} with frametime_us
      Y4M Loader: provide the pixel aspect ratio directly
      autofoo: don't hardcode zlib flags
      QOI Loader: sync with upstream
      QOI Saver: add one

v1.12.3 - 2024-07-13
--------------------
Chema Gonzalez (2):
      Y4M loader: add support for full range color
      Y4M loader: add support for 10-bit 4:2:0

Kim Woelders (20):
      XPM loader: Fix potential segv on malformed file
      imlib2_load: Add crc32 printout
      test: Corrections for for libjxl-0.10
      XPM loader: Fix some color table parsing errors
      XPM loader: Major overhaul
      test_load_2: Add full range color y4m image
      test_load_2: Add some more y4m test images
      Some cleanups in asm code
      Add endbr32/64 instruction at the start of asm functions
      Add missing CET (Control-flow Enforcement Technology) bits in asm code
      imlib2_view: Use poll(), not select()
      imlib2_view: Minor cleanup
      imlib2_view: Enable an alternate background color set (red/green)
      imlib2_view: Optionally disable final anti-aliased rendering
      imlib2_view: Rename scaling variables
      imlib2_view: Optionally scale on input
      imlib2_view: Enable specifying border
      Y4M loader: Fix frame size calculation for 10-bit 4:2:0 format
      imlib2_view: Enable specifying background checkerboard colors
      v1.12.3

v1.12.2 - 2024-02-03
--------------------
Chema Gonzalez (3):
      Y4M loader: fix support for unexpected framerates
      Y4M loader: fix C option analysis
      Y4M loader: add error messages on parsing errors

Kim Woelders (15):
      test_save: Update crcs for jxl saver (libjxl 0.8.0)
      x11_grab: Remove some obsolete code
      Y4M loader: Guard some debug code properly
      Consistently use #if IMLIB2_DEBUG (not #ifdef)
      test_load_2: Check some more y4m files
      Y4M loader: Avoid use of sscanf() in frame rate parsing
      ANI loader: Avoid debug line when image does not have proper signature
      PNG loader: Properly suppress messages from libpng
      Y4M loader: Fix warning in non-debug build
      Change formatting style
      PNG saver: Avoid potential issues around setjmp/longjmp
      JPG saver: Fix error path
      TIFF loader: Properly suppress messages from libtiff
      savers: Fix error returns
      v1.12.2

NRK (2):
      PNG saver: avoid double-free on write errors
      Y4M loader: don't fail on newline

v1.12.1 - 2023-09-21
--------------------
Kim Woelders (12):
      Fix some clang complaints
      scaling: MMX asm scaling causes segv, disable for now
      loading: Call module exit function also when not dlclosing module on unload
      loaders: Fix build with -m32 --enable-debug
      test_load_2: Add forgotten xeyes.png
      test_save: Fix for jxl loader on ix86
      test_scale: MMX scaling is disabled
      RAW loader: Don't unload loader
      loaders: Fix CPPFLAGS order
      imlib2_grab, imlib2_view: Unset context colormap
      x11_grab: Use correct depth when grabbing
      v1.12.1

v1.12.0 - 2023-08-17
--------------------
Chema Gonzalez (3):
      test_load2: make error messages more descriptive
      Y4M loader: fix support for 420 colorspaces
      Y4M loader: add support for images with unexpected aspects

Kim Woelders (46):
      imlib2_view: Avoid potential use of uninitialized data
      GIF loader: Enable showing animated images even if truncated
      Introduce __imlib_perror() to produce error messages
      loaders: Use common function to print error messages
      imlib2_load: Move time_us() to separate file
      imlib2_conv: Add option to time save operations
      test: Fix pr_info() when not printing to stdout
      loading: Enable calling function on loader load/unload
      HEIF loader: Call heif_[de]init() on loader load/unload
      autofoo: Don't check for freetype if we are building without text
      QOI loader: Add progress calback, indent, cosmetics
      Loaders: Static constify some data that may as well be
      TGA loader: Fix TGA v2.0 signature check
      test: Add basic qoi checks
      test_scale: Test scaling some more
      scaling: Unifdef OLD_SCALE_DOWN
      scaling: Correct scaleinfo array length
      scaling: Move scaling function call sequence into common __imlib_Scale()
      scaling: Cosmetics (comments)
      scaling: Simplify scaling points calculation (eliminate j)
      scaling: Change ypoints[] from pointers to indices
      scaling: Cosmetics
      scaling: Minor refactoring
      scaling: Correct scaling up
      test_scale: Update for new scaling
      image: Fix missing munmap() when using imlib_load_image_fd()
      image: Fix potentially using incorrect file size
      file: Remove a couple of unused functions
      image: Fix potentially using incorrect file size - fixup
      test: Bypass wrappers when running tests
      test_load: Minor fix in debug message
      Add new raw loader
      TIFF loader: Slightly more strict signature check
      image: Use sub-second time info when available
      image: Fix preservation of alpha chanel flag in imlib_clone_image()
      image cache: Avoid negative refcounts
      image cache: Drop redundant cleanup
      image cache: Rework cleanup
      Revert "scaling: Correct scaling up"
      Revert "test_scale: Update for new scaling"
      scaling: Various trivial changes
      scaling: Improve non-AA scale-up case
      scaling: Correct scaling up - take 2
      test_scale: Update for new scaling (re-applied)
      test_scale: Exercise non-AA path too
      v1.12.0

NRK (11):
      WEBP saver: allow lossless and respect compression tag
      add a new QOI decoder
      QOI loader: fix build on non-gnu compilers
      QOI loader: use memcmp for magic and endmarker check
      Y4M loader: check file size before magic check
      loading: add some debug logs
      loading: check for alloc failure
      Y4M loader: use custom y4m parser
      test_load: allow y4m memory loading
      file: Remove unused functions some more
      introduce imlib_image_decache_file()

v1.11.1 - 2023-05-01
--------------------
Chema Gonzalez (2):
      imlib2: added loader for y4m files (uses liby4m and libyuv)
      imlib2: add y4m test examples

Kim Woelders (14):
      autofoo: More CLEANFILES
      HEIF loader: Add some debug
      Y4M loader: Various minor changes
      test_load: Add some missing ifdefs
      test_load: Add some y4m checks
      test: Print some progress info in a couple of tests
      modules: Drop some disabled code
      autofoo: Tweak PACKAGE_DATA_DIR definition
      XPM loader: Add rgb.txt
      loaders: Fix loaders potentially being loaded more than once
      loaders: Change method used to not unload loaders
      Add JXL saver
      loaders: Cosmetics
      v1.11.1

v1.11.0 - 2023-03-09
--------------------
Guilherme Janczak (1):
      remove bad unused function

Kim Woelders (54):
      test: Add a few tests for obscure pnm formats
      test: Add some pam tests
      Avoid some more undefined behaviors with shifts
      api: Fix code duplication around some __imlib_BlendImageToImage() calls
      api: Change some parameter names
      api: Tweak/correct error handling in drawable grabbing functions
      image: Let __imlib_CreateImage() allocate pixel data buffer
      Drop some redundant calls to __imlib_LoadImageData()
      api: Remember error on deferred image data loads
      imlib2_load: Show error on deferred data load problem
      imlib2_view: Be more verbose about load errors
      PNM loader: Speedups
      test: Introduce image_get_crc32()
      test: test_save: Trivial changes
      test: test_save: Check that files are written and ok
      PNM saver: Write images with alpha as P7 PAM RGB_ALPHA type
      x11_rgba: Add missing const
      x11_grab: Avoid cast-align warnings with -Wcast-align=strict
      x11_rgba: Avoid cast-align warnings with -Wcast-align=strict
      Loaders: Debug macro cleanups
      ANI loader: Use struct to access chunk data
      Loaders: Avoid cast-align warnings with -Wcast-align=strict
      autofoo: Add __PACKED__ for optional struct packing
      ANI, PNG, TGA loaders: Enable handling of unaligned data
      __imlib_FileDir(): Fix missing closedir() on OOM
      Loaders: decompress_load() is not part of the loader API
      Loaders: Debug tweaks
      Savers: Centralize file open/close
      JPG saver: Avoid potential clobber warning
      PNG saver: Avoid potential clobber warning
      Loaders, savers: Handle EINTR during fopen()
      api: Remove pointless statement
      api: Update documentation for imlib_get_error()
      api: Cosmetics around image save functions
      api: Minor simplification in error handling in save functions
      Add imlib_save_image_fd()
      api: Oops - debug--
      test_grab: Rearrange code
      x11_grab: Let __imlib_Grab..() return error instead of ok
      x11_grab: Eliminate unnecessary pixmap copy
      imlib_create_scaled_image_from_drawable(): Simplify call path
      x11_grab: Drop now unused 1:1 scaling path in __imlib_GrabDrawableScaledToRGBA()
      imlib2_view: Add option to set background checkerboard field size
      test_grab: Update
      test_grab: Add some tests for imlib_copy_drawable_to_image()
      test_grab: Check get-mask-from-shape too
      x11: Pass X11 context around by struct
      x11_grab: Move window/pixmap checking to separate function
      x11_grab: Rework clipping
      x11_grab: Clear image pixels not actually grabbed
      x11_grab: Various fixes in __imlib_GrabDrawableScaledToRGBA()
      x11_grab: Eliminate some overhead in scaled grabbing
      test_grab: Debug tweak
      v1.11.0

NRK (1):
      PNM loader: avoid some undefined behavior

q3cpma (1):
      PNM loader: add read support for PAM

v1.10.0 - 2022-12-17
--------------------
Kim Woelders (63):
      Introduce imlib_load_image_fde()
      imlib2_load: Tweak load mode handling
      Introduce Imlib2_Loader.h - all that is needed by loaders
      image: Change has alpha flag to separate byte
      loading: Don't look for cached image when not caching
      loading: New loader infrastructure
      loading: Introduce __imlib_ImageFileContextPush/Pop()
      loading: Centralize mmap handling
      Introduce imlib_load_image_mem()
      imlib2_load: Add option to use imlib_load_image_mem()
      api: Remove cast previously dropped everywhere else
      Hide imlib_get/set_color_usage() if no X11
      api: Move X11 related functions to separate file
      api: Move filter functions to separate file
      Enable disabling filter functions
      api: Move text functions to separate file
      Enable disabling text functions
      J2K loader: Drop showing deprecated item in debug message
      image: Fix memory leak when cloning images
      Unify basic X11 functionality in test programs
      Includes tweaks
      test: Re-generate test images with recent tool/library versions
      image: Hide internal ImlibImageFileInfo struct
      image: Don't munmap external memory
      Introduce imlib_get_error()
      api: error_return adjustments
      imlib2_load: Add option to enable image caching
      image: Fix potential use of uninitialized time stamps
      PNG loader: Correct frame delay in zero denominator case
      PNG loader: Cosmetics
      PNG loader: Improved handling of animated PNGs
      multiframe: Support loop count
      PNG loader: Fix animated PNG loading some more
      autofoo: Fix trouble with test subdirectory in distributed source
      autofoo: Rework git tag/release stuff
      test: test_load: Quit when loading primary image fails
      SVG loader: Don't reference multiframe stuff
      ICO loader: Eliminate ico_load()
      autofoo: Use AC_USE_SYSTEM_EXTENSIONS
      imlib2_view: Fix single frame update rendering
      test: test_load_2: Check frame 0/1 loading too
      PNG loader: Cosmetics
      PS loader: Cosmetics
      multiframe: Tweaks around frame number handling
      multiframe: Centralize handling of frame update offsets
      multiframe: Move frame info to allocated record
      multiframe: Allocate frame info only when needed
      PNG loader: Quit scan when target fdAT is seen
      PNG loader: Quit after loading first frame
      PNG loader: Simplify update callback handling
      imlib2_view: Fix multiframe rendering detail
      multiframe: Remove frame offset from updates
      imlib2_view: Fix multiframe after update coordinate change
      imlib2_view: Deal with all pending X events at once
      imlib2_view: Properly handle caching vs progress callbacks
      imlib2_view: Don't load bad images twice if first or last in argument list
      image: Cosmetics
      image: Introduce __imlib_LoadEmbeddedMem()
      Add new ani loader
      image: Cosmetics (slightly more consisent naming)
      ANI loader: Disable progress in embed loader
      ANI loader: Multiframe suport
      v1.10.0

NRK (3):
      Introduce imlib_load_image_frame_mem
      imlib_load_image_frame_mem(): set nocache
      TGA loader: fix indexing in tgaflip

v1.9.1 - 2022-07-06
--------------------
Kim Woelders (14):
      x11_color: Simplify and fix error paths
      JPEG loader: Use mmap'ed file access
      modules: Eliminate __imlib_TrimLoaderList()
      Introduce strsplit()
      modules: Cosmetics, mostly
      modules: Enable setting multiple loader/filter paths
      test: Add test_misc
      modules: Fix signdness warning
      TIFF loader: Change default save compression type
      imlib2_load: Remove unused macro
      imlib2_conv: Cosmetic changes
      imlib2_conv: Drop obsolete .db stuff, simplify
      imlib2_conv: Enable passing attached data to saver
      v1.9.1

NRK (3):
      check for some alloc failures
      check for alloc failures some more
      modules: check for filepath truncation

v1.9.0 - 2022-04-21
--------------------
Kim Woelders (53):
      Remove some deprecation comments
      Move API documentation to header file
      WEBP saver: Fix return code on success
      api.c: Cosmetics
      Refactor some image loading functions
      Refactor some image saving functions
      Image load: Change error code on zero file size
      Tweak __imlib_LoadImageData()
      Error code rework: Use errnos/new imlib2 error codes internally
      Add imlib_load/save_image_with_errno_return() and imlib_strerror()
      Switch to imlib_load/save_image_with_errno_return()
      Deprecate imlib_load/save_image_with_error_return()
      imlib2_load: Tweak verbose output
      Rename files with line etc. drawing functions
      Use stdint types instead of DATA32 etc.
      test_load: Check deferred loading too
      imlib2_load: Show load time per load too
      image.c: Correct loader probe loop
      image.c: Cosmetics (move function)
      GZ loader: Fix uncompressor exit code
      GIF loader: Use mmap'ed file access
      image.c: Loading tweaks
      imlib2_view: Verbose and debug message tweaks
      Loaders: Some trivial cosmetics
      Loaders: Remove unnecessary calls to __imlib_FreeData()
      debug: Enable using hex values in IMLIB2_DEBUG
      SVG loader: Requires librsvg-2.46
      TIFF loader: Use mmap'ed file access
      Add jxl loader
      test: Add basic jxl test
      test_save: Updates
      loaders: Ensure that found loader is ok for load/save
      image: Fix undesired change of format
      Drop deprecation noise from using the old DATA types
      Drop deprecation noise from using imlib_load/save_image_with_error_return()
      API doc corrections and tweaks for doxygen
      Revert a couple of unintended changes
      API doc updates
      doc: Drop most old doc stuff
      doc: New documentation build setup (doxygen)
      doc: Assorted documentation intro updates
      loaders: Fix typo, fix order
      SVG loader: Faster signature check
      build: Tweaks
      Add J2K (JPEG 2000) loader using openjpeg2 library
      test: Add some of JPEG 2000 tests
      Add PS/EPS loader using libspectre
      debug: Export __imlib_time_us()
      JXL loader: Multiframe support
      SVG loader: Avoid some warnings in rsvg.h
      SVG loader: Fix size when unit is percent
      SVG loader: Fix size when unit is percent some more
      v1.9.0

v1.8.1 - 2022-03-15
--------------------
Kim Woelders (32):
      PNM, XPM loaders: Fix trouble with non-ascii characters
      XPM loader: Reduce signature window size some more
      Refactor image flags stuff
      Remove some unused image flags and deprecate functions referencing them
      JPEG, XBM loaders: Drop pointless clearing of flag
      Deal consistently with including Imlib2.h
      Merge x11_draw.c/h into x11_pixmap.c/h
      x11_rgba.c: Add some missing static qualifiers
      x11_color.c: Make most __imlib_AllocColors*() functions static
      x11_...: Introduce palette type enum
      Loader includes tweaks
      Move some loader related function prototypes to loaders.h
      common.h: Drop round() macro
      debug.c/h: Move __EXPORT__ to .c file
      Remove system includes from common.h
      Move x_VAL() macros to common.h
      Introduce types.h
      Remove some unnecessary headers
      grad.c: Refactor __imlib_DrawGradient() and __imlib_DrawHsvaGradient()
      Only have one CLIP macro
      Mostly cosmetic tweaks around clipping checks
      test: Command line options tweak
      test_grab: Enable testing depths other than 24 and 32
      x11_grab.c: Correct 16 and 15 bit depth grabbing
      TIFF loader: Remove obsolete comment
      ID3 loader: Drop inline and likely stuff
      ID3 loader: Disable tags stuff
      Introduce __imlib_GetKey()
      Merge __imlib_FindBestLoader...() functions
      test: Properly include test.h in test SOURCES
      test: Exclude from tarball
      v1.8.1

Matthias Grosser (1):
      imlib2: saving progressive JPEG

NRK (1):
      XPM Loader: limit signature check to first 4KiB

Tobias Stoeckmann (2):
      imlib2: allow compilation without x headers
      imlib2_load: fix typo

Youssef Rebahi-Gilbert (1):
      fix: possible memleak in rgba save on big endian systems

v1.8.0 - 2022-02-06
--------------------
Kim Woelders (86):
      test: Add context test
      Drop context image save/restore around __imlib_Load/SaveImage() calls
      Make initial context static
      Drop context check/init in API functions
      Use __func__ instead of open coded function names
      Pass parameters to __imlib_LoadImage() by struct
      Trivial cleanups
      imlib2_view: Cosmetics (if -> switch)
      imlib2_view: Add 'r' command to refresh
      imlib2_view: Move window background image init to separate function
      imlib2_view: Refactor pixmap rendering
      imlib2_view: Remove some pointless function calls
      imlib2_view: Tweaks around timeout
      debug: Add some image caching debug
      imlib2_view: Fix caching option
      Add support for multiframe (animated) images
      Enable caching for multiframe images
      imlib2_load: Add support for multiframe images
      imlib2_view: Add support for multiframe images
      debug: Add DL macro for additional loader debug
      WEBP loader: Multiframe support
      ICO loader: Multiframe support
      GIF loader: Some refactoring, add debug
      GIF loader: Multiframe support
      ICO loader: Debug tweaks
      Indent
      debug: Avoid use of uninitialized data
      Loader loading: Avoid access to uninitialized load() item
      updates: Reduce memory usage
      Drop some intermediate type definitions
      autofoo/loader cosmetics
      configure.ac: Simplify loader setup
      Updates for animated image handling
      imlib2_view: Fix(?) animated image frame dispose handling
      test: Add a couple of ico depth test images
      ICO loader: Minor optimization
      ICO loader: Mostly cosmetic changes (inline ico_read())
      GIF loader: Always set BLEND flag
      imlib2_view: Rework display of animated images
      Introduce more loader return codes
      BZ2, ZLIB loaders: Move duplicated code to separate file
      Add lzma loader
      imlib2_grab: Print error message if saving fails
      imlib2_view: Verbosity twaeks
      imlib2_load: Verbosity twaeks
      LZMA loader: Fix potential warning
      configure.ac: Correct simplification changes
      configure.ac: Correct simplification changes some more
      XBM loader: Correct load2() result when no header is found
      Add svg loader
      SVG loader: Avoid problems when loading the module more than once
      imlib2_load: Add no-data option
      Add dispose-to-previous frame handling
      PNG loader: Disable Imlib2-Comment stuff
      PNG loader: Rewrite to use callback API
      PNG loader: Add multiframe support
      test: Check __imlib_FileKey()
      Simplify __imlib_FileKey()
      Avoid redundant operations when non-existing file has no "key"
      Drop change log from before first version tag
      test: Move generated image files out of source dir
      test: Add makefile to generate test images
      PNM loader: Fix P1 when spaces are omitted
      PNM loader: Fix "XV thumbnail" (P7 332) loading
      test: Add some more PNM type loading tests
      image.c: Avoid potential compile error
      imlib2_view: Avoid clang error
      Drop/adjust a few comments
      Move some code as suggested in source
      HEIF loader: A couple of cleanups and fixes
      loaders.c: Add heif to known loaders
      autofoo: Sort loaders
      SVG loader: Fix memory leak on error
      HEIF loader: Avoid memory leak when module is loaded more than once
      Mark obsolete TTF encoding functions as deprecated
      test: Add basic heif loader check
      Refactoring around font glyph lookup
      imlib2.spec.in: Introduce acflags for configuration of rpmbuilds
      Add some missing const qualifiers
      Fix gcc12 warning in __imlib_ConsumeImage()
      Fix gcc12 warning in __imlib_stripwhitespace()
      TGA loader: Make function order same as in other loaders
      HEIF loader: Header cleanups
      Add imlib_version()
      test: Merge common stuff
      v1.8.0

Rishvic Pushpakaran (1):
      imlib2: added loader for HEIF files (uses libheif), implemented just `load2` for now

Sören Tempel (1):
      ICO loader: Fix compilation on big endian architectures

v1.7.5 - 2021-12-06
--------------------
Kim Woelders (83):
      Build .xz instead of .bz2 release tarball
      Drop imlib2-config (use pkg-config)
      Test: Add some minimal regression testing
      Test: Fix dist
      imlib2_load: Add option to use imlib_load_image_immediately()
      JPEG loader: Cosmetics
      JPEG loader: Parse EXIF data and handle orientation
      autofoo: Drop support for libungif
      Imlib.h: Add version macros
      imlib2_load: Add verbose option
      Fix build (Imlib2.h is now built)
      test: Add icon-64.pbm
      test: Add test_load_2
      imlib2_view: If verbose show error message on failure
      imlib2_load: Use clock_gettime() when available
      debug: Infrastructure
      debug: Add some debug related to file access and image loading
      Introduce im->fsize
      PNG loader: Cosmetics
      PNG loader: Use mmap() during signature check
      TIFF loader: Use mmap() during signature check
      TGA loader: Use im->fsize, cosmetics, debug
      WEBP loader: Cosmetics
      WEBP loader: Use mmap() for loading
      FF loader: Cosmetics
      FF loader: Use mmap() for loading
      ARGB loader: Cosmetics
      ARGB loader: Use mmap() for loading
      BMP loader: Cosmetics
      BMP loader: Use mmap() for loading
      ICO loader: Cosmetics
      ICO loader: Use mmap() for loading
      LBM loader: Cleanups
      LBM loader: Use mmap() for loading
      PNM loader: Use mmap() for loading
      XBM loader: Fix potential buffer overrun
      XBM loader: Cosmetics
      XBM loader: Use mmap() for loading
      XBM loader: Ignore comments and other stuff in header
      XPM loader: Use mmap() for loading
      test: test_load improvements
      imlib2_view: Add option to cache images
      Introduce UPDATE_FLAG()
      Introduce ARRAY_SIZE()
      Loader cosmetics
      Loader loading: Tweaks
      Loader loading: Move to __imlib_FindBestLoaderForFormat()
      Loader loading: Move __imlib_GetLoaderList()
      Loader loading: Minor loader lookup refactoring
      Loader loading: Avoid always loading all loaders
      Loader loading: Don't bother looking up load() if we have load2()
      WEBP loader: Enable loading animated images (first frame by default)
      configure.ac: Fixup after recent change
      Drop unnecessary free() NULL argument checks
      Remove some unneeded headers
      Rename X11 related files for clarity
      Move ImlibImagePixmap population to __imlib_AddImagePixmapToCache()
      test: Add X11 drawable grabbing test
      Move pixmap stuff to x11_pixmap.c/h
      Trivial changes in __imlib_Grab...() function prototypes
      Refactor imlib_create_scaled_image_from_drawable()
      Revert "Refactor imlib_create_scaled_image_from_drawable()"
      Refactor imlib_create_scaled_image_from_drawable() - take 2
      x11_grab.c: Rename source/destination variables for clarity
      Fix y-upscaling in imlib_create_scaled_image_from_drawable()
      test_grab: Cleanups, cosmetics
      test_grab: Add scale-down tests
      Only set MAINTAINERCLEANFILES in top-level Makefile.am
      imlib2_view: Enable grabbing/viewing drawables
      x11_grab.c: Cosmetics
      x11_grab.c: Introduce function to get shape mask
      Speedup in imlib_create_scaled_image_from_drawable()
      Avoid signedness warning
      Avoid "exceeds maximum object size" warning
      blend.c: Tweaks, cleanups
      Simplify build wrt. asm files
      test_save: Check images with alpha too
      test: Add some scaling/rotation tests
      Refactoring around mmx and rotate function calls
      Refactoring around mmx and scaling function calls
      Refactor condition for using assembly functions
      Update doc for imlib_load_image_fd()
      1.7.5

NRK (1):
      WEBP loader: fix key selecting last frame

v1.7.4 - 2021-09-17
--------------------
Kim Woelders (15):
      imlib2_view: Move property stuff to separate file
      imlib2_view: Cleanups
      imlib2_view: By default scale large images to fit on screen
      imlib2_view: Add some debug
      imlib2_view: Fix issue with new default scaling
      WEBP loader: Remove forgotten debug printout
      WEBP loader: Rename fd variable to be same as everywhere else
      LBM loader: Fix potential out-of-bounds memory access
      GIF, TIFF, WEBP loaders: Fix loading if filename does not have usual suffix
      Revert "GIF, TIFF, WEBP loaders: Fix loading if filename does not have usual suffix"
      GIF, TIFF, WEBP loaders: Fix loading if filename does not have usual suffix - take 2
      Add script to generate Changelog
      Update Changelog to new format
      image.c: Use the LOAD_... macros to check loader return values
      1.7.4

v1.7.3 - 2021-08-08
--------------------
Kim Woelders (2):
      autofoo: Resurrect non-pkg check for bzip2
      1.7.3

v1.7.2 - 2021-07-27
--------------------
Kim Woelders (31):
      Remove some unnecessary X_DISPLAY_MISSING stuff
      rend.c: Remove some pointless lines
      Add XBM loader
      Add imlib2_load and /build to .gitignore
      Remove obsolete and unused AC_HEADER_STDC
      Restore file:key functionality
      ICO loader: Fix (disabled) debug stuff
      ICO loader: Enable specifying ico image index by key
      Remove unused Context functions
      context.c: Fix potential segv
      LBM loader: Fix handling of missing RLE data
      Fix clang-analyzer warnings - bin (trivial)
      Fix clang-analyzer warnings - loaders (trivial)
      Fix clang-analyzer warnings - loaders (suppress bogus)
      Fix clang-analyzer warnings - lib (mostly trivial)
      Fix clang-analyzer warnings - lib (less trivial)
      autofoo: Move more to pkg-config
      TIFF loader: Drop use of libtiff defined types deprecated in libtiff-4.3.0
      TGA loader: Fix loading small images without footer
      Spec file: Add git tag to rpm file name (if built from git checkout)
      Cleanups: while->for loops (loaders list)
      Cleanups: while->for loops (context list)
      Cleanups: while->for loops (im->tags list)
      Cleanups: while->for loops (images list)
      Cleanups: while->for loops (pixmaps list)
      Drop unused Imlib_Object_List:last
      Add feature to build with ASAN (--enable-gcc-asan)
      Correct (disabled) debug printouts
      Loaders: Remove unnecessary headers
      WEBP saver: Use fopen() etc. like all other savers
      1.7.2

v1.7.1 - 2020-12-09
--------------------
Daniel Kolesa (1):
      Fix big endian build

Kim Woelders (6):
      rend.c: Fix __imlib_generic_render() when jump != 0
      grab.c: Support 30bpp display in __imlib_GrabXImageToRGBA()
      WEBP loader: Add initial signature check
      XPM loader: Get transparency right when doing header-only loading
      Silence a couple of sign-compare warnings
      1.7.1

v1.7.0 - 2020-08-01
--------------------
Alexander Volkov (3):
      GIF loader: Don't close file descriptor twice
      Introduce imlib_load_image_from_fd()
      Don't rescan loaders

Kim Woelders (49):
      XPM loader: Major speedup for cpp > 2
      imlib2_load: Properly check non-full loads (load data too)
      imlib2_load: Use getopt()
      imlib2_load: Add repeated load option
      Simplify __imlib_FileExtension()
      Refactor many __imlib_File...() functions to use common __imlib_FileStat()
      Drop the __imlib_IsRealFile() file check in __imlib_File...() functions
      image.c: Add some space for readability
      image.c: Remove some unnecessary clearing of calloc'ed structs
      image.c: Rework some obscure file name stuff in __imlib_SaveImage()
      image.c: Don't strdup() real_name when not necessary in __imlib_LoadImage()
      image.c: Use real_file to get file time
      image.c: Introduce __imlib_ErrorFromErrno()
      image.c: Use loader return value, not im->w to determine load success
      Loader cleanups
      Saver cleanups
      image.c/h: Cleanups
      image.c: Move image tag functions to separate file
      image.c: Move loader functions to separate file
      image.c: Enable non-dirty pixmap cache cleaning
      image.c: Minor refactoring of pixmap cache cleaners
      image.c: Move data_memory_func assignment to better place
      imlib2_view: Various tweaks
      Fix loader cleanup breakage (gif)
      image.c: Remove redundant pixmap unref
      image.c: Add infrastructure to simplify progress handling
      Loaders: Simplify/fix progress handling
      Savers: Simplify progress handling
      Introduce __imlib_LoadEmbedded()
      Introduce __imlib_LoaderSetFormats()
      Make ImlibLoader struct opaque
      autogen.sh: Add -n as alternative to NOCONFIGURE
      Fix enum conversion warnings (gcc10)
      JPG, PNG loaders: Avoid clobber warnings
      Add a couple of consts
      TIFF loader: Minor speedup
      ID3 loader: Some mostly cosmetic rearrangements
      GZ, BZ2 loaders: Accept more file names
      __imlib_FileExtension: Use basename if there are no dots
      Revert "JPG, PNG loaders: Avoid clobber warnings"
      JPG, PNG loaders: Avoid clobber warnings - Take N+1
      Add infrastructure for new loader entry - load2()
      Move loaders to load2()
      Reduce number of stat() calls during load
      configure.ac: Drop initial config.cache removal
      imlib2_load: Optionally use imlib_load_image_fd()
      Fix build without X11
      Remove a couple of unused includes
      1.7.0

Tobias Stoeckmann (2):
      ICO loader: Do not crash on invalid files
      ICO loader: Handle malloc failures

v1.6.1 - 2019-12-13
--------------------
Kim Woelders (11):
      gz loader: Use FILE, not fd
      gz, bz2 loaders: Fix recent breakage when file name has more than two dots
      Quit on 'q' or 'esc' key press in all imlib2_... test utilities
      Rename imlib2_test_load to imlib2_load
      imlib2_load: Optionally write to stderr instead of stdout
      imlib2_view: Add progress debug options
      Enable specifying loader/filter paths with environment variables
      BMP loader: Remove some bogus conditions
      XPM loader: Minor optimization for cpp > 2
      LBM loader: Fix header-only loading
      1.6.1

Luiz Carlos Ramos (1):
      BMP loader: Fix size calculation when saving files

v1.6.0 - 2019-11-24
--------------------
Alexander Volkov (1):
      Allow to use custom memory management functions for loaded images

Kim Woelders (64):
      Add __imlib_LoadImageWrapper() handling all load() calls
      imlib2_conv: Report error on save failure
      Autofoo cosmetics
      Trivial cleanups in imlib2_... test programs
      Add imlib2_test_load program
      Cleanups in load() functions
      Centralize handling of im->format
      Sort loaders in Makefile.am
      Remove obsolete dmalloc stuff
      Move SWAP.. macro definitions to common.h
      Use common PIXEL_ARGB() macro to compose pixels
      Add new ICO loader
      Spec file simlifications and cleanups
      Fix memory leak in imlib_list_fonts()
      XPM loader: Refactor exit cleanup handling
      XPM loader: Fix potentially uninitialized pixel data
      XPM loader: Fixup after "Refactor exit cleanup handling"
      Revert "XPM loader: Fix potentially uninitialized pixel data"
      XPM loader: Cosmetics (reduce indent level)
      XPM loader: Fix several colormap issues
      XPM loader: Simplify pixel value handling
      XPM loader: Add missing pixels (malformed xpm)
      XPM loader: More simplifications
      JPG loader: Refactor
      JPG loader: Do proper CMYK conversion
      Add new WebP loader
      Remove pointless im->data checks in loaders
      WepP loader: Fix memory leak in error path
      JPG loader: Fix memory leaks in error paths
      Fix ABI break
      ICO loader: Add binary flag to fopen()
      JPG loader: Refactor error handling
      Rename/add byte swap macros
      BMP loader: Major makeover - numerous bug fixes and feature enhancements
      Miscellaneous imlib_test_load tweaks
      GZIP loader: Check filename before uncompress
      imlib2_test_load: Fixup after recent change
      Re-indent everything using indent-2.2.12
      TGA loader: Refactor
      Eliminate WRITE_RGBA()
      Simplify autogen.sh
      Simplify pixel color handling in api.c
      Use pixel instead of r,b,g,a in __imlib_render_str()
      Use macro for pixel color access in savers
      Eliminate READ_RGBA()
      XPM loader: Accept signature not at the very start of the file
      Simplify loader lookup functions
      imlib2_view: Enable selecting next/prev using keys too
      imlib2_view: Fix event processing bug
      imlib2_test_load: Fixup recent breakage for real
      imlib2_test_load: Check progress conditionally
      imlib2_view: Add verbose option, quit on Escape too
      TGA loader - Mostly cosmetic refactoring
      TGA loader: More mostly cosmetic changes
      TGA loader: Support horiontal flip
      TGA loader: Add simple 16 bpp handling
      TGA loader: Tweak error handling
      ICO loader: Fix non-immediate loading
      Remove __imlib_AllocateData() w,h args
      imlib2_view: Fix next/prev selection if last/first image is bad
      ICO loader: Fix memory leak in error path
      XPM loader: Correct signature check (avoid accessing unset data)
      gz, bz2 loaders: Simplify, eliminate unnecessary strdups, cosmetics
      1.6.0.

Olof-Joachim Frahm (欧雅福) (2):
      Check filename before opening archive file.
      tga loader: implement handling of palette

Ralph Siemsen (1):
      loader_tga: fix regression in RLE raw byte handling

v1.5.1 - 2018-03-17
--------------------
Kim Woelders (13):
      Fix build without HAVE_X11_SHM_FD (T6752)
      XPM loader: Fix potential use of uninitialized value (T6746)
      BMP loader: Fix infinite loop with invalid bmp images (T6749)
      PNM loader: Simplify (fixing ASCII format parsing issues T6751)
      BMP loader: Fix warnings found with -O3
      Maximum image dimension should be 32767, not 32766
      PNG loader: Correct various error handling cases
      Add missing const to imlib_apply_filter() script argument
      Warning fixes in imlib2_... programs
      imlib2_view: Limit window dimensions to 32767
      grab.c: Fix gcc8 warning
      imlib2_conv.c: Fix gcc8 warning
      1.5.1.

v1.5.0 - 2018-02-22
--------------------
Alexander Volkov (3):
      put a check for shared memory inside __imlib_ShmGetXImage()
      introduce __imlib_ShmDestroyXImage() instead of __imlib_ShmDetach()
      Add support for MIT-SHM FD-passing

Kim Woelders (19):
      XPM loader: Fix incorrect image invalidation.
      Make some more functions static.
      Introduce __imlib_LoadImageData()
      Remove redundant CAST_IMAGE()
      imlib2_grab: Always use imlib_create_scaled_image_from_drawable() to grab image
      imlib_create_scaled_image_from_drawable(): speed up 1:1 case
      imlib_create_scaled_image_from_drawable(): Drop shape handling if unshaped
      Indent
      Autofoo cosmetics
      Strip trailing whitespace, cosmetics
      Fix potential OOB memory access if border elements are negative
      Fix potential OOB memory access if border sizes exceed image dimensions
      Introduce IMLIB2_SHM_OPT to enable overriding/testing SHM modes
      Add IMLIB2_XIMAGE_CACHE_COUNT to enable testing the ximage cache
      Refactor the XImage cache
      Add imlib_get_cache_used()
      Expose XImage cache control functions
      Drop -Waggregate-return
      1.5.0.

v1.4.10 - 2017-04-15
--------------------
Kim Woelders (3):
      PNM loader: Fix reading PNM bitmaps.
      Fix missing break.
      1.4.10.

Tobias Stoeckmann (3):
      Avoid out of boundary operations while parsing xpm
      Properly release resources on error path
      Prevent OOB read with large file support on 32 bit

v1.4.9 - 2016-04-29
--------------------
Alexander Smirnov (1):
      Fix cross-endianness for masks (1-bit depth images)

Bernhard Übelacker (1):
      gif: fix oob reads w/bad colormaps

Kim Woelders (16):
      Fix "assuming signed overflow does not occur" warning.
      Fix some "variable set but not used" warnings.
      Fix some "variable might be clobbered" warnings.
      Fix off-by-one OOB read in __imlib_MergeUpdate().
      Revert "gif: fix oob reads w/bad colormaps"
      GIF loader: Fix out-of-bound reads from colormap.
      GIF loader: Remove check made redundant by previous commit.
      GIF loader: Reduce progress checks from per-pixel to per-row.
