2021-11-17 20:01:02 +01:00
|
|
|
[workspace]
|
2023-08-12 00:16:41 +02:00
|
|
|
resolver = "2"
|
2021-07-27 17:07:28 +02:00
|
|
|
|
2023-03-10 21:59:54 +01:00
|
|
|
members = [
|
2023-05-12 12:28:41 +02:00
|
|
|
"scripts/send-trace-to-jaeger",
|
2023-04-19 18:38:36 +02:00
|
|
|
"packages/next-swc/crates/core",
|
|
|
|
"packages/next-swc/crates/napi",
|
|
|
|
"packages/next-swc/crates/wasm",
|
2023-07-13 19:17:38 +02:00
|
|
|
"packages/next-swc/crates/next-api",
|
2023-04-19 18:38:36 +02:00
|
|
|
"packages/next-swc/crates/next-build",
|
|
|
|
"packages/next-swc/crates/next-core",
|
|
|
|
"packages/next-swc/crates/next-transform-font",
|
|
|
|
"packages/next-swc/crates/next-transform-dynamic",
|
|
|
|
"packages/next-swc/crates/next-transform-strip-page-exports",
|
2023-03-10 21:59:54 +01:00
|
|
|
]
|
2021-08-03 18:54:57 +02:00
|
|
|
|
2023-11-18 01:29:50 +01:00
|
|
|
[workspace.lints.clippy]
|
|
|
|
too_many_arguments = "allow"
|
|
|
|
|
2022-09-29 16:09:20 +02:00
|
|
|
# This is a workaround for wasm timeout issue
|
|
|
|
[profile.dev.package."*"]
|
|
|
|
debug-assertions = false
|
|
|
|
|
2023-08-12 00:16:41 +02:00
|
|
|
# Set the settings for build scripts and proc-macros.
|
|
|
|
[profile.dev.build-override]
|
|
|
|
opt-level = 3
|
2023-03-10 21:59:54 +01:00
|
|
|
|
|
|
|
[workspace.dependencies]
|
|
|
|
# Workspace crates
|
2023-07-13 19:17:38 +02:00
|
|
|
next-api = { path = "packages/next-swc/crates/next-api", default-features = false }
|
2023-06-22 10:03:44 +02:00
|
|
|
next-build = { path = "packages/next-swc/crates/next-build", default-features = false }
|
2023-04-19 18:38:36 +02:00
|
|
|
next-core = { path = "packages/next-swc/crates/next-core", default-features = false }
|
2023-10-05 01:33:21 +02:00
|
|
|
next-swc = { path = "packages/next-swc/crates/core" }
|
2023-04-19 18:38:36 +02:00
|
|
|
next-transform-font = { path = "packages/next-swc/crates/next-transform-font" }
|
|
|
|
next-transform-dynamic = { path = "packages/next-swc/crates/next-transform-dynamic" }
|
|
|
|
next-transform-strip-page-exports = { path = "packages/next-swc/crates/next-transform-strip-page-exports" }
|
2023-03-10 21:59:54 +01:00
|
|
|
|
|
|
|
# SWC crates
|
2023-11-07 16:26:28 +01:00
|
|
|
swc_core = { version = "0.86.40", features = [
|
2023-09-15 17:41:05 +02:00
|
|
|
"ecma_loader_lru",
|
|
|
|
"ecma_loader_parking_lot",
|
|
|
|
] }
|
2023-11-07 16:26:28 +01:00
|
|
|
testing = { version = "0.35.7" }
|
2023-03-10 21:59:54 +01:00
|
|
|
|
|
|
|
# Turbo crates
|
2023-11-18 01:29:50 +01:00
|
|
|
turbopack-binding = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-231117.4" }
|
2023-03-30 05:25:11 +02:00
|
|
|
# [TODO]: need to refactor embed_directory! macro usages, as well as resolving turbo_tasks::function, macros..
|
2023-11-18 01:29:50 +01:00
|
|
|
turbo-tasks = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-231117.4" }
|
2023-03-30 05:25:11 +02:00
|
|
|
# [TODO]: need to refactor embed_directory! macro usage in next-core
|
2023-11-18 01:29:50 +01:00
|
|
|
turbo-tasks-fs = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-231117.4" }
|
2023-03-10 21:59:54 +01:00
|
|
|
|
|
|
|
# General Deps
|
|
|
|
|
|
|
|
# Be careful when selecting tls backend, including change default tls backend.
|
|
|
|
# If you changed, must verify with ALL build targets with next-swc to ensure
|
|
|
|
# it works. next-swc have various platforms, some doesn't support native (using openssl-sys)
|
|
|
|
# and some aren't buildable with rustls.
|
|
|
|
reqwest = { version = "0.11.14", default-features = false }
|
|
|
|
|
2023-06-12 16:47:43 +02:00
|
|
|
chromiumoxide = { version = "0.5.0", features = [
|
2023-03-10 21:59:54 +01:00
|
|
|
"tokio-runtime",
|
|
|
|
], default-features = false }
|
|
|
|
# For matching on errors from chromiumoxide. Keep in
|
|
|
|
# sync with chromiumoxide's tungstenite requirement.
|
2023-06-12 16:47:43 +02:00
|
|
|
tungstenite = "0.18.0"
|
2023-03-10 21:59:54 +01:00
|
|
|
|
2023-03-28 03:22:48 +02:00
|
|
|
# flate2_zlib requires zlib, use flate2_rust
|
2023-03-31 20:58:04 +02:00
|
|
|
allsorts = { version = "0.14.0", default_features = false, features = [
|
|
|
|
"outline",
|
|
|
|
"flate2_rust",
|
|
|
|
] }
|
2023-03-10 21:59:54 +01:00
|
|
|
anyhow = "1.0.69"
|
|
|
|
assert_cmd = "2.0.8"
|
|
|
|
async-compression = { version = "0.3.13", default-features = false, features = [
|
|
|
|
"gzip",
|
|
|
|
"tokio",
|
|
|
|
] }
|
Turbopack: App Router build POC (#52036)
This PR adds proof-of-concept support for the App Router to `next build
--experimental-turbo`.
It introduces a new way to generate Next.js manifests in Turbopack.
Currently, in dev, we pass proxy objects in lieu of manifests, and rely
on the entries to know which chunks they need loaded on the client.
However, this can't work for builds because it requires control over
Next.js rendering, which is not compatible with a Next->Turbo approach.
We would need to modify Next.js to support these "lazy" entries. So for
now, we add well-known assets (`NextDynamicAsset`,
`NextServerComponentAsset`, `NextClientReferenceAsset`, etc.) to the
graph, which will get picked up when walking it during asset processing.
This lets us collect all possible entries before chunking.
This two-step process (collecting all entries, then chunking them) is
also a good first step towards production chunking.
## Turbopack updates
* https://github.com/vercel/turbo/pull/5494 <!-- Tobias Koppers - add
reporting of console messages -->
* https://github.com/vercel/turbo/pull/5448 <!-- Alex Kirszenberg -
Misc. changes to support App Router build -->
2023-07-12 11:26:48 +02:00
|
|
|
async-recursion = "1.0.2"
|
2023-03-10 21:59:54 +01:00
|
|
|
async-trait = "0.1.64"
|
|
|
|
atty = "0.2.14"
|
|
|
|
chrono = "0.4.23"
|
|
|
|
clap = "4.1.6"
|
|
|
|
clap_complete = "4.1.2"
|
|
|
|
concurrent-queue = "2.1.0"
|
|
|
|
console = "0.15.5"
|
|
|
|
console-subscriber = "0.1.8"
|
|
|
|
criterion = "0.4.0"
|
2023-05-23 07:25:56 +02:00
|
|
|
crossbeam-channel = "0.5.8"
|
2023-03-10 21:59:54 +01:00
|
|
|
dashmap = "5.4.0"
|
|
|
|
dialoguer = "0.10.3"
|
|
|
|
dunce = "1.0.3"
|
|
|
|
futures = "0.3.26"
|
|
|
|
futures-retry = "0.6.0"
|
2023-09-18 11:48:36 +02:00
|
|
|
httpmock = { version = "0.6.8", default-features = false }
|
2023-03-10 21:59:54 +01:00
|
|
|
indexmap = "1.9.2"
|
|
|
|
indicatif = "0.17.3"
|
|
|
|
indoc = "2.0.0"
|
|
|
|
itertools = "0.10.5"
|
|
|
|
lazy_static = "1.4.0"
|
|
|
|
log = "0.4.17"
|
|
|
|
mime = "0.3.16"
|
|
|
|
nohash-hasher = "0.2.0"
|
|
|
|
once_cell = "1.17.1"
|
|
|
|
owo-colors = "3.5.0"
|
|
|
|
parking_lot = "0.12.1"
|
|
|
|
pathdiff = "0.2.1"
|
|
|
|
pin-project-lite = "0.2.9"
|
2023-05-23 07:25:56 +02:00
|
|
|
postcard = "1.0.4"
|
2023-03-10 21:59:54 +01:00
|
|
|
predicates = "2.1.5"
|
|
|
|
pretty_assertions = "1.3.0"
|
|
|
|
proc-macro2 = "1.0.51"
|
|
|
|
qstring = "0.7.2"
|
|
|
|
quote = "1.0.23"
|
|
|
|
rand = "0.8.5"
|
|
|
|
regex = "1.7.0"
|
|
|
|
rstest = "0.16.0"
|
|
|
|
rustc-hash = "1.1.0"
|
|
|
|
semver = "1.0.16"
|
|
|
|
serde = { version = "1.0.152", features = ["derive"] }
|
|
|
|
serde_json = "1.0.93"
|
|
|
|
serde_qs = "0.11.0"
|
|
|
|
serde_yaml = "0.9.17"
|
2023-08-17 19:29:30 +02:00
|
|
|
shadow-rs = { version = "0.23.0", default-features = false, features = [
|
|
|
|
"tzdb",
|
|
|
|
] }
|
2023-03-10 21:59:54 +01:00
|
|
|
syn = "1.0.107"
|
|
|
|
tempfile = "3.3.0"
|
2023-09-28 09:40:21 +02:00
|
|
|
thiserror = "1.0.48"
|
2023-03-10 21:59:54 +01:00
|
|
|
tiny-gradient = "0.1.0"
|
|
|
|
tokio = "1.25.0"
|
|
|
|
tokio-util = { version = "0.7.7", features = ["io"] }
|
|
|
|
tracing = "0.1.37"
|
2023-05-23 07:25:56 +02:00
|
|
|
tracing-subscriber = "0.3.16"
|
2023-03-10 21:59:54 +01:00
|
|
|
url = "2.2.2"
|
|
|
|
urlencoding = "2.1.2"
|
|
|
|
webbrowser = "0.8.7"
|
2023-03-31 10:37:17 +02:00
|
|
|
dhat = { version = "0.3.2" }
|