Fix ETag caching not being used for AJAX requests
What does this MR do?
This fixes two issues:
- For AJAX requests, we shouldn't set the
no-storeresponse header as this prevents the browser from sending theIf-None-Matchrequest header (with theEtagvalue), leading to poor performance. This was broken since 11.5.0 due to a security fix (see issue). -
Ci::Pipeline#all_merge_requestswas only returning merge requests for its project, but it should include merge requests from forks as well. This was preventingEtagvalue from being touched inExpirePipelineCacheWorker.
What are the relevant issue numbers?
Closes #57905 (closed).
Does this MR meet the acceptance criteria?
-
Changelog entry added, if necessary -
Tests added for this feature/bug -
Tested in all supported browsers -
Conforms to the code review guidelines -
Conforms to the merge request performance guidelines -
Conforms to the style guides -
Conforms to the database guides -
Security reports checked/validated by reviewer
Edited by Rémy Coutable