gexiv2 0.16.1 - 27 Jun 2026 (stable)

 * Fix issue with GIR missing correct package name
 * Fix memory leak in regression test
 * Add missing assert in GPS test

All contributors to this release:
 - Jens Georg <mail@jensge.org>
 - correctmost <136447-correctmost@users.noreply.gitlab.gnome.org>
 - Daniel P. Berrangé <berrange@redhat.com>

gexiv2 0.16.0 - 13 Sep 2025 (stable)

 * No change, version bump to stable 

gexiv2 0.15.2 - 31 Aug 2025 (unstable)

 * Add api version to library to avoid paralell installation
   conflict of unversioned .so

All contributors to this release:
 - Jens Georg <mail@jensge.org>

gexiv2 0.15.1 - 2 Aug 2025 (unstable)

 * Remove charset= prefix 
 * Fix issue with get_tag_multiple mis-interpreting tags with commas
 * Modernize the GObject boilerplates
 
Bugs fixed in this release:
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/80
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/87

All contributors to this release:
 - Jens Georg <mail@jensge.org>
 - Jacob Boerema <jgboerema@gmail.com>

gexiv2 0.15.0 - 28 Jun 2025 (unstable)

Attention:
 * This release breaks API! pkgconfig files, vapi and include
   folders are now installed with API versioning

Changes in dependencies:
 * Only supports exiv2 0.28 or later

Other changes: 
 * Deprecate _try API and have the api without _try return GError
 * Remove old streamIO API
 * Documentation is now built with gi-docgen
 * Remove all functions deprecated in 0.14

Bugs fixed in this release:
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/79
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/79
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/81
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/86

All contributors to this release:
 - Jens Georg <mail@jensge.org>
 - Jens Georg <jens.georg@desy.de>
 - Bartłomiej Piotrowski <b@bpiotrowski.pl>
 - Doomsdayrs <doomsdayrs@gmail.com>

gexiv2 0.14.2 - 24 Jul 2023 (stable)

 * Make compatible with exiv2 0.28 or later
 * Fix double free if creation of meta-data fails
 * Fix floating point compare in tests

All contributors to this release:
 - psykose <alice@ayaya.dev>
 - Kevin Backhouse <kevinbackhouse@github.com>
 - Jacob Boerema <jgboerema@gmail.com>

gexiv2 0.14.1 - 5 May 2023 (stable)

 * Clean-up python support
 * Drop python2 support
 * Add option for building tests
 * Only run python tests when python is enabled
 * Fix get_gps_info() return data with unset altitude
 * Fix generate_xmp_packet() ignoring its parameters
 * Fix gexiv2-tool to call initialize()

Bugs fixed in this release:
 - Addresses https://gitlab.gnome.org/GNOME/gexiv2/-/issues/72
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/69
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/70

All contributors to this release:
 - Peter Eisenmann <p3732@getgoogleoff.me>
 - Alex Xu (Hello71) <alex_y_xu@yahoo.ca>
 - Felix Crux <felixc@felixcrux.com>
 - postscript-dev <43813-postscript-dev@users.noreply.gitlab.gnome.org>
 - Seth Falco <seth@falco.fun>
 - Jens Georg <mail@jensge.org>

gexiv2 0.14.0 - 18 Sep 2021 (stable)

 * Fix BMFF compile test

All contributors to this release:
 - Matt Turner <mattst88@gmail.com>

gexiv2 0.13.0 - 15 Aug 2021 (development)

 * Enable BMFF support if enabled in exiv2 version
 * Update gexiv2-dump tool
 * Mark gexiv2_metadata_from_stream as deprecated; it is fundamentally broken
 * More additions to API and _try versions that support GErorr if exiv2 might throw
 * Some additions to gexiv2-tool
 * Changes in build configuration

Bugs fixed in this release:
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/140
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/62
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/62
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/66

Merge requests included in this release:
 - https://gitlab.gnome.org/GNOME/gexiv2/merge_requests/54
 - https://gitlab.gnome.org/GNOME/gexiv2/merge_requests/59
 - https://gitlab.gnome.org/GNOME/gexiv2/merge_requests/51

All contributors to this release:
 - postscript-dev <postscript-dev@outlook.com>
 - Jens Georg <mail@jensge.org>
 - Peter Kovář <peter.kovar@reflexion.tv>

