From 23b42456c9ea8fd8c03fa99be0722a7fb2c0cb64 Mon Sep 17 00:00:00 2001
From: Tim Lauridsen <tla@rasmil.dk>
Date: Mon, 14 Jun 2021 09:39:32 +0200
Subject: [PATCH] Don't return Weak dependencies in updates

---
 python/dnfdaemon/server/backend.py | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/python/dnfdaemon/server/backend.py b/python/dnfdaemon/server/backend.py
index bf9a95a..fc6ce66 100644
--- a/python/dnfdaemon/server/backend.py
+++ b/python/dnfdaemon/server/backend.py
@@ -38,6 +38,7 @@ import logging
 import sys
 import re
 import os
+import libdnf.transaction
 
 logger = logging.getLogger('dnfdaemon.base.dnf')
 
@@ -368,12 +369,14 @@ class Packages:
             return pkgs
         # return install/upgrade type pkgs from transaction
         for tsi in self._base.transaction:
-            #print(tsi.op_type, tsi.installed, tsi.erased, tsi.obsoleted)
+            logger.debug(f" --> {tsi.action_name} : {tsi} action: {tsi.action} reason: {tsi.reason}")
             if tsi.action == dnf.transaction.PKG_UPGRADE:
                 pkgs.append(tsi.pkg)
             elif tsi.action == dnf.transaction.PKG_INSTALL:
-                # action is INSTALL, then it should be a installonlypkg
-                pkgs.append(tsi.pkg)
+                # skip weak dependencies
+                if not tsi.reason == libdnf.transaction.TransactionItemReason_WEAK_DEPENDENCY:
+                    # action is INSTALL, then it should be a installonlypkg
+                    pkgs.append(tsi.pkg)
         return pkgs
 
     @property
-- 
GitLab