rsnext/test/e2e/app-dir
OJ Kwon cce9f0d34f
fix(metadata): align metadata suffix hash between turbopack (#57544)
### What?

Wraps up metadata-dynamic-routes tests fixes for the turbopack. There is 1 remaining failing test due to lacks of supporting `import.meta.url` which need to be addressed separately.

I spent amount of time why turbopack cannot find the route for the dynamic metadata for a certain route. In the end, found there are mismatching expectations for the route due to different hash for the certain route. We do use the same djb2 hash between next.js and turbopack both, so it was quite confusing why we don't get deterministic hash.

After trying some experiments, found out root cause was how 2 different runtimes handle overflow for given type of numbers. In rust + turbpack we use u32 and do 32-bit hash calculation for given string, while in js we implicitly used number type as is, in result overflow occurs with default 53-bit float. 

Originally I tried to adjust hash in turbopack side to preserve js hash as-is, but so far I found it was non trivial to do so as rust there's no out of the box types we can coerce to the js number type. In result, unlike other fixes in turbopack this PR changes how js hash is being generated. I hope this woulndn't be a breaking changes; expect so since this is a metadata specific hash that we do not have written spec for it.

Closes WEB-1890
2023-10-30 19:56:55 +00:00
..
_allow-underscored-root-directory Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
actions Move serverActionsBodySizeLimit to serverActions.bodySizeLimit (#57433) 2023-10-26 08:51:32 +02:00
actions-navigation Remove the experimental serverActions flag (#57145) 2023-10-20 20:45:25 +00:00
app fix gsp tracing issue (#57766) 2023-10-30 18:24:51 +01:00
app-a11y Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
app-alias Update default moduleResolution in tsconfig.json from node to bundler (#51957) 2023-07-18 15:11:09 +00:00
app-basepath test: merge base path tests (#55069) 2023-09-06 17:20:47 +00:00
app-client-cache app-router: tweak prefetch cache status heuristics (#53864) 2023-08-20 11:25:48 +00:00
app-compilation Fix HMR for missing dependencies in next-app-loader (#51778) 2023-06-25 19:26:09 +00:00
app-config-crossorigin fix(#53190): add missing crossOrigin to assetsPrefix resources (#56311) 2023-10-02 17:21:49 +00:00
app-css Use consistent name for App Router tests (#56352) 2023-10-06 11:06:06 +02:00
app-css-pageextensions Use consistent name for App Router tests (#56352) 2023-10-06 11:06:06 +02:00
app-edge fix: next dev with edge runtime on windows (#56502) 2023-10-10 14:03:03 +00:00
app-edge-root-layout Fix static metadata routes runtime when root layout is in edge runtime (#50351) 2023-05-25 15:39:57 -07:00
app-external Prefer module over main on main fields for app router server compiler (#56960) 2023-10-19 16:06:47 +00:00
app-fetch-deduping fix: fetch deduping in dev (#53549) 2023-08-03 15:10:55 -07:00
app-middleware Use consistent name for App Router tests (#56352) 2023-10-06 11:06:06 +02:00
app-prefetch Web Streams cleanup (#56819) 2023-10-18 21:38:28 +00:00
app-prefetch-false type check tests (and convert next-test-utils.js to ts) (#51071) 2023-06-23 17:42:50 +00:00
app-prefetch-static Reland static prefetches & fix prefetch bailout behavior (#56228) 2023-10-02 17:12:55 +00:00
app-rendering Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
app-routes Improve performance of String.prototype.split uses (#56746) 2023-10-19 00:25:15 +00:00
app-routes-trailing-slash Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
app-simple-routes Turbopack: add edge app routes (#53387) 2023-08-07 13:00:06 +02:00
app-static Fix app ISR error handling (#57332) 2023-10-24 09:38:30 -07:00
app-validation Use consistent name for App Router tests (#56352) 2023-10-06 11:06:06 +02:00
asset-prefix Add new build and test workflow (#50436) 2023-05-27 21:02:31 -07:00
async-component-preload Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
autoscroll-with-css-modules Skip Babel tests for Turbopack (#56091) 2023-09-27 16:12:43 +02:00
back-button-download-bug chore(next/image)!: mark domains as deprecated in favor remotePatterns (#57062) 2023-10-19 20:24:48 +00:00
build-size Improve performance of String.prototype.split uses (#56746) 2023-10-19 00:25:15 +00:00
chunk-loading App Router - preinitialize chunks during SSR (#54752) 2023-10-03 21:40:25 +00:00
create-next-app-template Update default moduleResolution in tsconfig.json from node to bundler (#51957) 2023-07-18 15:11:09 +00:00
create-root-layout Polish auto create layout warning color (#57190) 2023-10-21 19:21:22 +00:00
crypto-globally-available Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
draft-mode Allow next/headers in middleware & draftMode in edge runtime (#53465) 2023-08-02 20:22:35 +00:00
dynamic Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
dynamic-href Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
edge-runtime-node-compatibility Update default moduleResolution in tsconfig.json from node to bundler (#51957) 2023-07-18 15:11:09 +00:00
emotion-js Fix emotion-js transform for server components (#54284) 2023-08-20 03:14:16 +00:00
error-boundary-navigation Fix root not-found page tree loader structure (#54080) 2023-08-16 15:10:08 +00:00
externals Turbopack + app router: always use externals for predefined packages (#56440) 2023-10-06 19:08:01 +00:00
front-redirect-issue Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
global-error Add test for catching metadata error in error boundaries (#53581) 2023-08-04 20:57:49 +02:00
headers-static-bailout Add docs page for uncaught DynamicServerErrors (#53402) 2023-08-08 12:49:53 +02:00
hello-world Bail out of 404 page when favicon.ico doesn't exist (#50795) 2023-06-06 10:58:40 +02:00
hooks Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
i18n-hybrid Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
import Use consistent name for App Router tests (#56352) 2023-10-06 11:06:06 +02:00
interception-middleware-rewrite Update default moduleResolution in tsconfig.json from node to bundler (#51957) 2023-07-18 15:11:09 +00:00
interoperability-with-pages improve error DX on pages with RSC build errors (#52843) 2023-07-20 00:32:57 +00:00
layout-params Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
mdx Fix client reference proxies (#57301) 2023-10-24 00:24:22 +00:00
metadata Viewport exports (#57302) 2023-10-25 05:20:23 +00:00
metadata-dynamic-routes fix(metadata): align metadata suffix hash between turbopack (#57544) 2023-10-30 19:56:55 +00:00
metadata-edge Move ImageResponse to next/og (#56662) 2023-10-19 14:26:48 +00:00
metadata-missing-metadata-base fix: metadatabase warning message (#52363) 2023-07-07 00:08:10 +00:00
metadata-suspense Viewport exports (#57302) 2023-10-25 05:20:23 +00:00
navigation memoize useParams (#56771) 2023-10-13 07:47:05 +00:00
next-config Avoid loading Next.js config again in render workers (#52587) 2023-07-12 11:21:05 +00:00
next-font Use consistent name for App Router tests (#56352) 2023-10-06 11:06:06 +02:00
next-image test(next-image): adjust assertion compatible to turbopack (#57350) 2023-10-24 22:25:57 +00:00
not-found Ensure unique name for app dir css tests (#56088) 2023-09-27 18:38:01 +02:00
not-found-default Fix group routes custom root not-found (#54931) 2023-09-03 20:15:24 +00:00
pages-to-app-routing Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
parallel-routes-and-interception fix(turbopack): make layout in group not cause a 404 (#57471) 2023-10-26 05:16:28 +00:00
parallel-routes-not-found Recover not found errors from flight data to render with proper boundary (#53703) 2023-08-12 08:41:47 +00:00
params-hooks-compat Make useSearchParams and useParams compatible between app and pages router (#55280) 2023-09-18 12:42:20 +00:00
ppr revert ppr logging changes (#57486) 2023-10-26 00:28:24 -07:00
rewrites-redirects Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
root-layout Ensure root layout only render once per request (#52589) 2023-07-13 17:34:31 +02:00
root-layout-redirect Update default moduleResolution in tsconfig.json from node to bundler (#51957) 2023-07-18 15:11:09 +00:00
root-layout-render-once Ensure root layout only render once per request (#52589) 2023-07-13 17:34:31 +02:00
route-page-manifest-bug Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
router-autoscroll Fix scroll bailout logic when targeting fixed/sticky elements (#53873) 2023-08-15 13:31:39 +00:00
router-stuck-dynamic-static-segment Update default moduleResolution in tsconfig.json from node to bundler (#51957) 2023-07-18 15:11:09 +00:00
rsc-basic revert "Apply react-server condition for pages api (#57459)" (#57500) 2023-10-26 04:37:13 -07:00
search-params-react-key Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
searchparams-static-bailout Update default moduleResolution in tsconfig.json from node to bundler (#51957) 2023-07-18 15:11:09 +00:00
server-actions-relative-redirect Remove the experimental serverActions flag (#57145) 2023-10-20 20:45:25 +00:00
set-cookies Fix mjs import for Turbopack test (#56354) 2023-10-03 13:33:04 +02:00
similar-pages-paths Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
taint Expose Experimental Taint APIs (#56507) 2023-10-19 19:02:37 -07:00
test-template/{{ toFileName name }} Remove experimental config from create-next-app (#49241) 2023-05-05 00:22:28 -07:00
third-parties Adding useGoogleTagManager hook to @next/third-parties (#56106) 2023-10-17 18:04:53 +00:00
trailingslash Add new build and test workflow (#50436) 2023-05-27 21:02:31 -07:00
underscore-ignore-app-paths Update default moduleResolution in tsconfig.json from node to bundler (#51957) 2023-07-18 15:11:09 +00:00
use-params Make useSearchParams and useParams compatible between app and pages router (#55280) 2023-09-18 12:42:20 +00:00
use-selected-layout-segment-s chore: upgrade jest (#56909) 2023-10-19 17:38:24 +00:00
with-babel Apply optimization to middleware when using babel (#51067) 2023-06-09 13:33:14 -07:00
with-exported-function-config chore: upgrade jest (#56909) 2023-10-19 17:38:24 +00:00
x-forwarded-headers fix: add x-forwarded-* headers (#56797) 2023-10-13 17:58:33 +00:00