Bug 2237265

Summary: [abrt] dnfdragora-updater: _setInfoOnWidget(): ui.py:1115:_setInfoOnWidget:AttributeError: 'tuple' object has no attribute 'replace'
Product: [Fedora] Fedora Reporter: Stan King <stanley.king>
Component: dnfdragoraAssignee: Neal Gompa <ngompa13>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 38CC: besser82, jonathan, linux, ngompa13, norbert.jurkeit, rhbug, stanley.king, thunderbirdtr, velosol, woiling
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
URL: https://retrace.fedoraproject.org/faf/reports/bthash/af0c740384ddccac625b2351e7307b1dfc57618
Whiteboard: abrt_hash:6d010975162f720a5a4cc6ed36c790d0edf73b4b;VARIANT_ID=workstation;
Fixed In Version: Doc Type: ---
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2024-05-31 08:27:06 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 2257531    
Bug Blocks:    
Attachments:
Description Flags
File: os_info
none
File: cpuinfo
none
File: namespaces
none
File: open_fds
none
File: environ
none
File: mountinfo
none
File: backtrace none

Description Stan King 2023-09-04 13:21:16 UTC
Description of problem:
I clicked on "update information" in one of the items listed by dnfdragora-updater.

Version-Release number of selected component:
dnfdragora-updater-2.1.4-1.fc38

Additional info:
reporter:       libreport-2.17.11
interpreter:    python3-3.11.4-1.fc38.x86_64
reason:         ui.py:1115:_setInfoOnWidget:AttributeError: 'tuple' object has no attribute 'replace'
exception_type: AttributeError
uid:            1000
crash_function: _setInfoOnWidget
runlevel:       N 5
package:        dnfdragora-updater-2.1.4-1.fc38
cmdline:        /usr/bin/python3 /usr/bin/dnfdragora-updater
type:           Python3
executable:     /usr/bin/dnfdragora-updater
comment:        I clicked on "update information" in one of the items listed by dnfdragora-updater.
kernel:         6.4.13-200.fc38.x86_64
cgroup:         0::/user.slice/user-1000.slice/session-2.scope

Truncated backtrace:
ui.py:1115:_setInfoOnWidget:AttributeError: 'tuple' object has no attribute 'replace'

Traceback (most recent call last):
  File "/usr/lib/python3.11/site-packages/pystray/_base.py", line 267, in inner
    callback(self)
  File "/usr/lib/python3.11/site-packages/pystray/_base.py", line 368, in __call__
    return self._action(icon, self)
           ^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/pystray/_base.py", line 463, in wrapper0
    return action()
           ^^^^^^^^
  File "/usr/lib/python3.11/site-packages/dnfdragora/updater.py", line 272, in __run_dnfdragora
    return self.__run_dialog({})
           ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3.11/site-packages/dnfdragora/updater.py", line 251, in __run_dialog
    self.__main_gui.handleevent()
  File "/usr/lib/python3.11/site-packages/dnfdragora/ui.py", line 1477, in handleevent
    self._setInfoOnWidget(sel_pkg)
  File "/usr/lib/python3.11/site-packages/dnfdragora/ui.py", line 1115, in _setInfoOnWidget
    s += '<b>%s</b> %s'%(pkg.updateinfo[0]['id'], escape(pkg.updateinfo[0]['updated'])).replace("\n", "<br>")
                        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'tuple' object has no attribute 'replace'

Local variables in innermost frame:
self: <dnfdragora.ui.mainGui object at 0x7f8e6d58bf10>
pkg: <dnfdragora.dnf_backend.DnfPackage object at 0x7f8e6d5ae450>
missing: 'Missing information'
description: 'The Intel Graphics Memory Management Library provides device specific<br>and buffer management for the Intel Graphics Compute Runtime for OpenCL<br>and the Intel Media Driver for VAAPI.'
s: '<h2> intel-gmmlib - Intel Graphics Memory Management Library </h2>The Intel Graphics Memory Management Library provides device specific<br>and buffer management for the Intel Graphics Compute Runtime for OpenCL<br>and the Intel Media Driver for VAAPI.<br><b><a href="updateinfo">Update information</a></b><br><b>intel-gmmlib-22.3.11-1.fc38</b><br>Update to 22.3.11<br>'

