WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
Bug 184357
[WPE] Switch testing process to using WPEBackend-fdo
https://bugs.webkit.org/show_bug.cgi?id=184357
Summary
[WPE] Switch testing process to using WPEBackend-fdo
Zan Dobersek
Reported
2018-04-06 05:52:01 PDT
[WPE] Switch testing process to using WPEBackend-fdo
Attachments
Patch
(26.45 KB, patch)
2018-04-06 06:02 PDT
,
Zan Dobersek
no flags
Details
Formatted Diff
Diff
Patch
(27.17 KB, patch)
2018-04-06 06:13 PDT
,
Zan Dobersek
no flags
Details
Formatted Diff
Diff
Patch
(27.78 KB, patch)
2018-04-11 00:41 PDT
,
Zan Dobersek
no flags
Details
Formatted Diff
Diff
Patch for landing
(27.59 KB, patch)
2018-04-11 23:50 PDT
,
Zan Dobersek
no flags
Details
Formatted Diff
Diff
Show Obsolete
(3)
View All
Add attachment
proposed patch, testcase, etc.
Zan Dobersek
Comment 1
2018-04-06 06:02:29 PDT
Created
attachment 337357
[details]
Patch
EWS Watchlist
Comment 2
2018-04-06 06:04:07 PDT
Attachment 337357
[details]
did not pass style-queue: ERROR: Tools/wpe/HeadlessViewBackend/HeadlessViewBackend.cpp:223: The parameter name "!" adds no information, so it should be removed. [readability/parameter_name] [5] Total errors found: 1 in 10 files If any of these errors are false positives, please file a bug against check-webkit-style.
Zan Dobersek
Comment 3
2018-04-06 06:13:31 PDT
Created
attachment 337359
[details]
Patch
EWS Watchlist
Comment 4
2018-04-06 06:16:07 PDT
Attachment 337359
[details]
did not pass style-queue: ERROR: Tools/wpe/HeadlessViewBackend/HeadlessViewBackend.cpp:223: The parameter name "!" adds no information, so it should be removed. [readability/parameter_name] [5] Total errors found: 1 in 11 files If any of these errors are false positives, please file a bug against check-webkit-style.
Carlos Garcia Campos
Comment 5
2018-04-06 06:36:35 PDT
Comment on
attachment 337359
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=337359&action=review
> Tools/Scripts/webkitpy/port/wpe.py:-71 > - return HeadlessDriver
Should we remove the headless driver then? or is it used somewhere else?
> Tools/Scripts/webkitpy/port/wpe.py:69 > + return WaylandDriver
I find confusing that wayland driver is used unconditionally but the headless backend is now used unconditionally too.
Carlos Garcia Campos
Comment 6
2018-04-06 06:41:24 PDT
Comment on
attachment 337359
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=337359&action=review
> Tools/TestWebKitAPI/glib/WebKitGLib/TestMain.h:-146 > - const char* useHeadlessViewBackend = g_getenv("WPE_USE_HEADLESS_VIEW_BACKEND");
I guess we should also stop setting this variable in the scripts to run api and layout tests.
Carlos Alberto Lopez Perez
Comment 7
2018-04-06 07:28:25 PDT
Comment on
attachment 337359
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=337359&action=review
Setting r- because wpebackend-fdo still doesn't handle input and its not possible to use a keyboard or a mouse with dyz, which is needed for testing.
>> Tools/Scripts/webkitpy/port/wpe.py:69 >> + return WaylandDriver > > I find confusing that wayland driver is used unconditionally but the headless backend is now used unconditionally too.
I also find this confusing. I think the HeadlessDriver should inherit from WaylandDriver but keep its name as headless. And ideally the WaylandDriver would work also (if specified via command-line argument), but the screen output will appear on the screen
Zan Dobersek
Comment 8
2018-04-11 00:41:30 PDT
Created
attachment 337685
[details]
Patch
EWS Watchlist
Comment 9
2018-04-11 00:43:45 PDT
Attachment 337685
[details]
did not pass style-queue: ERROR: Tools/wpe/HeadlessViewBackend/HeadlessViewBackend.cpp:223: The parameter name "!" adds no information, so it should be removed. [readability/parameter_name] [5] Total errors found: 1 in 12 files If any of these errors are false positives, please file a bug against check-webkit-style.
Carlos Alberto Lopez Perez
Comment 10
2018-04-11 05:34:44 PDT
Comment on
attachment 337685
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=337685&action=review
> Tools/Scripts/webkitdirs.pm:1039 > if (isWPE()) { > - return "$configurationProductDir/lib/libWPEWebKit.so"; > + return "$configurationProductDir/lib/libWPEWebKit-0.1.so";
There is an issue with this change: it breaks run-minibrowser script: Can't find built framework at "/home/clopez/webkit/wpe/WebKitBuild/Release/lib/libWPEWebKit-0.1.so". I think leaving it here pointing to the generic .so symlink is the right thing to do IMHO, because that way it won't break when the soname changes. In the run-minibrowser script we only want to check that the framework has been built, checking the generic .so is enough for that. But then, If I revert that and try to run dyz I still get this error: lib/wpewebkit_glibapi.lua:3: libWPEWebKit-0.1.so: cannot open shared object file: No such file or directory This seems to be caused by dyz commit
https://github.com/Igalia/dyz/commit/e13c39fb6c225f7c464c772df071d04018881c4e
The installable version of the library is versioned 1.0 $ ls -l WebKitBuild/Release/lib/libWPEWebKit.so.* lrwxrwxrwx 1 clopez clopez 21 Apr 11 13:45 WebKitBuild/Release/lib/libWPEWebKit.so.1 -> libWPEWebKit.so.1.0.0 -rwxr-xr-x 1 clopez clopez 86654672 Apr 11 13:45 WebKitBuild/Release/lib/libWPEWebKit.so.1.0.0 Why it has been changed to 0.1 in dyz without changing also it on wpe as well?
Zan Dobersek
Comment 11
2018-04-11 05:50:11 PDT
Comment on
attachment 337685
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=337685&action=review
>> Tools/Scripts/webkitdirs.pm:1039 >> + return "$configurationProductDir/lib/libWPEWebKit-0.1.so"; > > There is an issue with this change: it breaks run-minibrowser script: Can't find built framework at "/home/clopez/webkit/wpe/WebKitBuild/Release/lib/libWPEWebKit-0.1.so". > > I think leaving it here pointing to the generic .so symlink is the right thing to do IMHO, because that way it won't break when the soname changes. In the run-minibrowser script we only want to check that the framework has been built, checking the generic .so is enough for that. > > > But then, If I revert that and try to run dyz I still get this error: > > lib/wpewebkit_glibapi.lua:3: libWPEWebKit-0.1.so: cannot open shared object file: No such file or directory > > This seems to be caused by dyz commit
https://github.com/Igalia/dyz/commit/e13c39fb6c225f7c464c772df071d04018881c4e
> > The installable version of the library is versioned 1.0 > > $ ls -l WebKitBuild/Release/lib/libWPEWebKit.so.* > lrwxrwxrwx 1 clopez clopez 21 Apr 11 13:45 WebKitBuild/Release/lib/libWPEWebKit.so.1 -> libWPEWebKit.so.1.0.0 > -rwxr-xr-x 1 clopez clopez 86654672 Apr 11 13:45 WebKitBuild/Release/lib/libWPEWebKit.so.1.0.0 > > > Why it has been changed to 0.1 in dyz without changing also it on wpe as well?
This already landed:
https://bugs.webkit.org/show_bug.cgi?id=180608
Carlos Alberto Lopez Perez
Comment 12
2018-04-11 06:28:12 PDT
(In reply to Zan Dobersek from
comment #11
)
> Comment on
attachment 337685
[details]
> Patch > > View in context: >
https://bugs.webkit.org/attachment.cgi?id=337685&action=review
> > >> Tools/Scripts/webkitdirs.pm:1039 > >> + return "$configurationProductDir/lib/libWPEWebKit-0.1.so"; > > > > There is an issue with this change: it breaks run-minibrowser script: Can't find built framework at "/home/clopez/webkit/wpe/WebKitBuild/Release/lib/libWPEWebKit-0.1.so". > > > > I think leaving it here pointing to the generic .so symlink is the right thing to do IMHO, because that way it won't break when the soname changes. In the run-minibrowser script we only want to check that the framework has been built, checking the generic .so is enough for that. > > > > > > But then, If I revert that and try to run dyz I still get this error: > > > > lib/wpewebkit_glibapi.lua:3: libWPEWebKit-0.1.so: cannot open shared object file: No such file or directory > > > > This seems to be caused by dyz commit
https://github.com/Igalia/dyz/commit/e13c39fb6c225f7c464c772df071d04018881c4e
> > > > The installable version of the library is versioned 1.0 > > > > $ ls -l WebKitBuild/Release/lib/libWPEWebKit.so.* > > lrwxrwxrwx 1 clopez clopez 21 Apr 11 13:45 WebKitBuild/Release/lib/libWPEWebKit.so.1 -> libWPEWebKit.so.1.0.0 > > -rwxr-xr-x 1 clopez clopez 86654672 Apr 11 13:45 WebKitBuild/Release/lib/libWPEWebKit.so.1.0.0 > > > > > > Why it has been changed to 0.1 in dyz without changing also it on wpe as well? > > This already landed: >
https://bugs.webkit.org/show_bug.cgi?id=180608
aggh... i missed that .. having different repos pointing to each one is a mess when updating, my fault... But then, that also means that the wpe run-minibrowser script has been broken since then :(
Carlos Alberto Lopez Perez
Comment 13
2018-04-11 07:30:04 PDT
Comment on
attachment 337685
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=337685&action=review
both dyz and layout-tests work fine for me now and the patch is fine, so r+
> Tools/Scripts/webkitpy/port/wpe.py:69 > - if self._display_server == "wayland": > - return WaylandDriver > - return HeadlessDriver > + return WaylandDriver
I think we need to implement some function like gtk.py:check_sys_deps() so it aborts early if no wayland env is detected, but we can do that in a another patch I also keep thinking the name is not the best, we are reusing the wayland driver for a headless driver that runs inside a wayland env, but ok for now
Michael Catanzaro
Comment 14
2018-04-11 08:38:55 PDT
Comment on
attachment 337685
[details]
Patch I believe this breaks all the WebKitWebView constructors, which guarantee that a default backend is used when passed NULL for the WebKitWebViewBackend parameter. Correct? So we need to change all five of the WebKitWebView constructors. For example, we would change: * webkit_web_view_new_with_related_view: (constructor) * @backend: (nullable) (transfer full): a #WebKitWebViewBackend, or %NULL to use the default * @web_view: the related #WebKitWebView to: * webkit_web_view_new_with_related_view: (constructor) * @backend: (transfer full): a #WebKitWebViewBackend * @web_view: the related #WebKitWebView dropping the (nullable), and then add a corresponding g_return_val_if_fail: g_return_val_if_fail(WEBKIT_IS_WEB_VIEW_BACKEND(backend, nullptr); g_return_val_if_fail(WEBKIT_IS_WEB_VIEW(webView), nullptr);
Michael Catanzaro
Comment 15
2018-04-11 09:07:37 PDT
(In reply to Michael Catanzaro from
comment #14
)
> Comment on
attachment 337685
[details]
> Patch > > I believe this breaks all the WebKitWebView constructors, which guarantee > that a default backend is used when passed NULL for the WebKitWebViewBackend > parameter. Correct?
OK, this particular change does not itself break anything, but the implication of this change is that we will change WPEBackend-fdo to install the WPEBackend-default symlink. (Otherwise, we should not be changing the test infrastructure to test it.) And changing the default backend will break these APIs.
Michael Catanzaro
Comment 16
2018-04-11 14:59:17 PDT
(In reply to Michael Catanzaro from
comment #14
)
> Comment on
attachment 337685
[details]
> Patch > > I believe this breaks all the WebKitWebView constructors, which guarantee > that a default backend is used when passed NULL for the WebKitWebViewBackend > parameter. Correct?
You fixed this in
bug #184513
, thanks. Feel free to land this with Carlos Lopez's name as reviewer.
Zan Dobersek
Comment 17
2018-04-11 23:50:55 PDT
Created
attachment 337775
[details]
Patch for landing
EWS Watchlist
Comment 18
2018-04-11 23:52:52 PDT
Attachment 337775
[details]
did not pass style-queue: ERROR: Tools/wpe/HeadlessViewBackend/HeadlessViewBackend.cpp:223: The parameter name "!" adds no information, so it should be removed. [readability/parameter_name] [5] Total errors found: 1 in 12 files If any of these errors are false positives, please file a bug against check-webkit-style.
Zan Dobersek
Comment 19
2018-04-12 01:19:37 PDT
Comment on
attachment 337775
[details]
Patch for landing Clearing flags on attachment: 337775 Committed
r230562
: <
https://trac.webkit.org/changeset/230562
>
Zan Dobersek
Comment 20
2018-04-12 01:19:41 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 21
2018-04-12 01:20:28 PDT
<
rdar://problem/39374557
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug