Enable minification for Turbopack (#62994)

## What?

Implementation for https://github.com/vercel/turbo/pull/7660. Enables
minification of browser files.

<!-- Thanks for opening a PR! Your contribution is much appreciated.
To make sure your PR is handled as smoothly as possible we request that
you follow the checklist sections below.
Choose the right checklist for the change(s) that you're making:

## For Contributors

### Improving Documentation

- Run `pnpm prettier-fix` to fix formatting issues before opening the
PR.
- Read the Docs Contribution Guide to ensure your contribution follows
the docs guidelines:
https://nextjs.org/docs/community/contribution-guide

### Adding or Updating Examples

- The "examples guidelines" are followed from our contributing doc
https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md
- Make sure the linting passes by running `pnpm build && pnpm lint`. See
https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md

### Fixing a bug

- Related issues linked using `fixes #number`
- Tests added. See:
https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md

### Adding a feature

- Implements an existing feature request or RFC. Make sure the feature
request has been accepted for implementation before opening a PR. (A
discussion must be opened, see
https://github.com/vercel/next.js/discussions/new?category=ideas)
- Related issues/discussions are linked using `fixes #number`
- e2e tests added
(https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs)
- Documentation added
- Telemetry added. In case of a feature if it's used or not.
- Errors have a helpful link attached, see
https://github.com/vercel/next.js/blob/canary/contributing.md


## For Maintainers

- Minimal description (aim for explaining to someone not on the team to
understand the PR)
- When linking to a Slack thread, you might want to share details of the
conclusion
- Link both the Linear (Fixes NEXT-xxx) and the GitHub issues
- Add review comments if necessary to explain to the reviewer the logic
behind a change

### What?

### Why?

### How?

Closes NEXT-
Fixes #

-->


Closes NEXT-2742

---------

Co-authored-by: Tobias Koppers <tobias.koppers@googlemail.com>
This commit is contained in:
Tim Neutkens 2024-03-08 08:11:50 +01:00 committed by GitHub
parent ff1d4cb3e7
commit 36e401ecc5
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
20 changed files with 177 additions and 221 deletions

128
Cargo.lock generated
View file

@ -321,7 +321,7 @@ dependencies = [
[[package]]
name = "auto-hash-map"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"serde",
"smallvec",
@ -3396,7 +3396,7 @@ dependencies = [
[[package]]
name = "node-file-trace"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"serde",
@ -7373,7 +7373,7 @@ dependencies = [
[[package]]
name = "turbo-tasks"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"async-trait",
@ -7405,7 +7405,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-build"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"cargo-lock",
@ -7417,7 +7417,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-bytes"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"bytes",
@ -7432,7 +7432,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-env"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"dotenvs",
@ -7446,7 +7446,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-fetch"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"indexmap 1.9.3",
@ -7463,7 +7463,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-fs"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"auto-hash-map",
@ -7495,7 +7495,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-hash"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"base16",
"hex",
@ -7507,7 +7507,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-macros"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"convert_case 0.6.0",
@ -7521,7 +7521,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-macros-shared"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"proc-macro2",
"quote",
@ -7531,7 +7531,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-malloc"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"mimalloc",
]
@ -7539,7 +7539,7 @@ dependencies = [
[[package]]
name = "turbo-tasks-memory"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"auto-hash-map",
@ -7564,7 +7564,7 @@ dependencies = [
[[package]]
name = "turbopack"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"async-recursion",
@ -7597,7 +7597,7 @@ dependencies = [
[[package]]
name = "turbopack-binding"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"auto-hash-map",
"mdxjs",
@ -7619,10 +7619,9 @@ dependencies = [
"turbo-tasks-malloc",
"turbo-tasks-memory",
"turbopack",
"turbopack-build",
"turbopack-browser",
"turbopack-cli-utils",
"turbopack-core",
"turbopack-dev",
"turbopack-ecmascript",
"turbopack-ecmascript-hmr-protocol",
"turbopack-ecmascript-plugins",
@ -7630,14 +7629,15 @@ dependencies = [
"turbopack-env",
"turbopack-image",
"turbopack-node",
"turbopack-nodejs",
"turbopack-static",
"turbopack-trace-utils",
]
[[package]]
name = "turbopack-build"
name = "turbopack-browser"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"indexmap 1.9.3",
@ -7645,24 +7645,25 @@ dependencies = [
"serde",
"serde_json",
"serde_qs",
"sourcemap",
"swc_core",
"tracing",
"turbo-tasks",
"turbo-tasks-build",
"turbo-tasks-fs",
"turbo-tasks-hash",
"turbopack",
"turbopack-core",
"turbopack-css",
"turbopack-ecmascript",
"turbopack-ecmascript-runtime",
"turbopack-resolve",
"urlencoding",
]
[[package]]
name = "turbopack-cli-utils"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"clap 4.4.2",
@ -7681,7 +7682,7 @@ dependencies = [
[[package]]
name = "turbopack-core"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"async-recursion",
@ -7712,7 +7713,7 @@ dependencies = [
[[package]]
name = "turbopack-css"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"async-trait",
@ -7737,36 +7738,10 @@ dependencies = [
"urlencoding",
]
[[package]]
name = "turbopack-dev"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
dependencies = [
"anyhow",
"indexmap 1.9.3",
"indoc",
"serde",
"serde_json",
"serde_qs",
"swc_core",
"tracing",
"turbo-tasks",
"turbo-tasks-build",
"turbo-tasks-fs",
"turbo-tasks-hash",
"turbopack",
"turbopack-core",
"turbopack-css",
"turbopack-ecmascript",
"turbopack-ecmascript-runtime",
"turbopack-resolve",
"urlencoding",
]
[[package]]
name = "turbopack-dev-server"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"async-compression",
@ -7803,7 +7778,7 @@ dependencies = [
[[package]]
name = "turbopack-ecmascript"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"async-trait",
@ -7835,12 +7810,13 @@ dependencies = [
"turbopack-resolve",
"turbopack-swc-utils",
"url",
"urlencoding",
]
[[package]]
name = "turbopack-ecmascript-hmr-protocol"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"serde",
"serde_json",
@ -7851,7 +7827,7 @@ dependencies = [
[[package]]
name = "turbopack-ecmascript-plugins"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"async-trait",
@ -7876,7 +7852,7 @@ dependencies = [
[[package]]
name = "turbopack-ecmascript-runtime"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"indoc",
@ -7893,7 +7869,7 @@ dependencies = [
[[package]]
name = "turbopack-env"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"indexmap 1.9.3",
@ -7909,7 +7885,7 @@ dependencies = [
[[package]]
name = "turbopack-image"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"base64 0.21.4",
@ -7929,7 +7905,7 @@ dependencies = [
[[package]]
name = "turbopack-json"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"serde",
@ -7944,7 +7920,7 @@ dependencies = [
[[package]]
name = "turbopack-mdx"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"mdxjs",
@ -7959,7 +7935,7 @@ dependencies = [
[[package]]
name = "turbopack-node"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"async-stream",
@ -7994,10 +7970,34 @@ dependencies = [
"urlencoding",
]
[[package]]
name = "turbopack-nodejs"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"indexmap 1.9.3",
"indoc",
"serde",
"serde_json",
"serde_qs",
"sourcemap",
"tracing",
"turbo-tasks",
"turbo-tasks-build",
"turbo-tasks-fs",
"turbo-tasks-hash",
"turbopack-core",
"turbopack-css",
"turbopack-ecmascript",
"turbopack-ecmascript-runtime",
"urlencoding",
]
[[package]]
name = "turbopack-resolve"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"async-recursion",
@ -8019,7 +8019,7 @@ dependencies = [
[[package]]
name = "turbopack-static"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"serde",
@ -8035,7 +8035,7 @@ dependencies = [
[[package]]
name = "turbopack-swc-utils"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"swc_core",
"turbo-tasks",
@ -8046,7 +8046,7 @@ dependencies = [
[[package]]
name = "turbopack-trace-utils"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"crossbeam-channel",
@ -8062,7 +8062,7 @@ dependencies = [
[[package]]
name = "turbopack-wasm"
version = "0.1.0"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.1#703985d75d50dd187e1c9e1e4319fb7745269d8e"
source = "git+https://github.com/vercel/turbo.git?tag=turbopack-240307.3#ccde74e172db26aa850cc1f688bb586ca99f2d1e"
dependencies = [
"anyhow",
"indexmap 1.9.3",

View file

@ -37,11 +37,11 @@ swc_core = { version = "0.90.17", features = [
testing = { version = "0.35.20" }
# Turbo crates
turbopack-binding = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-240307.1" }
turbopack-binding = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-240307.3" }
# [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-240307.1" }
turbo-tasks = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-240307.3" }
# [TODO]: need to refactor embed_directory! macro usage in next-core
turbo-tasks-fs = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-240307.1" }
turbo-tasks-fs = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-240307.3" }
# General Deps

View file

@ -28,9 +28,9 @@ turbopack-binding = { workspace = true, features = [
"__turbo_tasks_env",
"__turbo_tasks_fs",
"__turbopack",
"__turbopack_build",
"__turbopack_nodejs",
"__turbopack_core",
"__turbopack_dev",
"__turbopack_browser",
"__turbopack_env",
"__turbopack_cli_utils",
"__turbopack_node",

View file

@ -41,7 +41,6 @@ use turbopack_binding::{
tasks_fs::{rope::RopeBuilder, File, FileContent, FileSystemPath},
},
turbopack::{
build::EntryChunkGroupResult,
core::{
asset::{Asset, AssetContent},
chunk::{availability_info::AvailabilityInfo, ChunkingContextExt, EvaluatableAssets},
@ -50,6 +49,7 @@ use turbopack_binding::{
output::{OutputAsset, OutputAssets},
virtual_output::VirtualOutputAsset,
},
nodejs::EntryChunkGroupResult,
turbopack::{
module_options::ModuleOptionsContext, resolve_options_context::ResolveOptionsContext,
transition::ContextTransition, ModuleAssetContext,

View file

@ -12,7 +12,6 @@ use turbopack_binding::{
visit::{Visit, VisitWith},
},
turbopack::{
build::BuildChunkingContext,
core::{
chunk::{
availability_info::AvailabilityInfo, ChunkableModule, ChunkingContextExt,
@ -31,6 +30,7 @@ use turbopack_binding::{
resolve::esm_resolve,
EcmascriptModuleAsset,
},
nodejs::NodeJsChunkingContext,
},
};
@ -79,7 +79,7 @@ where
}
pub(crate) async fn collect_chunk_group(
chunking_context: Vc<BuildChunkingContext>,
chunking_context: Vc<NodeJsChunkingContext>,
dynamic_import_entries: IndexMap<Vc<Box<dyn Module>>, DynamicImportedModules>,
availability_info: Value<AvailabilityInfo>,
) -> Result<Vc<DynamicImportedChunks>> {

View file

@ -10,7 +10,6 @@ use turbo_tasks::{Completion, Value, Vc};
use turbopack_binding::{
turbo::tasks_fs::{File, FileContent},
turbopack::{
build::EntryChunkGroupResult,
core::{
asset::AssetContent,
chunk::{availability_info::AvailabilityInfo, ChunkingContextExt},
@ -22,6 +21,7 @@ use turbopack_binding::{
virtual_output::VirtualOutputAsset,
},
ecmascript::chunk::EcmascriptChunkPlaceable,
nodejs::EntryChunkGroupResult,
},
};

View file

@ -19,6 +19,6 @@ shadow_rs::shadow!(build);
pub fn register() {
next_core::register();
turbopack_binding::turbopack::build::register();
turbopack_binding::turbopack::nodejs::register();
include!(concat!(env!("OUT_DIR"), "/register.rs"));
}

View file

@ -36,7 +36,6 @@ use turbopack_binding::{
File, FileContent, FileSystem, FileSystemPath, FileSystemPathOption, VirtualFileSystem,
},
turbopack::{
build::{BuildChunkingContext, EntryChunkGroupResult},
core::{
asset::AssetContent,
chunk::{availability_info::AvailabilityInfo, ChunkingContextExt, EvaluatableAssets},
@ -57,6 +56,7 @@ use turbopack_binding::{
resolve::esm_resolve,
EcmascriptModuleAsset,
},
nodejs::{EntryChunkGroupResult, NodeJsChunkingContext},
turbopack::{
module_options::ModuleOptionsContext,
resolve_options_context::ResolveOptionsContext,
@ -658,7 +658,7 @@ impl PageEndpoint {
project_root: Vc<FileSystemPath>,
module_context: Vc<ModuleAssetContext>,
edge_module_context: Vc<ModuleAssetContext>,
chunking_context: Vc<BuildChunkingContext>,
chunking_context: Vc<NodeJsChunkingContext>,
edge_chunking_context: Vc<Box<dyn EcmascriptChunkingContext>>,
runtime_entries: Vc<EvaluatableAssets>,
edge_runtime_entries: Vc<EvaluatableAssets>,

View file

@ -33,7 +33,7 @@ use turbopack_binding::{
tasks_fs::{DiskFileSystem, FileSystem, FileSystemPath, VirtualFileSystem},
},
turbopack::{
build::BuildChunkingContext,
browser::BrowserChunkingContext,
core::{
changed::content_changed,
compile_time_info::CompileTimeInfo,
@ -48,9 +48,9 @@ use turbopack_binding::{
version::{Update, Version, VersionState, VersionedContent},
PROJECT_FILESYSTEM_NAME,
},
dev::DevChunkingContext,
ecmascript::chunk::EcmascriptChunkingContext,
node::execution_context::ExecutionContext,
nodejs::NodeJsChunkingContext,
turbopack::{evaluate_context::node_build_environment, ModuleAssetContext},
},
};
@ -497,7 +497,7 @@ impl Project {
let node_root = self.node_root();
let node_execution_chunking_context = Vc::upcast(
DevChunkingContext::builder(
BrowserChunkingContext::builder(
self.project_path(),
node_root,
node_root,
@ -555,25 +555,31 @@ impl Project {
}
#[turbo_tasks::function]
pub(super) fn server_chunking_context(self: Vc<Self>) -> Vc<BuildChunkingContext> {
get_server_chunking_context(
pub(super) async fn server_chunking_context(
self: Vc<Self>,
) -> Result<Vc<NodeJsChunkingContext>> {
Ok(get_server_chunking_context(
self.next_mode(),
self.project_path(),
self.node_root(),
self.client_relative_path(),
self.next_config().computed_asset_prefix(),
self.server_compile_time_info().environment(),
)
))
}
#[turbo_tasks::function]
pub(super) fn edge_chunking_context(self: Vc<Self>) -> Vc<Box<dyn EcmascriptChunkingContext>> {
get_edge_chunking_context(
pub(super) fn edge_chunking_context(
self: Vc<Self>,
) -> Result<Vc<Box<dyn EcmascriptChunkingContext>>> {
Ok(get_edge_chunking_context(
self.next_mode(),
self.project_path(),
self.node_root(),
self.client_relative_path(),
self.next_config().computed_asset_prefix(),
self.edge_compile_time_info().environment(),
)
))
}
/// Emit a telemetry event corresponding to [webpack configuration telemetry](https://github.com/vercel/next.js/blob/9da305fe320b89ee2f8c3cfb7ecbf48856368913/packages/next/src/build/webpack-config.ts#L2516)

View file

@ -27,9 +27,9 @@ turbopack-binding = { workspace = true, features = [
"__turbo_tasks_fs",
"__turbo_tasks_memory",
"__turbopack",
"__turbopack_build",
"__turbopack_nodejs",
"__turbopack_core",
"__turbopack_dev",
"__turbopack_browser",
"__turbopack_ecmascript",
"__turbopack_ecmascript_runtime",
"__turbopack_env",

View file

@ -11,8 +11,8 @@ pub fn register() {
turbopack_binding::turbopack::turbopack::register();
turbopack_binding::turbopack::core::register();
turbopack_binding::turbopack::node::register();
turbopack_binding::turbopack::dev::register();
turbopack_binding::turbopack::build::register();
turbopack_binding::turbopack::browser::register();
turbopack_binding::turbopack::nodejs::register();
next_core::register();
include!(concat!(env!("OUT_DIR"), "/register.rs"));
}

View file

@ -44,9 +44,9 @@ turbopack-binding = { workspace = true, features = [
"__turbo_tasks_fs",
"__turbo_tasks_hash",
"__turbopack",
"__turbopack_build",
"__turbopack_nodejs",
"__turbopack_core",
"__turbopack_dev",
"__turbopack_browser",
"__turbopack_ecmascript",
"__turbopack_ecmascript_plugin",
"__turbopack_ecmascript_runtime",
@ -74,5 +74,5 @@ image-avif = ["turbopack-binding/__turbopack_image_avif"]
# enable "HMR" for embedded assets
dynamic_embed_contents = [
"turbopack-binding/__turbo_tasks_fs_dynamic_embed_contents",
"turbopack-binding/__turbopack_dev_dynamic_embed_contents",
"turbopack-binding/__turbopack_browser_dynamic_embed_contents",
]

View file

@ -57,7 +57,7 @@ pub fn register() {
turbo::tasks_bytes::register();
turbo::tasks_fs::register();
turbo::tasks_fetch::register();
turbopack::dev::register();
turbopack::browser::register();
turbopack::node::register();
turbopack::turbopack::register();
turbopack::image::register();

View file

@ -40,4 +40,11 @@ impl NextMode {
NextMode::Build => true,
}
}
pub fn should_minify(&self) -> bool {
match self {
NextMode::Development => false,
NextMode::Build => true,
}
}
}

View file

@ -7,7 +7,9 @@ use turbo_tasks_fs::FileSystem;
use turbopack_binding::{
turbo::{tasks_env::EnvMap, tasks_fs::FileSystemPath},
turbopack::{
browser::{react_refresh::assert_can_resolve_react_refresh, BrowserChunkingContext},
core::{
chunk::MinifyType,
compile_time_info::{
CompileTimeDefineValue, CompileTimeDefines, CompileTimeInfo, FreeVarReference,
FreeVarReferences,
@ -16,7 +18,6 @@ use turbopack_binding::{
free_var_references,
resolve::{parse::Request, pattern::Pattern},
},
dev::{react_refresh::assert_can_resolve_react_refresh, DevChunkingContext},
ecmascript::{chunk::EcmascriptChunkingContext, TreeShakingMode},
node::{
execution_context::ExecutionContext,
@ -336,7 +337,8 @@ pub async fn get_client_chunking_context(
environment: Vc<Environment>,
mode: Vc<NextMode>,
) -> Result<Vc<Box<dyn EcmascriptChunkingContext>>> {
let mut builder = DevChunkingContext::builder(
let next_mode = mode.await?;
let mut builder = BrowserChunkingContext::builder(
project_path,
client_root,
client_root,
@ -345,9 +347,14 @@ pub async fn get_client_chunking_context(
environment,
)
.chunk_base_path(asset_prefix)
.minify_type(if next_mode.should_minify() {
MinifyType::Minify
} else {
MinifyType::NoMinify
})
.asset_base_path(asset_prefix);
if mode.await?.is_development() {
if next_mode.is_development() {
builder = builder.hot_module_replacement();
}

View file

@ -4,7 +4,9 @@ use turbo_tasks::{Value, Vc};
use turbopack_binding::{
turbo::{tasks_env::EnvMap, tasks_fs::FileSystemPath},
turbopack::{
browser::BrowserChunkingContext,
core::{
chunk::MinifyType,
compile_time_info::{
CompileTimeDefineValue, CompileTimeDefines, CompileTimeInfo, FreeVarReference,
FreeVarReferences,
@ -12,7 +14,6 @@ use turbopack_binding::{
environment::{EdgeWorkerEnvironment, Environment, ExecutionEnvironment},
free_var_references,
},
dev::DevChunkingContext,
ecmascript::chunk::EcmascriptChunkingContext,
node::{debug::should_debug, execution_context::ExecutionContext},
turbopack::resolve_options_context::ResolveOptionsContext,
@ -148,16 +149,17 @@ pub async fn get_edge_resolve_options_context(
}
#[turbo_tasks::function]
pub fn get_edge_chunking_context(
pub async fn get_edge_chunking_context(
mode: Vc<NextMode>,
project_path: Vc<FileSystemPath>,
node_root: Vc<FileSystemPath>,
client_root: Vc<FileSystemPath>,
asset_prefix: Vc<Option<String>>,
environment: Vc<Environment>,
) -> Vc<Box<dyn EcmascriptChunkingContext>> {
) -> Result<Vc<Box<dyn EcmascriptChunkingContext>>> {
let output_root = node_root.join("server/edge".to_string());
Vc::upcast(
DevChunkingContext::builder(
Ok(Vc::upcast(
BrowserChunkingContext::builder(
project_path,
output_root,
client_root,
@ -167,6 +169,11 @@ pub fn get_edge_chunking_context(
)
.asset_base_path(asset_prefix)
.reference_chunk_source_maps(should_debug("edge"))
.minify_type(if mode.await?.should_minify() {
MinifyType::Minify
} else {
MinifyType::NoMinify
})
.build(),
)
))
}

View file

@ -8,8 +8,8 @@ use turbopack_binding::{
tasks_fs::FileSystemPath,
},
turbopack::{
build::{BuildChunkingContext, MinifyType},
core::{
chunk::MinifyType,
compile_time_info::{
CompileTimeDefineValue, CompileTimeDefines, CompileTimeInfo, FreeVarReferences,
},
@ -22,6 +22,7 @@ use turbopack_binding::{
execution_context::ExecutionContext,
transforms::postcss::{PostCssConfigLocation, PostCssTransformOptions},
},
nodejs::NodeJsChunkingContext,
turbopack::{
condition::ContextCondition,
module_options::{
@ -725,7 +726,8 @@ pub fn get_server_runtime_entries(
}
#[turbo_tasks::function]
pub fn get_server_chunking_context(
pub async fn get_server_chunking_context(
mode: Vc<NextMode>,
project_path: Vc<FileSystemPath>,
node_root: Vc<FileSystemPath>,
// TODO(alexkirsz) Is this even necessary? Are assets not always on the client chunking context
@ -733,11 +735,11 @@ pub fn get_server_chunking_context(
client_root: Vc<FileSystemPath>,
asset_prefix: Vc<Option<String>>,
environment: Vc<Environment>,
) -> Vc<BuildChunkingContext> {
) -> Result<Vc<NodeJsChunkingContext>> {
// TODO(alexkirsz) This should return a trait that can be implemented by the
// different server chunking contexts. OR the build chunking context should
// support both production and development modes.
BuildChunkingContext::builder(
Ok(NodeJsChunkingContext::builder(
project_path,
node_root,
client_root,
@ -746,6 +748,10 @@ pub fn get_server_chunking_context(
environment,
)
.asset_prefix(asset_prefix)
.minify_type(MinifyType::NoMinify)
.build()
.minify_type(if mode.await?.should_minify() {
MinifyType::Minify
} else {
MinifyType::NoMinify
})
.build())
}

View file

@ -3,12 +3,12 @@ use turbo_tasks::Vc;
use turbopack_binding::{
turbo::tasks_fs::{FileJsonContent, FileSystemPath},
turbopack::{
browser::react_refresh::assert_can_resolve_react_refresh,
core::{
file_source::FileSource,
resolve::{find_context_file, node::node_cjs_resolve_options, FindContextFileResult},
source::Source,
},
dev::react_refresh::assert_can_resolve_react_refresh,
ecmascript::typescript::resolve::{read_from_tsconfigs, read_tsconfigs, tsconfig},
turbopack::{
module_options::{

View file

@ -192,7 +192,7 @@
"@types/ws": "8.2.0",
"@vercel/ncc": "0.34.0",
"@vercel/nft": "0.26.4",
"@vercel/turbopack-ecmascript-runtime": "https://gitpkg-fork.vercel.sh/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-240307.1",
"@vercel/turbopack-ecmascript-runtime": "https://gitpkg-fork.vercel.sh/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-240307.3",
"acorn": "8.5.0",
"amphtml-validator": "1.0.35",
"anser": "1.4.9",

View file

@ -538,7 +538,7 @@ importers:
version: 1.2.2
tsec:
specifier: 0.2.1
version: 0.2.1(@bazel/bazelisk@1.19.0)(typescript@5.2.2)
version: 0.2.1(@bazel/bazelisk@1.18.0)(typescript@5.2.2)
turbo:
specifier: 1.12.2
version: 1.12.2
@ -1071,8 +1071,8 @@ importers:
specifier: 0.26.4
version: 0.26.4
'@vercel/turbopack-ecmascript-runtime':
specifier: https://gitpkg-fork.vercel.sh/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-240307.1
version: '@gitpkg-fork.vercel.sh/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-240307.1'
specifier: https://gitpkg-fork.vercel.sh/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-240307.3
version: '@gitpkg-fork.vercel.sh/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-240307.3'
acorn:
specifier: 8.5.0
version: 8.5.0
@ -1667,7 +1667,7 @@ packages:
slash: 2.0.0
optionalDependencies:
'@nicolo-ribaudo/chokidar-2': 2.1.8-no-fsevents.3
chokidar: 3.6.0
chokidar: 3.5.3
dev: true
/@babel/code-frame@7.12.11:
@ -1680,7 +1680,7 @@ packages:
resolution: {integrity: sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/highlight': 7.23.4
'@babel/highlight': 7.22.20
dev: true
/@babel/code-frame@7.22.13:
@ -1842,24 +1842,6 @@ packages:
'@babel/helper-split-export-declaration': 7.22.6
semver: 6.3.1
/@babel/helper-create-class-features-plugin@7.24.0(@babel/core@7.22.5):
resolution: {integrity: sha512-QAH+vfvts51BCsNZ2PhY6HAggnlS6omLLFTsIpeqZk/MmJ6cW7tgz5yRv0fMJThcr6FmbMrENh1RgrWPTYA76g==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': 7.22.5
dependencies:
'@babel/core': 7.22.5
'@babel/helper-annotate-as-pure': 7.22.5
'@babel/helper-environment-visitor': 7.22.20
'@babel/helper-function-name': 7.23.0
'@babel/helper-member-expression-to-functions': 7.23.0
'@babel/helper-optimise-call-expression': 7.22.5
'@babel/helper-replace-supers': 7.22.20(@babel/core@7.22.5)
'@babel/helper-skip-transparent-expression-wrappers': 7.22.5
'@babel/helper-split-export-declaration': 7.22.6
semver: 6.3.1
dev: true
/@babel/helper-create-regexp-features-plugin@7.22.1(@babel/core@7.22.5):
resolution: {integrity: sha512-WWjdnfR3LPIe+0EY8td7WmjhytxXtjKAEpnAxun/hkNiyOaPlvGK+NZaBFIdi9ndYV3Gav7BpFvtUwnaJlwi1w==}
engines: {node: '>=6.9.0'}
@ -1963,20 +1945,6 @@ packages:
'@babel/helper-split-export-declaration': 7.22.6
'@babel/helper-validator-identifier': 7.22.20
/@babel/helper-module-transforms@7.23.3(@babel/core@7.22.5):
resolution: {integrity: sha512-7bBs4ED9OmswdfDzpz4MpWgSrV7FXlc3zIagvLFjS5H+Mk7Snr21vQ6QwrsoCGMfNC4e4LQPdoULEt4ykz0SRQ==}
engines: {node: '>=6.9.0'}
peerDependencies:
'@babel/core': 7.22.5
dependencies:
'@babel/core': 7.22.5
'@babel/helper-environment-visitor': 7.22.20
'@babel/helper-module-imports': 7.22.15
'@babel/helper-simple-access': 7.22.5
'@babel/helper-split-export-declaration': 7.22.6
'@babel/helper-validator-identifier': 7.22.20
dev: true
/@babel/helper-optimise-call-expression@7.18.6:
resolution: {integrity: sha512-HP59oD9/fEHQkdcbgFCnbmgH5vIQTJbxh2yf+CdM89/glUNnuzr87Q8GIjGEnOktTROemO0Pe0iPAYbqZuOUiA==}
engines: {node: '>=6.9.0'}
@ -2001,11 +1969,6 @@ packages:
resolution: {integrity: sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg==}
engines: {node: '>=6.9.0'}
/@babel/helper-plugin-utils@7.24.0:
resolution: {integrity: sha512-9cUznXMG0+FxRuJfvL82QlTqIzhVW9sL0KjMPHhAOOvpQGL8QtdxnBKILjBqxlHyliz0yCa1G903ZXI/FuHy2w==}
engines: {node: '>=6.9.0'}
dev: true
/@babel/helper-remap-async-to-generator@7.22.20(@babel/core@7.22.5):
resolution: {integrity: sha512-pBGyV4uBqOns+0UvhsTO8qgl8hO89PmiDYv+/COyp1aeMcmfrfruz+/nCMFiYyFF/Knn0yfrC85ZzNFjembFTw==}
engines: {node: '>=6.9.0'}
@ -2087,11 +2050,6 @@ packages:
resolution: {integrity: sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA==}
engines: {node: '>=6.9.0'}
/@babel/helper-validator-option@7.23.5:
resolution: {integrity: sha512-85ttAOMLsr53VgXkTbkx8oA6YTfT4q7/HzXSLEYmjcSTJPMPQtvq1BD79Byep5xMUYbGRzEpDsjUf3dyp54IKw==}
engines: {node: '>=6.9.0'}
dev: true
/@babel/helper-wrap-function@7.22.20:
resolution: {integrity: sha512-pms/UwkOpnQe/PDAEdV/d7dVCoBbB+R4FvYoHGZz+4VPcg7RtYy2KP7S2lbuWM6FCSgob5wshfGESbC/hzNXZw==}
engines: {node: '>=6.9.0'}
@ -2118,15 +2076,6 @@ packages:
chalk: 2.4.2
js-tokens: 4.0.0
/@babel/highlight@7.23.4:
resolution: {integrity: sha512-acGdbYSfp2WheJoJm/EBBBLh/ID8KDc64ISZ9DYtBmC8/Q204PZJLHyzeB5qMzJ5trcOkybd78M4x2KWsUq++A==}
engines: {node: '>=6.9.0'}
dependencies:
'@babel/helper-validator-identifier': 7.22.20
chalk: 2.4.2
js-tokens: 4.0.0
dev: true
/@babel/parser@7.22.5:
resolution: {integrity: sha512-DFZMC9LJUG9PLOclRC32G63UXwzqS2koQC8dkx+PLdmt1xSePYpbT/NbsrJy8Q/muXz7o/h/d4A7Fuyixm559Q==}
engines: {node: '>=6.0.0'}
@ -2185,8 +2134,8 @@ packages:
'@babel/core': 7.22.5
dependencies:
'@babel/core': 7.22.5
'@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.22.5)
'@babel/helper-plugin-utils': 7.24.0
'@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.22.5)
'@babel/helper-plugin-utils': 7.22.5
dev: true
/@babel/plugin-proposal-class-properties@7.18.6(@babel/core@7.22.5):
@ -2210,7 +2159,7 @@ packages:
'@babel/core': 7.22.5
dependencies:
'@babel/core': 7.22.5
'@babel/helper-plugin-utils': 7.24.0
'@babel/helper-plugin-utils': 7.22.5
'@babel/plugin-syntax-dynamic-import': 7.8.3(@babel/core@7.22.5)
dev: true
@ -2222,7 +2171,7 @@ packages:
'@babel/core': 7.22.5
dependencies:
'@babel/core': 7.22.5
'@babel/helper-plugin-utils': 7.24.0
'@babel/helper-plugin-utils': 7.22.5
'@babel/plugin-syntax-export-namespace-from': 7.8.3(@babel/core@7.22.5)
dev: true
@ -2246,7 +2195,7 @@ packages:
'@babel/core': 7.22.5
dependencies:
'@babel/core': 7.22.5
'@babel/helper-plugin-utils': 7.24.0
'@babel/helper-plugin-utils': 7.22.5
'@babel/plugin-syntax-logical-assignment-operators': 7.10.4(@babel/core@7.22.5)
dev: true
@ -2268,7 +2217,7 @@ packages:
'@babel/core': 7.22.5
dependencies:
'@babel/core': 7.22.5
'@babel/helper-plugin-utils': 7.24.0
'@babel/helper-plugin-utils': 7.22.5
'@babel/plugin-syntax-numeric-separator': 7.10.4(@babel/core@7.22.5)
dev: true
@ -2318,8 +2267,8 @@ packages:
'@babel/core': 7.22.5
dependencies:
'@babel/core': 7.22.5
'@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.22.5)
'@babel/helper-plugin-utils': 7.24.0
'@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.22.5)
'@babel/helper-plugin-utils': 7.22.5
dev: true
/@babel/plugin-proposal-private-property-in-object@7.16.7(@babel/core@7.22.5):
@ -2331,8 +2280,8 @@ packages:
dependencies:
'@babel/core': 7.22.5
'@babel/helper-annotate-as-pure': 7.22.5
'@babel/helper-create-class-features-plugin': 7.24.0(@babel/core@7.22.5)
'@babel/helper-plugin-utils': 7.24.0
'@babel/helper-create-class-features-plugin': 7.22.15(@babel/core@7.22.5)
'@babel/helper-plugin-utils': 7.22.5
'@babel/plugin-syntax-private-property-in-object': 7.14.5(@babel/core@7.22.5)
dev: true
@ -2804,8 +2753,8 @@ packages:
'@babel/core': 7.22.5
dependencies:
'@babel/core': 7.22.5
'@babel/helper-module-transforms': 7.23.3(@babel/core@7.22.5)
'@babel/helper-plugin-utils': 7.24.0
'@babel/helper-module-transforms': 7.23.0(@babel/core@7.22.5)
'@babel/helper-plugin-utils': 7.22.5
'@babel/helper-simple-access': 7.22.5
babel-plugin-dynamic-import-node: 2.3.3
dev: true
@ -3029,7 +2978,7 @@ packages:
'@babel/core': 7.22.5
'@babel/helper-annotate-as-pure': 7.22.5
'@babel/helper-module-imports': 7.22.15
'@babel/helper-plugin-utils': 7.24.0
'@babel/helper-plugin-utils': 7.22.5
'@babel/plugin-syntax-jsx': 7.22.5(@babel/core@7.22.5)
'@babel/types': 7.22.5
dev: true
@ -3350,8 +3299,8 @@ packages:
'@babel/core': 7.22.5
dependencies:
'@babel/core': 7.22.5
'@babel/helper-plugin-utils': 7.24.0
'@babel/helper-validator-option': 7.23.5
'@babel/helper-plugin-utils': 7.22.5
'@babel/helper-validator-option': 7.22.15
'@babel/plugin-transform-typescript': 7.22.15(@babel/core@7.22.5)
dev: true
@ -3439,8 +3388,8 @@ packages:
'@babel/helper-validator-identifier': 7.22.20
to-fast-properties: 2.0.0
/@bazel/bazelisk@1.19.0:
resolution: {integrity: sha512-8PyRGRj/CN286IFHVILgYZ2lQ/JvgQ25ZEgoUAkpSnGmbPdQnKyHtTGEG+Sf0AISFqP5+PPzN162DcizZ/bR9w==}
/@bazel/bazelisk@1.18.0:
resolution: {integrity: sha512-WqlTatsGKypeHYidqe3/6W8dkqkgJ13sMCEers/vH7dNwxojHrMQcuaH26sOnQG1eVn8UfHo78fy34yGAF3zsw==}
hasBin: true
dev: true
@ -4233,7 +4182,7 @@ packages:
'@jest/types': 29.6.3
'@types/node': 20.2.5
ansi-escapes: 4.3.2
chalk: 4.1.2
chalk: 4.0.0
ci-info: 3.8.0
exit: 0.1.2
graceful-fs: 4.2.11
@ -4564,7 +4513,7 @@ packages:
'@types/istanbul-reports': 3.0.1
'@types/node': 20.2.5
'@types/yargs': 17.0.10
chalk: 4.1.2
chalk: 4.0.0
dev: true
/@jridgewell/gen-mapping@0.3.1:
@ -8557,7 +8506,7 @@ packages:
glob: 7.1.7
pkg-up: 3.1.0
reselect: 4.1.8
resolve: 1.22.8
resolve: 1.22.4
dev: true
/babel-plugin-polyfill-corejs2@0.4.3(@babel/core@7.22.5):
@ -9348,23 +9297,6 @@ packages:
optionalDependencies:
fsevents: 2.3.3
/chokidar@3.6.0:
resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==}
engines: {node: '>= 8.10.0'}
requiresBuild: true
dependencies:
anymatch: 3.1.3
braces: 3.0.2
glob-parent: 5.1.2
is-binary-path: 2.1.0
is-glob: 4.0.3
normalize-path: 3.0.0
readdirp: 3.6.0
optionalDependencies:
fsevents: 2.3.3
dev: true
optional: true
/chownr@1.1.3:
resolution: {integrity: sha512-i70fVHhmV3DtTl6nqvZOnIjbY0Pe4kAUjwHj8z0zAdgBtYrJyYwLKCCuRBQ5ppkyL0AkN7HKRnETdmdp1zqNXw==}
dev: true
@ -13894,7 +13826,7 @@ packages:
'@sidvind/better-ajv-errors': 0.6.10(ajv@6.12.6)
acorn-walk: 8.2.0
ajv: 6.12.6
chalk: 4.1.2
chalk: 4.0.0
deepmerge: 4.2.2
eslint: 7.24.0
espree: 7.3.1
@ -15250,7 +15182,7 @@ packages:
'@jest/core': 29.7.0
'@jest/test-result': 29.7.0
'@jest/types': 29.6.3
chalk: 4.1.2
chalk: 4.0.0
create-jest: 29.7.0(@types/node@20.2.5)
exit: 0.1.2
import-local: 3.0.2
@ -15319,7 +15251,7 @@ packages:
resolution: {integrity: sha512-LMIgiIrhigmPrs03JHpxUh2yISK3vLFPkAodPeo0+BuF7wA2FoQbkEg1u8gBYBThncu7e1oEDUfIXVuTqLRUjw==}
engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
dependencies:
chalk: 4.1.2
chalk: 4.0.0
diff-sequences: 29.6.3
jest-get-type: 29.6.3
pretty-format: 29.7.0
@ -15456,7 +15388,7 @@ packages:
fb-watchman: 2.0.1
graceful-fs: 4.2.11
jest-regex-util: 29.4.3
jest-util: 29.7.0
jest-util: 29.5.0
jest-worker: 29.5.0
micromatch: 4.0.5
walker: 1.0.8
@ -15852,7 +15784,7 @@ packages:
dependencies:
'@jest/types': 29.6.3
'@types/node': 20.2.5
chalk: 4.1.2
chalk: 4.0.0
ci-info: 3.8.0
graceful-fs: 4.2.11
picomatch: 2.3.1
@ -21904,15 +21836,6 @@ packages:
path-parse: 1.0.7
supports-preserve-symlinks-flag: 1.0.0
/resolve@1.22.8:
resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
hasBin: true
dependencies:
is-core-module: 2.13.1
path-parse: 1.0.7
supports-preserve-symlinks-flag: 1.0.0
dev: true
/resolve@2.0.0-next.4:
resolution: {integrity: sha512-iMDbmAWtfU+MHpxt/I5iWI7cY6YVEZUQ3MBgPQ++XD1PELuJHIl82xBmObyP2KyQmkNB2dsqF7seoQQiAn5yDQ==}
hasBin: true
@ -24010,14 +23933,14 @@ packages:
strip-bom: 3.0.0
dev: true
/tsec@0.2.1(@bazel/bazelisk@1.19.0)(typescript@5.2.2):
/tsec@0.2.1(@bazel/bazelisk@1.18.0)(typescript@5.2.2):
resolution: {integrity: sha512-RP9vhbRbRI9VH4CfOlQvo5W9HdfiPKq0gdiUOWI5oKmLaZKNFN8CsPwBfT5ySmhnKNwmmAS/BtY3WoTfABwwig==}
hasBin: true
peerDependencies:
'@bazel/bazelisk': '>=1.7.5'
typescript: '>=3.9.2'
dependencies:
'@bazel/bazelisk': 1.19.0
'@bazel/bazelisk': 1.18.0
glob: 7.1.7
minimatch: 3.1.2
typescript: 5.2.2
@ -25569,8 +25492,8 @@ packages:
/zwitch@2.0.4:
resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==}
'@gitpkg-fork.vercel.sh/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-240307.1':
resolution: {tarball: https://gitpkg-fork.vercel.sh/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-240307.1}
'@gitpkg-fork.vercel.sh/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-240307.3':
resolution: {tarball: https://gitpkg-fork.vercel.sh/vercel/turbo/crates/turbopack-ecmascript-runtime/js?turbopack-240307.3}
name: '@vercel/turbopack-ecmascript-runtime'
version: 0.0.0
dependencies: