fix: Link settings are not correctly read from server and display an old config - EXO-71985 #4119
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.
Before this fix, the links settings are server with Cache-Control = must-revalidate, and maxAge = 1year must-revalidate means : if the asset is expired in cache, revalidate it against the server. Else, serve the cache content. Firefox correctly implements this behaviour as Chrome revalidate assets for each request. This behaviour means that if an admin change the configuration of the setting, a user on FF could see an old version of the configuration, until his cache is refreshed or asset expired.
The commit change the cache control to no-cache, which means : revalidate the asset for each request. As the LinkSettings endpoint correctly implements Etag feature, if the settings did not change, the service return correctly a 304 and the browser serve the cached asset. If the configuration change, the service serves the new version of the configuration.
This value is different from no-store which means no cache at all.
Resolves meeds-io/meeds#71985