Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package sane-backends for openSUSE:Factory 
checked in at 2026-10-18 22:54:14
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/sane-backends (Old)
 and      /work/SRC/openSUSE:Factory/.sane-backends.new.3698736 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "sane-backends"

Sun Oct 18 22:54:14 2026 rev:99 rq:1385986 version:1.4.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/sane-backends/sane-backends.changes      
2025-04-25 22:18:27.905407672 +0200
+++ /work/SRC/openSUSE:Factory/.sane-backends.new.3698736/sane-backends.changes 
2026-10-18 22:54:40.172503771 +0200
@@ -1,0 +2,29 @@
+Sun Oct 18 05:57:39 UTC 2026 - Martin Pluskal <[email protected]>
+
+- Update to 1.4.0:
+  * avision: support Xerox Book Scanner 4167 (rebadged FB6080E)
+  * canon_dr: new function-number option for Canon DR-3010
+  * escl: validate Brother MFC-J453DW, Epson XP-4200, Canon PIXMA TS5100;
+    fix Kyocera reset-to-idle, Canon GX6050 SSL/TLS and HTTP2 header
+    case issues; lineart mode for ADF source
+  * hp5590: fix algorithmic error misreported as buffer size issue
+  * magicolor: support Toshiba TEC e-STUDIO2323AM plus ESTUDIO fixes
+  * pixma: support new PIXMA TS/G/E and imageClass MF4500w models;
+    fix buffer overflow for networked scanners
+  * rts8891: support Umax Astra 4400/4450
+  * saned: network scanner relay (-n/--allow-network) and child
+    process lifecycle fixes
+  * Build fixes for MacOS/clang16 and the sm3600 C23 bool typedef;
+    Turkish translations added
+- Drop remove_unnecessary_unicode_character.patch and c23-keywords.patch,
+  both fixed upstream
+- Spec cleanup (spec-cleaner normalization); drop the now-redundant
+  libsane.la removal already covered by the .la cleanup
+
+-------------------------------------------------------------------
+Fri Oct 16 07:42:37 UTC 2026 - Bernhard Wiedemann <[email protected]>
+
+- Add upstream sanei_thread-deferred-cancellation.patch
+  to to avoid stuck tests in perl-Image-Sane in 1-core-VM (boo#1170639)
+
+-------------------------------------------------------------------
@@ -2291 +2319,0 @@
-
@@ -2295 +2322,0 @@
--------------------------------------------

Old:
----
  c23-keywords.patch
  remove_unnecessary_unicode_character.patch
  sane-backends-1.3.1.tar.gz

New:
----
  sane-backends-1.4.0.tar.gz
  sanei_thread-deferred-cancellation.patch

----------(Old B)----------
  Old:    Turkish translations added
- Drop remove_unnecessary_unicode_character.patch and c23-keywords.patch,
  both fixed upstream
  Old:    Turkish translations added
- Drop remove_unnecessary_unicode_character.patch and c23-keywords.patch,
  both fixed upstream
----------(Old E)----------

----------(New B)----------
  New:
- Add upstream sanei_thread-deferred-cancellation.patch
  to to avoid stuck tests in perl-Image-Sane in 1-core-VM (boo#1170639)
----------(New E)----------

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ sane-backends.spec ++++++
--- /var/tmp/diff_new_pack.Y0Zd7A/_old  2026-10-18 22:54:41.207547100 +0200
+++ /var/tmp/diff_new_pack.Y0Zd7A/_new  2026-10-18 22:54:41.208547142 +0200
@@ -1,7 +1,7 @@
 #
 # spec file for package sane-backends
 #
-# 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,45 +16,19 @@
 #
 
 
+%define libname libsane1
+# SANE build systems mangles backend SONAMEs to be libsane.so.x
+%define __provides_exclude_from %{_libdir}/sane
 # Cf. https://rpm.org/user_doc/conditional_builds.html
 # by default enable support for PWG eSCL network backend
 %bcond_without escl
 # by default disable support for PWG eSCL network backend
 #bcond_with escl
-
 Name:           sane-backends
-BuildRequires:  autoconf-archive
-BuildRequires:  automake
-BuildRequires:  gcc-c++
-BuildRequires:  libjpeg-devel
-BuildRequires:  libpng-devel
-BuildRequires:  libtiff-devel
-BuildRequires:  libtool
-BuildRequires:  libv4l-devel
-BuildRequires:  net-snmp-devel
-BuildRequires:  pkgconfig
-%if %{with escl}
-BuildRequires:  pkgconfig(avahi-client) >= 0.6.24
-BuildRequires:  pkgconfig(libcurl)
-# since sane-backends 1.0.31 the escl backend requires libpoppler-glib-devel
-# cf. https://gitlab.com/sane-project/backends/-/blob/master/INSTALL.linux
-BuildRequires:  libpoppler-glib-devel
-%endif
-BuildRequires:  pkgconfig(libusb-1.0)
-# The pixma backend requires libxml2
-BuildRequires:  pkgconfig(libxml-2.0)
-BuildRequires:  pkgconfig(systemd)
-%systemd_requires
-
-%define libname libsane1
-# SANE build systems mangles backend SONAMEs to be libsane.so.x
-%define __provides_exclude_from %{_libdir}/sane
-
-Summary:        SANE (Scanner Access Now Easy) Scanner Drivers
-License:        GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND 
SUSE-Public-Domain
-Group:          Hardware/Scanner
-Version:        1.3.1
+Version:        1.4.0
 Release:        0
+Summary:        SANE (Scanner Access Now Easy) Scanner Drivers
+License:        GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND 
LicenseRef-SUSE-Public-Domain
 URL:            http://www.sane-project.org/
 # On https://gitlab.com/sane-project/backends/-/releases , the "Source code 
(tar.gz)" link
 # is a tarball auto-generated by GitLab and contains a snapshot of the git 
repository.
@@ -85,10 +59,6 @@
 # Sources 202 and 203 are files to enable socket based service activation 
which replaced xinetd
 Source202:      [email protected]
 Source203:      saned.socket
-# PATCH-FIX-UPSTREAM - gl/sane-project/backends#848 - backend/kodakio.c: 
Remove unnecessary Unicode character
-Patch0:         remove_unnecessary_unicode_character.patch
-# PATCH-FIX-UPSTREAM - gl/sane-project/backends#862
-Patch1:         c23-keywords.patch
 # Patch100... is SUSE specific stuff:
 # Patch102 adapt_epkowa.desc_for_yast2-scanner.patch adapts epkowa.desc for 
yast2-scanner
 # (see https://bugzilla.opensuse.org/show_bug.cgi?id=788756#c14).
@@ -101,18 +71,45 @@
 # Furthermore it removes "unsupported" models from epkowa.desc because
 # otherwise there would be confusing model entries shown in yast2-scanner:
 Patch102:       adapt_epkowa.desc_for_yast2-scanner.patch
-# See https://bugzilla.novell.com/show_bug.cgi?id=437293
-%ifarch ppc64
-Obsoletes:      sane-64bit
-%endif
+Patch103:       
https://gitlab.com/sane-project/backends/-/merge_requests/881.patch#/sanei_thread-deferred-cancellation.patch
+BuildRequires:  autoconf-archive
+BuildRequires:  automake
+BuildRequires:  gcc-c++
+BuildRequires:  libjpeg-devel
+BuildRequires:  libpng-devel
+BuildRequires:  libtool
+BuildRequires:  pkgconfig
+BuildRequires:  pkgconfig(libtiff-4)
+BuildRequires:  pkgconfig(libusb-1.0)
+BuildRequires:  pkgconfig(libv4l1)
+BuildRequires:  pkgconfig(libv4l2)
+BuildRequires:  pkgconfig(libv4l2rds)
+BuildRequires:  pkgconfig(libv4lconvert)
+# The pixma backend requires libxml2
+BuildRequires:  pkgconfig(libxml-2.0)
+BuildRequires:  pkgconfig(netsnmp)
+BuildRequires:  pkgconfig(netsnmp-agent)
+BuildRequires:  pkgconfig(systemd)
+# Pull in the same version, not just matching soname
+Requires:       %{libname} = %{version}
 # Up to SLE10 there was the package name 'sane' for 'sane-backends'.
 # Therefore this RPM provides 'sane' and it also obsoletes it.
 # The {version} is needed in both Provides and Obsoletes
 # to avoid a RPMLINT warning that the package obsoletes itself:
 Provides:       sane = %{version}
 Obsoletes:      sane < %{version}
-# Pull in the same version, not just matching soname
-Requires:       %{libname} = %{version}
+%systemd_requires
+%if %{with escl}
+BuildRequires:  pkgconfig(avahi-client) >= 0.6.24
+BuildRequires:  pkgconfig(libcurl)
+# since sane-backends 1.0.31 the escl backend requires libpoppler-glib-devel
+# cf. https://gitlab.com/sane-project/backends/-/blob/master/INSTALL.linux
+BuildRequires:  pkgconfig(poppler-glib)
+%endif
+# See https://bugzilla.novell.com/show_bug.cgi?id=437293
+%ifarch ppc64
+Obsoletes:      sane-64bit
+%endif
 
 %description
 The software consists of SANE scanner drivers,
@@ -130,8 +127,7 @@
 
 %package devel
 Summary:        Development files for sane-backends
-License:        GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND 
SUSE-Public-Domain
-Group:          Development/Libraries/C and C++
+License:        GPL-2.0-or-later AND SUSE-GPL-2.0+-with-sane-exception AND 
LicenseRef-SUSE-Public-Domain
 Requires:       %{libname} = %{version}
 
 %description devel
@@ -139,10 +135,9 @@
 
 %package -n %{libname}
 Summary:        Core SANE library
-License:        GPL-2.0-or-later AND LGPL-2.1-or-later AND SUSE-Public-Domain
-Group:          Hardware/Scanner
-Conflicts:      sane-backends < %{version}
+License:        GPL-2.0-or-later AND LGPL-2.1-or-later AND 
LicenseRef-SUSE-Public-Domain
 Recommends:     sane-backends
+Conflicts:      sane-backends < %{version}
 
 %description -n %{libname}
 This contains the SANE library. Individual scanner backends are provided
@@ -150,8 +145,7 @@
 
 %package autoconfig
 Summary:        USB Scanner Autoconfiguration
-License:        GPL-2.0-or-later AND LGPL-2.1-or-later AND SUSE-Public-Domain
-Group:          Hardware/Scanner
+License:        GPL-2.0-or-later AND LGPL-2.1-or-later AND 
LicenseRef-SUSE-Public-Domain
 Requires:       %{libname} = %{version}
 # When sane-backends is already installed, try to install also 
sane-backends-autoconfig if available:
 Supplements:    sane-backends
@@ -167,7 +161,7 @@
 
 When a USB scanner is connected and its USB IDs match to an entry in
 the 56-sane-backends-autoconfig.rules file, the matching scanner driver
-is activated (i.e. the driver line in /etc/sane.d/dll.conf is
+is activated (i.e. the driver line in %{_sysconfdir}/sane.d/dll.conf is
 activated).
 
 It enables scanner drivers but never disables them. The reason is that
@@ -181,10 +175,9 @@
 
 %package -n sane-saned
 Summary:        Sane network server
-License:        GPL-2.0-or-later AND LGPL-2.1-or-later AND SUSE-Public-Domain
-Group:          Hardware/Scanner
-Provides:       sane-backends:%{_sbindir}/saned
+License:        GPL-2.0-or-later AND LGPL-2.1-or-later AND 
LicenseRef-SUSE-Public-Domain
 Conflicts:      %{name} < %{version}
+Provides:       sane-backends:%{_sbindir}/saned
 
 %description -n sane-saned
 Saned allows access to locally attached scanners over the network.
@@ -193,10 +186,9 @@
 # Patch100... is SUSE specific stuff:
 # Patch102 adapt_epkowa.desc_for_yast2-scanner.patch adapts epkowa.desc for 
yast2-scanner
 # see https://bugzilla.opensuse.org/show_bug.cgi?id=788756#c14
-%setup -n backends-%{version}
-%patch -P0 -p1
-%patch -P1 -p1
-%patch -P102 -p0
+%setup -q -n backends-%{version}
+%patch -P102
+%patch -P103 -p1
 
 # Remove hpoj.desc completely to avoid confusion with its successor hpaio.desc
 # because since openSUSE 10.3 the package hp-officeJet (for hpoj.desc) is 
dropped.
@@ -219,13 +211,13 @@
 
 %build
 export CFLAGS="%{optflags} -D_GNU_SOURCE -DGIMP_ENABLE_COMPAT_CRUFT=1 
-fno-strict-aliasing"
-export LDFLAGS="-L/%_lib $LDFLAGS"
+export LDFLAGS="-L/%{_lib} $LDFLAGS"
 ./autogen.sh
 # Enable pthread instead of fork (used in Debian since Feb 2009 and no issues 
so far),
 # see https://bugzilla.novell.com/show_bug.cgi?id=633780
 # Disable locking because /var/lock/sane/ would be a world-writable directory.
-./configure --prefix=/usr \
-            --exec-prefix=/usr \
+./configure --prefix=%{_prefix} \
+            --exec-prefix=%{_prefix} \
             --sysconfdir=%{_sysconfdir} \
             --libdir=%{_libdir} \
             --sbindir=%{_sbindir} \
@@ -248,7 +240,7 @@
 %make_build
 
 %install
-%makeinstall
+%make_install
 # The actual driver modules are installed as libsane-<driver>.so.{version}
 # and two libsane-<driver>.so.1 and libsane-<driver>.so links point to them.
 # Additionally a libsane-<driver>.la libtool archive file is installed
@@ -259,7 +251,7 @@
 # RPMLINT complains about libsane-<driver>.so with 
"devel-file-in-non-devel-package".
 # Therefore the libsane-<driver>.so and libsane-<driver>.la files are simply 
removed.
 rm %{buildroot}%{_libdir}/sane/libsane-*.so
-rm %{buildroot}%{_libdir}/sane/libsane-*.la
+find %{buildroot} -type f -name "*.la" -delete -print
 # Because of https://bugzilla.novell.com/show_bug.cgi?id=592143 for openSUSE 
11.3
 # even the /usr/lib/libsane.la file for the dll meta-backend is removed
 # regardless that it is unknown how whatever third-party scanning frontend
@@ -268,7 +260,7 @@
 # /usr/bin/xsane, and /usr/bin/skanlite do not need it.
 # The /usr/lib/libsane.so link for the dll meta-backend is kept because it is 
needed
 # during build-time by other packages which need sane-backends to build.
-rm %{buildroot}%{_libdir}/libsane.la
+# (Removed by the *.la cleanup above together with all other libtool archives.)
 # Disable all backends in /etc/sane.d/dll.conf to avoid problems when backends 
are active by default:
 perl -pi -e 's/^([^#].*)$/#$1/' %{buildroot}%{_sysconfdir}/sane.d/dll.conf
 # Allow all users to write into /var/lock/sane/ so that the backends work for 
normal users
@@ -342,7 +334,7 @@
 # and where the support status is "complete" or "good").
 # Modify create_scanner_database to find the description files in the 
BuildRoot directory
 # (the usual delimiter '/' cannot be used because buildroot contains it too):
-sed -i -e 
's|/usr/share/sane/descriptions|%{buildroot}/usr/share/sane/descriptions|' 
create_scanner_database
+sed -i -e 
's|%{_datadir}/sane/descriptions|%{buildroot}%{_datadir}/sane/descriptions|' 
create_scanner_database
 # Create the scanner database and store it because it is also needed later
 # to disable "unsupported" model entries in the udev libsane.rules file.
 # The file name "scanner.database" is used hardcoded in 
create_sane-backends-autoconfig.rules.
@@ -421,11 +413,11 @@
     # must be removed, otherwise the upgrade will fail,
     # see https://bugzilla.opensuse.org/show_bug.cgi?id=1074054#c5
     # and https://bugzilla.opensuse.org/attachment.cgi?id=760460
-    if [ -d /usr/lib/systemd/system/saned.socket ] ; then
-        /usr/bin/rmdir /usr/lib/systemd/system/saned.socket
+    if [ -d %{_unitdir}/saned.socket ] ; then
+        %{_bindir}/rmdir %{_unitdir}/saned.socket
     fi
-    if [ -d /usr/lib/systemd/system/[email protected] ] ; then
-        /usr/bin/rmdir /usr/lib/systemd/system/[email protected]
+    if [ -d %{_unitdir}/[email protected] ] ; then
+        %{_bindir}/rmdir %{_unitdir}/[email protected]
     fi
 fi
 %service_add_pre saned.socket
@@ -448,7 +440,7 @@
 %{_sbindir}/saned
 %{_unitdir}/[email protected]
 %{_unitdir}/saned.socket
-%doc %{_mandir}/man8/saned.8.gz
+%{_mandir}/man8/saned.8%{?ext_man}
 
 %files -f sane-backends.lang
 %dir %{_sysconfdir}/sane.d
@@ -463,11 +455,11 @@
 %exclude %{_libdir}/sane/libsane-dll.so.*
 #dir /var/lock/sane
 %doc %{_defaultdocdir}/sane-backends/
-%doc %{_mandir}/man1/scanimage.1.gz
-%doc %{_mandir}/man1/sane-find-scanner.1.gz
-%doc %{_mandir}/man1/gamma4scanimage.1.gz
-%doc %{_mandir}/man5/sane-*.5.gz
-%doc %{_mandir}/man7/sane.7.gz
+%{_mandir}/man1/scanimage.1%{?ext_man}
+%{_mandir}/man1/sane-find-scanner.1%{?ext_man}
+%{_mandir}/man1/gamma4scanimage.1%{?ext_man}
+%{_mandir}/man5/sane-*.5%{?ext_man}
+%{_mandir}/man7/sane.7%{?ext_man}
 
 %files -n %{libname}
 %dir %{_libdir}/sane/
@@ -481,7 +473,7 @@
 %{_includedir}/sane/
 %{_libdir}/libsane.so
 %{_libdir}/pkgconfig/sane-backends.pc
-%doc %{_mandir}/man1/sane-config.1.gz
+%{_mandir}/man1/sane-config.1%{?ext_man}
 
 %files autoconfig
 %{_udevrulesdir}/56-sane-backends-autoconfig.rules

++++++ sane-backends-1.3.1.tar.gz -> sane-backends-1.4.0.tar.gz ++++++
++++ 23576 lines of diff (skipped)

++++++ sanei_thread-deferred-cancellation.patch ++++++
>From 8acc267d5f4049d8438456821137ae56e91baea9 Mon Sep 17 00:00:00 2001
From: Zdenek Dohnal <[email protected]>
Date: Mon, 14 Jul 2025 10:02:34 +0200
Subject: [PATCH] sanei_thread.c: Use deferred cancellation mode

The change prevents hangs in projects who run scanimage in their unit
tests in rapid speeds, such as perl-Image-Sane.

Without the patch, you can reproduce the issue with this command:

`while true; do scanimage --verbose --device=test --batch-count=2; done`

The command hangs after several iterations.
---
 sanei/sanei_thread.c | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/sanei/sanei_thread.c b/sanei/sanei_thread.c
index a5dcae154..c7f408b67 100644
--- a/sanei/sanei_thread.c
+++ b/sanei/sanei_thread.c
@@ -333,6 +333,10 @@ local_thread( void *arg )
        static int     status;
        pThreadDataDef ltd = (pThreadDataDef)arg;
 
+       /* Set signal handlers for Mac and Mach. On other systems,
+        * thread cancellation is enabled in deferred mode,
+        * which is glibc default.
+        */
 #if defined (__APPLE__) && defined (__MACH__)
        struct sigaction act;
 
@@ -340,11 +344,6 @@ local_thread( void *arg )
        act.sa_flags   = 0;
        act.sa_handler = thread_exit_handler;
        sigaction( SIGUSR2, &act, 0 );
-#else
-       int old;
-
-       pthread_setcancelstate( PTHREAD_CANCEL_ENABLE, &old );
-       pthread_setcanceltype ( PTHREAD_CANCEL_ASYNCHRONOUS, &old );
 #endif
 
        DBG( 2, "thread started, calling func() now...\n" );
-- 
GitLab

Reply via email to