Comment 1 Stan King 2023-09-04 13:21:20 UTC
Created attachment 1986939 [details]
File: os_info

Comment 2 Stan King 2023-09-04 13:21:21 UTC
Created attachment 1986940 [details]
File: cpuinfo

Comment 3 Stan King 2023-09-04 13:21:23 UTC
Created attachment 1986941 [details]
File: namespaces

Comment 4 Stan King 2023-09-04 13:21:24 UTC
Created attachment 1986942 [details]
File: open_fds

Comment 5 Stan King 2023-09-04 13:21:26 UTC
Created attachment 1986943 [details]
File: environ

Comment 6 Stan King 2023-09-04 13:21:27 UTC
Created attachment 1986944 [details]
File: mountinfo

Comment 7 Stan King 2023-09-04 13:21:29 UTC
Created attachment 1986945 [details]
File: backtrace

Comment 8 Norbert Jurkeit 2023-09-05 09:36:03 UTC
I can confirm this issue and amend that it disappears after downgrade of dnfdragora and dnfdragora-updater to previous version 2.1.2-4.

I'd appreciate this issue to be fixed soon because check of update information belongs to the most common tasks in dnfdragora.

Comment 9 Norbert Jurkeit 2023-09-06 08:49:26 UTC
There is already an upstream bug report: https://github.com/manatools/dnfdragora/issues/217. The proposed fix works also for me.

Comment 10 florian 2023-11-01 09:04:21 UTC
I clicked on the release notes link  in a package update note


reporter:       libreport-2.17.11
kernel:         6.5.8-200.fc38.x86_64
cmdline:        /usr/bin/python3 /usr/bin/dnfdragora-updater
cgroup:         0::/user.slice/user-1000.slice/user/app.slice/app-org.mageia.dnfdragora\x2dupdater
uid:            1000
reason:         ui.py:1115:_setInfoOnWidget:AttributeError: 'tuple' object has no attribute 'replace'
executable:     /usr/bin/dnfdragora-updater
type:           Python3
package:        dnfdragora-updater-2.1.4-1.fc38
runlevel:       N 5
exception_type: AttributeError
crash_function: _setInfoOnWidget
interpreter:    python3-3.11.6-1.fc38.x86_64
comment:        I clicked on the release notes link  in a package update note

Comment 11 Roel van de Kraats 2024-01-10 13:20:19 UTC
Upstream release 2.1.6 (see https://github.com/manatools/dnfdragora/releases/tag/2.1.6) contains the fix.

Comment 12 Kåre Løvgren 2024-03-25 07:50:10 UTC
(Originally reported as bug 2238288):
I have now updated to F39, but it still has dnfdragora 2.1.5, so I still have this problem. Does anyone know when 2.1.6 with the fix will be available?

Comment 13 Aoife Moloney 2024-05-31 08:27:06 UTC
Fedora Linux 38 entered end-of-life (EOL) status on 2024-05-21.

Fedora Linux 38 is no longer maintained, which means that it
will not receive any further security or bug fix updates. As a result we
are closing this bug.

If you can reproduce this bug against a currently maintained version of Fedora Linux
please feel free to reopen this bug against that version. Note that the version
field may be hidden. Click the "Show advanced fields" button if you do not see
the version field.

If you are unable to reopen this bug, please file a new report against an
active release.

Thank you for reporting this bug and we are sorry it could not be fixed.

Comment 14 Roel van de Kraats 2024-06-03 08:10:08 UTC
Fedora 40 still has dnfdragora 2.1.5, including this issue. Could someone please reopen this bug report and set the Version to 40? Thanks

Comment 15 Woi 2025-01-03 15:36:57 UTC
Still unfixed in Fedora 41. One year after it has been fixed upstream:
https://github.com/manatools/dnfdragora/issues/217
https://github.com/manatools/dnfdragora/issues/239