Changes in v0.16.3:
1/ Binary wheels incorporate libexiv2 v0.28.2.
Changes in v0.16.2:
1/ Removed AnyError alias of Exiv2Error exception.
2/ Metadatum.print() method is no longer renamed to _print.
3/ Improved handling of enums:
1/ Enum results are returned as Python enum instead of int.
2/ Passing ints as enum parameters is deprecated.
4/ Added dict-like behaviour to "data" structs.
5/ Log handlers can be set/cleared from Python.
6/ Made docs available on readthedocs.org
7/ SWIG v4.1.0 or later required to run SWIG.
8/ Binary wheels incorporate libexiv2 v0.27.7.
Changes in v0.16.1:
1/ Binary wheels incorporate libexiv2 v0.27.7.
Changes in v0.16.0:
1/ Binary wheels incorporate libexiv2 v0.28.1.
2/ Include native language support in Windows binary wheel builds.
3/ API change: DateValue.getDate() returns Python dict.
4/ API change: TimeValue.getTime() returns Python dict.
5/ Deprecated: exiv2.Date and exiv2.Time objects.
6/ Added buffer interface to PreviewImage
7/ Set datum value from Python object directly instead of via string.
8/ Moved Position enum to BasicIo class.
9/ Moved CharsetId enum to CommentValue class.
10/ Moved XmpArrayType and XmpStruct enums to XmpValue class.
11/ Added enums for LogMsg.Level
12/ More exiv2 structs are iterable for easy conversion to Python dict.
Changes in v0.15.0:
1/ Added __version_tuple__ for easy runtime version testing.
2/ exiv2.testVersion() can be called from Python.
3/ exiv2.DataBuf can be created from Python data.
4/ Most data() methods return a Python memoryview.
5/ exiv2.DataBuf and exiv2.BasicIo have writeable Python buffer interface.
Changes in v0.14.1:
1/ Update libexiv2 to 0.27.7 in binary wheels.
Changes in v0.14.0:
1/ Added enums for XmpStruct and XmpArrayType
2/ Added method for copy-free access to XmpTextValue raw data.
Changes in v0.13.2:
1/ Fix occasional segfault with Image.io() of in-memory image data.
Changes in v0.13.1:
1/ Add data() method to access Exiv2::StringValueBase raw bytes.
2/ Update libexiv2 to 0.27.6 in binary wheels.
3/ Enable video support in binary wheels.
Changes in v0.13.0:
1/ Automatically cast Exiv2::Value return values to correct type.
2/ Exiv2::byte* return values are converted to a simple buffer object.
3/ Deprecated some superseded features. Use 'python -Wd' when testing.
4/ Exiv2's Date & Time structs can be used from Python.
5/ Removed Value.downCast methods deprecated in v0.7.0.
6/ Reduced probability of segfaults by keeping references to other objects.
Changes in v0.12.1:
1/ Fix iterator bug introduced in v0.10.0. (Issue #7.)
Changes in v0.12.0:
1/ Enable passing Python buffer to Exiv2::DataValue constructor.
2/ Enable passing Python buffer to Exiv2::Value copy() methods.
Changes in v0.11.3:
1/ Fix localisation initialisation problem on MacOS.
Changes in v0.11.2:
1/ Prevent PY_SSIZE_T_CLEAN warning / error in Python 3.8 and above.
Changes in v0.11.1:
1/ Improved initialisation of localisation.
Changes in v0.11.0:
1/ Changed PyPI package name from python-exiv2 to exiv2.
2/ Simplified some data iterators and function return values.
Changes in v0.10.0:
1/ API change: replaced Value += operator with append method.
2/ Improved conversion of LangAltValue to/from Python dict.
3/ Can construct some other values from a Python list.
4/ AnyError exception renamed to Exiv2Error (with AnyError wrapper for
compatibility).
5/ Enabled localisation of error messages etc.
6/ Python enum class is used for Exiv2 enums.
Changes in v0.9.0:
1/ Add Exiv2::BasicIo and its subclasses to Python interface.
Changes in v0.8.3:
1/ Xmp LangAlt values can be accessed like a Python dict.
2/ Binary wheels are built with BMFF file support enabled.
Changes in v0.8.2:
1/ No longer detect possible iterator invalidation (unreliable).
2/ Restructured macros to give slightly less bloated code.
Changes in v0.8.1:
1/ Fix some causes of segfaults.
2/ Slightly change output of Metadatum.__str__().
Changes in v0.8.0:
1/ Data iterators include checks for end of data and changed data so are less
likely to segfault.
2/ Added indexing to data values to access fundamental types such as int.
3/ API change: removed access to value_ container in data values.
Changes in v0.7.0:
1/ Add a constructor to Value subclasses that downcasts a Value.
2/ Deprecated the Value subclass downCast() static method.
3/ Include enableBMFF function when libexiv2 version >= 0.27.4.
Changes in v0.6.0:
1/ Add Exiv2::PreviewManager to Python interface.
Changes in v0.5.3:
1/ Binary wheels use libexiv2 version 0.27.5.
Changes in v0.5.2:
1/ Fix several memory leaks.
2/ Create binary wheels for MacOS (as well as Linux and Windows).
3/ Fix problems installing on MSYS2 / MinGW.
Changes in v0.5.1:
1/ Fix undefined symbol problem with Linux binary wheels.
2/ XmpProperties.registeredNamespaces() returns a Python dict.
Changes in v0.5.0:
1/ API change: data iterators no longer have a "curr" method, as all the
methods of the datum it returned are directly accessible.
2/ The BasicIo class and its subclasses are no longer available from Python.