Next.js Turbo build: turbopack-ecmascript-runtime and ChunkData (#50375)

This PR is extracted from https://github.com/vercel/next.js/pull/49942
and mostly contains changes necessary after the Turbopack PR adding the
Node.js production runtime https://github.com/vercel/turbo/pull/4998,
without any of the actual Next Build stuff, in order to be able to merge
both quickly.

* ChunkData moved from tp-dev to tp-core, the ES-serializable part moved
to tp-ecmascript;
* all runtime types moved to tp-ecmascript-runtime

This also upgrades Turbopack to turbopack-230526.2:

* https://github.com/vercel/turbo/pull/5102 <!-- Donny/강동윤 - refactor:
Fix binary bloat caused by `ValueDebugFormat` impl -->
* https://github.com/vercel/turbo/pull/4998 <!-- Alex Kirszenberg -
Node.js production runtime POC -->
This commit is contained in:
Alex Kirszenberg 2023-05-26 13:38:25 +02:00 committed by GitHub
parent 68b34de96e
commit 62af2007ce
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
24 changed files with 110 additions and 111 deletions

88
Cargo.lock generated
View file

@ -394,7 +394,7 @@ dependencies = [
[[package]]
name = "auto-hash-map"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"serde",
]
@ -3426,7 +3426,7 @@ dependencies = [
[[package]]
name = "node-file-trace"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"serde",
@ -7036,7 +7036,7 @@ dependencies = [
[[package]]
name = "turbo-tasks"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"auto-hash-map",
@ -7067,7 +7067,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-build"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"cargo-lock",
@ -7079,7 +7079,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-bytes"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"bytes",
@ -7094,7 +7094,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-env"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"dotenvy",
@ -7108,7 +7108,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-fetch"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"indexmap",
@ -7125,7 +7125,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-fs"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"auto-hash-map",
@ -7155,7 +7155,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-hash"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"base16",
"hex",
@ -7167,7 +7167,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-macros"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"convert_case 0.6.0",
@ -7181,7 +7181,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-macros-shared"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"proc-macro2",
"quote",
@ -7191,7 +7191,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-malloc"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"mimalloc",
]
@ -7199,7 +7199,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-memory"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"auto-hash-map",
@ -7222,7 +7222,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-testing"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"auto-hash-map",
@ -7234,7 +7234,7 @@ dependencies = [
[[package]]
name = "turbopack"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"async-recursion",
@ -7264,7 +7264,7 @@ dependencies = [
[[package]]
name = "turbopack-bench"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"chromiumoxide",
@ -7294,7 +7294,7 @@ dependencies = [
[[package]]
name = "turbopack-binding"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"auto-hash-map",
"mdxjs",
@ -7324,6 +7324,7 @@ dependencies = [
"turbopack-dev-server",
"turbopack-ecmascript",
"turbopack-ecmascript-plugins",
"turbopack-ecmascript-runtime",
"turbopack-env",
"turbopack-image",
"turbopack-node",
@ -7334,7 +7335,7 @@ dependencies = [
[[package]]
name = "turbopack-cli-utils"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"clap 4.1.11",
@ -7358,7 +7359,7 @@ dependencies = [
[[package]]
name = "turbopack-core"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"async-trait",
@ -7386,7 +7387,7 @@ dependencies = [
[[package]]
name = "turbopack-create-test-app"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"clap 4.1.11",
@ -7399,7 +7400,7 @@ dependencies = [
[[package]]
name = "turbopack-css"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"async-trait",
@ -7421,7 +7422,7 @@ dependencies = [
[[package]]
name = "turbopack-dev"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"indexmap",
@ -7429,6 +7430,7 @@ dependencies = [
"serde",
"serde_json",
"serde_qs",
"swc_core",
"tracing",
"turbo-tasks",
"turbo-tasks-build",
@ -7438,12 +7440,13 @@ dependencies = [
"turbopack-core",
"turbopack-css",
"turbopack-ecmascript",
"turbopack-ecmascript-runtime",
]
[[package]]
name = "turbopack-dev-server"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"async-compression",
@ -7478,7 +7481,7 @@ dependencies = [
[[package]]
name = "turbopack-ecmascript"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"async-trait",
@ -7511,7 +7514,7 @@ dependencies = [
[[package]]
name = "turbopack-ecmascript-plugins"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"async-trait",
@ -7529,10 +7532,27 @@ dependencies = [
"turbopack-ecmascript",
]
[[package]]
name = "turbopack-ecmascript-runtime"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"indoc",
"serde",
"swc_core",
"turbo-tasks",
"turbo-tasks-build",
"turbo-tasks-fs",
"turbopack",
"turbopack-core",
"turbopack-ecmascript",
]
[[package]]
name = "turbopack-env"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"indexmap",
@ -7548,7 +7568,7 @@ dependencies = [
[[package]]
name = "turbopack-image"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"base64 0.21.0",
@ -7568,7 +7588,7 @@ dependencies = [
[[package]]
name = "turbopack-json"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"serde",
@ -7583,7 +7603,7 @@ dependencies = [
[[package]]
name = "turbopack-mdx"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"mdxjs",
@ -7598,7 +7618,7 @@ dependencies = [
[[package]]
name = "turbopack-node"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"async-stream",
@ -7633,7 +7653,7 @@ dependencies = [
[[package]]
name = "turbopack-static"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"serde",
@ -7649,7 +7669,7 @@ dependencies = [
[[package]]
name = "turbopack-swc-utils"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"swc_core",
"turbo-tasks",
@ -7660,7 +7680,7 @@ dependencies = [
[[package]]
name = "turbopack-test-utils"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230523.3#49ac90877547511d9f962f126a7b23b5cc0d45be"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-230526.2#a066e12989dcc8f7dd4ba1d3c4bd111be1d33a6a"
dependencies = [
"anyhow",
"once_cell",
@ -7678,7 +7698,7 @@ version = "1.6.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675"
dependencies = [
"cfg-if 0.1.10",
"cfg-if 1.0.0",
"rand",
"static_assertions",
]

View file

@ -42,11 +42,11 @@ swc_core = { version = "0.76.18" }
testing = { version = "0.33.11" }
# Turbo crates
turbopack-binding = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-230523.3" }
turbopack-binding = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-230526.2" }
# [TODO]: need to refactor embed_directory! macro usages, as well as resolving turbo_tasks::function, macros..
turbo-tasks = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-230523.3" }
turbo-tasks = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-230526.2" }
# [TODO]: need to refactor embed_directory! macro usage in next-core
turbo-tasks-fs = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-230523.3" }
turbo-tasks-fs = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-230526.2" }
# General Deps

View file

@ -40,6 +40,7 @@ turbopack-binding = { workspace = true, features = [
"__turbopack_dev_server",
"__turbopack_ecmascript",
"__turbopack_ecmascript_plugin",
"__turbopack_ecmascript_runtime",
"__turbopack_env",
"__turbopack_static",
"__turbopack_image",

View file

@ -10,8 +10,8 @@
"check": "tsc --noEmit"
},
"dependencies": {
"@vercel/turbopack-dev": "https://gitpkg.vercel.app/vercel/turbo/crates/turbopack-dev/js?turbopack-230523.3",
"@vercel/turbopack-node": "https://gitpkg.vercel.app/vercel/turbo/crates/turbopack-node/js?turbopack-230523.3",
"@vercel/turbopack-ecmascript-runtime": "https://gitpkg.vercel.app/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-230526.2",
"@vercel/turbopack-node": "https://gitpkg.vercel.app/vercel/turbo/crates/turbopack-node/js?turbopack-230526.2",
"anser": "^2.1.1",
"css.escape": "^1.5.1",
"next": "*",

View file

@ -1,5 +1,5 @@
import { connect } from '@vercel/turbopack-dev/client/hmr-client'
import { connectHMR } from '@vercel/turbopack-dev/client/websocket'
import { connect } from '@vercel/turbopack-ecmascript-runtime/dev/client/hmr-client'
import { connectHMR } from '@vercel/turbopack-ecmascript-runtime/dev/client/websocket'
import { register, ReactDevOverlay } from '../overlay/client'
export function initializeHMR(options: { assetPrefix: string }) {

View file

@ -3,7 +3,7 @@
import type React from 'react'
import { useRouter, usePathname } from 'next/dist/client/components/navigation'
import { useEffect } from 'react'
import { subscribeToUpdate } from '@vercel/turbopack-dev/client/hmr-client'
import { subscribeToUpdate } from '@vercel/turbopack-ecmascript-runtime/dev/client/hmr-client'
import { ReactDevOverlay } from './client'
type HotReloadProps = React.PropsWithChildren<{

View file

@ -3,7 +3,7 @@ import '../internal/shims-client'
import { createRoot } from 'react-dom/client'
import { initializeHMR, ReactDevOverlay } from '../dev/client'
import { subscribeToUpdate } from '@vercel/turbopack-dev/client/hmr-client'
import { subscribeToUpdate } from '@vercel/turbopack-ecmascript-runtime/dev/client/hmr-client'
const pageChunkPath = location.pathname.slice(1)

View file

@ -8,7 +8,7 @@ import {
} from 'next/dist/shared/lib/router/utils/querystring'
import { formatWithValidation } from 'next/dist/shared/lib/router/utils/format-url'
import { initializeHMR } from '../dev/client'
import { subscribeToUpdate } from '@vercel/turbopack-dev/client/hmr-client'
import { subscribeToUpdate } from '@vercel/turbopack-ecmascript-runtime/dev/client/hmr-client'
import * as _app from '@vercel/turbopack-next/pages/_app'
import * as page from 'PAGE'

View file

@ -1,8 +1,6 @@
import type { Issue } from '@vercel/turbopack-dev/types/protocol'
import * as Bus from './internal/bus'
import { parseStack } from './internal/helpers/parseStack'
import { setHooks } from '@vercel/turbopack-dev/client/hmr-client'
import { setHooks } from '@vercel/turbopack-ecmascript-runtime/dev/client/hmr-client'
let isRegistered = false
let stackTraceLimit: number | undefined = undefined

View file

@ -1,7 +1,5 @@
import * as React from 'react'
import type { Issue } from '@vercel/turbopack-dev/types/protocol'
import * as Bus from './bus'
import { ShadowPortal } from './components/ShadowPortal'
import { Errors, SupportedErrorEvent } from './container/Errors'

View file

@ -1,7 +1,5 @@
import { StackFrame } from 'stacktrace-parser'
import type { Issue } from '@vercel/turbopack-dev/types/protocol'
export const TYPE_BUILD_OK = 'build-ok'
export const TYPE_TURBOPACK_ISSUES = 'turbopack-error'
export const TYPE_BEFORE_REFRESH = 'before-fast-refresh'

View file

@ -1,7 +1,5 @@
import * as React from 'react'
import { Issue } from '@vercel/turbopack-dev/types/protocol'
import {
TYPE_UNHANDLED_ERROR,
TYPE_UNHANDLED_REJECTION,

View file

@ -1,5 +1,3 @@
import { Issue } from '@vercel/turbopack-dev/types/protocol'
import { LeftRightDialogHeader } from '../components/LeftRightDialogHeader'
import { DialogBody, DialogBodyProps } from '../components/Dialog'
import { Terminal } from '../components/Terminal'

View file

@ -2,13 +2,6 @@ import type { Router } from 'next/dist/client/router'
import type { MittEmitter } from 'next/dist/shared/lib/mitt'
declare global {
type ChunkData =
| string
| {
path: string
included: (string | number)[]
excluded: (string | number)[]
}
function __turbopack_require__(name: any): any
function __turbopack_load__(path: ChunkData): any
function __webpack_require__(name: any): any
@ -41,6 +34,12 @@ declare global {
...args: TArgs
): R
}
// This is a hack to allow us to use Turbopack's `module.hot` API in
// TypeScript modules.
interface NodeModule {
hot: Hot
}
}
export {}

View file

@ -1,3 +1 @@
import { ChunkPath } from '@vercel/turbopack-dev/types'
export type ChunkGroup = ChunkPath[]

View file

@ -11,19 +11,19 @@ use turbopack_binding::{
core::{
asset::{Asset, AssetContentVc, AssetVc, AssetsVc},
chunk::{
availability_info::AvailabilityInfo, ChunkGroupReferenceVc, ChunkItem, ChunkItemVc,
ChunkVc, ChunkableAsset, ChunkableAssetVc, ChunkingContext, ChunkingContextVc,
availability_info::AvailabilityInfo, ChunkDataVc, ChunkGroupReferenceVc, ChunkItem,
ChunkItemVc, ChunkVc, ChunkableAsset, ChunkableAssetVc, ChunkingContext,
ChunkingContextVc, ChunksDataVc,
},
ident::AssetIdentVc,
reference::AssetReferencesVc,
},
dev::{ChunkDataVc, ChunksDataVc},
ecmascript::{
chunk::{
EcmascriptChunkItem, EcmascriptChunkItemContent, EcmascriptChunkItemContentVc,
EcmascriptChunkItemVc, EcmascriptChunkPlaceable, EcmascriptChunkPlaceableVc,
EcmascriptChunkVc, EcmascriptChunkingContextVc, EcmascriptExports,
EcmascriptExportsVc,
EcmascriptChunkData, EcmascriptChunkItem, EcmascriptChunkItemContent,
EcmascriptChunkItemContentVc, EcmascriptChunkItemVc, EcmascriptChunkPlaceable,
EcmascriptChunkPlaceableVc, EcmascriptChunkVc, EcmascriptChunkingContextVc,
EcmascriptExports, EcmascriptExportsVc,
},
utils::StringifyJs,
},
@ -161,7 +161,7 @@ impl EcmascriptChunkItem for WithChunksChunkItem {
let chunks_data = chunks_data.iter().try_join().await?;
let chunks_data: Vec<_> = chunks_data
.iter()
.map(|chunk_data| chunk_data.runtime_chunk_data())
.map(|chunk_data| EcmascriptChunkData::new(chunk_data))
.collect();
let module_id = &*inner

View file

@ -7,10 +7,10 @@ use turbopack_binding::{
core::{
asset::{Asset, AssetContentVc, AssetVc, AssetsVc},
chunk::{
availability_info::AvailabilityInfo, ChunkItem, ChunkItemVc, ChunkVc,
availability_info::AvailabilityInfo, ChunkDataVc, ChunkItem, ChunkItemVc, ChunkVc,
ChunkableAsset, ChunkableAssetReference, ChunkableAssetReferenceVc,
ChunkableAssetVc, ChunkingContext, ChunkingContextVc, ChunkingType,
ChunkingTypeOptionVc,
ChunkingTypeOptionVc, ChunksDataVc,
},
ident::AssetIdentVc,
proxied_asset::ProxiedAssetVc,
@ -19,7 +19,7 @@ use turbopack_binding::{
},
resolve::{ResolveResult, ResolveResultVc},
},
dev::{ChunkDataVc, ChunksDataVc},
ecmascript::chunk::EcmascriptChunkData,
turbopack::ecmascript::{
chunk::{
EcmascriptChunkItem, EcmascriptChunkItemContent, EcmascriptChunkItemContentVc,
@ -175,7 +175,7 @@ impl EcmascriptChunkItem for WithClientChunksChunkItem {
let chunks_data = chunks_data.iter().try_join().await?;
let chunks_data: Vec<_> = chunks_data
.iter()
.map(|chunk_data| chunk_data.runtime_chunk_data())
.map(|chunk_data| EcmascriptChunkData::new(chunk_data))
.collect();
let module_id = inner.asset.as_chunk_item(this.context).id().await?;

View file

@ -603,8 +603,8 @@ fn insert_package_alias(import_map: &mut ImportMap, prefix: &str, package_root:
fn insert_turbopack_dev_alias(import_map: &mut ImportMap) {
insert_package_alias(
import_map,
"@vercel/turbopack-dev/",
turbopack_binding::turbopack::dev::embed_js::embed_fs().root(),
"@vercel/turbopack-ecmascript-runtime/",
turbopack_binding::turbopack::ecmascript_runtime::embed_fs().root(),
);
}

View file

@ -8,18 +8,21 @@ use turbopack_binding::{
turbopack::{
core::{
asset::{Asset, AssetContentVc, AssetVc, AssetsVc},
chunk::{ChunkableAsset, ChunkingContext, ChunkingContextVc, EvaluatableAssetsVc},
chunk::{
ChunkDataVc, ChunkableAsset, ChunkingContext, ChunkingContextVc, ChunksDataVc,
EvaluatableAssetsVc,
},
context::{AssetContext, AssetContextVc},
ident::AssetIdentVc,
reference::{AssetReferencesVc, SingleAssetReferenceVc},
reference_type::{EntryReferenceSubType, ReferenceType},
virtual_asset::VirtualAssetVc,
},
dev::{ChunkDataVc, ChunksDataVc},
dev_server::source::{asset_graph::AssetGraphContentSourceVc, ContentSourceVc},
ecmascript::{
utils::StringifyJs, EcmascriptInputTransform, EcmascriptInputTransformsVc,
EcmascriptModuleAssetType, EcmascriptModuleAssetVc, InnerAssetsVc,
chunk::EcmascriptChunkData, utils::StringifyJs, EcmascriptInputTransform,
EcmascriptInputTransformsVc, EcmascriptModuleAssetType, EcmascriptModuleAssetVc,
InnerAssetsVc,
},
},
};
@ -140,7 +143,7 @@ impl Asset for PageLoaderAsset {
let chunks_data = chunks_data.iter().try_join().await?;
let chunks_data: Vec<_> = chunks_data
.iter()
.map(|chunk_data| chunk_data.runtime_chunk_data())
.map(|chunk_data| EcmascriptChunkData::new(chunk_data))
.collect();
let content = format!(

View file

@ -3,7 +3,7 @@ PlainIssue {
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/temp/next/webpack-loaders/emitted-errors/input/pages/hello.emit",
category: "loaders",
title: "Issue while running loader",
description: "Error: Error!\n at readResource (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:159:11)\n at (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:112:5)\n at Module.transform (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:104:10)\n at (/turbopack/[turbopack-node]/ipc/evaluate.ts/evaluate.js:1:67)\n at Module.run (/turbopack/[turbopack-node]/ipc/evaluate.ts:49:31)",
description: "Error: Error!\n at readResource (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:161:11)\n at (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:112:5)\n at Module.transform (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:104:10)\n at (/turbopack/[turbopack-node]/ipc/evaluate.ts/evaluate.js:1:67)\n at Module.run (/turbopack/[turbopack-node]/ipc/evaluate.ts:49:31)",
detail: "",
documentation_link: "",
source: None,

View file

@ -3,7 +3,7 @@ PlainIssue {
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/temp/next/webpack-loaders/emitted-errors/input/pages/hello.emit",
category: "loaders",
title: "Issue while running loader",
description: "Error: Error!\n at readResource (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:159:11)\n at (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:112:5)\n at Module.transform (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:104:10)\n at (/turbopack/[turbopack-node]/ipc/evaluate.ts/evaluate.js:1:67)\n at Module.run (/turbopack/[turbopack-node]/ipc/evaluate.ts:49:31)",
description: "Error: Error!\n at readResource (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:161:11)\n at (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:112:5)\n at Module.transform (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:104:10)\n at (/turbopack/[turbopack-node]/ipc/evaluate.ts/evaluate.js:1:67)\n at Module.run (/turbopack/[turbopack-node]/ipc/evaluate.ts:49:31)",
detail: "",
documentation_link: "",
source: None,

View file

@ -3,7 +3,7 @@ PlainIssue {
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/temp/next/webpack-loaders/emitted-errors/input/pages/hello.emit",
category: "loaders",
title: "Issue while running loader",
description: "Error: Warning!\n at readResource (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:159:11)\n at (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:112:5)\n at Module.transform (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:104:10)\n at (/turbopack/[turbopack-node]/ipc/evaluate.ts/evaluate.js:1:67)\n at Module.run (/turbopack/[turbopack-node]/ipc/evaluate.ts:49:31)",
description: "Error: Warning!\n at readResource (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:161:11)\n at (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:112:5)\n at Module.transform (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:104:10)\n at (/turbopack/[turbopack-node]/ipc/evaluate.ts/evaluate.js:1:67)\n at Module.run (/turbopack/[turbopack-node]/ipc/evaluate.ts:49:31)",
detail: "",
documentation_link: "",
source: None,

View file

@ -3,7 +3,7 @@ PlainIssue {
context: "[project]/packages/next-swc/crates/next-dev-tests/tests/temp/next/webpack-loaders/emitted-errors/input/pages/hello.emit",
category: "loaders",
title: "Issue while running loader",
description: "Error: Warning!\n at readResource (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:159:11)\n at (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:112:5)\n at Module.transform (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:104:10)\n at (/turbopack/[turbopack-node]/ipc/evaluate.ts/evaluate.js:1:67)\n at Module.run (/turbopack/[turbopack-node]/ipc/evaluate.ts:49:31)",
description: "Error: Warning!\n at readResource (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:161:11)\n at (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:112:5)\n at Module.transform (/turbopack/[turbopack-node]/transforms/webpack-loaders.ts:104:10)\n at (/turbopack/[turbopack-node]/ipc/evaluate.ts/evaluate.js:1:67)\n at Module.run (/turbopack/[turbopack-node]/ipc/evaluate.ts:49:31)",
detail: "",
documentation_link: "",
source: None,

View file

@ -1012,8 +1012,8 @@ importers:
'@types/react': 18.2.5
'@types/react-dom': 18.2.3
'@vercel/ncc': ^0.36.0
'@vercel/turbopack-dev': https://gitpkg.vercel.app/vercel/turbo/crates/turbopack-dev/js?turbopack-230523.3
'@vercel/turbopack-node': https://gitpkg.vercel.app/vercel/turbo/crates/turbopack-node/js?turbopack-230523.3
'@vercel/turbopack-ecmascript-runtime': https://gitpkg.vercel.app/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-230526.2
'@vercel/turbopack-node': https://gitpkg.vercel.app/vercel/turbo/crates/turbopack-node/js?turbopack-230526.2
anser: ^2.1.1
css.escape: ^1.5.1
find-up: ^6.3.0
@ -1025,8 +1025,8 @@ importers:
stacktrace-parser: ^0.1.10
strip-ansi: ^7.0.1
dependencies:
'@vercel/turbopack-dev': '@gitpkg.vercel.app/vercel/turbo/crates/turbopack-dev/js?turbopack-230523.3_react-refresh@0.12.0'
'@vercel/turbopack-node': '@gitpkg.vercel.app/vercel/turbo/crates/turbopack-node/js?turbopack-230523.3'
'@vercel/turbopack-ecmascript-runtime': '@gitpkg.vercel.app/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-230526.2_react-refresh@0.12.0'
'@vercel/turbopack-node': '@gitpkg.vercel.app/vercel/turbo/crates/turbopack-node/js?turbopack-230526.2'
anser: 2.1.1
css.escape: 1.5.1
next: link:../../../../next
@ -5997,7 +5997,7 @@ packages:
dependencies:
'@mdx-js/mdx': 2.2.1
source-map: 0.7.3
webpack: 5.74.0
webpack: 5.74.0_@swc+core@1.3.55
transitivePeerDependencies:
- supports-color
@ -6669,7 +6669,6 @@ packages:
cpu: [arm64]
os: [darwin]
requiresBuild: true
dev: true
optional: true
/@swc/core-darwin-x64/1.3.55:
@ -6678,7 +6677,6 @@ packages:
cpu: [x64]
os: [darwin]
requiresBuild: true
dev: true
optional: true
/@swc/core-linux-arm-gnueabihf/1.3.55:
@ -6687,7 +6685,6 @@ packages:
cpu: [arm]
os: [linux]
requiresBuild: true
dev: true
optional: true
/@swc/core-linux-arm64-gnu/1.3.55:
@ -6696,7 +6693,6 @@ packages:
cpu: [arm64]
os: [linux]
requiresBuild: true
dev: true
optional: true
/@swc/core-linux-arm64-musl/1.3.55:
@ -6705,7 +6701,6 @@ packages:
cpu: [arm64]
os: [linux]
requiresBuild: true
dev: true
optional: true
/@swc/core-linux-x64-gnu/1.3.55:
@ -6714,7 +6709,6 @@ packages:
cpu: [x64]
os: [linux]
requiresBuild: true
dev: true
optional: true
/@swc/core-linux-x64-musl/1.3.55:
@ -6723,7 +6717,6 @@ packages:
cpu: [x64]
os: [linux]
requiresBuild: true
dev: true
optional: true
/@swc/core-win32-arm64-msvc/1.3.55:
@ -6732,7 +6725,6 @@ packages:
cpu: [arm64]
os: [win32]
requiresBuild: true
dev: true
optional: true
/@swc/core-win32-ia32-msvc/1.3.55:
@ -6741,7 +6733,6 @@ packages:
cpu: [ia32]
os: [win32]
requiresBuild: true
dev: true
optional: true
/@swc/core-win32-x64-msvc/1.3.55:
@ -6750,7 +6741,6 @@ packages:
cpu: [x64]
os: [win32]
requiresBuild: true
dev: true
optional: true
/@swc/core/1.3.55_@swc+helpers@0.5.1:
@ -6775,7 +6765,6 @@ packages:
'@swc/core-win32-arm64-msvc': 1.3.55
'@swc/core-win32-ia32-msvc': 1.3.55
'@swc/core-win32-x64-msvc': 1.3.55
dev: true
/@swc/helpers/0.4.14:
resolution: {integrity: sha512-4C7nX/dvpzB7za4Ql9K81xK3HPxCpHMgwTZVyf+9JQ6VUbn9jjZVN7/Nkdz/Ugzs2CSjqnL/UPXroiVBVHUWUw==}
@ -23669,7 +23658,6 @@ packages:
source-map: 0.6.1
terser: 5.14.1
webpack: 5.74.0_@swc+core@1.3.55
dev: true
/terser-webpack-plugin/5.2.4_webpack@5.74.0:
resolution: {integrity: sha512-E2CkNMN+1cho04YpdANyRrn8CyN4yMy+WdFKZIySFZrGXZxJwJP6PMNGGc/Mcr6qygQHUUqRxnAPmi0M9f00XA==}
@ -25079,7 +25067,6 @@ packages:
- '@swc/core'
- esbuild
- uglify-js
dev: true
/websocket-driver/0.7.3:
resolution: {integrity: sha512-bpxWlvbbB459Mlipc5GBzzZwhoZgGEZLuqPaR0INBGnPAY1vdBX6hPnoFXiw+3yWxDuHyQjO2oXTMyS8A5haFg==}
@ -25490,20 +25477,21 @@ packages:
/zwitch/2.0.4:
resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
'@gitpkg.vercel.app/vercel/turbo/crates/turbopack-dev/js?turbopack-230523.3_react-refresh@0.12.0':
resolution: {tarball: https://gitpkg.vercel.app/vercel/turbo/crates/turbopack-dev/js?turbopack-230523.3}
id: '@gitpkg.vercel.app/vercel/turbo/crates/turbopack-dev/js?turbopack-230523.3'
name: '@vercel/turbopack-dev'
'@gitpkg.vercel.app/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-230526.2_react-refresh@0.12.0':
resolution: {tarball: https://gitpkg.vercel.app/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-230526.2}
id: '@gitpkg.vercel.app/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-230526.2'
name: '@vercel/turbopack-ecmascript-runtime'
version: 0.0.0
dependencies:
'@next/react-refresh-utils': 13.4.3_react-refresh@0.12.0
'@types/node': 18.11.18
transitivePeerDependencies:
- react-refresh
- webpack
dev: false
'@gitpkg.vercel.app/vercel/turbo/crates/turbopack-node/js?turbopack-230523.3':
resolution: {tarball: https://gitpkg.vercel.app/vercel/turbo/crates/turbopack-node/js?turbopack-230523.3}
'@gitpkg.vercel.app/vercel/turbo/crates/turbopack-node/js?turbopack-230526.2':
resolution: {tarball: https://gitpkg.vercel.app/vercel/turbo/crates/turbopack-node/js?turbopack-230526.2}
name: '@vercel/turbopack-node'
version: 0.0.0
dependencies: