Support font-variant-alternates and @font-feature-values for servo#377
Open
simonwuelker wants to merge 19 commits into
Open
Support font-variant-alternates and @font-feature-values for servo#377simonwuelker wants to merge 19 commits into
font-variant-alternates and @font-feature-values for servo#377simonwuelker wants to merge 19 commits into
Conversation
Any ancestors of this commit are from upstream mozilla-central, with some filtering and renaming. Our patches and sync tooling start here. The sync tooling has all been squashed into this commit, based on: https://github.com/servo/stylo/commits/64731e10dc8ef87ef52aa2fb9f988c3b2530f3a7
This is a rebase of 40aa59d Signed-off-by: Oriol Brufau <obrufau@igalia.com>
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
Signed-off-by: Oriol Brufau <obrufau@igalia.com>
- Bump stylo_* to 0.17.0 - Bump selectors to 0.38.0 - Bump to_shmem to 0.4.0 Signed-off-by: Oriol Brufau <obrufau@igalia.com>
…operties (servo#360) For standard longhands, `computed_value_to_string()` calls `computed_or_resolved_value()`, which uses `to_resolved_value()`. But for custom properties, `computed_value_to_string()` was returning the unresolved computed value. Now it will use `to_resolved_value()` too. See https://phabricator.services.mozilla.com/D287814 for reference. Servo PR: servo/servo#44856 Signed-off-by: Oriol Brufau <obrufau@igalia.com>
Servo no longer uses the unsynchronized animation setup that's described in the comment and `AtomicRefCell` is faster than `RwLock`. This change has Servo use the same locking design that Gecko uses in order to improve the performance of style locking / unlocking. Servo PR: servo/servo#44883 Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Companion PR for servo/servo#44903 Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
Companion PR for servo/servo#44950 Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
Static preferences are accessed by Stylo in very hot parts of restyling, so this change exposes access to these preferences via `AtmicBool` and `AtomicI32` instead of via `RwLock<HashMap<...>>`. This eliminates a good deal of hashing work from profiles of layout hammering benchmarks. In general, removing this work from styling will have beneficial effects. Now preferences are defined via a TOML file which is used to generate a store of atomic primitives which are controlled via two macros. Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Oriol Brufau <obrufau@igalia.com> Signed-off-by: Martin Robinson <mrobinson@igalia.com> Co-authored-by: Oriol Brufau <obrufau@igalia.com>
…servo#354) - The keyframe selection used <= for normal direction, causing the first keyframe to be selected at progress 0; changed to < for normal direction (kept <= for reverse to avoid servo#342 (comment)) and added direction‑aware step‑function handling. - Guard against division‑by‑zero for zero‑length keyframe intervals. ### Make early return happen earlier: 1. total_progress == 1.0 and total_progress < 0 now handled immediately. Also make it direction aware. 2. Zero-interval: we exit early to avoid division‑by‑zero in `percentage_between_keyframes` [Try](https://github.com/servo/servo/runs/68226116022) Servo PR: servo/servo#44365 --------- Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
To fix "Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. " Signed-off-by: Euclid Ye <yezhizhenjiakang@gmail.com>
This allows some `AttrValue` variants, the ones that are easily serializable and are sometimes set without existing serializations, to be lazily serialized. The goal here is to allow storing these values, but only serializing when necessary. Servo PR: servo/servo#44931 Signed-off-by: Martin Robinson <mrobinson@igalia.com>
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
Servo PR: servo/servo#45059 Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
Servo PR: servo/servo#45142 Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
jdm
approved these changes
Jun 3, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Servo PR: servo/servo#45308