FWIW, I’ve only ever had issues with Track searches, and it appears that I have installed that fix already. Hmmm…
D: 03:12:08,018 ui.searchdialog.save_table_header_state:424: save_state: artistsearchdialog_header_state
D: 03:12:24,934 webservice.ratecontrol.get_delay_to_next_request:115: ('musicbrainz.org', 443): Last request was 19764 ms ago, starting another one
D: 03:12:24,934 webservice.ratecontrol.increment_requests:135: ('musicbrainz.org', 443): Incrementing requests to: 1
D: 03:12:25,466 webservice.ratecontrol.decrement_requests:143: ('musicbrainz.org', 443): Decrementing requests to: 0
D: 03:12:25,467 webservice._handle_reply:414: Received reply for https://musicbrainz.org:443/ws/2/recording?limit=25&dismax=true&query=pac%5C-man fever: HTTP 200 (OK)
D: 03:12:25,478 ui.searchdialog.restore_table_header_state:415: restore_state: tracksearchdialog_header_state
Traceback (most recent call last):
File "picard/webservice/__init__.py", line 442, in _process_reply
File "picard/webservice/__init__.py", line 429, in _handle_reply
File "picard/ui/searchdialog/track.py", line 138, in handle_reply
File "picard/ui/searchdialog/track.py", line 146, in display_results
File "picard/ui/searchdialog/__init__.py", line 238, in set_table_item
File "picard/ui/searchdialog/__init__.py", line 189, in to_seconds
ValueError: invalid literal for int() with base 10: '3m49s'
Abort trap: 6
logout
Saving session...
...copying shared history...
...saving history...truncating history files...
...completed.
Deleting expired sessions...25 completed.
[Process completed]
/me goes looking at lines of code…
File "picard/ui/searchdialog/__init__.py", line 238, in set_table_item
item = SortableTableWidgetItem(to_seconds(value))
File "picard/ui/searchdialog/__init__.py", line 189, in to_seconds
seconds = seconds * 60 + int(part)
Quite a while back I made some changes in util/_init_.py
for display time/length… and I’ve not had any issue anywhere else ~length
is displayed … Hmmm…
ms = float(ms)
if ms == 0 and not display_zero:
return "?m??s"
duration_seconds = round(ms / 1000)
if duration_seconds < 3600:
minutes, seconds = divmod(duration_seconds, 60)
return "%dm%02ds" % (minutes, seconds)
else:
hours, remainder = divmod(duration_seconds, 3600)
minutes, seconds = divmod(remainder, 60)
return "%dh%02dm%02ds" % (hours, minutes, seconds)