gexiv2 0.12.2 - 20 Feb 2021
 
 * Introduce gexiv2_metadata_get_exif_data
 * Clarify License of C/C++ code
 * Documentation clean-up
 * Fix filename handling for windows
 * Fix _get_iptc_tags returning duplicates
 * Add _get_multiple() for all tag domains
 * Introduce a set of new functions that will pass on Exiv2's exception
   instead of silently dropping a warning to the console
 * Fix XMP tags sort order
 * Fix xmpText/altLang handling for _get_tag_multiple()
 * Add XMP namespace lookup
 * Windows compatibility fixes

Bugs fixed in this release:
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/10
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/57
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/58
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/59
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/59
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/60
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/61
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/63

All contributors to this release:
 - Jens Georg <mail@jensge.org>
 - postscript-dev <postscript-dev@outlook.com>
 - Jehan <jehan@girinstud.io>
 - Olav Vitters <olav@vitters.nl>

gexiv2 0.12.1 - 23 May 2020

 * Support macOS dylib versioning
 * Improve compatibility with current exiv2 development versions
 * Fix compiling on windows
 * Fix issue with problematic symbol visibility of exiv2
 * Fix issues with tests overwriting environment variables
 * Fix exception escaping on division by zero
 * Fix overflow in altitude fraction conversion
 * Fix crash with experimental GIO support
 * Documentation fixes
 * Add gexiv2_metadata_update_gps_info which will not remove all other GPS
   information

Bugs fixed in this release:
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/41
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/42
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/45
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/52
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/53
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/54
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/55

All contributors to this release:
 - Jens Georg <mail@jensge.org>
 - Ting-Wei Lan <lantw@src.gnome.org>
 - Csaba Toth <csaba.toth@telenordigital.com>
 - Thomas Doczkal <thomas@doczkal.eu>
 - Thomas Doczkal <thomas@doczkal.de>
 - Christoph Reiter <reiter.christoph@gmail.com>
 - Chris Mayo <aklhfex@gmail.com>
 - Tom Schoonjans <Tom.Schoonjans@diamond.ac.uk>

gexiv2 0.12.0 - 11 Mar 2019

 * Include a test for https://gitlab.gnome.org/GNOME/shotwell/issues/94
 * Disable autoptr test when not running on GCC/Clang
 * Revert symbol hiding script
 * Improve building the vapi using meson's vala support
 * Add canary test for https://gitlab.gnome.org/GNOME/gexiv2/issues/27
 * Promote gexiv2-dump to a tool
 * Documentation fixes
 * flake8 fixes for python code

Bugs fixed in this release:
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/27

All contributors to this release:
 - Jens Georg <mail@jensge.org>
 - Chris Mayo <aklhfex@gmail.com>
 - Marty E. Plummer <hanetzer@startmail.com>

gexiv2 0.11.0 - 8 Jan 2019

  * Remove autotools
  * Align Meson options with the rest of GNOME
  * Prevent additional newlines from Exiv2 logging
  * Remove VAPI overrides
  * Adapt to Exiv2 changes in 0.27 and master
  * Fix several issues with Gtk-Doc
  * Add support to read Exiv2 meta-data from a GInputStream


Bugs fixed in this release:
 - https://github.com/Exiv2/exiv2/issues/555#issuecomment-440023260
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/34
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/36
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/38

All contributors to this release:
 - Jens Georg <mail@jensge.org>
 - Corentin Noël <corentin@elementary.io>
 - Andre Klapper <a9016009@gmx.de>

gexiv2 0.10.9 - 18 Nov 2018

  * Fix check for building on OS X
  * Fix generating non-reproducible builds
  * Make it possible to disable the python modules
  * Fix deprecated g_type_class_add_private
  * Fix various issues with getting width and height from EXIF
  * Fix building with 0.27

Bugs fixed in this release:
 - https://bugs.debian.org/891897
 - https://bugzilla.gnome.org/show_bug.cgi?id=791941
 - https://bugzilla.gnome.org/show_bug.cgi?id=793984
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/28
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/31
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/32
 - https://gitlab.gnome.org/GNOME/gexiv2/issues/33

All contributors to this release:
 - Jens Georg <mail@jensge.org>
 - Ting-Wei Lan <lantw@src.gnome.org>
 - Chris Lamb <chris@chris-lamb.co.uk>

