Commit Graph

24630 Commits

Author SHA1 Message Date
qutebrowser bot b11ead8f42 Release v3.0.0 2023-08-18 14:15:48 +00:00
Florian Bruhin 967d0ce291 Revert "Release v3.0.0"
This reverts commit f3692d8f28.
2023-08-18 16:14:34 +02:00
Florian Bruhin 597873286c Use different PyPI token tempoarily
See https://github.com/pypi/support/issues/3111
2023-08-18 16:14:27 +02:00
qutebrowser bot f3692d8f28 Release v3.0.0 2023-08-18 13:38:14 +00:00
Florian Bruhin d4cc897bed Edit changelog for v3.0.0 2023-08-18 15:35:48 +02:00
Florian Bruhin adc2e1af7b Update install instructions
Closes #7833
2023-08-18 12:29:03 +02:00
Florian Bruhin bee84309c5 Ignore drag events on Qt 6.5.2 on Wayland
Closes #7827
2023-08-18 01:30:37 +02:00
Florian Bruhin 856d483724 Fix test on QtWebKit 2023-08-18 01:00:30 +02:00
Florian Bruhin 300bf173b8 Fix tests for new navigation request log output 2023-08-17 23:37:48 +02:00
Florian Bruhin a2697feb48 Work around back/forward navigation from qute://bookmark
With Qt 6.3+, user interaction is required to navigate outside of qute:// from a
qute:// page.

Follow-up to 8defe1ae44.
Also see 216a9f9a9b

Fixes #7815

See #7220 - should be revisited once we have a qute-bookmarks:// instead where
we can adjust permissions when registering the URL handler.
2023-08-17 23:00:04 +02:00
Florian Bruhin 051b0d6087
Merge pull request #7828 from pylbrecht/corrupt-session
Don't include "dead" tabs when saving sessions
2023-08-17 20:09:45 +02:00
Florian Bruhin d5a8f22a2a
Merge pull request #7832 from qutebrowser/auto-releases
Releases on CI
2023-08-17 20:05:24 +02:00
Florian Bruhin a4d22e9bd9 Fixup OpenSSL warning hint 2023-08-17 18:51:45 +02:00
Florian Bruhin 90f2cda25c Add hint to OpenSSL warning
See https://www.reddit.com/r/qutebrowser/comments/15tilax/troubleshooting_cannot_download_after_update_tls/
2023-08-17 18:48:16 +02:00
Florian Bruhin 8795b88d35 ci: Fix JS style issues 2023-08-17 14:51:53 +02:00
Florian Bruhin ffbbc3d9e7 Remove old download_release.sh
Releases aren't hosted on qutebrowser.org anymore
2023-08-17 14:47:49 +02:00
Florian Bruhin 9dfe641263 ci: Switch from experimental to real releases 2023-08-17 14:47:49 +02:00
Florian Bruhin 5567c9290b Update releasing docs 2023-08-17 14:47:49 +02:00
Florian Bruhin 60eb849fad ci: Check for open milestone before release 2023-08-17 12:42:21 +02:00
Florian Bruhin bcbfc2b68c ci: Add IRC notification for main channel
Releases are probably important enough
2023-08-17 12:42:21 +02:00
Florian Bruhin 67ae39561a ci: Use -x for cherry picks 2023-08-17 12:42:21 +02:00
Florian Bruhin fa74860417 ci: Use earlier release ID 2023-08-17 12:42:21 +02:00
Florian Bruhin c10cda7d4a ci: Use github script to update release
See https://github.com/softprops/action-gh-release/issues/163
2023-08-17 12:42:21 +02:00
Florian Bruhin 60bb247f0d scripts: Fix name for Windows installer
Regressed in c2210539a9e2be1deacf8df8f432e035d9b9b9f0:
The current NSIS installer still adds the suffix. Let's keep it there for now
until we switch to the rewritten one.

See #6050
2023-08-17 12:41:35 +02:00
Florian Bruhin ae150d3a97 scripts: Don't upload PGP signature to PyPI
See https://blog.pypi.org/posts/2023-05-23-removing-pgp/
2023-08-17 12:41:35 +02:00
Florian Bruhin 680a941e64 scripts: Fix artifact list on Windows
Regressed in c2210539a9e2be1deacf8df8f432e035d9b9b9f0:
We don't want to return a list of lists.
2023-08-17 12:40:24 +02:00
Florian Bruhin 66f654b95c scripts: Avoid inputs on CI when releasing 2023-08-17 12:39:00 +02:00
Florian Bruhin a59bf7bc5b ci: Set twine PyPI token 2023-08-17 12:39:00 +02:00
Florian Bruhin 0e07d3b7b6 scripts: Show more info when no release was found 2023-08-17 12:39:00 +02:00
Florian Bruhin ab820fe8a0 ci: Set up asciidoc properly for releases 2023-08-17 12:39:00 +02:00
Florian Bruhin 13ddb50170 ci: More automatic release improvements/fixes 2023-08-17 12:36:25 +02:00
Florian Bruhin 9757fa79ee ci: Use GitHub Script to get release branch
By default, we only get a narrow checkout, so we don't know about any
other branches. Use the GitHub API and some JS to get the release branch
instead.
2023-08-17 12:36:25 +02:00
Florian Bruhin 950d06ad5b ci: Initial automatic release support
See #3725
2023-08-17 12:35:53 +02:00
Florian Bruhin 704d0b8258 child event filter: Loosen check to only consider QWidget
Follow-up to a46e9f2036 to work correctly with
older Qt versions (< 6.4), where this is not a QQuickWidget apparently.

