## Description
- Implement Etag caching for consolidated api in view mode.
- Generate Etag for consolidated api in view mode
- compare the if none match header with the computed etag and respond
with either a 304 or 200
- add span for generate etag fn
- Remove prefetching and caching of static assets in service worker
```mermaid
sequenceDiagram
Client->>Server: Request Consolidated API
Server-->>Server: Compute ETag
Server-->>Client: Respond with ETag, Cache-Control
Client->>Server: Subsequent Request with If-None-Match
alt ETag Matches
Server-->>Client: 304 Not Modified
else ETag Different
Server-->>Client: Full Response with New ETag
end
```
## Automation
/ok-to-test tags="@tag.All"
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢 🟢 🟢 All cypress tests have passed! 🎉 🎉 🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/13046610688>
> Commit: c14d58da8a59b3bbfb10c7e308b518d2cd8e3b7d
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=13046610688&attempt=1"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.All`
> Spec:
> <hr>Thu, 30 Jan 2025 07:14:21 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Added ETag support for consolidated API responses to improve caching
efficiency.
- Introduced a new route handler for the `/api/v1/consolidated-api/view`
endpoint.
- **Performance Improvements**
- Optimized NGINX configuration for API responses.
- Updated tracing endpoint for better monitoring.
- **Dependency Updates**
- Added Jackson datatype support for Java 8 date and time handling.
- **Technical Enhancements**
- Improved request handling in ConsolidatedAPIController.
- Updated service worker configuration.
- Refined feature flag handling in the client.
- Enhanced API request headers for consolidated page load functions.
- Simplified caching and routing logic in the service worker.
- Adjusted service worker caching strategy for production environment.
- Updated test specification path for Cypress limited tests.
- Modified request handling to remove unnecessary headers in feature
flag functions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|---|---|---|
| .. | ||
| ansible | ||
| aws | ||
| aws_ami | ||
| digital_ocean | ||
| docker | ||
| helm | ||
| heroku | ||
| packer | ||