I'd like to use XSLT to transform RSS feeds into user-viewable pages. When Safari renders lots of <audio> elements via XSLT, it behaves terribly - seemingly getting exponentially slower as the number of <audio> elements increases. On a sample feed with 515 episodes, Safari 16.5.2 appears to freeze while loading the page for around 52 seconds on my M1 Macbook Pro. Meanwhile a 2016 MBP takes 3 minutes 10 seconds… Firefox & Chrome both render the same page more-or-less instantly. Here’s the sample page with 515 episodes: https://d1k0jgp8xx8zuc.cloudfront.net/jds/xsl/fish.rss But for the sake of everyone’s sanity if you don’t want to sit there waiting for it to load, here’s a version with 100 episodes: https://d1k0jgp8xx8zuc.cloudfront.net/jds/xsl/fish-truncated.rss . It ‘only’ takes 5 seconds to render, but hopefully that’s enough to demonstrate the problem. (I've also filed this via Feedback Assistant, if that helps: FB12904190)
It is a known issue that rendering a page with many media elements is pathologically slow, but I cannot find the tracking bug now. Doing an outrageous amount of work under HTMLMediaElement::ensureMediaControls() -> HTMLMediaElement::setupAndCallJS() -> ... jsCSSStyleDeclaration_propertyValueForCamelCasedIDLAttribute() ... Document::updateStyleIfNeeded().
<rdar://problem/114278433>
rdar://113627244
This is covered by <rdar://77347577>.
Could you let us know the status of rdar://77347577 ?