Skip to content

Commit b6fbc1a

Browse files
committed
Triage 22 commits
1 parent ce0f012 commit b6fbc1a

File tree

2 files changed

+74
-24
lines changed

2 files changed

+74
-24
lines changed

commits.txt

Lines changed: 38 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,8 @@ https://github.com/servo/servo/pull/40307 (@mukilan, @mrobinson, #40307) composi
6767
# And let the Compositor create the `PainterId` when it creates a new `Painter`. Also make inline formatting code take
6868
# `LayoutContext` rather than threading it via the `InlineFormattingContextBuilder`.
6969
# Testing: Should preserve existing behavior, so covered by existing tests.
70-
https://github.com/servo/servo/pull/40158 (@mrobinson, #40158) pixels: Store decoded images as RGBA premultiplied data (#40158)
70+
+https://github.com/servo/servo/pull/40158 (@mrobinson, #40158) pixels: Store decoded images as RGBA premultiplied data (#40158)
71+
perf; faster animated GIF rendering
7172
# Canvas expects input data to be in RGBA premultiplied format and
7273
# WebRender already supports RGBA and BGRA data as long as they are
7374
# premultiplied. Pre-multiplying up front allows:
@@ -88,7 +89,8 @@ https://github.com/servo/servo/pull/40158 (@mrobinson, #40158) pixels: Store dec
8889
# from things like image elements. We do not have that yet, but I argue that this change
8990
# is important anyway due to the amount that it reduces memory and file descriptor usage
9091
# as well as the cost of copying image data so much in memory.
91-
https://github.com/servo/servo/pull/39384 (@shubhamg13, @boluochoufeng, #39384) Add support for LargestContentfulPaint PaintMetric (#39384)
92+
+https://github.com/servo/servo/pull/39384 (@shubhamg13, @boluochoufeng, #39384) Add support for LargestContentfulPaint PaintMetric (#39384)
93+
perf; LCP measurement
9294
# Steps for calculating LCP:
9395
# 1. When the pref for `largest_contentful_paint_enabled` is enabled, `LargestContentfulPaintCandidateCollector`
9496
# is created once per LayoutThread using `viewport_size`.
@@ -158,7 +160,7 @@ https://github.com/servo/servo/pull/40128 (@aaron-wgd, #40128) servoshell/deskto
158160
# Should fix docs workflow which currently fails because not enough space is left:
159161
# https://github.com/servo/servo/actions/runs/18964865479
160162
# run: https://github.com/servo/servo/actions/runs/18997885819
161-
https://github.com/servo/servo/pull/40327 (@mukilan, #40327) wpt: Have `ServoRefTestExecutor` inherit from `RefTestExecutor` (#40327)
163+
-https://github.com/servo/servo/pull/40327 (@mukilan, #40327) wpt: Have `ServoRefTestExecutor` inherit from `RefTestExecutor` (#40327)
162164
# Since `ProcessTestExecutor` is only used by Servo and doesn't add much
163165
# on top of `ServoExecutor`, merge the former into the latter.
164166
# Also make `ServoExecutor` a mixin so that the derived classes can
@@ -298,7 +300,8 @@ https://github.com/servo/servo/pull/40205 (@yerke, #40205) layout: Show pointer
298300
dom; toggle events on HTMLDetailsElement
299301
# Implement ToggleEvent and use for details element
300302
# Testing: Covered by existing WPTs
301-
https://github.com/servo/servo/pull/40328 (@mark-buer, #40328) devtools: Expose cache status for requests in network monitor. (#40328)
303+
+https://github.com/servo/servo/pull/40328 (@mark-buer, #40328) devtools: Expose cache status for requests in network monitor. (#40328)
304+
devtools
302305
# Expose cache status for requests in network monitor.
303306
# Testing: Net tests pass. No existing test infrastructure for devtools, adding them seems outside the scope of this PR.
304307
# Fixes: #40237
@@ -326,7 +329,8 @@ https://github.com/servo/servo/pull/40353 (@jdm, #40353) script: Trigger renderi
326329
# Testing: This change fixes some tests.
327330
# Fixes: #40348.
328331
>>> 2025-11-07T06:18:32Z
329-
https://github.com/servo/servo/pull/39714 (@shubhamg13, #39714) Add basic `IDL` implementation for `LargestContentfulPaint` (#39714)
332+
+https://github.com/servo/servo/pull/39714 (@shubhamg13, #39714) Add basic `IDL` implementation for `LargestContentfulPaint` (#39714)
333+
perf; `observe({type: "largest-contentful-paint"})` on PerformanceObserver
330334
# Add basic `IDL` implementation for `LargestContentfulPaint`
331335
# Testing: Tested locally
332336
# Fixes: N/A
@@ -380,7 +384,7 @@ https://github.com/servo/servo/pull/40462 (@Taym95, #40462) WebGLBuffer: follow
380384
# DOMString which owns the string it double copied it.
381385
# We now use Cow as input making both sides happy.
382386
# Testing: Does not change functionality.
383-
https://github.com/servo/servo/pull/40461 (@mrobinson, #40461) net: Simplify `FetchResponseListener` and move it to `script` (#40461)
387+
-https://github.com/servo/servo/pull/40461 (@mrobinson, #40461) net: Simplify `FetchResponseListener` and move it to `script` (#40461)
384388
# `FetchReponseListener` has traditionally lived in `net` even though it
385389
# is only used in `script` currently. Because of the two way dependency,
386390
# it has also use a lot of templating to implement something pretty basic
@@ -835,7 +839,7 @@ https://github.com/servo/servo/pull/40411 (@simonwuelker, #40411) xpath: Handle
835839
# cause unnecessary merge conflicts.
836840
# Testing: New web platform tests start to pass
837841
+https://github.com/servo/servo/pull/40402 (@mrobinson, @atbrakhi, #40402) libservo: Integrate context menu into the show_embedder_control API (#40402)
838-
api; rework context menu api, embedders can now know the position and know what each item does (`show_context_menu(webview, result_sender, title, items)` → `ContextMenu.{id,position,items,select,dismiss}()`)
842+
api servoshell; rework context menu api, embedders can now know the position and know what each item does (`show_context_menu(webview, result_sender, title, items)` → `ContextMenu.{id,position,items,select,dismiss}()`)
839843
# This PR integrates showing context menus into the
840844
# `WebViewDelegate::show_embedder_control` API. In addition,
841845
# `ContextMenuItem` and `ContextMenuAction` data types are exposed which
@@ -1784,7 +1788,8 @@ https://github.com/servo/servo/pull/40542 (@simonwuelker, #40542) xpath: Don't e
17841788
# Previously there where two functions defined in this function which was already
17851789
# roughly 600 lines. There was also a blocking section which was split out.
17861790
# Testing: Should not change functionality and tests still work.
1787-
https://github.com/servo/servo/pull/40501 (@mrobinson, @atbrakhi, #40501) script: Add context-based context menu options (#40501)
1791+
+https://github.com/servo/servo/pull/40501 (@mrobinson, @atbrakhi, #40501) script: Add context-based context menu options (#40501)
1792+
api servoshell; copy link, open link in new, copy image link, open image in new, cut, copy, paste, select all
17881793
# Add context menu options for images, links, and editable text areas. In
17891794
# addition add the ability to show menu options that are disabled. This
17901795
# also improves the visual style of the context menu in egui as part of
@@ -1801,7 +1806,8 @@ https://github.com/servo/servo/pull/40541 (@simonwuelker, #40541) tests: Import
18011806
# fixed in followup changes. Firefox and chrome both pass all tests.
18021807
# Testing: This change adds new tests
18031808
# Fixes #39726
1804-
https://github.com/servo/servo/pull/40554 (@Loirooriol, #40554) script: Pass the right base URI to inline sheets (#40554)
1809+
+https://github.com/servo/servo/pull/40554 (@Loirooriol, #40554) script: Pass the right base URI to inline sheets (#40554)
1810+
layout; inline <style> now takes <base> into account
18051811
# HTMLStyleElement was creating stylesheets using the URI of the document, ignoring ``.
18061812
# To avoid having to create the UrlExtraData twice (or clone it), this inlines the `stylesheetcontents_create_callback`.
18071813
# Testing: 2 WPT are now passing
@@ -2646,7 +2652,7 @@ https://github.com/servo/servo/pull/40616 (@TimvdLippe, #40616) Implement protoc
26462652
# [1]:
26472653
# https://github.com/rust-ammonia/rust-content-security-policy/blob/db8f2e97fed57a6f903ee4f5e8109e5ed4c10141/src/lib.rs#L1
26482654
# 550-L1569
2649-
https://github.com/servo/servo/pull/40643 (@kkoyung, #40643) script: Flatten nested match arms in `NormalizedAlgorithm` (#40643)
2655+
-https://github.com/servo/servo/pull/40643 (@kkoyung, #40643) script: Flatten nested match arms in `NormalizedAlgorithm` (#40643)
26502656
# This patch flattens nested match arms in `NormalizedAlgorithm` to simplify our code. Moreover, primarily matching
26512657
# the algorithm names, instead of matching the enum variant types, makes more sense, since some algorithms share
26522658
# the same enum variant type.
@@ -2888,14 +2894,14 @@ https://github.com/servo/servo/pull/40757 (@kongbai1996, #40757) compositing: Do
28882894
# This results in a significant reduction in the number of `FrameMsg::SetScrollOffsets`, which in turn greatly
28892895
# reduces the number of `set_scroll_offsets` calls in the WebRender backend. This is beneficial for performance.
28902896
# Testing: This is an attempt to increase performance, so is covered by existing tests.
2891-
https://github.com/servo/servo/pull/40758 (@jschwe, #40758) profiling: Fix missing span enter (#40758)
2897+
-https://github.com/servo/servo/pull/40758 (@jschwe, #40758) profiling: Fix missing span enter (#40758)
28922898
# If we don't enter the span, then nothing will be traced. This was overlooked during review of
28932899
# https://github.com/servo/servo/pull/40629.
28942900
# Also clean-up some `tracing` feature flag occurence, which is not needed when using the macro from profile_traits.
28952901
# Testing: Manually tested with `tracing-hitrace` feature
28962902
-https://github.com/servo/servo/pull/40755 (@sagudev, #40755) CI: Do not `fail_fast` on push to main (#40755)
28972903
# Fixes: #40741
2898-
https://github.com/servo/servo/pull/40753 (@mukilan, #40753) mach: Normalize the `--profile` argument to build commands (#40753)
2904+
-https://github.com/servo/servo/pull/40753 (@mukilan, #40753) mach: Normalize the `--profile` argument to build commands (#40753)
28992905
# The current logic treats the explict version of release and dev build specification i.e the `--profile release`
29002906
# and `--profile dev` options as custom profiles. This breaks other logic that explictly check for release and dev
29012907
# profile types, like the android build.
@@ -2907,7 +2913,8 @@ https://github.com/servo/servo/pull/40750 (@arihant2math, #40750) script: Finish
29072913
# I used find and replace to finish the job. All this PR does is replace all `Error::` occurrences with `Error::(None)`.
29082914
# Testing: Refactor
29092915
# Fixes: #39053
2910-
https://github.com/servo/servo/pull/40742 (@webbeef, #40742) script: Optimize Node::insert (#40742)
2916+
+https://github.com/servo/servo/pull/40742 (@webbeef, #40742) script: Optimize Node::insert (#40742)
2917+
perf; faster parseFromString() on DOMParser
29112918
# - Change how the static node list is built to prevent a second iteration of new_nodes
29122919
# - Memoize some invariants of the parent
29132920
# Testing: No wpt regressions: https://github.com/webbeef/servo/actions/runs/19493174678
@@ -3382,7 +3389,8 @@ https://github.com/servo/servo/pull/40707 (@yezhizhen, #40707) Revert servo/serv
33823389
# node. This is a crude implementation, because we currently aren't taking
33833390
# into account what attributes changed, but at least it works.
33843391
# Testing: This doesn't have any test changes, but should fix the test situation described in #40419.
3385-
https://github.com/servo/servo/pull/40607 (@mrobinson, #40607) libservo: Add `ContextMenuElementInformation` to for the context menu API (#40607)
3392+
+https://github.com/servo/servo/pull/40607 (@mrobinson, #40607) libservo: Add `ContextMenuElementInformation` to for the context menu API (#40607)
3393+
api; element_info() on ContextMenu
33863394
# This new data structure allows passing more information when popping up
33873395
# context menus. It's possible in the future that it will be adapted into
33883396
# a more generic "hit test result" type API ala WebKit, but for now, this is probably
@@ -3432,7 +3440,7 @@ https://github.com/servo/servo/pull/40685 (@tharkum, #40685) html: Fire the <med
34323440
# The associated WPT PR: https://github.com/web-platform-tests/wpt/pull/56014
34333441
# Testing: Improvements in the following tests
34343442
# - html/semantics/embedded-content/media-elements/ready-states/autoplay.html
3435-
https://github.com/servo/servo/pull/40686 (@kkoyung, #40686) script: Fix wrongly matched normalized algorithm in `NormalizedAlgorithm::get_key_length` (#40686)
3443+
-https://github.com/servo/servo/pull/40686 (@kkoyung, #40686) script: Fix wrongly matched normalized algorithm in `NormalizedAlgorithm::get_key_length` (#40686)
34363444
# In `NormalizedAlgorithm::get_key_length`, we match the wrong enum variants for HKDF and PBKDF2. Therefore, the
34373445
# function wrongly returns `NotSupportedError` for them. It causes a few WPT tests fail. This patch fix it with
34383446
# correct enum variants.
@@ -3541,7 +3549,8 @@ https://github.com/servo/servo/pull/40653 (@TimvdLippe, #40653) libservo: Notify
35413549
# https://web-platform.test:8443/html/webappapis/system-state-and-capabilities/the-navigator-object/%s
35423550
# ```
35433551
# Part of #40615
3544-
https://github.com/servo/servo/pull/40799 (@mrobinson, #40799) libservo: Remove `Servo::animating()` (#40799)
3552+
+https://github.com/servo/servo/pull/40799 (@mrobinson, #40799) libservo: Remove `Servo::animating()` (#40799)
3553+
api; removed in favour of RefreshDriver
35453554
# Instead of relying on `Sevo::animating()` in servoshell to drive the
35463555
# event loop, it is sufficient to just let the `RefreshDriver` wake it up
35473556
# when it is time to re-render.
@@ -4392,7 +4401,8 @@ https://github.com/servo/servo/pull/40872 (@yezhizhen, #40872) Remove unnecessar
43924401
# a rebase manually by commenting `@dependabot rebase`.
43934402
# [//]: # (dependabot-automerge-start)
43944403
# [//]: # (dependabot-automerge-end)
4395-
https://github.com/servo/servo/pull/40913 (@simonwuelker, #40913) fonts: Don't panic when font information contains invalid UTF-8 (#40913)
4404+
+https://github.com/servo/servo/pull/40913 (@simonwuelker, #40913) fonts: Don't panic when font information contains invalid UTF-8 (#40913)
4405+
crash; fix panic with unusual fonts
43964406
# `freetype` gives us `*const c_char` which is not necessarily UTF-8. In some cases we can simply ignore such fonts
43974407
# instead of panicking. (We can also save on allocation when comparing font formats)
43984408
# Testing: Covered by existing tests
@@ -4500,7 +4510,7 @@ https://github.com/servo/servo/pull/40890 (@Taym95, #40890) Fixes ByteLengthQueu
45004510
# [ByteLengthQueuingStrategy: size behaves as expected with strange arguments]
45014511
# expected: TIMEOUT
45024512
# ```
4503-
https://github.com/servo/servo/pull/40895 (@yezhizhen, #40895) display_list: Fix doc for `ScrollType` (#40895)
4513+
-https://github.com/servo/servo/pull/40895 (@yezhizhen, #40895) display_list: Fix doc for `ScrollType` (#40895)
45044514
# In #37412 we renamed `ScrollSensitivity` to `ScrollType`. This PR updates the doc.
45054515
>>> 2025-11-28T06:11:01Z
45064516
https://github.com/servo/servo/pull/40857 (@kkoyung, #40857) script: Add new KeyFormat and KeyUsage for modern algorithms (#40857)
@@ -4509,7 +4519,8 @@ https://github.com/servo/servo/pull/40857 (@kkoyung, #40857) script: Add new Key
45094519
# This patch adds those new key formats and key usages, preparing for the implementation of the new algorithms.
45104520
# Testing: No behavioral changes in existing cryptographic algorithms. Existing tests suffice.
45114521
# Fixes: Part of #40687
4512-
https://github.com/servo/servo/pull/40447 (@stevennovaryo, #40447) dom: Focus scroll to the element only if it is not visible (#40447)
4522+
+https://github.com/servo/servo/pull/40447 (@stevennovaryo, #40447) dom: Focus scroll to the element only if it is not visible (#40447)
4523+
dom; focus no longer scrolls if element is visible
45134524
# Currently when we call a `Focus` we always scroll a focusable element to the center of
45144525
# the container. However, this would causes a different behavior where UAs wouldn't scroll
45154526
# when a focus is called to a visible element. This PR add implementations following the behavior of Firefox
@@ -4617,7 +4628,8 @@ https://github.com/servo/servo/pull/40918 (@mrobinson, #40918) script: Break the
46174628
# multiprocess mode while causing a panic to happen due to a null pointer
46184629
# dereference. The sad tab appeared after this change, so things seem to work
46194630
# properly still. Testing crashes is tricky with the way we test servo now.
4620-
https://github.com/servo/servo/pull/40916 (@Loirooriol, @mrobinson, #40916) stylo: Add stacking context damage when outline-width becomes non-zero (#40916)
4631+
+https://github.com/servo/servo/pull/40916 (@Loirooriol, @mrobinson, #40916) stylo: Add stacking context damage when outline-width becomes non-zero (#40916)
4632+
layout; incremental layout for ‘outline’ changes
46214633
# Bumps Stylo to https://github.com/servo/stylo/pull/274
46224634
# Testing: Adding new test
46234635
+https://github.com/servo/servo/pull/40883 (@mrobinson, @mukilan, #40883) servoshell: Add architectural support for opening multiple windows (#40883)
@@ -4665,7 +4677,8 @@ https://github.com/servo/servo/pull/40917 (@tharkum, #40917) html: Add new media
46654677
>>> 2025-11-29T06:19:57Z
46664678
-https://github.com/servo/servo/pull/40934 (@nacho, #40934) Fix various typos throughout the code base (#40934)
46674679
# null
4668-
https://github.com/servo/servo/pull/40933 (@mrobinson, #40933) servoshell: Schedule keyboard shortcut exits so that they can be done cleanly (#40933)
4680+
+https://github.com/servo/servo/pull/40933 (@mrobinson, #40933) servoshell: Schedule keyboard shortcut exits so that they can be done cleanly (#40933)
4681+
crash; fix crashes when exiting servo
46694682
# This is a speculative fix for a crash mentioned by @mukilan[^1]. It will
46704683
# also make moving to a more consistent shutdown model (even one driven by
46714684
# dropping of the `Servo` instance) possible.
@@ -4765,7 +4778,8 @@ https://github.com/servo/servo/pull/40944 (@mrobinson, #40944) constellation: Br
47654778
# `Rc`.
47664779
# Testing: This should not change behavior in a way that is observable, so should
47674780
# be covered by existing tests.
4768-
https://github.com/servo/servo/pull/40951 (@mrobinson, #40951) libservo: Clean up Servo exports and export more at the root (#40951)
4781+
+https://github.com/servo/servo/pull/40951 (@mrobinson, #40951) libservo: Clean up Servo exports and export more at the root (#40951)
4782+
api; `use servo::*`
47694783
# This change makes it easier for embedders to embed the types that they
47704784
# need by exporting almost everything necessary to use Servo at the root
47714785
# of libservo, apart from a few exceptions. In addition, the `Servo` is moved
@@ -4777,7 +4791,8 @@ https://github.com/servo/servo/pull/40953 (@mrobinson, #40953) servoshell: Alway
47774791
# This prevents crashes when exiting servoshell in different situations.
47784792
# For instance, this fixes a crash when running WPT tests on some systems.
47794793
# Testing: This fixes an issue when running WPT tests locally.
4780-
https://github.com/servo/servo/pull/40948 (@kkoyung, #40948) script: Implement import/export key operation of ChaCha20-Poly1305 (#40948)
4794+
+https://github.com/servo/servo/pull/40948 (@kkoyung, #40948) script: Implement import/export key operation of ChaCha20-Poly1305 (#40948)
4795+
dom; crypto.subtle.importKey("ChaCha20-Poly1305") and exportKey() for ChaCha20-Poly1305 keys
47814796
# Start adding ChaCha20-Poly1305 support to WebCrypto API.
47824797
# This patch implements "import key" operation and "export key" operation of ChaCha20-Poly1305, using the crate
47834798
# `chacha20poly1305` to support the cryptographic calculation.

0 commit comments

Comments
 (0)