[Development] QtWebKit is coming back (part 2)

Konstantin Tokarev annulen at yandex.ru
Wed May 3 16:02:37 CEST 2017

Hi all,

A lot of time has passed since original thread [1]. Lots of work was done since then, and it took much more time than what I've originally planned, however I think now we can use updated QtWebKit as a full replacement of our previous branch that didn't have updates of WebKit engine since Qt 5.2.

You can find results of this work in wip/next branch of our QtWebKit repository [2] that is checked by Coin on desktop Linux, macOS, and Windows (both MSVC and MinGW) configurations.

QtWebKit Technology Preview 5 [3], based on this branch, is already packaged by Arch Linux [4] and MSYS2 [5], while KaOS Linux distribution ships it as a replacement for old QtWebKit package [6]. It also has had extensive testing by developers and users of such open source projects as PhantomJS [7], Otter Browser [8], Qutebrowser [9]. Lots of bugs were discovered and fixed in the process, a few are not fixed yet but there are no real showstoppers.

Major concern, rased in the previous discussion, was feature parity. You can see current status at [10], all major gaps were filled, including support for QML API (WebKit 2) on Windows that was causing concerns previously (it isn't merged to wip/next yet, but works here). There are still a few missing features in QML API, but they affect undocumented experimental part of the API.

I propose we should replace contents of dev branch with wip/next as soon as WebKit2/Windows patches are landed. I also think it would be better to release it alongside with Qt 5.9 instead of current 5.9 branch contents to stop proliferation of old insecure WebKit version. I understand that it does not fit into existing schedule of Qt 5.9, however in the previous discussion Lars supported the idea of having independent schedule for QtWebKit

Remaining question is versioning. While it's fine to dub current release "5.9" (but not 5.0, because we will have another WebKit update in 5.10 time frame), using Qt versions in QtWebKit has downsides:

1. It is not clear if 5.N+1 ships with the same WebKit branch as 5.N, or is updated
2. It makes people believe that QtWebKit 5.N should be used with Qt 5.N only. QtWebKit supports wide range of Qt versions (starting from 5.2 as of now), and can be used e.g. as security update in Linux distro that does not normally update Qt version during its life cycle.

Any comments?


[1] http://lists.qt-project.org/pipermail/development/2016-June/026156.html
[2] https://code.qt.io/qt/qtwebkit.git; it contains snapshots from https://github.com/annulen/webkit with unnecessary files excluded
[3] https://github.com/annulen/webkit/releases/tag/qtwebkit-tp5
[4] https://www.archlinux.org/packages/extra/x86_64/qt5-webkit-ng/
[5] http://repo.msys2.org/mingw/x86_64/mingw-w64-x86_64-qtwebkit-tp5-4-any.pkg.tar.xz
[6] http://kaosx.tk/packages/index.php?act=show&subdir=main&sortby=date&file=qtwebkit-tp-
[7] http://phantomjs.org/
[8] http://otter-browser.org/
[9] http://qutebrowser.org/
[10] https://github.com/annulen/webkit/wiki/Comparison-with-QtWebKit-5.6


More information about the Development mailing list