Skip to content

Release - #2269

Merged
wang1212 merged 3 commits into
masterfrom
release
Oct 16, 2026
Merged

Release#2269
wang1212 merged 3 commits into
masterfrom
release

Conversation

@wang1212

Copy link
Copy Markdown
Member

No description provided.

Ethan-Icet and others added 3 commits October 16, 2026 09:50
* perf(g): update animation promises once per frame

Every animation started in a task queued its own no-op frame callback
(AnimationTimeline.tick, and restart() when seeking), and the timeline
wrapped each frame callback in two calls to updateAnimationsPromises,
which goes over every animation with promises. Starting N animations
in one task (G6 does this on every animated draw) therefore cost about
2·N² updatePromises calls in the next frame: 32 million for N = 4000.

Run updateAnimationsPromises once before and once after the frame's
callbacks instead. Nothing can change promise state between two
callbacks of the same frame, so the extra calls did nothing.

Tests: six traces of when ready/finished settle relative to frames and
playState, recorded on 6.3.1 and unchanged; three tests that the
bookkeeping stays linear when starting, or seeking paused or finished,
animations in one task (6.3.1: ~2 million calls for n = 1000).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* test(g): assert the finished read in the promise scaling tests

The helper read `animation.finished` only for its side effect (it puts
the animation on the timeline's promise list), which CodeQL reports as
an expression with no effect. Assert on it instead.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
)

Replace the sample table + Newton-Raphson + bisection search with the
closed-form solver of bezier-easing 3.2: exact (~1e-14 instead of up to
~1e-3), no backward jump on steep curves such as (1, 0, 0, 1).

Progress outside [0, 1] now saturates to 0 / 1 instead of going through
the old search, which returned arbitrary values there.

Co-authored-by: hustcc <i@hust.cc>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@changeset-bot

changeset-bot Bot commented Oct 16, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 6d2f123

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@wang1212
wang1212 merged commit 89b360c into master Oct 16, 2026
6 checks passed
@wang1212
wang1212 deleted the release branch October 16, 2026 02:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants