Skip to content

Commit 48a598a

Browse files
committed
Write about more new features
1 parent 193264f commit 48a598a

File tree

3 files changed

+13
-67
lines changed

3 files changed

+13
-67
lines changed

_posts/2025-12-12-november-in-servo.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,8 @@ Landing in [**Servo 0.0.3**](https://github.com/servo/servo/releases/tag/v0.0.3)
1212
- **<video controls>** (@rayguo17, #40578)
1313
- **<use>** in SVG (@WaterWhisperer, #40684)
1414
- ☢️ **‘font-optical-sizing’** (@simonwuelker, #40829, #40861, #40884)
15+
- **‘brotli’** in **CompressionStream** and **DecompressionStream** (@Taym95, #40842)
1516
- **‘display-p3-linear’** in CSS **color()** and **color-mix()** (@Loirooriol, #40525)
16-
- **<details name>** is now exclusive, like radio buttons (@simonwuelker, #40314)
1717
- **calc()** now works in **grid layout** (@nicoburns, #34846)
1818

1919
**Font variations** are now applied in **‘font-weight’** and **‘font-stretch’** (@simonwuelker, #40867), fixing a rendering issue in the [Web Engines Hackfest website](https://webengineshackfest.org).
@@ -34,6 +34,9 @@ We now have full support for **SHA3-256**, **SHA3-384**, **SHA3-512** (@kkoyung,
3434
| X25519 | #40497 | #40421 | #40480 | #40398 | n/a | n/a |
3535
</figure>
3636

37+
**&lt;details>** now fires **‘toggle’** events (@lukewarlow, #40271), and **&lt;details name>** is now exclusive, like radio buttons (@simonwuelker, #40314).
38+
**InputEvent**, which represents **‘input’** and **‘beforeinput’** events, now has **composed**, **data**, **isComposing**, and **inputType** properties (@excitablesnowball, #39989).
39+
3740
<style>
3841
._correction {
3942
max-width: 33em;

commits.txt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ https://github.com/servo/servo/pull/40205 (@yerke, #40205) layout: Show pointer
297297
# [//]: # (dependabot-automerge-start)
298298
# [//]: # (dependabot-automerge-end)
299299
+https://github.com/servo/servo/pull/40271 (@lukewarlow, #40271) script: Implement `ToggleEvent` and use for `<details>` element (#40271)
300-
dom; toggle events on HTMLDetailsElement
300+
;dom; toggle events on HTMLDetailsElement
301301
# Implement ToggleEvent and use for details element
302302
# Testing: Covered by existing WPTs
303303
+https://github.com/servo/servo/pull/40328 (@mark-buer, #40328) devtools: Expose cache status for requests in network monitor. (#40328)
@@ -1171,7 +1171,7 @@ https://github.com/servo/servo/pull/40482 (@mukilan, @mrobinson, #40482) composi
11711171
# Automated downstream sync of changes from upstream as of 09-11-2025
11721172
# [no-wpt-sync]
11731173
+https://github.com/servo/servo/pull/39989 (@excitablesnowball, #39989) script: Use InputEvent for input events (#39989)
1174-
dom; {composed,data,isComposing,inputType} properties on `input`/`beforeinput` events
1174+
;dom; {composed,data,isComposing,inputType} properties on `input`/`beforeinput` events
11751175
# Use `InputEvent` for text input and set appropriate values for the `composed`, `data`, `isComposing`, and
11761176
# `inputType` attributes. Use a placeholder for `dataTransfer` attribute and `getTargetRanges` function, as they
11771177
# are only applicable to contenteditable, which isn't implemented.
@@ -3085,7 +3085,7 @@ https://github.com/servo/servo/pull/40733 (@TimvdLippe, #40733) webdriver: imple
30853085
# handlers yet. That's for follow-up PRs, as that requires more plumbing.
30863086
# Part of #40615
30873087
+https://github.com/servo/servo/pull/40716 (@sagudev, #40716) Use safe JSContext/AutoRealm/CurrentRealm in codegen (#40716)
3088-
api; safer api for mozjs bindings
3088+
script; safer api for mozjs bindings
30893089
# We replace many places that use `SafeJSContext` with `JSContext` and I also rewrote `is_platform_object_same_origin`
30903090
# to use new `JSContext`. Unfortunately using wrappers2 in them causes crashes (in handle code), so I reverted that
30913091
# part in last commit and will fix handles in mozjs later.
@@ -4022,7 +4022,7 @@ https://github.com/servo/servo/pull/40852 (@delan, #40852) ci: Use new queue API
40224022
# [5](https://github.com/servo/servo/actions/runs/19624566167),
40234023
# [6](https://github.com/servo/servo/actions/runs/19624568092)
40244024
+https://github.com/servo/servo/pull/40842 (@Taym95, #40842) Implement brotli support for CompressionStream and DecompressionStream (#40842)
4025-
dom; new CompressionStream("brotli") and new DecompressionStream("brotli")
4025+
;dom; new CompressionStream("brotli") and new DecompressionStream("brotli")
40264026
# Implement brotli support for CompressionStream and DecompressionStream
40274027
# Testing: brotli test should pass
40284028
# Fixes: #40831

outline.txt

Lines changed: 5 additions & 62 deletions
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,6 @@
1212
api servoshell
1313
- https://github.com/servo/servo/pull/40738 (@mrobinson, @mukilan, #40738) compositing: Make `RefreshDriver` per-`RenderingContext` (#40738)
1414
api; part of per-webview RenderingContext
15-
- https://github.com/servo/servo/pull/40716 (@sagudev, #40716) Use safe JSContext/AutoRealm/CurrentRealm in codegen (#40716)
16-
api; safer api for mozjs bindings
1715
- https://github.com/servo/servo/pull/40721 (@mrobinson, @mukilan, #40721) compositing: Allow WebGL contexts to have different Surfman devices (#40721)
1816
api; part of per-webview RenderingContext
1917
- https://github.com/servo/servo/pull/40715 (@mrobinson, #40715) servoshell: Always use `ControlFlow::Wait` on winit (#40715)
@@ -49,85 +47,33 @@
4947
- https://github.com/servo/servo/pull/40760 (@eerii, #40760) devtools: Support reloading tab (#40760)
5048
devtools
5149
- dom
52-
- DONE https://github.com/servo/servo/pull/40305 (@kkoyung, #40305) script: Implement generate key operation of ECDH (#40305)
53-
dom; crypto.subtle.generateKey("ECDH")
54-
- DONE https://github.com/servo/servo/pull/40298 (@kkoyung, #40298) script: Implement export key operation of ECDH (#40298)
55-
dom; crypto.subtle.exportKey() for ECDH keys
56-
- https://github.com/servo/servo/pull/40271 (@lukewarlow, #40271) script: Implement `ToggleEvent` and use for `<details>` element (#40271)
50+
- DONE https://github.com/servo/servo/pull/40271 (@lukewarlow, #40271) script: Implement `ToggleEvent` and use for `<details>` element (#40271)
5751
dom; toggle events on HTMLDetailsElement
5852
- https://github.com/servo/servo/pull/40463 (@WaterWhisperer, #40463) script: Add message to IndexSizeError (#40463)
5953
dom; exception messages
6054
- https://github.com/servo/servo/pull/40405 (@lukewarlow, #40405) Partially implement dialog.showModal() (#40405)
6155
dom; check how partial is partial
6256
- https://github.com/servo/servo/pull/40304 (@WaterWhisperer, #40304) script/layout: Implement Element.currentCSSZoom attribute (#40304)
6357
dom; currentCSSZoom property on Element
64-
- DONE https://github.com/servo/servo/pull/40421 (@kkoyung, #40421) script: Implement export key operation of X25519 (#40421)
65-
dom; crypto.subtle.exportKey() for X25519 keys
66-
- DONE https://github.com/servo/servo/pull/40333 (@kkoyung, #40333) script: Implement derive bits operation of ECDH (#40333)
67-
dom; crypto.subtle.deriveBits("ECDH")
68-
- DONE https://github.com/servo/servo/pull/40398 (@kkoyung, #40398) script: Implement import key operation of X25519 (#40398)
69-
dom; crypto.subtle.importKey(,,"X25519")
7058
- https://github.com/servo/servo/pull/40378 (@jdm, #40378) config: Enable ResizeObserver by default. (#40378)
7159
dom
72-
- DONE https://github.com/servo/servo/pull/40334 (@kkoyung, #40334) script: Use `base64ct` instead of `base64` in SubtleCrypto (#40334)
73-
security dom
74-
- DONE https://github.com/servo/servo/pull/40480 (@kkoyung, #40480) script: Implement generate key operation of X25519 (#40480)
75-
dom; crypto.subtle.generateKey("X25519")
76-
- https://github.com/servo/servo/pull/39989 (@excitablesnowball, #39989) script: Use InputEvent for input events (#39989)
60+
- DONE https://github.com/servo/servo/pull/39989 (@excitablesnowball, #39989) script: Use InputEvent for input events (#39989)
7761
dom; {composed,data,isComposing,inputType} properties on `input`/`beforeinput` events
78-
- DONE https://github.com/servo/servo/pull/40497 (@kkoyung, #40497) script: Implement derive bits operation of X25519 (#40497)
79-
dom; crypto.subtle.deriveBits("X25519")
80-
- DONE https://github.com/servo/servo/pull/40536 (@kkoyung, #40536) script: Implement export key operation of ECDSA (#40536)
81-
dom; crypto.subtle.exportKey() for ECDSA keys
82-
- DONE https://github.com/servo/servo/pull/40523 (@kkoyung, #40523) script: Implement import key operation of ECDSA (#40523)
83-
dom; crypto.subtle.importKey(,,"ECDSA")
84-
- DONE https://github.com/servo/servo/pull/40557 (@kkoyung, #40557) script: Implement verify operation of ECDSA (#40557)
85-
dom; crypto.subtle.verify("ECDSA")
86-
- DONE https://github.com/servo/servo/pull/40553 (@kkoyung, #40553) script: Implement generate key operation of ECDSA (#40553)
87-
dom; crypto.subtle.generateKey("ECDSA")
88-
- DONE https://github.com/servo/servo/pull/40591 (@kkoyung, #40591) script: Implement sign operation of ECDSA (#40591)
89-
dom; crypto.subtle.sign("ECDSA")
9062
- https://github.com/servo/servo/pull/40768 (@simonwuelker, #40768) script: Add messages to exceptions thrown in Element::attachShadow (#40768)
9163
dom; exception messages
92-
- DONE https://github.com/servo/servo/pull/40765 (@kkoyung, #40765) script: Implement SHA-3 in WebCrypto API (#40765)
93-
dom; crypto.subtle.digest("SHA3-256"), SHA3-384, SHA3-512; first among major engines!
9464
- https://github.com/servo/servo/pull/40636 (@mukilan, #40636) net: Relax the SVG content type detection logic. (#40636)
9565
dom; fixed SVG rendering with Content-Type parameters
96-
- DONE https://github.com/servo/servo/pull/40832 (@kkoyung, #40832) script: Implement CShake in WebCrypto API (#40832)
97-
dom; crypto.subtle.digest("cSHAKE128"), cSHAKE256
98-
- https://github.com/servo/servo/pull/40842 (@Taym95, #40842) Implement brotli support for CompressionStream and DecompressionStream (#40842)
66+
- DONE https://github.com/servo/servo/pull/40842 (@Taym95, #40842) Implement brotli support for CompressionStream and DecompressionStream (#40842)
9967
dom; new CompressionStream("brotli") and new DecompressionStream("brotli")
10068
- https://github.com/servo/servo/pull/40447 (@stevennovaryo, #40447) dom: Focus scroll to the element only if it is not visible (#40447)
10169
dom; focus no longer scrolls if element is visible
102-
- DONE https://github.com/servo/servo/pull/40936 (@kkoyung, #40936) script: Finishing implementation of Argon2 in WebCrypto (#40936)
103-
dom; full support for Argon2 including crypto.subtle.deriveBits("Argon2d"), Argon2i, Argon2id (get key length is an internal algorithm)
104-
- DONE https://github.com/servo/servo/pull/40932 (@kkoyung, #40932) script: Implement import key operation of Argon2 (#40932)
105-
dom; crypto.subtle.importKey("Argon2d"), Argon2i, Argon2id
106-
- DONE https://github.com/servo/servo/pull/40948 (@kkoyung, #40948) script: Implement import/export key operation of ChaCha20-Poly1305 (#40948)
107-
dom; crypto.subtle.importKey("ChaCha20-Poly1305") and exportKey() for ChaCha20-Poly1305 keys
10870
- layout
109-
- DONE https://github.com/servo/servo/pull/40314 (@simonwuelker, #40314) script: Enforce exclusivity between <details> elements in the same tree (#40314)
110-
layout; <details name> exclusivity
11171
- https://github.com/servo/servo/pull/40554 (@Loirooriol, #40554) script: Pass the right base URI to inline sheets (#40554)
11272
layout; inline <style> now takes <base> into account
113-
- DONE https://github.com/servo/servo/pull/34846 (@nicoburns, #34846) Support `calc()` values in CSS Grid (#34846)
114-
layout
11573
- https://github.com/servo/servo/pull/40699 (@mrobinson, @Loirooriol, #40699) layout: Rebuild the box tree when the `quotes` attribute changes on a pseudo-element (#40699)
11674
layout
117-
- DONE https://github.com/servo/servo/pull/40578 (@rayguo17, #40578) Media: Display User Agent Controls widget for video element. (#40578)
118-
layout; UA controls for <video> (was previously supported for <audio>)
11975
- https://github.com/servo/servo/pull/40698 (@mrobinson, @Loirooriol, #40698) script: Trigger reflow properly for pseudo-elements with `content: attr()` (#40698)
12076
layout
121-
- DONE https://github.com/servo/servo/pull/40684 (@WaterWhisperer, #40684) script: Support SVG <use> elements with fragment identifiers (#40684)
122-
layout
123-
- DONE https://github.com/servo/servo/pull/40829 (@simonwuelker, #40829) Support `font-optical-sizing` (#40829)
124-
layout; variable fonts
125-
- DONE https://github.com/servo/servo/pull/40861 (@simonwuelker, #40861) Add `layout_variable_fonts_enabled` to experimental preferences (#40861)
126-
layout; variable fonts
127-
- DONE https://github.com/servo/servo/pull/40867 (@simonwuelker, #40867) fonts: Apply variations for `font-weight`, `font-stretch` (#40867)
128-
layout; variable fonts
129-
- DONE https://github.com/servo/servo/pull/40884 (@simonwuelker, #40884) Don't override `opsz` from `font-variation-settings` when `font-optical-sizing` is `auto` (#40884)
130-
layout; part of font-optical-sizing
13177
- https://github.com/servo/servo/pull/40916 (@Loirooriol, @mrobinson, #40916) stylo: Add stacking context damage when outline-width becomes non-zero (#40916)
13278
layout; incremental layout for ‘outline’ changes
13379
- perf
@@ -164,11 +110,11 @@
164110
- script
165111
- https://github.com/servo/servo/pull/40465 (@sagudev, #40465) script: Start preparation to use safer JSContext (#40465)
166112
script; safer mozjs api
113+
- https://github.com/servo/servo/pull/40716 (@sagudev, #40716) Use safe JSContext/AutoRealm/CurrentRealm in codegen (#40716)
114+
script; safer api for mozjs bindings
167115
- https://github.com/servo/servo/pull/40582 (@sagudev, #40582) script: Add `cx_no_gc`/`cx`/`realm` codegen option and demostrate them (#40582)
168116
script; safer api for mozjs bindings
169117
- security
170-
- DONE https://github.com/servo/servo/pull/40334 (@kkoyung, #40334) script: Use `base64ct` instead of `base64` in SubtleCrypto (#40334)
171-
security dom
172118
- https://github.com/servo/servo/pull/40725 (@mrobinson, #40725) script: Use a `WeakRef` for references to `WebGLRenderingContext` (#40725)
173119
security; fix use-after-free in WebGL
174120
- servoshell
@@ -191,6 +137,3 @@
191137
testing
192138
- https://github.com/servo/servo/pull/39897 (@jschwe, #39897) Upload junit report of unit-tests in CI (#39897)
193139
testing
194-
- upgrade
195-
- DONE https://github.com/servo/servo/pull/40525 (@Loirooriol, #40525) Upgrade cssparser to version 0.36 (#40525)
196-
upgrade; CSS now support color(display-p3-linear) and color-mix(in display-p3-linear)

0 commit comments

Comments
 (0)