Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package zxing-cpp for openSUSE:Factory checked in at 2026-08-09 21:31:58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/zxing-cpp (Old) and /work/SRC/openSUSE:Factory/.zxing-cpp.new.16738 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "zxing-cpp" Sun Aug 9 21:31:58 2026 rev:19 rq:1370013 version:3.1.1 Changes: -------- --- /work/SRC/openSUSE:Factory/zxing-cpp/zxing-cpp.changes 2025-03-11 20:42:14.174473184 +0100 +++ /work/SRC/openSUSE:Factory/.zxing-cpp.new.16738/zxing-cpp.changes 2026-08-09 21:32:53.225169524 +0200 @@ -1,0 +2,185 @@ +Wed Jul 29 08:30:44 UTC 2026 - [email protected] + +- Update to 3.1.1 + * QRCode: improve Version 1 detection rate + * QRCode: fix detection regression in 3.1.0 + * python: fix use of 'None' keyword usage and wrong '**kwargs' tag + * MicroPDF417: fix out of bounds access + * MultiFormatWriter: fix BarcodeFormat::Aztec and QRCodeModel2 support + * Android: make binary a little smaller (hidden symbols) + * PDF417: match codewords using integer arithmetic by @nyluke in #1138 + * ReedSolomon: add missing header for GCC-16 by @parona-source in #1137 + +------------------------------------------------------------------- +Fri Jul 10 11:46:06 UTC 2026 - [email protected] + +- Update to 3.1.0 + * New/Improved Symbologies + - Added decoder support for Telepen symbology + - Added decoder support for MicroPDF417 (sponsored by Allied + Vision Konstanz GmbH) + - Greatly improved Aztec detector for large, non-flat symbols + by evaluating internal timing patterns + - Greatly improved DataMatrix detector for large, non-flat + symbols by evaluating internal alignment patterns + - Major improvement in QRCode detection of many small symbols + in a single image + * New/Improved wrappers + - Added a Go wrapper + - Switched from pybind11 to nanobind in Python wrapper code + (enhanced IDE support, faster build times, smaller binaries, + free-threaded Python support) + * General + - Improved API documentation, now published under + https://zxing-cpp.github.io/zxing-cpp/docs/latest + - Considerable performance improvements, especially on ARM + chips (10%-40% in specific scenarios) + - ReedSolomon: generic implementation for prime and extended + Galois Fields with improved performance + - Added support for "Unused Error Correction" meta data + (Barcode::extra("UEC")) + - Optional support for WebP in ZXingReader + - Sifted and partly recoded set of sample images into WebP + with 95% size reduction of the sample_images.zip + * Minor Improvements and Bug Fixes + - AZHighLevelEncoder: fix mixed table '}' (0x7d) -> '~' (0x7e) + by @gitlost in #1065 + - Silence deprecated-declarations warnings on Windows too by + @x1sc0 in #1066 + - fix test/fuzz build by @kcwu in #1071 + - oned: DataBar: catch std::out_of_range in DecodeExpandedBits + by @kcwu in #1080 + - [ODCode39Reader] Fix crash in DecodeCode32 due to unhandled + exception by @kcwu in #1083 + - DMDetector: guard empty DataMatrix gap list by @markusfisch + in #1100 + - Fix constructor parameter names in PointT by + @MonkeybreadSoftware in #1097 + - iOS: add formats getter/setter to ZXIReaderOptions by + @hrasnam in #1094 + - Add Windows resource file for version information by + @davidhsing in #1101 + - Fix #include bug by @KangLin in #1103 + - ODCode128Reader: only process 1st/2nd position FNC1 once by + @gitlost in #1113 + - AZDecoder: allow lowercase AIM id (2nd position FNC1) per + spec by @gitlost in #1114 + - DMDecoder: restrict AIM id (2nd position FNC1) to alpha/2 + digits by @gitlost in #1117 + - Rust: add define in build.rs to set CMAKE_INSTALL_LIBDIR to + lib by @demondave in #1119 + - Fix missing iterator header on Android by @umerov1999 in #1121 + - iOS Wrapper: Add stacked DataBar format support and fix + format enum mismatches by @brian-telintelo-kr in #1125 + - Fix (at least substantially reduce) false positive + DataBarStacked detections + - Fix out-of-bounds access bugs in PDF417 decoder + - Fixed an endless loop in the QRDetector + - Fixed regression in BarcodeFormat based filtering during + ReadBarcodes operation + - "Save frame" feature + cosmetic improvements to + ZXingQtCamReader demo app + - modernized Android Demo App code + +------------------------------------------------------------------- +Fri Jun 5 06:20:13 UTC 2026 - [email protected] + +- Update to 3.0.2 + * Workaround for missing <format> C++20 header in GCC 11 and GCC 12 + * Zint Header Detection Fix + * Typo Fix in ReaderOptions API + +- Update to 3.0.1 + * This is a patch release, fixing a critical error (compile + regression, see #1051) for people relying on the "old" + (MultiFormatWriter) API. All wrapper code is unaffected and + will not be released as 3.0.1. + * The old writer API is disabled by default, to enable it, you + need to configure zxing-cpp with -DZXING_WRITERS=BOTH (or OLD). + It is generally advised for package maintainers to use the BOTH + config option during the 3.0 release cycle to allow client + applications (like e.g. LibreOffice) to work until they switch + to the new API. + * The new API is backed by libzint. The default config will + statically link a bundled 2.16 version of libzint. If your + distribution has a libzint v2.16 available, you might want to + configure zxing-cpp to link against that: + -DZXING_USE_BUNDLED_ZINT=OFF + +- Update to 3.0.0 + Major changes: + * New creator/writer API (moved out of experimental state) with + lots of improvements and fine-tuning + * New BarcodeFormat and BarcodeFormats implementation, with minor + changes in API + - New meta barcode formats like All, AllReadable, AllRetail, + etc. + - New human readable names from ToString(format), e.g. EAN-13 + instead of EAN13 + - Added concept of Symbology to Barcode, e.g. QRCode == + QRCodeModel2, MicroQRCode, RMQRCode + - The C-API suffered a hard break to accommodate the bit-field + to array switch of the BarcodeFormats + * CreatorOptions now has a JSON (key-value pair) pair based + options parameter + * C++20 is now a build requirement for the library, the client + side API is still c++17 compatible + * Cleaned up number of included headers, new single source + ZXingCpp.h header + * MultiFormatWriter: deprecate use of old writer API + * New Barcode::extra() API that returns symbology specific extra + information as JSON string, e.g. "EcLevel" + * Add cmake flags to remove individual barcode formats from the + build (smaller lib for wasm or embedded applications) + * publish native ARM python wrapper binaries + * New header only Qt6 API (ZXingQt.h) with support for multiple + barcodes and new writer API + * New ZXingQtCamReader demo based on QWidgets with proper macOS + support + + Minor improvements and bug fixes + * QRCode: improve detection rate for circular finder patterns + * DataBar: fix inconsistency / plain spec violation (missing + "(01)" prefix) + * EAN/UPC: return 13-digit numbers for UPC-A/E as required by + standard + * Improved quiet zone handling for ITF + * QRCode: fix decoding of Model 1 symbols with more than 1 data + block + * Content: modify bytesECI() to behave like a standard reader + w.r.t. ECIs + * WriteBarcode: automatic GS1PARENS_MODE + * python: add ImageView class and ImageFormat enum as custom + memoryview + * python: add experimental support to read_barcodes from + QtGui.QImage + * ZXingReader: add experimental -denoise command line option + * Code39: improve detection for 4x difference between wide and + narrow and lower quiet-zone requirements + * python: remove 3.9 and add 3.14 packages + * Content: improve auto-detection of charaset/eci info + * make installed binaries relocatable on macOS and Linux + * dotnet: implement IDisposable for the Barcode and Options + classes and add XML documentation + * ReaderOptions: new validateOptionalCheckSum property + replacing the Code39 and ITF specific ones + * ReaderOptions: deprecated the tryCode39ExtendedMode property + (use new BarcodeFormat::Code39Ext) + * Expose structure append metadata via C API by @magethle in #950 + * Add experimental tryDenoise to C API by @magethle in #952 + * AZDecoder: minor fixes by @gitlost in #917 + * Use 16 KB page size alignment on 64-bit Androids by + @markusfisch in #1001 + * Remove ZXing path from include path by @fnadeau in #924 + * try denoise for android wrapper by @toktarov84 in #1035 + * Improvements to Qt/QML interface by @m7913d in #945 + +- Add fix-install-examples.patch to install ZXingOpenCV +- Add test_samples.tar.gz to run all the tests +- Add examples subpackage with ZXingOpenCV, ZXingReader and ZXingWriter +- Add examples-qt6 subpackage with ZXingQtCamReader (optional) +- Add %check/tests section +- Use system zint library for Factory/TW +- Clean up spec file + +------------------------------------------------------------------- Old: ---- zxing-cpp-2.3.0.tar.gz New: ---- fix-install-examples.patch test_samples.tar.gz zxing-cpp-3.1.1.tar.gz ----------(New B)---------- New: - Add fix-install-examples.patch to install ZXingOpenCV - Add test_samples.tar.gz to run all the tests ----------(New E)---------- ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ zxing-cpp.spec ++++++ --- /var/tmp/diff_new_pack.y7WNED/_old 2026-08-09 21:32:53.981195384 +0200 +++ /var/tmp/diff_new_pack.y7WNED/_new 2026-08-09 21:32:53.981195384 +0200 @@ -1,7 +1,7 @@ # # spec file for package zxing-cpp # -# Copyright (c) 2024 SUSE LLC +# Copyright (c) 2026 SUSE LLC and contributors # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,28 +16,43 @@ # -%define sover 3 +%define sover 4 + +# for now, use the bundled zint for Factory/TW as well, +# to avoid unnecessary dependencies (qt, etc.) +%bcond_without bundled_zint +# avoid unnecessary dependencies with 32-bit components +%ifarch %{arm} %{ix86} +%bcond_with examples +%else +%bcond_without examples +%endif +# examples-qt could cause circular dependencies +%bcond_with examples_qt + Name: zxing-cpp -Version: 2.3.0 +Version: 3.1.1 Release: 0 Summary: Library for processing 1D and 2D barcodes License: Apache-2.0 AND Zlib AND LGPL-2.1-with-Qt-Company-Qt-exception-1.1 -Group: Development/Languages/C and C++ -URL: https://github.com/nu-book/zxing-cpp/ -Source0: %{url}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz +URL: https://github.com/zxing-cpp/zxing-cpp +Source0: %{url}/releases/download/v%{version}/%{name}-%{version}.tar.gz +Source1: %{url}/releases/download/v%{version}/test_samples.tar.gz Source99: baselibs.conf -BuildRequires: cmake >= 3.5 +# PATCH-FEATURE-OPENSUSE fix-install-examples.patch [email protected] -- install ZXingOpenCV +Patch0: fix-install-examples.patch +BuildRequires: cmake >= 3.16 +BuildRequires: ninja BuildRequires: pkgconfig -%if 0%{?suse_version} > 1500 -# build the C wrapper only in TW. This package is too old on Leap <= 15.5 -BuildRequires: stb-devel -%endif -BuildRequires: gcc +BuildRequires: pkgconfig(gmock) +BuildRequires: pkgconfig(gtest) +BuildRequires: pkgconfig(libwebp) +BuildRequires: pkgconfig(stb) +%if 0%{?suse_version} < 1600 +BuildRequires: gcc13-PIE +BuildRequires: gcc13-c++ +%else BuildRequires: gcc-c++ -# only TW has fmt -%if 0%{?suse_version} > 1500 -# For blackbox tests -BuildRequires: cmake(fmt) >= 7.1.2 %endif %description @@ -46,10 +61,11 @@ %package -n libZXing%{sover} Summary: Library for processing 1D and 2D barcodes -# called libZXing in the 1.1.0 update -Group: System/Libraries -Provides: libZXingCore%{sover} = %{version} -Obsoletes: libZXingCore%{sover} < %{version} +%if %{with bundled_zint} +Provides: bundled(zint) = 2.16.0 +%else +BuildRequires: cmake(zint) >= 2.16.0 +%endif %description -n libZXing%{sover} ZXing ("zebra crossing") is an multi-format 1D/2D barcode image @@ -57,7 +73,6 @@ %package devel Summary: Header files for zxing, a library for processing 1D and 2D barcodes -Group: Development/Languages/C and C++ Requires: libZXing%{sover} = %{version} %description devel @@ -65,24 +80,64 @@ processing library. This package provides header files to use ZXing in other applications. +%if %{with examples} +%package examples +Summary: Commandline examples for %{name} +BuildRequires: cmake(OpenCV) + +%description examples +This package holds the commandline examples for %{name}. +%endif + +%if %{with examples_qt} +%package examples-qt +Summary: Qt examples for %{name} +BuildRequires: cmake(Qt6Gui) +BuildRequires: cmake(Qt6Multimedia) +BuildRequires: cmake(Qt6Quick) +BuildRequires: cmake(Qt6Widgets) + +%description examples-qt +This package holds the Qt examples for %{name}. +%endif + %prep -%autosetup -p1 +%autosetup -a1 -p1 +# remove hidden/backup files +find test/samples -type f -name ".*" -delete -print %build -export CXXFLAGS="%{optflags} -std=c++17" -# Examples require QT5-base/multimedia, but doing so creates a cycle -# Blackbox tests require fmt +%define __builder ninja %cmake \ - -DCMAKE_CXX_EXTENSIONS=ON \ -%if 0%{?suse_version} > 1500 - -DBUILD_C_API=ON \ +%if 0%{?suse_version} < 1600 + -DCMAKE_C_COMPILER=gcc-13 \ + -DCMAKE_CXX_COMPILER=g++-13 \ +%endif + -DZXING_BLACKBOX_TESTS=ON \ + -DZXING_UNIT_TESTS=ON \ + -DZXING_C_API=ON \ + -DZXING_DEPENDENCIES=LOCAL \ +%if %{with examples} + -DZXING_EXAMPLES=ON \ + -DZXING_EXAMPLES_USE_WEBP=ON \ +%else + -DZXING_EXAMPLES=OFF \ +%endif +%if %{with examples_qt} + -DZXING_EXAMPLES_QT=ON \ %endif - -DBUILD_EXAMPLES=OFF +%if %{without bundled_zint} + -DZXING_USE_BUNDLED_ZINT=OFF \ +%endif + -DZXING_WRITERS=BOTH %cmake_build %install %cmake_install +%check +%ctest --parallel 1 --timeout 120 --verbose + %ldconfig_scriptlets -n libZXing%{sover} %files -n libZXing%{sover} @@ -92,8 +147,20 @@ %files devel %license LICENSE -%{_includedir}/ZXing/ -%{_libdir}/cmake/ZXing/ +%{_includedir}/ZXing +%{_libdir}/cmake/ZXing %{_libdir}/libZXing.so %{_libdir}/pkgconfig/zxing.pc +%if %{with examples} +%files examples +%{_bindir}/ZXingOpenCV +%{_bindir}/ZXingReader +%{_bindir}/ZXingWriter +%endif + +%if %{with examples_qt} +%files examples-qt +%{_bindir}/ZXingQtCamReader +%endif + ++++++ baselibs.conf ++++++ --- /var/tmp/diff_new_pack.y7WNED/_old 2026-08-09 21:32:54.013196479 +0200 +++ /var/tmp/diff_new_pack.y7WNED/_new 2026-08-09 21:32:54.017196616 +0200 @@ -1,2 +1,2 @@ -libZXing3 +libZXing4 ++++++ fix-install-examples.patch ++++++ --- a/example/CMakeLists.txt +++ b/example/CMakeLists.txt @@ -29,6 +29,7 @@ if (ZXING_READERS) add_executable (ZXingOpenCV ZXingOpenCV.cpp) target_include_directories (ZXingOpenCV PRIVATE ${OpenCV_INCLUDE_DIRS}) target_link_libraries (ZXingOpenCV ZXing::ZXing ${OpenCV_LIBS}) + install(TARGETS ZXingOpenCV DESTINATION ${CMAKE_INSTALL_BINDIR}) else () message("INFO: OpenCV not found, skipping ZXingOpenCV example") endif() ++++++ zxing-cpp-2.3.0.tar.gz -> zxing-cpp-3.1.1.tar.gz ++++++ ++++ 81968 lines of diff (skipped)
