mirror of
https://github.com/hanzoai/next.js.git
synced 2026-10-30 14:46:38 +00:00
When using `'use cache'` in `generateMetadata` or `generateViewport`, the caching did not work correctly, because we didn't apply the same special handling for the `params` and `searchParams` props that we do for layout and page components. This caused the following issues: - `generateMetadata`/`generateViewport` for a page without params, or with static params, yielded cache misses when resuming - `generateMetadata` for a page/layout with unused params, became dynamic when prerendering a fallback shell - `generateMetadata` for a page with used search params, produced a timeout error during prerendering - `generateViewport` for a page/layout with unused params, produced a build error (unless opting into fully dynamic rendering) Still to be done in a follow-up: Omit unused `params` from cache keys, and upgrade cache keys when they are used, to avoid unnecessary cache misses when resuming. closes NAR-321