-
Notifications
You must be signed in to change notification settings - Fork 73
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
wpewebkit,webkitgtk: Bump to version 2.46.1 #509
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@psaavedra Changes LGTM in general. We may want to add this somewhere in wpewebkit.inc
, though:
EXTRA_OECMAKE += "-DENABLE_WPE_PLATFORM=OFF"
(See this message in the mailing list, I forgot to make that option disabled by default in the release branch.)
Actually, that won't work, there's an unconditional |
Here's the patch needed to be able to toggle the option: WebKit/WebKit#33819 |
8b3e7c6
to
5d9b0e8
Compare
@aperezdc , I have a doubt for the GTK build: | -- No package 'sysprof-capture-4' found. Is sysprof really a mandatory depends? Can we set this depends off? |
You can go with |
5d9b0e8
to
963c326
Compare
we are getting a build error for the WebKitGTK build:
I am not familiar with this code. The error indicates that |
Likely the issue could be related with this flag:
|
bb08c1a
to
3c670a0
Compare
Maybe you will want to pick WebKitGTK 2.46.1 and wait for the corresponding WPE release 😉. |
|
|
||
SRC_URI:class-devupstream = "git://github.com/WebKit/WebKit.git;protocol=https;branch=main" | ||
|
||
SRCREV:class-devupstream = "8db1e051cf4a6d7877dd51b81b478e8367d3f052" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
eacf9977760d4ea5dfcb736be73ae48c7df16f27 ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
that tags belongs to the wpewebkit-2.46.1 branch. Notice that the SRC_URI:class-devupstream points to the main
branch what is the default upstream branch for development. In general, I use the latest common commit between the release branch and main (git merge-base main wpewebkit-2.46.1
) to set this value.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be eacf9977760d4ea5dfcb736be73ae48c7df16f27
, indeed:
The devupstream class uses BBCLASSEXTEND to add a variant of the recipe that fetches from an alternative URI (e.g. Git) instead of a tarball.
When building with devupstream
the sources fetched should be the same as without, and in the case of a tarball release, that corresponds to the exact commit used to generate the tarball.
Using any other commit breaks that expectation.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@Qingwu-Li @aperezdc Ok, your argument has changed my point of view. I have added this additional commit: abd8ebd, as we were using devupstream differently for referencing the upstream top-of-tree
80252d9
to
b051a38
Compare
@@ -0,0 +1,19 @@ | |||
From: Alberto Garcia <[email protected]> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@bertogg Any chance you could send this patch upstream?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I still have a couple of comments.
Also, the build is currently broken with -DENABLE_VIDEO=OFF
(both in main
and in the 2.46 release branch); there are patches being worked on for this.
|
||
SRC_URI:class-devupstream = "git://github.com/WebKit/WebKit.git;protocol=https;branch=main" | ||
|
||
SRCREV:class-devupstream = "8db1e051cf4a6d7877dd51b81b478e8367d3f052" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be eacf9977760d4ea5dfcb736be73ae48c7df16f27
, indeed:
The devupstream class uses BBCLASSEXTEND to add a variant of the recipe that fetches from an alternative URI (e.g. Git) instead of a tarball.
When building with devupstream
the sources fetched should be the same as without, and in the case of a tarball release, that corresponds to the exact commit used to generate the tarball.
Using any other commit breaks that expectation.
Changes: * Skia is used instead of Cairo for 2D rendering, and GPU rendering is enabled by default. * Offscreen Canvas is now enabled by default. * Add support for system tracing using Sysprof. * Add new API to load settings from a config file. * Add a new setting to toggle 2D Canvas acceleration (enabled by default). * Undeprecate console messages API and make it available in the 2.0 API. * Fix login QR code not shown in WhatsApp web. * Disable PSON by default again in GTK 3 API versions. * Disable DMABuf video sink by default to prevent file descriptor leaks. * Fix the build with GCC 13. * Fix several crashes and rendering issues. Release Notes: * https://wpewebkit.org/release/wpewebkit-2.46.0.html * https://wpewebkit.org/release/wpewebkit-2.46.1.html wip
* Create new recipe for version 2.46.1 * Delete recipes for version 2.42.5 Changes: * Skia is used instead of Cairo for 2D rendering, and GPU rendering is enabled by default. * Offscreen Canvas is now enabled by default. * Add support for system tracing using Sysprof. * Add new API to load settings from a config file. * Add a new setting to toggle 2D Canvas acceleration (enabled by default). * Undeprecate console messages API and make it available in the 2.0 API. * Use the Skia CPU renderer by default, which at the moment performs better in a number of embedded devices. The GPU renderer is still available and may be enabled by setting WEBKIT_SKIA_ENABLE_CPU_RENDERING=0 in the environment. * Add an ENABLE_WPE_PLATFORM build option to CMake. This is disabled by default because the WPEPlatform API is in development and provided as part of the 2.46.x releases as a preview feature. * Fix login QR code not shown in WhatsApp web. * Fix processes not spawning when process startup is customized using the wpe_process_provider API from libwpe. * Fix mouse simulation with WebDriver when using a classic WPE backend through libwpe. * Disable DMABuf video sink by default to prevent file descriptor leaks. * Fix building the MiniBrowser. * Fix the build with libsysprof-capture version 44 and older. * Fix the build with GCC 13. * Fix several crashes and rendering issues. Release Notes: * https://wpewebkit.org/release/wpewebkit-2.46.0.html * https://wpewebkit.org/release/wpewebkit-2.46.1.html Also CI updates in the build tests jobs definitions: * Update test jobs definitions to primary build 2.46.X * Remove preset for 2.42 and add a new one for 2.42
While building WPEWebKit on musl-based systems, errors occur due to the absence of roundevenf and roundeven functions. These are not available in musl and other non-glibc platforms. This patch provides fallback implementations for both functions. Upstream: https://bugs.webkit.org/show_bug.cgi?id=281216
9080e95
to
a5ba3dd
Compare
* drm: Fix handling of the scaling factor setting. * gtk4: Take scaling factor into account for pointer events. * launcher: Support toggling WebKit features with a new --features/-F command line option, when built against WebKit 2.42.0 or newer. * meson: Fix the build in systems where the ln command cannot calculate relative symlink target paths. * wl: Fix some items in popup menus not being rendered. * wl: Add support for weston-protocols version 14. Release Notes: * https://wpewebkit.org/release/cog-0.18.3.html * https://wpewebkit.org/release/cog-0.18.4.html
* Fix build issues in some configurations that require en explicit cast to EGLNativeWindowType. * Fix memory leak when the view backend wl_resource is destroyed. * Fix wpe_dmabuf_pool object leak. Release Notes: * https://wpewebkit.org/release/wpebackend-fdo-1.14.3.html
According to the Yocto documentation [1], the devupstream class uses BBCLASSEXTEND to create a variant of the recipe that fetches sources from an alternative URI (e.g., Git) instead of a tarball. When building with devupstream, the sources fetched should match those from the non-devupstream build, meaning the exact commit used to generate the tarball release should be fetched. - Update various SRCBRANCH and SRCREV fields for devupstream class: - Set 'master' as the default branch for pn-cog, pn-libwpe, and pn-wpebackend-fdo. - Change branch for pn-wpewebkit to 'main'. - Modify cog recipe (cog_0.18.4.bb): - Use branch 'cog-0.18' instead of 'master'. - Update SRCREV to 'c4625676a21308e7c82175f1ce9a6c8849f22800'. - Modify libwpe recipe (libwpe_1.16.0.bb): - Use branch 'libwpe-1.16'. - Update SRCREV to '782026ce4976a35e9343ba75aefe379b0d8428f7'. - Modify wpebackend-fdo recipe (wpebackend-fdo_1.14.3.bb): - Use branch 'wpebackend-fdo-1.14'. - Update SRCREV to '04ccf2ef1753e72345770fb0a60bf38c5a100de8'. - Remove outdated wpebackend-fdo_devupstream.bb file. - Modify wpewebkit recipe (wpewebkit_2.46.1.bb): - Use branch 'webkitglib/2.46'. - Update SRCREV to 'eacf9977760d4ea5dfcb736be73ae48c7df16f27'. [1] https://docs.yoctoproject.org/ref-manual/classes.html#ref-classes-devupstream
Updated the preferred versions for several components in the WebKit WPE stack to use specific stable versions, replacing AUTOINC placeholders for more controlled and predictable builds. - Set PREFERRED_VERSION_cog to 0.18+https - Set PREFERRED_VERSION_libwpe to 1.16+https - Set PREFERRED_VERSION_wpebackend-fdo to 1.14+https - Set PREFERRED_VERSION_wpebackend-rdk to 1.20221201+git - Set PREFERRED_VERSION_wpewebkit to 2.46+https
Could you be more specific? I see WebKit/WebKit#35004 which is being about to be landed which this partially depends of 2f4378eb7afab. Is this what you are making a reference in you previous comment? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for all the updates to the PR, LGTM!
All these three patches to be able to build with multimedia support disabled:
I have backported them all into the If you are going to import the patches into |
About the |
@psaavedra And one more fix for ARM NEON (needed e.g. for the Raspberry Pi 4) → WebKit/WebKit#35244 @blino I will push the |
Thanks @aperezdc I will take care of those patches and I will add it in a subsequent PR. 🙇🏼 |
Changes:
Release Notes:
Also CI updates in the build tests jobs definitions: