Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package rpmlint for openSUSE:Factory checked 
in at 2026-08-24 12:01:59
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/rpmlint (Old)
 and      /work/SRC/openSUSE:Factory/.rpmlint.new.1258 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "rpmlint"

Mon Aug 24 12:01:59 2026 rev:547 rq:1372854 version:2.10.0+git20260819.485e0ded

Changes:
--------
--- /work/SRC/openSUSE:Factory/rpmlint/rpmlint.changes  2026-08-09 
21:33:35.090591547 +0200
+++ /work/SRC/openSUSE:Factory/.rpmlint.new.1258/rpmlint.changes        
2026-08-24 12:02:57.294475861 +0200
@@ -1,0 +2,37 @@
+Fri Aug 21 12:55:58 UTC 2026 - Matthias Gerstner <[email protected]>
+
+- Update to version 2.10.0+git20260819.485e0ded:
+  * FileDigestCheck: detect more varlink socket units
+  * test_whitelist_syntax: include new varlink-whitelist
+  * varlink-whitelist: add systemd-experimental sockets (bsc#1261919)
+  * varlink-whitelist: add systemd-userdbd (bsc#1261919)
+  * varlink-whitelist: add systemd-sysext (bsc#1261919)
+  * varlink-whitelist: add systemd-logind (bsc#1261919)
+  * varlink-whitelist: add systemd-hostnamed.socket (bsc#1261919)
+  * varlink-whitelist: add systemd-creds.socket (bsc#1261919)
+  * varlink-whitelist: add systemd-ask-password (bsc#1261919)
+  * varlink-whitelist: add systemd-resolved socket (bsc#1261919)
+  * varlink-whitelist: add networkd service (bsc#1261919)
+  * varlink-whitelist: add systemd-container services (bsc#1261919)
+  * pam-modules: whitelist pam_ssh_agent (bsc#1274633)
+  * varlink-whitelist: add udev core services (bsc#1261919)
+
+-------------------------------------------------------------------
+Tue Aug 11 09:41:39 UTC 2026 - Daniel Garcia <[email protected]>
+
+- Update to version 2.10.0+git20260811.5bace490:
+  * Bump github/codeql-action/autobuild from 4.37.4 to 4.37.6
+  * Bump github/codeql-action/init from 4.37.4 to 4.37.6
+  * Bump github/codeql-action/analyze from 4.37.4 to 4.37.6
+  * FileDigestCheck: varlink: don't process files in sub-directories
+  * Release 2.10.0
+  * CI: Remove ruff
+  * Bump github/codeql-action/autobuild from 4.36.2 to 4.37.4
+  * Bump github/codeql-action/init from 4.36.2 to 4.37.4
+  * Bump github/codeql-action/analyze from 4.36.2 to 4.37.4
+  * ErlangCheck: Handle beams compiled with the deterministic option
+  * Bump actions/checkout from 6.0.3 to 7.0.1
+  * Bump github/codeql-action from 4.36.0 to 4.36.2
+  * Bump actions/checkout from 6.0.2 to 6.0.3
+
+-------------------------------------------------------------------

Old:
----
  rpmlint-2.9.0+git20260806.9feb8bb9.tar.xz

New:
----
  rpmlint-2.10.0+git20260819.485e0ded.tar.xz

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

Other differences:
------------------
++++++ rpmlint.spec ++++++
--- /var/tmp/diff_new_pack.LNKNm0/_old  2026-08-24 12:02:58.735526700 +0200
+++ /var/tmp/diff_new_pack.LNKNm0/_new  2026-08-24 12:02:58.737526771 +0200
@@ -23,7 +23,7 @@
 %define name_suffix -%{flavor}
 %endif
 Name:           rpmlint%{name_suffix}
-Version:        2.9.0+git20260806.9feb8bb9
+Version:        2.10.0+git20260819.485e0ded
 Release:        0
 Summary:        RPM file correctness checker
 License:        GPL-2.0-or-later

++++++ _service ++++++
--- /var/tmp/diff_new_pack.LNKNm0/_old  2026-08-24 12:02:58.826529911 +0200
+++ /var/tmp/diff_new_pack.LNKNm0/_new  2026-08-24 12:02:58.833530158 +0200
@@ -1,6 +1,6 @@
 <services>
   <service name="tar_scm" mode="manual">
-    <param name="versionformat">2.9.0+git%cd.%h</param>
+    <param name="versionformat">2.10.0+git%cd.%h</param>
     <param 
name="url">https://github.com/rpm-software-management/rpmlint.git</param>
     <param name="scm">git</param>
     <param name="revision">opensuse</param>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.LNKNm0/_old  2026-08-24 12:02:58.875531640 +0200
+++ /var/tmp/diff_new_pack.LNKNm0/_new  2026-08-24 12:02:58.883531922 +0200
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param 
name="url">https://github.com/rpm-software-management/rpmlint.git</param>
-              <param 
name="changesrevision">9feb8bb93d0e7ca38cb72fedd9a7f17953a83a71</param></service></servicedata>
+              <param 
name="changesrevision">485e0ded8655bab26b68e828117361081be181c5</param></service></servicedata>
 (No newline at EOF)
 

++++++ rpmlint-2.9.0+git20260806.9feb8bb9.tar.xz -> 
rpmlint-2.10.0+git20260819.485e0ded.tar.xz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/rpmlint-2.9.0+git20260806.9feb8bb9/.github/workflows/codeql.yml 
new/rpmlint-2.10.0+git20260819.485e0ded/.github/workflows/codeql.yml
--- old/rpmlint-2.9.0+git20260806.9feb8bb9/.github/workflows/codeql.yml 
2026-08-06 15:41:54.000000000 +0200
+++ new/rpmlint-2.10.0+git20260819.485e0ded/.github/workflows/codeql.yml        
2026-08-19 12:01:21.000000000 +0200
@@ -22,18 +22,18 @@
 
     steps:
       - name: Checkout
-        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # 
v6.0.2
+        uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # 
v7.0.1
 
       - name: Initialize CodeQL
-        uses: 
github/codeql-action/init@7211b7c8077ea37d8641b6271f6a365a22a5fbfa # v4.36.0
+        uses: 
github/codeql-action/init@5595ccaf912efad79be6eef63a5619ff05969be3 # v4.37.6
         with:
           languages: ${{ matrix.language }}
           queries: +security-and-quality
 
       - name: Autobuild
-        uses: 
github/codeql-action/autobuild@7211b7c8077ea37d8641b6271f6a365a22a5fbfa # 
v4.36.0
+        uses: 
github/codeql-action/autobuild@5595ccaf912efad79be6eef63a5619ff05969be3 # 
v4.37.6
 
       - name: Perform CodeQL Analysis
-        uses: 
github/codeql-action/analyze@7211b7c8077ea37d8641b6271f6a365a22a5fbfa # v4.36.0
+        uses: 
github/codeql-action/analyze@5595ccaf912efad79be6eef63a5619ff05969be3 # v4.37.6
         with:
           category: "/language:${{ matrix.language }}"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/rpmlint-2.9.0+git20260806.9feb8bb9/.github/workflows/main.yml 
new/rpmlint-2.10.0+git20260819.485e0ded/.github/workflows/main.yml
--- old/rpmlint-2.9.0+git20260806.9feb8bb9/.github/workflows/main.yml   
2026-08-06 15:41:54.000000000 +0200
+++ new/rpmlint-2.10.0+git20260819.485e0ded/.github/workflows/main.yml  
2026-08-19 12:01:21.000000000 +0200
@@ -112,11 +112,9 @@
         if: matrix.build-type == 'no-optional-deps'
       - run: pipx install coveralls
       - run: pipx install pyupgrade
-      - run: pipx install ruff
-      - uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # 
v6.0.2
+      - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # 
v7.0.1
       - run: pytest
       - run: flake8
-      - run: /github/home/.local/bin/ruff check .
       - run: find . -not -path "./test/files/*" -name '*.py' | xargs 
/github/home/.local/bin/pyupgrade --py38-plus
       - run: python3 -m cProfile -o profile.stats lint.py -V test/source/* 
test/binary/* > /dev/null
       - run: python3 test/dump_stats.py profile.stats
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/rpmlint-2.9.0+git20260806.9feb8bb9/.packit/rpmlint.spec 
new/rpmlint-2.10.0+git20260819.485e0ded/.packit/rpmlint.spec
--- old/rpmlint-2.9.0+git20260806.9feb8bb9/.packit/rpmlint.spec 2026-08-06 
15:41:54.000000000 +0200
+++ new/rpmlint-2.10.0+git20260819.485e0ded/.packit/rpmlint.spec        
2026-08-19 12:01:21.000000000 +0200
@@ -1,7 +1,7 @@
 %{!?python3: %global python3 %{__python3}}
 
 Name:           rpmlint
-Version:        2.9.0
+Version:        2.10.0
 Release:        0%{?dist}
 Summary:        Tool for checking common errors in RPM packages
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/rpmlint-2.9.0+git20260806.9feb8bb9/configs/openSUSE/pam-modules.toml 
new/rpmlint-2.10.0+git20260819.485e0ded/configs/openSUSE/pam-modules.toml
--- old/rpmlint-2.9.0+git20260806.9feb8bb9/configs/openSUSE/pam-modules.toml    
2026-08-06 15:41:54.000000000 +0200
+++ new/rpmlint-2.10.0+git20260819.485e0ded/configs/openSUSE/pam-modules.toml   
2026-08-19 12:01:21.000000000 +0200
@@ -577,3 +577,12 @@
     "glob:*/security/pam_debuginfo.so",
     "glob:*/security/pam_unix_ng.so"
 ]
+
+[[FileDigestGroup]]
+package  = "pam-ssh-agent"
+note     = "authentication via SSH public keys"
+bug      = "bsc#1274633"
+type     = "pam"
+nodigests = [
+    "glob:*/security/pam_ssh_agent.so"
+]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/rpmlint-2.9.0+git20260806.9feb8bb9/configs/openSUSE/security.toml 
new/rpmlint-2.10.0+git20260819.485e0ded/configs/openSUSE/security.toml
--- old/rpmlint-2.9.0+git20260806.9feb8bb9/configs/openSUSE/security.toml       
2026-08-06 15:41:54.000000000 +0200
+++ new/rpmlint-2.10.0+git20260819.485e0ded/configs/openSUSE/security.toml      
2026-08-19 12:01:21.000000000 +0200
@@ -35,6 +35,8 @@
     "*.socket",
 ]
 ContentCheck = "VarlinkServiceCheck"
+# don't deal with sub-directories like "socket.target.wants"
+Recursive = false
 
 [FileDigestLocation.polkit]
 FollowSymlinks = false
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/rpmlint-2.9.0+git20260806.9feb8bb9/configs/openSUSE/varlink-whitelist.toml 
new/rpmlint-2.10.0+git20260819.485e0ded/configs/openSUSE/varlink-whitelist.toml
--- 
old/rpmlint-2.9.0+git20260806.9feb8bb9/configs/openSUSE/varlink-whitelist.toml  
    2026-08-06 15:41:54.000000000 +0200
+++ 
new/rpmlint-2.10.0+git20260819.485e0ded/configs/openSUSE/varlink-whitelist.toml 
    2026-08-19 12:01:21.000000000 +0200
@@ -45,3 +45,235 @@
 path     = "/usr/lib/systemd/system/sysextmgr.socket"
 digester = "systemd-socket"
 hash     = "22ad4eb46a0ddcd461ce0136548de13b207592fa464521f55948581606b53856"
+
+[[FileDigestGroup]]
+package  = "udev"
+note     = "udev core varlink services, all accessible to root only"
+bug      = "bsc#1261919"
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-bootctl.socket"
+digester = "systemd-socket"
+hash     = "8224c1d90efca44b975a83bc8989eb5438f43a1d02248f9fb28bfd67c012b650"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-pcrlock.socket"
+digester = "systemd-socket"
+hash     = "245abdf23ead7e1fd5eb8b54502c7a0d0536b2f8417cecd960450d827cc147a1"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-repart.socket"
+digester = "systemd-socket"
+hash     = "ce39189699d18c5e11406980d09e046a8a4b20bc9da2506fe7f447ae8dbf8b98"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-udevd-varlink.socket"
+digester = "systemd-socket"
+hash     = "9ca1632e762e1e3215c51b08b39b7660b5461072d82013ea3dca9193b0beada9"
+
+[[FileDigestGroup]]
+package  = "systemd-container"
+note     = "container image import API, analogous to its D-Bus twin"
+bugs     = ["bsc#964935", "bsc#1259318", "bsc#1261919"]
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-importd.socket"
+digester = "systemd-socket"
+hash     = "fa1c9b80e6ba5b08f09abebcc7eabb00f93ef5c86767e2989785f7c6264e24b5"
+
+[[FileDigestGroup]]
+package  = "systemd-container"
+note     = "main daemon for controlling VMs/containers, analogous to its D-Bus 
twin"
+bugs     = ["bsc#828207", "bsc#1192033", "bsc#1257388", "bsc#1255368", 
"bsc#1259318", "bsc#1261919"]
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-machined.socket"
+digester = "systemd-socket"
+hash     = "9ac503dec78b8d8181e5a57752365f07cab7e9cfeae362695a0720000075691c"
+
+[[FileDigestGroup]]
+package  = "systemd-container"
+note     = "mount file-systems into user-controlled namespaces"
+bugs     = ["bsc#1250898", "bsc#1261919"]
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-mountfsd.socket"
+digester = "systemd-socket"
+hash     = "235a773f47e5594d3a5e5ddefb8d2986ea904c0d03a23202a8d59a1227512054"
+
+[[FileDigestGroup]]
+package  = "systemd-container"
+note     = "creation of container/namespace resources for unprivileged users"
+bugs     = ["bsc#1250902", "bsc#1261919"]
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-nsresourced.socket"
+digester = "systemd-socket"
+hash     = "5db33de4baa1febd9c296fc28ebe6431fe85afcdcc154cec9edb7b25c5713643"
+
+[[FileDigestGroup]]
+package  = "systemd-networkd"
+note     = "Not too large API mostly for getting information, some for 
modifying state, protected by Polkit"
+bug      = "bsc#1261919"
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-networkd-varlink.socket"
+digester = "systemd-socket"
+hash     = "6411eceeeee8714caeb1d0f8967116da51e1ae3838f9593b71ddadcf88c3deb6"
+
+[[FileDigestGroup]]
+package  = "systemd-resolved"
+note     = "systemd-specific resolve API & management API"
+bug      = "bsc#1261919"
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-resolved-varlink.socket"
+digester = "systemd-socket"
+hash     = "924a769f997001348c10369a0af748932058c8f7e88ad5daf1a7e84abda53f77"
+
+[[FileDigestGroup]]
+package  = "systemd"
+note     = "service which helps to obtain a password from an interactive user"
+bugs     = ["bsc#1261919", "bsc#1257943"]
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-ask-password.socket"
+digester = "systemd-socket"
+hash     = "65796969f76971117b1f8405906e7ed54d95230faa45465714ab71ccf158e5aa"
+
+[[FileDigestGroup]]
+package  = "systemd"
+note     = "TPM credential encryption/decryption"
+bugs     = ["bsc#1261919", "bsc#1225317"]
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-creds.socket"
+digester = "systemd-socket"
+hash     = "bc4fb052a8e1f298a15c0dc8d6e8a9850a3629776b6fa271ef8f9b45cb81d8ae"
+
+[[FileDigestGroup]]
+package  = "systemd"
+note     = "provides hardware information"
+bugs     = ["bsc#1261919", "bsc#641924", "bsc#1257388"]
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-hostnamed.socket"
+digester = "systemd-socket"
+hash     = "0bae10736a17d5b449fd2bfa3726599696b168e5e2cc70d9b2d990cea0a16359"
+
+[[FileDigestGroup]]
+package  = "systemd"
+note     = "login/session manager including system power state management"
+bugs     = ["bsc#641924", "bsc#1261919"]
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-logind-varlink.socket"
+digester = "systemd-socket"
+hash     = "7e62a81cb560d9dbb4bf27a8c485ec4a2b2ce8d85a9cfddf3c1061795732ae7d"
+
+[[FileDigestGroup]]
+package  = "systemd"
+note     = "management of system extension / configuration images"
+bugs     = ["bsc#1261919", "bsc#1259318"]
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-sysext.socket"
+digester = "systemd-socket"
+hash     = "695f5a22b67ede89005bbf39065e94d1c17fff449cd925ecc969da654bba5e26"
+
+[[FileDigestGroup]]
+package  = "systemd"
+note     = "access to /etc/passwd, /etc/group data"
+bug      = "bsc#1261919"
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-userdbd.socket"
+digester = "systemd-socket"
+hash     = "f18c943e7ee65fea7d34d282111230867b1d309d5bcbf5e0bb00982567c6bb82"
+
+[[FileDigestGroup]]
+package  = "systemd-experimental"
+note     = "access to information about factory reset status"
+bug      = "bsc#1261919"
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-factory-reset.socket"
+digester = "systemd-socket"
+hash     = "70d4b87386b0f4aa4d3c99d901b912bb604d7932203b772320625bbc448d978d"
+
+[[FileDigestGroup]]
+package  = "systemd-experimental"
+note     = "virtual machine instance metadata service"
+bugs     = ["bsc#1261919", "bsc#1267504"]
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-imdsd.socket"
+digester = "systemd-socket"
+hash     = "15703bc772caf1b5604eba1f6dd5709a679374747f6c853012abd6ab2127ff71"
+
+[[FileDigestGroup]]
+package  = "systemd-experimental"
+note     = "programmatic access to journalctl data"
+bug      = "bsc#1261919"
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-journalctl.socket"
+digester = "systemd-socket"
+hash     = "3232616b0acc13ff0b68b014e028662847b1a5692dc64fd29d63983a03f12bcb"
+
+[[FileDigestGroup]]
+package  = "systemd-experimental"
+note     = "turn of pid1 / kernel messages on a console"
+bug      = "bsc#1261919"
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-mute-console.socket"
+digester = "systemd-socket"
+hash     = "58a95fcb09c8ab8e0c2f98a2495d14a6a1ef1d0c18aacb751cebc624c9ba41f8"
+
+[[FileDigestGroup]]
+package  = "systemd-experimental"
+note     = "allows root to extend TPM PCR registers"
+bug      = "bsc#1261919"
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-pcrextend.socket"
+digester = "systemd-socket"
+hash     = "2cccfadaadd7c49d63a40f96ba899b590c77cab7e05fcb7824b58a425d064b71"
+
+[[FileDigestGroup]]
+package  = "systemd-experimental"
+note     = "systemd core metrics read-only access"
+bug      = "bsc#1261919"
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-report-basic.socket"
+digester = "systemd-socket"
+hash     = "a0637753ab908ba69ed22619bb7b64e47aa1b00dd6f2d85bb33236da64fceb85"
+
+[[FileDigestGroup]]
+package  = "systemd-experimental"
+note     = "systemd cgroup metrics read-only access"
+bug      = "bsc#1261919"
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-report-cgroup.socket"
+digester = "systemd-socket"
+hash     = "b546d041421a9828c416c613406ece826a81cc854e8ec528f1322c8adcb3a92f"
+
+[[FileDigestGroup]]
+package  = "systemd-experimental"
+note     = "read-only access to block devices, authorized read/write access to 
block devices"
+bugs     = ["bsc#1261919", "bsc#1267504"]
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-storage-block.socket"
+digester = "systemd-socket"
+hash     = "3671134aedaccb73fa0a5fca06ea5c664f8177052bdbddc605767b739de274c4"
+
+[[FileDigestGroup]]
+package  = "systemd-experimental"
+note     = "read-only access to file-systems, authorized read/write access to 
file systems"
+bug      = "bsc#1261919"
+type     = "varlink"
+[[FileDigestGroup.digests]]
+path     = "/usr/lib/systemd/system/systemd-storage-fs.socket"
+digester = "systemd-socket"
+hash     = "8f6818e0d31544b37d01432d6efd4816f126b12066c41024fa3043bce5116235"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/rpmlint-2.9.0+git20260806.9feb8bb9/pyproject.toml 
new/rpmlint-2.10.0+git20260819.485e0ded/pyproject.toml
--- old/rpmlint-2.9.0+git20260806.9feb8bb9/pyproject.toml       2026-08-06 
15:41:54.000000000 +0200
+++ new/rpmlint-2.10.0+git20260819.485e0ded/pyproject.toml      2026-08-19 
12:01:21.000000000 +0200
@@ -6,7 +6,7 @@
 
 [project]
 name = "rpmlint"
-version = "2.9.0"
+version = "2.10.0"
 description = "Check for common errors in RPM packages"
 license = {text = "License :: OSI Approved :: GNU General Public License v2 or 
later (GPLv2+)"}
 authors = [
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/rpmlint-2.9.0+git20260806.9feb8bb9/rpmlint/checks/ErlangCheck.py 
new/rpmlint-2.10.0+git20260819.485e0ded/rpmlint/checks/ErlangCheck.py
--- old/rpmlint-2.9.0+git20260806.9feb8bb9/rpmlint/checks/ErlangCheck.py        
2026-08-06 15:41:54.000000000 +0200
+++ new/rpmlint-2.10.0+git20260819.485e0ded/rpmlint/checks/ErlangCheck.py       
2026-08-19 12:01:21.000000000 +0200
@@ -20,14 +20,24 @@
                 self.output.add_info('W', pkg, 'beam-compile-info-missed', 
filename)
                 return
 
-            compile_state = byte_to_string(beam.compileinfo['source'])
-            if 'debug_info' not in beam.compileinfo['options']:
+            # Beams compiled with the 'deterministic' option omit the
+            # 'source' and 'options' entries from the compile info. For
+            # those, fall back to the presence of the debug info chunk.
+            options = beam.compileinfo.get('options')
+            if options is None:
+                has_debug_info = beam.selectChunkByName(b'Dbgi') is not None
+            else:
+                has_debug_info = 'debug_info' in options
+            if not has_debug_info:
                 self.output.add_info('E', pkg, 
'beam-compiled-without-debuginfo', filename)
 
             # This can't be an error as builddir can be user specific and vary 
between users
             # it could be error in OBS where all the builds are done by user 
abuild, not in
             # general.
-            if not self.source_re.match(compile_state):
-                self.output.add_info('W', pkg, 'beam-was-not-recompiled', 
filename, compile_state)
+            source = beam.compileinfo.get('source')
+            if source is not None:
+                compile_state = byte_to_string(source)
+                if not self.source_re.match(compile_state):
+                    self.output.add_info('W', pkg, 'beam-was-not-recompiled', 
filename, compile_state)
         except Exception:
             self.output.add_info('E', pkg, 'pybeam-failed', filename)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/rpmlint-2.9.0+git20260806.9feb8bb9/rpmlint/checks/FileDigestCheck.py 
new/rpmlint-2.10.0+git20260819.485e0ded/rpmlint/checks/FileDigestCheck.py
--- old/rpmlint-2.9.0+git20260806.9feb8bb9/rpmlint/checks/FileDigestCheck.py    
2026-08-06 15:41:54.000000000 +0200
+++ new/rpmlint-2.10.0+git20260819.485e0ded/rpmlint/checks/FileDigestCheck.py   
2026-08-19 12:01:21.000000000 +0200
@@ -46,6 +46,9 @@
             config.setdefault('NamePatterns', [])
             config.setdefault('FollowSymlinks', False)
             config.setdefault('ContentCheck', None)
+            # whether we should consider files in sub-directories of the
+            # locations as well
+            config.setdefault('Recursive', True)
             config['type'] = check_type
             self.checks.append(config)
             self.known_check_types[check_type] = config
@@ -234,15 +237,22 @@
         for config in self.checks:
             for location in config['Locations']:
                 with contextlib.suppress(ValueError):
-                    if path.relative_to(location):
-                        if not config['NamePatterns']:
-                            # files in this location are unconditionally 
subject to the check.
-                            return config
-                        else:
-                            # we need to check if the filename matches the 
configured pattern.
-                            for glob in config['NamePatterns']:
-                                if fnmatch(path.name, glob):
-                                    return config
+                    subpath = path.relative_to(location)
+
+                    if not subpath:
+                        continue
+                    elif not config['Recursive'] and len(subpath.parts) > 1:
+                        # it's not a direct descendant
+                        continue
+
+                    if not config['NamePatterns']:
+                        # files in this location are unconditionally subject 
to the check.
+                        return config
+                    else:
+                        # we need to check if the filename matches the 
configured pattern.
+                        for glob in config['NamePatterns']:
+                            if fnmatch(path.name, glob):
+                                return config
 
         # must be a file which isn't matched by a name pattern.
         return None
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/rpmlint-2.9.0+git20260806.9feb8bb9/rpmlint/filedigestcheck.py 
new/rpmlint-2.10.0+git20260819.485e0ded/rpmlint/filedigestcheck.py
--- old/rpmlint-2.9.0+git20260806.9feb8bb9/rpmlint/filedigestcheck.py   
2026-08-06 15:41:54.000000000 +0200
+++ new/rpmlint-2.10.0+git20260819.485e0ded/rpmlint/filedigestcheck.py  
2026-08-19 12:01:21.000000000 +0200
@@ -97,9 +97,10 @@
         # previous occurences. Having this would be weird, however, so let's
         # consider any appearance of varlink here.
         for name in socket_section.get('FileDescriptorName', []):
-            # this is more of a convention, not a hard requirement, but so far 
all
-            # Varlink services we have use this scheme.
-            if name == 'varlink':
+            # this is more of a convention, not a hard requirement.
+            # most of the time it is just "varlink", but some services also
+            # use "varlink-monitor" or similar names.
+            if name.find('varlink') != -1:
                 return True
 
         # not a varlink service
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/rpmlint-2.9.0+git20260806.9feb8bb9/test/configs/digests_varlink.config 
new/rpmlint-2.10.0+git20260819.485e0ded/test/configs/digests_varlink.config
--- old/rpmlint-2.9.0+git20260806.9feb8bb9/test/configs/digests_varlink.config  
2026-08-06 15:41:54.000000000 +0200
+++ new/rpmlint-2.10.0+git20260819.485e0ded/test/configs/digests_varlink.config 
2026-08-19 12:01:21.000000000 +0200
@@ -7,6 +7,7 @@
     "*.socket",
 ]
 ContentCheck = "VarlinkServiceCheck"
+Recursive = false
 
 [[FileDigestGroup]]
 package = "socketpkg"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/rpmlint-2.9.0+git20260806.9feb8bb9/test/test_file_digest.py 
new/rpmlint-2.10.0+git20260819.485e0ded/test/test_file_digest.py
--- old/rpmlint-2.9.0+git20260806.9feb8bb9/test/test_file_digest.py     
2026-08-06 15:41:54.000000000 +0200
+++ new/rpmlint-2.10.0+git20260819.485e0ded/test/test_file_digest.py    
2026-08-19 12:01:21.000000000 +0200
@@ -427,6 +427,13 @@
         test.check(pkg)
         assert len(output.results) == 1
 
+    # the check should not be recursive
+    output, test = get_digestcheck('digests_varlink.config')
+    with FakePkg('defaultpkg') as pkg:
+        pkg.add_file_with_content('/sockets/sub/unrelated.socket', 
RESTRICTED_SOCKET_DATA)
+        test.check(pkg)
+        assert len(output.results) == 0
+
 
 def test_varlink_digester():
     # here we want to check the SocketUnitDigester:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/rpmlint-2.9.0+git20260806.9feb8bb9/test/test_whitelist_syntax.py 
new/rpmlint-2.10.0+git20260819.485e0ded/test/test_whitelist_syntax.py
--- old/rpmlint-2.9.0+git20260806.9feb8bb9/test/test_whitelist_syntax.py        
2026-08-06 15:41:54.000000000 +0200
+++ new/rpmlint-2.10.0+git20260819.485e0ded/test/test_whitelist_syntax.py       
2026-08-19 12:01:21.000000000 +0200
@@ -50,7 +50,8 @@
         ('dbus', 'dbus-services'),
         ('pam', 'pam-modules'),
         ('permissions', 'permissions-whitelist'),
-        ('polkit', 'polkit-rules-whitelist')
+        ('polkit', 'polkit-rules-whitelist'),
+        ('varlink', 'varlink-whitelist')
     ]
 
     for _type, whitelist in WHITELISTS:

Reply via email to