Open Source communities e.g. GNOME, WebKit (WebKitGTK, a11y), Chromium Other work done in the past: Linux-based OS’s (i.e. Endless OS, Litl OS) Maemo (Hildon Application Manager) Samsung SmartTV platform Currently coordinating Igalia's WebKit team 2
remote, headquartered in A Coruña, Galicia (Spain) Worker-owned, employee-run, flat structure (140+ igalians) Top contributors to the main Web Rendering Engines: WebKit, Chromium, Gecko and Servo Active contributor to other areas and OSS projects V8, SpiderMonkey, JSC, LLVM, Node.js, GStreamer, Mesa, Linux Kernel... Members of several working groups: W3C, WHATWG, WPT, TC39, OpenJS, Test262, Khronos... https://www.igalia.com 4
ports WebKitGTK: aimed at desktop (i.e. go-to solution for GTK applications) WPE: aimed at embedded (i.e. low resources footprint, extra flexibility...) Implementation of Web standards and JavaScript features Port-independent contributions to WebCore and JavaScriptCore Other: e.g. bugfixing, security, performance improvements, QA, 32-bit support... 6
game consoles Smart home appliances and home automation devices HiFi audio/sound systems & music streaming In-vehicle and in-flight infotainment systems Navigational and GPS-based instrumentation Medical devices (e.g. patient health monitors) Digital signage QA & testing 7
small embedded devices Quality assurance and Security Better development tools and documentation More efficient collaboration: e.g. ports alignment (fewer different architectures, less port-specific code), better communication increased collaboration among different teams... 9
on large pages HTML Fetch Priority attributes Optimize resource loading Popover API Easy creation of native pop-over elements Secure Curves in the Web Cryptography API Algorithms Ed25519 and X25519 in WebKitGTK Algorithm X25519 in the Mac port 14
and added WebGL2 support Buffer sharing architecture (i.e. DMAbuf in linux) Removed dependency on the internal Wayland server Synchronization using displayLink architecture 2D rendering engine replacement for cairo Experimental GPUProcess support (WIP). New SVG engine (LBSE: Layer-Based SVG Engine) SVG layers support as a 1st-class citizen in the engine Enables HW acceleration for SVG rendering 15
IDL to platform layers Improvements on WebCodecs video encoder/decoder GStreamer-based WebRTC backends Improved video loop behaviour Improved power comsumption (e.g. auto-play, muted videos) General maintenance (e.g. MSE, EME...) 16
in Air on ARMv7 Reduces generated code size for WASM by ~30% Worked on Concurrent JIT Worked on WASM BBQJIT (99% done) Worked on the B3 low level optimizer Needed to enable OMG for WASM and FTL for JavaScript WASM GC Contribute initial implementation (WIP) 17
new port needed, just the WPE's public API Multiple architectures: arm64, armv7, x86-64, x86 Native integration with Android HW acceleration and WebGL support 19
amount of tests running on WebKitGTK and WPE: WebKitGTK: from ~62.5K to 69.5K tests (+11.2%) WPE: from ~56K to 62.5K tests (+11.6%) Reduced amount of skipped tests on WebKitGTK and WPE: WebKitGTK: from ~14K tests to.7K tests (-10.2%) WPE: from ~21.2K to 20K tests (-6%) 20
libraries (and not all versions supported) JHBuild not great for reproduceability; flatpak not great for development Solution: container-based SDK (OCI compatible) Reproduceable and share-able environment, it includes all the usual tools Cover all the development workflows (including hacking on dependencies) 23
browser navigation actions and examine history Add support for Attribute of the NavigateEvent interface True if the UA performed a visual transition before a navigation event Navigation API hasUAVisualTransition 25
architecture, simplify and refactor Extend the use of the DMAbuf architecture (API change in WPE) 2D rendering engine replacement for cairo Integrate GPUProcess support. New SVG engine (LBSE): Finish upstreaming the remaining patches Ensure good test coverage and no performance regressions Turn on LBSE by default and remove the legacy SVG engine 26
(99% done) Enable OMG for WASM and FTL for JavaScript Need to finish implementing B3 support first Investigate and optimize heap/JIT memory usage in 32-bit WASM GC: Land patches to provide full support and ship the feature 28
& start upstreaming ASAP Review all API docs and write guides and tutorials Deprecate the old API (won't be removed in the short term) ⚠️ No specific release date (i.e. best-effort) 29
Immediate steps: Update to the latest stable version of WPE WebDriver support + Web Platform Test suite Implement missing functionality Conformance testing Other: HTTP/2 support, WebInspector... 30
the new SDK in the bots simplifying the QA procedure Keep using flatpak for releasing nightlies (i.e. Epiphany Tech Preview) Prepare GTK bots to use GTK4 by default 31