Skip to content

v2.0.0

Compare
Choose a tag to compare
@axxel axxel released this 05 Jan 22:33
· 645 commits to master since this release
bdb857e

The most visible change from the client perspective is the removal of all formerly deprecated API, (almost) completing the 'cleanup'. Since I was way too slow with this release to implement a 'cleanish' SemVer release as discussed in #333, I decided to release this 2.0 with SONAME 3. A 3.0 release might bring the major version number back in sync with the SONAME.

Major Changes

  • switch to UTF8 based API and remove deprecated UTF16 one (Result::text())
  • remove all API deprecated in 1.4
  • Adding a wrapper for iOS by @parallaxe in #337
  • new Aztec detector implementation to support arbitrary rotation and position of the symbol
  • support multi-symbol detection in Aztec detector
  • replace all Qt originated ECI/CharacterSet conversion code with a new implementation provided by @gitlost (libzueci)
  • require c++17 to build library and client code
  • new DecodeHints::textMode() and Result::text(TextMode) API to specify how bytes are rendered into text.
  • HRI (human readable interpretation) is the new default for the TextMode (has been for most cases before, but not all)
  • new DecodeHits::tryInvert() feature to test for inverted symbols (white on black background)

Minor Changes

  • deprecate TextUtfEncoding helpers, not required anymore with UTF8 APIs for both reader and writer
  • support for multi-symbol and arbitrary position detection of DataMatrix symbols when library is built with c++20
  • Include version number of QR Code and DataMatrix in Result by @markusfisch in #396
  • reduce size of Result struct by about a third
  • cleanup all license related files (see removal of the Qt code above)
  • update links and comments to refer to new github.com/zxing-cpp/zxing-cpp home
  • improved Code128 decoder for over/underexposed images
  • support python 3.11
  • a whole bunch of fixes and minor improvements all over the place

New Contributors

Thanks also to all the 'old' ones! :)

Full Changelog: v1.4.0...v2.0.0