Hello Everyone,
I am running Fedora 36, fully updated as of right now...
I am running version 2.1.1-1 of puddletag. That is the most recent version of puddletag in the official Fedora repo.
I have had puddletag crash on multiple occasions since I started running this version under Fedora 36. I have not been able to narrow down anything that I am doing when the crashes occur that would help narrow things down.
Anybody else having issues like this? If not, any advice on how to debug/troubleshoot this issue?
There is one bug on the Fedora Bugzilla for puddletag:
https://bugzilla.redhat.com/show_bug.cgi?id=2084341
but since puddletag crashes silently, and without invoking ABRT, I have no idea if that report has anything to do with my issue.
Thank you,
Steven P. Ulrick
On 5/25/22 16:29, Samuel Sieb wrote:
On 5/25/22 14:00, Steven P. Ulrick wrote:
but since puddletag crashes silently, and without invoking ABRT, I have no idea if that report has anything to do with my issue.
Do you see any messages if you run it from a terminal?
Boy, I feel silly. Should have thought of that first.
Anyway, here is the output from the terminal:
qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 20209, resource id: 14681426, major code: 40 (TranslateCoords), minor code: 0 qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 43350, resource id: 14681466, major code: 40 (TranslateCoords), minor code: 0 Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/puddlestuff/tagmodel.py", line 2483, in wheelEvent h.setValue(h.value() - numsteps) TypeError: setValue(self, int): argument 1 has unexpected type 'float' Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/puddlestuff/tagmodel.py", line 2483, in wheelEvent h.setValue(h.value() - numsteps) TypeError: setValue(self, int): argument 1 has unexpected type 'float'
Yes, it does appear to be the same issue that was reported on Bugzilla. I have added my comment to that bug, along with the above quoted output.
Still, if anyone has any ideas, I'm all ears. I have attempted to install puddletag from GIT. It installs fine, but it won't run... But that is a subject for another thread. I hesitate to bring that here, until I have that same issue with other Python based applications on Fedora 36.
Steven P. Ulrick
On 5/25/22 16:29, Samuel Sieb wrote:
On 5/25/22 14:00, Steven P. Ulrick wrote:
but since puddletag crashes silently, and without invoking ABRT, I have no idea if that report has anything to do with my issue.
Do you see any messages if you run it from a terminal?
Boy, I feel silly. Should have thought of that first.
Anyway, here is the output from the terminal:
qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 20209, resource id: 14681426, major code: 40 (TranslateCoords), minor code: 0 qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 43350, resource id: 14681466, major code: 40 (TranslateCoords), minor code: 0 Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/puddlestuff/tagmodel.py", line 2483, in wheelEvent h.setValue(h.value() - numsteps) TypeError: setValue(self, int): argument 1 has unexpected type 'float' Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/puddlestuff/tagmodel.py", line 2483, in wheelEvent h.setValue(h.value() - numsteps) TypeError: setValue(self, int): argument 1 has unexpected type 'float'
Yes, it does appear to be the same issue that was reported on Bugzilla. I have added my comment to that bug, along with the above quoted output.
Still, if anyone has any ideas, I'm all ears. I have attempted to install puddletag from GIT. It installs fine, but it won't run... But that is a subject for another thread. I hesitate to bring that here, until I have that same issue with other Python based applications on Fedora 36.
Steven P. Ulrick
On Wed, 25 May 2022 20:20:37 -0500 "Steven P. Ulrick" meow8282@gmail.com wrote:
Anyway, here is the output from the terminal:
qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 20209, resource id: 14681426, major code: 40 (TranslateCoords), minor code: 0 qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 43350, resource id: 14681466, major code: 40 (TranslateCoords), minor code: 0 Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/puddlestuff/tagmodel.py", line 2483, in wheelEvent h.setValue(h.value() - numsteps) TypeError: setValue(self, int): argument 1 has unexpected type 'float' Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/puddlestuff/tagmodel.py", line 2483, in wheelEvent h.setValue(h.value() - numsteps) TypeError: setValue(self, int): argument 1 has unexpected type 'float'
Yes, it does appear to be the same issue that was reported on Bugzilla. I have added my comment to that bug, along with the above quoted output.
Still, if anyone has any ideas, I'm all ears. I have attempted to install puddletag from GIT. It installs fine, but it won't run... But that is a subject for another thread. I hesitate to bring that here, until I have that same issue with other Python based applications on Fedora 36.
So, the problem is in this function,
def wheelEvent(self, e): h = self.horizontalScrollBar() if not self.verticalScrollBar().isVisible() and h.isVisible(): numsteps = e.angleDelta().y() / 5 h.setValue(h.value() - numsteps) <-------- here e.accept() else: QTableView.wheelEvent(self, e)
in the class class TagTable(QTableView):
which inherits from the class QTableView in PyQt5.QtWidgets.
All that is to say, if my analysis is correct, that the problem is probably in PyQt5.QtWidgets QTableView where the horizontalScrollBar function is defined. It probably has an error in the value function, defaulting to a float instead of an int. I looked for the package with this function to follow up, but a quick search didn't find it. Qt5 is huge! And I was in a hurry.
You might put this in the bugzilla, or ask if you can move it over to PyQt5. python3-qt5? qt5-???
I would hope since value/setValue are forward/reverse functions that they are consistent (both int). But you never know.
On the other hand numsteps is not defined as int or a float, and I don't know what that means in this language but int/5 can be whole number or a float and I don't know what this language does.
C/C++ would always take int/5 == another int, but int/5.0 will be promoted to a float, and languages without those sort of type rules may be vague about what type numsteps is defined as and ends up as.
In c/c++ this code would work to convert the result to an int, no matter which of the 2 values is not an int.
h.setValue((int)(h.value() - numsteps))
In some other languages it might be necessary to use a function int( h.value() - numsteps) to convert it.
On Thu, May 26, 2022 at 8:18 AM stan via users < users@lists.fedoraproject.org> wrote:
On Wed, 25 May 2022 20:20:37 -0500 "Steven P. Ulrick" meow8282@gmail.com wrote:
Anyway, here is the output from the terminal:
qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 20209, resource id: 14681426, major code: 40 (TranslateCoords), minor code: 0 qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 43350, resource id: 14681466, major code: 40 (TranslateCoords), minor code: 0 Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/puddlestuff/tagmodel.py", line 2483, in wheelEvent h.setValue(h.value() - numsteps) TypeError: setValue(self, int): argument 1 has unexpected type 'float' Traceback (most recent call last): File "/usr/lib/python3.10/site-packages/puddlestuff/tagmodel.py", line 2483, in wheelEvent h.setValue(h.value() - numsteps) TypeError: setValue(self, int): argument 1 has unexpected type 'float'
Yes, it does appear to be the same issue that was reported on Bugzilla. I have added my comment to that bug, along with the above quoted output.
Still, if anyone has any ideas, I'm all ears. I have attempted to install puddletag from GIT. It installs fine, but it won't run... But that is a subject for another thread. I hesitate to bring that here, until I have that same issue with other Python based applications on Fedora 36.
So, the problem is in this function,
def wheelEvent(self, e): h = self.horizontalScrollBar() if not self.verticalScrollBar().isVisible() and h.isVisible(): numsteps = e.angleDelta().y() / 5 h.setValue(h.value() - numsteps) <-------- here e.accept() else: QTableView.wheelEvent(self, e)in the class class TagTable(QTableView):
which inherits from the class QTableView in PyQt5.QtWidgets.
All that is to say, if my analysis is correct, that the problem is probably in PyQt5.QtWidgets QTableView where the horizontalScrollBar function is defined. It probably has an error in the value function, defaulting to a float instead of an int. I looked for the package with this function to follow up, but a quick search didn't find it. Qt5 is huge! And I was in a hurry.
You might put this in the bugzilla, or ask if you can move it over to PyQt5. python3-qt5? qt5-??? _______________________________________________ users mailing list -- users@lists.fedoraproject.org To unsubscribe send an email to users-leave@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/users@lists.fedoraproject.org Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure
On 5/26/22 06:18, stan via users wrote:
So, the problem is in this function,
def wheelEvent(self, e): h = self.horizontalScrollBar() if not self.verticalScrollBar().isVisible() and h.isVisible(): numsteps = e.angleDelta().y() / 5
Python3 changed the default for division. Python2 would always give you an integer result from dividing integers, but Python3 will give you a float if the numbers are not evenly divisible. The simplest fix would be to change the "/" to a "//" (integer division).
h.setValue(h.value() - numsteps) <-------- here e.accept() else: QTableView.wheelEvent(self, e)
On Thu, 26 May 2022 14:29:31 -0700 Samuel Sieb samuel@sieb.net wrote:
On 5/26/22 06:18, stan via users wrote:
So, the problem is in this function,
def wheelEvent(self, e): h = self.horizontalScrollBar() if not self.verticalScrollBar().isVisible() andh.isVisible(): numsteps = e.angleDelta().y() / 5
Python3 changed the default for division. Python2 would always give you an integer result from dividing integers, but Python3 will give you a float if the numbers are not evenly divisible. The simplest fix would be to change the "/" to a "//" (integer division).
Good catch! I attached to the argument 1 and got caught by the off by 1 error, the argument count starts at zero, not 1, and so was looking at h.value() instead of numsteps. TypeError: setValue(self, int): argument 1 has unexpected type 'float'
h.setValue(h.value() - numsteps) <-------- here e.accept() else: QTableView.wheelEvent(self, e)
On 5/27/22 06:03, stan via users wrote:
On Thu, 26 May 2022 14:29:31 -0700 Samuel Sieb samuel@sieb.net wrote:
On 5/26/22 06:18, stan via users wrote:
So, the problem is in this function,
def wheelEvent(self, e): h = self.horizontalScrollBar() if not self.verticalScrollBar().isVisible() andh.isVisible(): numsteps = e.angleDelta().y() / 5
Python3 changed the default for division. Python2 would always give you an integer result from dividing integers, but Python3 will give you a float if the numbers are not evenly divisible. The simplest fix would be to change the "/" to a "//" (integer division).
Good catch! I attached to the argument 1 and got caught by the off by 1 error, the argument count starts at zero, not 1, and so was looking at h.value() instead of numsteps. TypeError: setValue(self, int): argument 1 has unexpected type 'float'
h.setValue(h.value() - numsteps) <-------- here e.accept() else: QTableView.wheelEvent(self, e)
Argument 1 is "h.value() - numsteps". Argument 0 is the "self" parameter that you don't see. It's a class method call, so the first argument is the instance variable. (Referred to as "this" in several other languages.)
On Wed, May 25, 2022 at 4:02 PM Steven P. Ulrick meow8282@gmail.com wrote:
Hello Everyone,
I am running Fedora 36, fully updated as of right now...
I am running version 2.1.1-1 of puddletag. That is the most recent version of puddletag in the official Fedora repo.
I have had puddletag crash on multiple occasions since I started running this version under Fedora 36. I have not been able to narrow down anything that I am doing when the crashes occur that would help narrow things down.
Anybody else having issues like this? If not, any advice on how to debug/troubleshoot this issue?
There is one bug on the Fedora Bugzilla for puddletag:
https://bugzilla.redhat.com/show_bug.cgi?id=2084341
but since puddletag crashes silently, and without invoking ABRT, I have no idea if that report has anything to do with my issue.
to debug: If you aren't starting it from the command line, then start it from the command line in a terminal window and see if it says anything useful when it crashes/exits.
Not triggering abrtd would seem to indicate it is exiting because of some detected condition.