This also means we can simplify the workaround, as we are guaranteed to be on Qt
6.4+ anyways.

See #7820, #7831
2023-08-16 22:01:58 +02:00
Florian Bruhin a46e9f2036 child event filter: Ignore non-QQuickWidget children
When pressing buttons on some websites, or when starting to drag, it looks like
the WebView gets new QObject children which are not actually their focus proxy.

So far, this wasn't a big issue: We only ended up installing the tab event
filter on objects where it doesn't belong.

However, with the new focus workaround from #7820, we then ended up calling
`.setFocus()` on those QObjects, causing an AttributeError.

Thus, just don't do anything if we get new children that are not actually a
QQuickWidget.

Fixes #7831
2023-08-16 21:13:48 +02:00
Florian Bruhin d7b33759e5 Update content.headers.user_agent completion 2023-08-16 10:06:22 +02:00
Philipp Albrecht 5faae69f77 Skip invalid history items when saving a session
Opening a download in a new tab leaves a "dead" tab (see example of a "dead" tab below)
behind. When saving a session containing such a "dead" tab, we end up with entries in
the session like this one:
```yaml
  - active: true
    history:
    - active: true
      last_visited: '1970-01-01T02:00:00'
      pinned: false
      scroll-pos:
        x: 0
        y: 0
      title: ''
      url: ''
      zoom: 1.0
```

When loading a session containing such a "dead" tab, qutebrowser does not restore any
history of that session and logs the following error:
```
ERROR: Failed to load session default: PyQt6.QtCore.QUrl('') is not valid
```

As pointed out by @The-Compiler in this comment[1], the behavior of
`QWebEngineHistoryItem::isValid()`[2] changed somehow between Qt 6.4 and 6.5.
`QWebEngineHistoryItem::isValid()` now returns `True` for "dead" tabs, even though the
history item is not valid (i.e. `url().isValid()` returns `False`).

To fix this we simply add an additional check if the URL is valid before adding a tab to
the session to be saved.

[1] https://github.com/qutebrowser/qutebrowser/issues/7696#issuecomment-1672854592
[2] https://github.com/qt/qtwebengine/blob/v6.5.2/src/core/api/qwebenginehistory.cpp#L69-L75
2023-08-16 09:39:51 +02:00
Florian Bruhin 0d431ddc5d tests: Install more requirements from Riverbank PyPI server 2023-08-15 22:30:58 +02:00
Florian Bruhin cbdf18919c Skip too flaky cross-origin focus test 2023-08-15 20:33:58 +02:00
Florian Bruhin a25e7c2b64 Fix remaining references to old commands
Follow-up to #7809, see #7214
2023-08-15 20:15:48 +02:00
Florian Bruhin ed77670092 Update changelog 2023-08-15 20:07:16 +02:00
Florian Bruhin 3fd8e12949 Merge remote-tracking branch 'origin/pr/7809' 2023-08-15 20:04:30 +02:00
Florian Bruhin a196344742 ci: Use proper image for Qt 6 bleeding tests 2023-08-15 19:31:36 +02:00
Florian Bruhin b55a9f794b Rewrite cross-origin navigation test to use scrolling
Hopefully makes it more reliable
2023-08-15 19:29:45 +02:00
Florian Bruhin aea803cffa docker: Install xcb-utils-cursor on Arch for Qt 6 2023-08-15 19:11:49 +02:00
Florian Bruhin 403301223c wip: Add Qt 6 bleeding tests to CI 2023-08-15 19:05:19 +02:00
Florian Bruhin 8221fd7878 wip: Add Qt 6 bleeding tests to CI 2023-08-15 18:57:17 +02:00
Florian Bruhin 9a90a3950f wip: Add Qt 6 bleeding tests to CI 2023-08-15 18:30:00 +02:00
Florian Bruhin 0c0bad05cd ci: Upgrade bleeding tests to Qt 6 2023-08-15 17:04:50 +02:00
Florian Bruhin 66254e7e6e Fix bookmark tests, part 2 2023-08-15 16:51:08 +02:00