Added/updated translations
gexiv2 0.10.8 - 5 Feb 2018

  * Do not use linker scripts on Drawin/OS X
  * Fallback to AperturValue if FNumber is absent
  * Fix GIR header and vapi when using meson

Bugs fixed in this release:
 - https://bugzilla.gnome.org/show_bug.cgi?id=791941
 - https://bugzilla.gnome.org/show_bug.cgi?id=792239
 - https://bugzilla.gnome.org/show_bug.cgi?id=792431

All contributors to this release:
 - Jens Georg <mail@jensge.org>
 - Debarshi Ray <debarshir@gnome.org>
 - Corentin Noël <corentin@elementary.io>

gexiv2 0.10.7 - 24 Dec 2017

  * Add meson build support
  * Use glib-mkenums for enum types
  * Update debian
  * Fix make check when running out of tree
  * Use version script to clean up exported functions
  * Fix --disable-vala

Bugs fixed in this release:
 - https://bugzilla.gnome.org/show_bug.cgi?id=784045
 - https://bugzilla.gnome.org/show_bug.cgi?id=787455

All contributors to this release:
 - Jens Georg <mail@jensge.org>
 - Debarshi Ray <debarshir@gnome.org>
 - Jason Crain <jason@inspiresomeone.us>

gexiv2 0.10.6 - 21 May 2017

  * Fix missing include file
  * Add a function to save meta-data in XMP sidecar file
  * Add a more complete Python test-suite
  * Fix a potential NULL dereference in _get_comment()
  * Fix compatibility with Exiv2 0.26

Bugs fixed in this release:
 - Coverity issue CID 167853
 - https://bugs.gentoo.org/show_bug.cgi?id=613778
 - https://bugzilla.gnome.org/show_bug.cgi?id=712455
 - https://bugzilla.gnome.org/show_bug.cgi?id=780709
 - https://bugzilla.gnome.org/show_bug.cgi?id=782449

All contributors to this release:
 - Jens Georg <mail@jensge.org>
 - Robert Bruce Park <r@robru.ca>

gexiv2 0.10.5 - 20 March 2017

  * Fix autogen.sh to also run configure
  * Generate gtk-doc and various documentation updates
  * Fix an abort on unhandled Minolta meta-data
  * Fix compilation issues with shadowing variables in StreamIO
  * Fix GPS rational calculations if fraction has 0 numerator and denominator
  * Several build cleanups
  * Add make check to build and run the python tests
  * Add C tests

Bugs fixed in this release:
 - https://bugzilla.gnome.org/show_bug.cgi?id=723790
 - https://bugzilla.gnome.org/show_bug.cgi?id=774105
 - https://bugzilla.gnome.org/show_bug.cgi?id=775249
 - https://bugzilla.gnome.org/show_bug.cgi?id=776233
 - https://bugzilla.gnome.org/show_bug.cgi?id=779089
 - https://bugzilla.gnome.org/show_bug.cgi?id=779551
 - https://bugzilla.redhat.com/show_bug.cgi?id=1401706

All contributors to this release:
 - Jens Georg <mail@jensge.org>
 - Pablo Castellano <pablo@anche.no>

