Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Hang after every download popup. #8125

Open
CabalCrow opened this issue Mar 11, 2024 · 11 comments
Open

Hang after every download popup. #8125

CabalCrow opened this issue Mar 11, 2024 · 11 comments
Labels
bug: behavior Something doesn't work as intended, but doesn't crash. component: downloads Issues related to downloads. component: prompts Issues related to prompts/questions qutebrowser shows. priority: 0 - high Issues which are currently the primary focus.

Comments

@CabalCrow
Copy link

Version info:
qutebrowser v3.1.0
Git commit:
Backend: QtWebEngine 6.6.2, based on Chromium 112.0.5615.213 (from api)
Qt: 6.6.2

Does the bug happen if you start with --temp-basedir?:
Yes, but somewhat different.

Description
After exiting the download prompt (ex. Pressing enter to select a download directory, or esc to exit it), qutebrowser hangs for a few seconds (3-4) with the download prompt still out. When using --temp-basedir the hang is just silghtly over a second.

How to reproduce
Try to download anything via qutebrowser & press esc to exit the download prompt.

@The-Compiler
Copy link
Member

I noticed this as well, not sure yet what's happening. Glad I'm not the only one seeing it at least 😅

It might have been a recent regression? Maybe from Qt 6.6.1 to 6.6.2 or so?

When setting download.location.prompt to false there is no hang.

@The-Compiler The-Compiler added component: downloads Issues related to downloads. priority: 0 - high Issues which are currently the primary focus. component: prompts Issues related to prompts/questions qutebrowser shows. bug: behavior Something doesn't work as intended, but doesn't crash. labels Mar 11, 2024
@sanjayankur31
Copy link

Also seeing this, and yeh, it did only start recently, so could be related to a qt 6.6.2 update:

qutebrowser v3.1.0
Backend: QtWebEngine 6.6.2, based on Chromium 112.0.5615.213 (from api)
Qt: 6.6.2

CPython: 3.12.2
PyQt: 6.6.1

Qt wrapper info:
  PyQt6: success
  PyQt5: not imported
  -> selected: PyQt6 (via autoselect)

colorama: no
jinja2: 3.1.3
pygments: 2.15.1
yaml: 6.0.1
adblock: no
objc: no
PyQt6.QtWebEngineCore: 6.6.0
PyQt6.sip: 6.7.12
pdf.js: 2.13.216 (/home/asinha/.local/share/qutebrowser/pdfjs/build/pdf.js)
sqlite: 3.42.0
QtNetwork SSL: OpenSSL 3.1.1 30 May 2023

Style: QFusionStyle
Platform plugin: xcb
OpenGL: NVIDIA Corporation, 4.6.0 NVIDIA 550.54.14
Platform: Linux-6.7.9-200.fc39.x86_64-x86_64-with-glibc2.38, 64bit
Linux distribution: Fedora Linux 39 (CompNeuro) (fedora)
Frozen: False
Imported from /usr/lib/python3.12/site-packages/qutebrowser
Using Python from /usr/bin/python3
Qt library executable path: /usr/lib64/qt6/libexec, data path: /usr/share/qt

@phylor
Copy link

phylor commented May 29, 2024

My perception is rather that the prompt stays open as long as the download takes. When the download is finished, the prompt closes.

It seems to me that the download completely blocks the UI until it's done.

If you download the same file again, the file prompt closes and then the "Overwrite existing file?" dialog stays open until the download completes.

@The-Compiler
Copy link
Member

