rsnext/test/e2e
JJ Kasper 6f9c4720f9
[Breaking] Disable automatic static generation for route handlers (#65825)
## Background

Currently route handlers will be attempted to statically generate the
same as normal pages in app router. If a route handler accessed dynamic
data such as `cookies()`, `headers()`, `req.url`, or similar we would
bail from this static generation but this didn't handle the case where
you would do data fetching via a non-fetch based library e.g. `redis` or
even using `Date.now()` or `Math.random()` so users would expect these
to be run every request like normal API endpoints but they would be
static so wouldn't be executed again after a build.


## New Behavior

As discussed this disable the default static generation handling for
route handlers as we've seen this confuse our users since in most cases
when creating a route handler you are handling dynamic workloads. This
doesn't remove the ability to static generate route handlers though as
you can still manually specify:

If you specify `export const revalidate = 1` we will still bail if
dynamic data is accessed to prevent accidental `revalidate` configuring
but this can be avoided via `force-static` being used as well.
 
```js
export const dynamic = 'force-static'
// or
export const dynamic = 'error'
// or
export const revalidate = false
// or
export const revalidate = 1 // value great than 0
// or 
export const generateStaticParams() {}
```

---------

Co-authored-by: Zack Tanner <1939140+ztanner@users.noreply.github.com>
2024-05-20 16:25:02 -07:00
..
404-page-router Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
app-dir [Breaking] Disable automatic static generation for route handlers (#65825) 2024-05-20 16:25:02 -07:00
app-dir-legacy-edge-runtime-config Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
async-modules Improve top level await coverage (#64508) 2024-04-17 17:44:40 +02:00
async-modules-app Improve top level await coverage (#64508) 2024-04-17 17:44:40 +02:00
basepath Add hasRedbox fix (#60522) 2024-01-15 09:36:44 +01:00
browserslist Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
browserslist-extends Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
cancel-request Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
children-page Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
config-promise-export Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
config-schema-check Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
conflicting-app-page-error Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
custom-app-render Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
disable-js-preload Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
dynamic-route-interpolation chore: update prettier to 3.2.5 (#65092) 2024-05-08 21:47:14 +02:00
edge-api-endpoints-can-receive-body Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
edge-async-local-storage Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
edge-can-read-request-body Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
edge-can-use-wasm-files Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
edge-compiler-can-import-blob-assets Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
edge-compiler-module-exports-preference Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
edge-configurable-runtime Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
edge-pages-support Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
edge-runtime-pages-api-route Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
edge-runtime-uses-edge-light-import-specifier-for-packages Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
esm-externals chore: update prettier to 3.2.5 (#65092) 2024-05-08 21:47:14 +02:00
favicon-short-circuit Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
fetch-failures-have-good-stack-traces-in-edge-runtime Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
getserversideprops Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
handle-non-hoisted-swc-helpers Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
hello-world Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
i18n-api-support Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
i18n-data-fetching-redirect Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
i18n-data-route Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
i18n-default-locale-redirect Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
i18n-disallow-multiple-locales Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
i18n-ignore-redirect-source-locale Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
i18n-ignore-rewrite-source-locale Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
i18n-preferred-locale-detection Migrate locale redirect handling to router-server (#62606) 2024-02-27 16:37:11 -08:00
ignore-invalid-popstateevent Upgrade typescript to 5.3 (#64043) 2024-04-17 18:35:29 +02:00
instrumentation-hook Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
instrumentation-hook-src Improve initial setup with new App Router TypeScript project (#64826) 2024-04-26 18:19:50 +02:00
link-with-api-rewrite Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
manual-client-base-path Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
middleware-base-path Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
middleware-custom-matchers feat(next-core): support parsing matcher config object (#64678) 2024-04-23 09:55:24 +02:00
middleware-custom-matchers-basepath Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
middleware-custom-matchers-i18n Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
middleware-dynamic-basepath-matcher Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
middleware-fetches-with-any-http-method Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
middleware-fetches-with-body Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
middleware-general Re-land build(edge): extract buildId into environment (#65426) 2024-05-08 10:40:15 +02:00
middleware-matcher Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
middleware-redirects Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
middleware-request-header-overrides Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
middleware-responses Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
middleware-rewrites Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
middleware-shallow-link Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
middleware-trailing-slash Re-land build(edge): extract buildId into environment (#65426) 2024-05-08 10:40:15 +02:00
module-layer Bundle the installed react for middleware (#65811) 2024-05-16 01:16:53 +02:00
multi-zone Fix multi-zone test by removing dependency list (#65589) 2024-05-10 08:34:21 -06:00
new-link-behavior Upgrade react@beta (#65845) 2024-05-16 21:59:47 +02:00
next-font Upgrade react@beta (#65845) 2024-05-16 21:59:47 +02:00
next-head Pages router: Enable strict next/head children reconciler by default (#65418) 2024-05-11 12:50:05 +02:00
next-image-forward-ref Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
next-phase Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
next-script Upgrade react@beta (#65845) 2024-05-16 21:59:47 +02:00
next-test Upgrade react@beta (#65845) 2024-05-16 21:59:47 +02:00
no-eslint-warn-with-no-eslint-config Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
nonce-head-manager Support React 19 in App and Pages router (#65058) 2024-05-07 18:18:32 +02:00
og-api Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
opentelemetry Add clientTraceMetadata experimental option to propagate tracing data to the client (#64256) 2024-05-15 12:19:27 +02:00
optimized-loading Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
pages-performance-mark Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
postcss-config-cjs Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
prerender chore: show large data warning once per page on prod (#46323) 2023-02-25 12:29:59 -08:00
prerender-native-module Migrate prerender tests to new set-up (#29245) 2021-09-21 16:21:05 +02:00
proxy-request-with-middleware Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
react-compiler fix: race condition in CLI output in react-compiler test (#65909) 2024-05-18 00:20:53 +02:00
react-dnd-compile Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
reload-scroll-backforward-restoration Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
repeated-forward-slashes-error Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
revalidate-reason provide revalidateReason to getStaticProps (#64258) 2024-04-09 09:53:08 -07:00
skip-trailing-slash-redirect Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
socket-io Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
ssr-react-context Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
streaming-ssr Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
styled-jsx Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
swc-warnings Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
switchable-runtime Upgrade react@beta (#65845) 2024-05-16 21:59:47 +02:00
test-template/{{ toFileName name }} chore: update test template to use nextTestSetup (#62154) 2024-02-16 17:30:54 +01:00
test-utils-tests/basic chore: update test template to use nextTestSetup (#62154) 2024-02-16 17:30:54 +01:00
testmode Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
third-parties Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
trailingslash-with-rewrite Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
transpile-packages Upgrade react@beta (#65845) 2024-05-16 21:59:47 +02:00
tsconfig-module-preserve Improve top level await coverage (#64508) 2024-04-17 17:44:40 +02:00
type-module-interop Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
typescript-version-no-warning Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
typescript-version-warning Replace createNextDescribe with nextTestSetup (#64817) 2024-04-25 12:06:12 -06:00
undici-fetch Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
useselectedlayoutsegment-s-in-pages-router fix(navigation): allow useSelectedLayoutSegment(s) in Pages Router (#62584) 2024-02-29 13:14:52 +00:00
yarn-pnp/test Error on mismatched minimal react version (#65806) 2024-05-17 10:08:28 +02:00
basepath-trailing-slash.test.ts Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
basepath.test.ts Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
example-file.txt Update pnpm new-test to use createNextDescribe (#44147) 2022-12-19 20:08:50 +01:00
example.txt chore: update test template to use nextTestSetup (#62154) 2024-02-16 17:30:54 +01:00
prerender-crawler.test.ts Stop using baseUrl in root tsconfig (#64117) 2024-04-09 00:25:43 +02:00
prerender-native-module.test.ts Support React 19 in App and Pages router (#65058) 2024-05-07 18:18:32 +02:00
prerender.test.ts Support React 19 in App and Pages router (#65058) 2024-05-07 18:18:32 +02:00