Releases pages keep hidden loading spinners animating, pinning a CPU core #202457
Replies: 2 comments
|
Thank you for your interest in contributing to our community! We currently only accept discussions created through the GitHub UI using our provided discussion templates. Please re-submit your discussion by navigating to the appropriate category and using the template provided. This discussion has been closed because it was not submitted through the expected format. If you believe this was a mistake, please reach out to the maintainers. |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
On repos with a long releases list, the releases index page keeps Chrome busy indefinitely after load, even with the tab idle. The page re-renders continuously at ~70fps and for me Chrome's GPU process sits around half a core. Scrolling to the bottom once makes it drop to idle.
My best guess, taken from a DevTools performance trace: each release row has two lazy
<include-fragment>elements (theexpanded_assetslist and the refs picker), and their placeholder spinners (svg.anim-rotate, with the infiniterotate-keyframesanimation) keep animating while below the fold. Since the fragments don't load until scrolled into view, the spinners animate forever. Blink can't run transform animations on SVG targets on the compositor (the trace reportscompositeFailedwithkTransformRelatedPropertyCannotBeAcceleratedOnTarget), so every frame renders on the main thread. I think the fix would be to pause the animation when it's offscreen.Steps to reproduce:
Seen on Chrome 150.0.7871.129 on macOS 26.5.2 (Apple Silicon); reproduces in a clean guest profile. I tried filing this through the support bug-report form but was redirected here.
Extra question: why is this even dynamically loaded if the Releases page is not infinite scroll? Given that it's paginated, why not just load the entire page in the browser statically?
All reactions