That's a very interesting observation I didn't make so far, thanks @phylor! Unfortunately I cannot consistently reproduce this (right now, I don't get any hang)...

But I'm regularly annoyed by this and want to dig into it as soon as we took care of getting v3.2.0 out. Hopefully by then the stars will align properly that I can actually reproduce this when wanting to dig into it, rather than running into it when I actually need to get something different done.

@sanjayankur31
Copy link

My perception is rather that the prompt stays open as long as the download takes. When the download is finished, the prompt closes.

It seems to me that the download completely blocks the UI until it's done.

If you download the same file again, the file prompt closes and then the "Overwrite existing file?" dialog stays open until the download completes.

No, this is not what I'm seeing. Here's a screen recording for a larger download:

Screencast.from.2024-05-29.10-58-14.webm

It blocks "for a bit", perhaps the same bit, irrespective of the size of the download. Here's a screencast for a much smaller download:

Screencast.from.2024-05-29.11-01-40.webm

@phylor
Copy link

phylor commented May 29, 2024

@sanjayankur31 You're right! For me it blocks around 10 seconds. Files taking more than 10 seconds to download continue without prompt.

@CabalCrow
Copy link
Author

Yeah it doesn't block for the whole download. When I was originally testing --temp-basedir helps with reducing the hang a significant amount. So I assume some configuration option contributes to the hang somehow.

@sanjayankur31
Copy link

Fedora 40 just went to Qt 6.7, and I'm not seeing the hang now. So maybe it was a Qt related regression? Anyone else able to verify this?

qutebrowser v3.1.0
Backend: QtWebEngine 6.7.1, based on Chromium 118.0.5993.220 (from api)
Qt: 6.7.1

CPython: 3.12.3
PyQt: 6.7.0

Qt wrapper info:
  PyQt6: success
  PyQt5: not imported
  -> selected: PyQt6 (via autoselect)

colorama: no
jinja2: 3.1.4
pygments: 2.17.2
yaml: 6.0.1
adblock: no
objc: no
PyQt6.QtWebEngineCore: 6.7.0
PyQt6.sip: 6.7.12
pdf.js: 2.13.216 (/home/asinha/.local/share/qutebrowser/pdfjs/build/pdf.js)
sqlite: 3.45.1
QtNetwork SSL: OpenSSL 3.2.1 30 Jan 2024

Style: QFusionStyle
Platform plugin: xcb
OpenGL: NVIDIA Corporation, 4.6.0 NVIDIA 550.78
Platform: Linux-6.8.10-300.fc40.x86_64-x86_64-with-glibc2.39, 64bit
Linux distribution: Fedora Linux 40 (CompNeuro) (fedora)
Frozen: False
Imported from /usr/lib/python3.12/site-packages/qutebrowser
Using Python from /usr/bin/python3
Qt library executable path: /usr/lib64/qt6/libexec, data path: /usr/share/qt6

Paths:
cache: /home/asinha/.cache/qutebrowser
config: /home/asinha/.config/qutebrowser
data: /home/asinha/.local/share/qutebrowser
runtime: /run/user/1000/qutebrowser

Autoconfig loaded: yes
Config.py: no config.py was loaded
Uptime: 0:12:31

@The-Compiler
Copy link
Member

I'm pretty sure I've seen it on Qt 6.7.0 and 6.7.1 - but only sometimes.

I wonder if the sometimes part is somehow related to either being on a bad/slow internet connection, or perhaps having a network file system mounted (sshfs in my case).

@phylor
Copy link

phylor commented May 29, 2024

I had the issue on ArchLinux with Qt 6.7.0-1. After upgrading to Qt 6.7.1-1 I can't reproduce the issue anymore. I'll keep an eye on it!

@sanjayankur31 Thank you for the hint! 🎉

@sanjayankur31
Copy link

I'm pretty sure I've seen it on Qt 6.7.0 and 6.7.1 - but only sometimes.

I wonder if the sometimes part is somehow related to either being on a bad/slow internet connection,

I used to see this both at home and at university. University has quite a good internet connection, though, so that shouldn't be it:

image

or perhaps having a network file system mounted (sshfs in my case).

I don't have any network file systems mounted here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug: behavior Something doesn't work as intended, but doesn't crash. component: downloads Issues related to downloads. component: prompts Issues related to prompts/questions qutebrowser shows. priority: 0 - high Issues which are currently the primary focus.
Projects
None yet
Development

No branches or pull requests

4 participants