element-hq / element-hq/element-web

Integration manager iframe should have cache busting

Open
#23,295 2 comments 0 reactions 0 assignees View on GitHub
A-EMS A-Integrations O-Uncommon S-Tolerable T-Enhancement
Dominant language
TypeScript
Stars
13.5k
Forks
2.8k
PR merge metrics
PR metrics pending

Description

### Your use case

Contents of iframes appear to be cached when the URL has not changed (the extent of this seems to vary by platform, most aggressive on Element desktop).
This can result in the integration manager frontend failing to update, or breaking entirely when a new version has been deployed.

This also impacts the sticker picker.
(While the sticker picker should handle refreshing its data on visibility events, this would occur when a new version of the sticker picker widget was deployed.)

I believe the iframe cache can be busted by adding for example a randomized string to the URL in a query parameter.

### Have you considered any alternatives?

Considered if this can be done with `Cache-Control` headers, but these don't seem to be respected for iframes.

### Additional context

For the Integrator integration manager provided by Element, this manifests as a white screen (due to built assets 404ing). This is resolved on Element Desktop by opening developer tools and checking "Disable cache", or otherwise waiting for the cache to expire.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.