gexiv2 0.10.4 - 15 August 2016
------------------------------

  * Additions to get_comment based on MWG guidelines (#746424)
  * Fix builddir != srcdir
  * Fix leaks in GPS coordinate handling (#754241)
  * Update build instructions (#749800)
  * Copyright transfer to SFC
  * Use M4 macros for GObject introspection (#765827)
  * Clean-up some introspection warnings
  * Catch exception by reference (CID:112500)
  * Generate the VAPI file from GIR
  * Mark _free() functions as deprecated
  * Fix several g-i-scanner warnings
  * Fix build issue introduced by VAPI changes (#768896)
  * Use AX_COMPILER_FLAGS and fix issues risen by that
  * Remove linker flags from CXXFLAGS
  * Enable maintainer mode and silent rules
  * Fix lookup of XMP tags (#768906)
  * Enable compiling without GObject Introspection

Bugs fixed in this release:
 - https://bugzilla.gnome.org/show_bug.cgi?id=746424
 - https://bugzilla.gnome.org/show_bug.cgi?id=749800
 - https://bugzilla.gnome.org/show_bug.cgi?id=754241
 - https://bugzilla.gnome.org/show_bug.cgi?id=765827
 - https://bugzilla.gnome.org/show_bug.cgi?id=768896
 - https://bugzilla.gnome.org/show_bug.cgi?id=768906

All contributors to this release:
 - Jens Georg <mail@jensge.org>
 - Jim Nelson <jim@yorba.org>
 - Roman Lebedev <lebedev.ri@gmail.com>
 - Emmanuele Bassi <ebassi@gnome.org>
 - Alan Pater <alan.pater@gmail.com>
 - Adam Dingle <adam@medovina.org>

gexiv2 0.10.3 - 23 March 2015
-----------------------------

  * Retrieve XMP tag's structure type (#736799)
  * Generate XMP packet as NUL-terminated string (#736587)
  * Retrieve tag's raw value as GBytes (#730136)
  * Fix gexiv2_metadata_get_fnumber() (#745347)


gexiv2 0.10.2 - 16 September 2014
---------------------------------

  * Use all EXIF tags for interpreted strings (#734861)
  * Automake fixes


gexiv2 0.10.1 - 25 April 2014
-----------------------------

  * Fix Python bindings (GObject Introspection issue)


gexiv2 0.10.0 - 17 March 2014
-----------------------------

  * Build system fixes
  * Updated links in documentation


gexiv2 0.9.1 - 5 February 2014
------------------------------

  * Fixed tarball compilation problem
  * Updated configure.ac
  * Fixed introspection generation


gexiv2 0.9.0 - 4 February 2014
------------------------------

  * Ported to Autotools
  * Added compile and runtime version number checks
  * Fixed bugs and resource leaks
  * Updated GTK-Docs and GI annotations


gexiv2 0.7.0 - 3 October 2013
-----------------------------

  * Fixed Python date/time getter/setter bindings
  * Fixed latitude translation code
  * New calls for getting underlying Exiv2 tag types


gexiv2 0.6.1 - 19 March 2013
-----------------------------
  * Increases the libtool so version to 2.0.0 to reflect ABI
    changes introduced in 0.6.0.


gexiv2 0.6.0 - 18 March 2013
-----------------------------
  * API has been cleaned up: several unnecessary or questionable
    calls removed
  * Improved support for developing GExiv2-based applications
    in Python
  * Now includes calls to register and unregister custom XMP
    namespaces


gexiv2 0.5.0 - 1 October 2012
-----------------------------

  * Corrects a major issue where some required directories wouldn't be created
    when running 'make install'.
  * Corrects an issue where gexiv2.py wouldn't get copied to the tarball when
    running 'make dist'.
  * Adds support for GObject introspection.


gexiv2 0.4.90 - 29 August 2012
-----------------------------

  * Corrected an issue with the makefile that would cause the GIR scanner to generate a
    lot of inconsequential-but-seemingly-ominous warnings.
  * Corrected handling of altitude in gexiv2_metadata_set_gps_info().


gexiv2 0.4.1 - 28 March 2012
----------------------------

  * An issue where the 64-bit version of the library would not be built with
    position-independent code under some circumstances has been corrected.


gexiv2 0.4.0 - 27 March 2012
----------------------------

  * It's now possible (and advisable for multithreaded client applications) to initialize
    the XMP-handling subsystem in a thread-safe manner prior to encoding or decoding.


gexiv2 0.3.1 - 22 March 2011
----------------------------

  * All debug and log messages from Exiv2 are now routed through GLib's logging functions.


gexiv2 0.3.0 - 10 January 2011
------------------------------

  * Updated to work with Exiv2 0.21, which has an ABI change from 0.20.


gexiv2 0.2.2 - 23 December 2010
-------------------------------

  * A more general case fix from 0.2.1, where guards against empty nodes are
    now in place throughout the library.


gexiv2 0.2.1 - 10 September 2010
--------------------------------

  * Fixes a crash when an opened file has more than one Exif.Image.Orientation
    and the first one is empty.  (http://trac.yorba.org/ticket/2514)


gexiv2 0.2.0 - 20 August 2010
-----------------------------

  * Fixed a memory leak plus other general bug fixes; no feature changes.


gexiv2 0.1.0 - 28 June 2010
---------------------------

  * Initial release.

