From 3f897e8d19ed960055521e3bc503acac63d8be6c Mon Sep 17 00:00:00 2001 From: Victor Berchet Date: Fri, 17 Jan 2025 15:24:24 +0100 Subject: [PATCH] doc: Composable Caching is not supported yet --- pages/aws/comparison.mdx | 38 +++++++++++++++++++------------------- pages/aws/index.mdx | 3 ++- pages/cloudflare/index.mdx | 1 + 3 files changed, 22 insertions(+), 20 deletions(-) diff --git a/pages/aws/comparison.mdx b/pages/aws/comparison.mdx index f03a52c..1f0a522 100644 --- a/pages/aws/comparison.mdx +++ b/pages/aws/comparison.mdx @@ -1,25 +1,25 @@ -It should be noted that open-next does not actually deploy the app. It only bundles everything for your IAC to deploy it. +It should be noted that open-next does not actually deploy the app. It only bundles everything for your IAC to deploy it. Here is a table comparing the different options to deploy a next.js app: -| Features | OpenNext | Vercel | AWS Amplify | Docker Standalone | -| --- | --- | --- | --- | --- | -| **Function splitting** | Yes | Yes | No | No | -| **Multiple deployment target** ¹ | Yes | Yes ² | No | No | -| **Serverless** | Yes | Yes | Yes | No ³ | -| **Warmer function** | Yes | No | No | Not necessary | -| **External middleware** | Yes ⁴ | Yes | No | No | -| **Edge runtime support** | Partial Support ⁵ | Yes | Embedded ⁶ | Embedded ⁶ | -| **ISR** | Yes | Yes | Yes | Yes ⁷ | -| **On-Demand Revalidation** | Yes ⁸ | Yes | No | Yes ⁸ | -| **Custom server** | Yes ⁹ | No | No | Yes | +| Features | OpenNext | Vercel | AWS Amplify | Docker Standalone | +| -------------------------------- | ----------------- | ------ | ----------- | ----------------- | +| **Function splitting** | Yes | Yes | No | No | +| **Multiple deployment target** ¹ | Yes | Yes ² | No | No | +| **Serverless** | Yes | Yes | Yes | No ³ | +| **Warmer function** | Yes | No | No | Not necessary | +| **External middleware** | Yes ⁴ | Yes | No | No | +| **Edge runtime support** | Partial Support ⁵ | Yes | Embedded ⁶ | Embedded ⁶ | +| **ISR** | Yes | Yes | Yes | Yes ⁷ | +| **On-Demand Revalidation** | Yes ⁸ | Yes | No | Yes ⁸ | +| **Custom server** | Yes ⁹ | No | No | Yes | 1. Multiple deployment target means that you can deploy the same app to different target like some part to ECS, some part to Lambda etc... 2. Vercel supports only serverless Node (backed by AWS Lambda) and Edge runtime (backed by cloudflare workers) -2. You can deploy a dockerized next.js app to AWS lambda using AWS Lambda Web adapter, but some part like ISR will not work as expected -3. OpenNext supports external middleware, but it is not enabled by default. -4. OpenNext supports edge runtime in node, but every route needs to be deployed separately. OpenNext supports edge runtime in cloudflare workers, but only for app router api routes. -5. Embedded means that the edge runtime is embedded inside the bundle. It emulates a fake edge runtime inside the prod environment. -6. You might experience some inconsistencies with ISR if you have a CDN in front of your app. Next always set the cache-control header to `s-maxage=REVALIDATION_TIME, stale-while-revalidate`, it means that your data (json or rsc) and your html might be out of sync. -7. You need to invalidate the CDN manually. For OpenNext, here is an example for cloudfront -8. OpenNext supports custom server, but it is not enabled by default. You can have a custom server even in a serverless environment. \ No newline at end of file +3. You can deploy a dockerized next.js app to AWS lambda using AWS Lambda Web adapter, but some part like ISR will not work as expected +4. OpenNext supports external middleware, but it is not enabled by default. +5. OpenNext supports edge runtime in node, but every route needs to be deployed separately. OpenNext supports edge runtime in cloudflare workers, but only for app router api routes. +6. Embedded means that the edge runtime is embedded inside the bundle. It emulates a fake edge runtime inside the prod environment. +7. You might experience some inconsistencies with ISR if you have a CDN in front of your app. Next always set the cache-control header to `s-maxage=REVALIDATION_TIME, stale-while-revalidate`, it means that your data (json or rsc) and your html might be out of sync. +8. You need to invalidate the CDN manually. For OpenNext, here is an example for cloudfront +9. OpenNext supports custom server, but it is not enabled by default. You can have a custom server even in a serverless environment. diff --git a/pages/aws/index.mdx b/pages/aws/index.mdx index 3290d80..8f5699f 100644 --- a/pages/aws/index.mdx +++ b/pages/aws/index.mdx @@ -28,7 +28,7 @@ We need your help keeping it up to date and feature complete. Make sure to [**jo --- -OpenNext aims to support all Next.js 14 features. Some features are work in progress. Please open a [new issue](https://github.com/opennextjs/opennextjs-aws/issues/new) to let us know! +OpenNext aims to support all Next.js 15 features. Some features are work in progress. Please open a [new issue](https://github.com/opennextjs/opennextjs-aws/issues/new) to let us know! - [x] App & Pages Router - [x] API routes @@ -42,6 +42,7 @@ OpenNext aims to support all Next.js 14 features. Some features are work in prog - [x] [Running in lambda@edge](/aws/config/simple_example#running-in-lambdaedge) - [x] [No cold start](/aws/inner_workings/components/warmer) - [x] Experimental streaming support +- [ ] [Composable Caching](https://nextjs.org/blog/composable-caching) (`'use cache'`) is a Next.js 15 feature and not supported yet. --- diff --git a/pages/cloudflare/index.mdx b/pages/cloudflare/index.mdx index 58a42ae..f21f69c 100644 --- a/pages/cloudflare/index.mdx +++ b/pages/cloudflare/index.mdx @@ -55,6 +55,7 @@ We will update the list as we progress towards releasing 1.0. - [ ] [Incremental Static Regeneration (ISR)](https://nextjs.org/docs/app/building-your-application/data-fetching/incremental-static-regeneration) - [ ] [Partial Prerendering (PPR)](https://nextjs.org/docs/app/building-your-application/rendering/partial-prerendering) - [ ] [Experimental streaming support](https://nextjs.org/blog/next-15-rc#executing-code-after-a-response-with-nextafter-experimental) +- [ ] [Composable Caching](https://nextjs.org/blog/composable-caching) (`'use cache'`) is a Next.js 15 feature and not supported yet. We welcome both contributions and feedback!