first commit
Some checks failed
Test examples / Test Examples (20) (push) Has been cancelled
Test examples / Test Examples (22) (push) Has been cancelled
Lock Threads / action (push) Has been cancelled
Trigger Release / start (push) Has been cancelled
Stale issue handler / stale (push) Has been cancelled
Update Font Data / create-pull-request (push) Has been cancelled
build-and-deploy / deploy-target (push) Has been cancelled
build-and-deploy / build (push) Has been cancelled
build-and-deploy / stable - aarch64-unknown-linux-musl - node@16 (push) Has been cancelled
build-and-deploy / stable - x86_64-unknown-linux-musl - node@16 (push) Has been cancelled
build-and-deploy / stable - aarch64-unknown-linux-gnu - node@16 (push) Has been cancelled
build-and-deploy / stable - x86_64-unknown-linux-gnu - node@16 (push) Has been cancelled
build-and-deploy / stable - aarch64-pc-windows-msvc - node@16 (push) Has been cancelled
build-and-deploy / stable - x86_64-pc-windows-msvc - node@16 (push) Has been cancelled
build-and-deploy / stable - aarch64-apple-darwin - node@16 (push) Has been cancelled
build-and-deploy / stable - x86_64-apple-darwin - node@16 (push) Has been cancelled
build-and-deploy / build-wasm (nodejs) (push) Has been cancelled
build-and-deploy / build-wasm (web) (push) Has been cancelled
build-and-deploy / Deploy preview tarball (push) Has been cancelled
build-and-deploy / Potentially publish release (push) Has been cancelled
build-and-deploy / publish-turbopack-npm-packages (push) Has been cancelled
build-and-deploy / Deploy examples (push) Has been cancelled
build-and-deploy / thank you, build (push) Has been cancelled
build-and-deploy / Upload Turbopack Bytesize metrics to Datadog (push) Has been cancelled
Rspack Next.js development integration tests / Rspack integration tests (push) Has been cancelled
Rspack Next.js production integration tests / Rspack integration tests (push) Has been cancelled
Turbopack Next.js development integration tests / Next.js integration tests (push) Has been cancelled
Turbopack Next.js production integration tests / Next.js integration tests (push) Has been cancelled
Update Rspack test manifest / Update and upload Rspack development test manifest (push) Has been cancelled
Update Rspack test manifest / Update and upload Rspack production test manifest (push) Has been cancelled
Upload bundler test manifests to areweturboyet.com / Upload test results (push) Has been cancelled
Update React / create-pull-request (push) Has been cancelled
test-e2e-project-reset-cron / reset-test-project (push) Has been cancelled
Notify about the top 15 issues/PRs/feature requests (most reacted) in the last 90 days / run (push) Has been cancelled

This commit is contained in:
Arian Tron
2026-03-10 19:37:31 +03:30
commit 61f56f997c
27684 changed files with 2784175 additions and 0 deletions

494
Cargo.toml Normal file
View File

@@ -0,0 +1,494 @@
[workspace]
resolver = "2"
members = [
"scripts/send-trace-to-jaeger",
"crates/next-napi-bindings",
"crates/wasm",
"crates/next-api",
"crates/next-build-test",
"crates/next-build",
"crates/next-code-frame",
"crates/next-core",
"crates/next-custom-transforms",
"crates/next-taskless",
"turbopack/crates/*",
"turbopack/crates/*/fuzz",
"turbopack/xtask",
]
exclude = [
"crates/next-error-code-swc-plugin",
"rspack/crates/binding"
]
[workspace.lints.clippy]
too_many_arguments = "allow"
[workspace.lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = [
'cfg(rust_analyzer)',
'cfg(fuzzing)',
'cfg(codspeed)',
] }
# This crate is particularly sensitive to compiler optimizations
[profile.dev.package.turbo-persistence]
opt-level = 1
# Set the options for dependencies (not crates in the workspace), this mostly impacts cold builds
[profile.dev.package."*"]
opt-level = 1
# Set the settings for build scripts and proc-macros.
[profile.dev.build-override]
opt-level = 3
[profile.release]
[profile.release.package]
[profile.release.package.turbopack-ecmascript]
opt-level = 3
[profile.release.package.turbopack-core]
opt-level = 3
[profile.release.package.next-core]
opt-level = 3
[profile.release.package.lightningcss]
opt-level = "s"
[profile.release.package.lightningcss-napi]
opt-level = "s"
[profile.release.package.swc_ecma_ast]
opt-level = 3
[profile.release.package.next-api]
opt-level = 3
[profile.release.package.wasmer-wasix]
opt-level = "s"
[profile.release.package.cranelift-codegen]
opt-level = "s"
[profile.release.package.turbo-tasks]
opt-level = 3
[profile.release.package.turbopack-node]
opt-level = 3
[profile.release.package.turbopack-dev-server]
opt-level = 3
[profile.release.package.swc_ecma_minifier]
opt-level = 3
[profile.release.package.swc]
opt-level = 3
[profile.release.package.turbopack-css]
opt-level = 3
[profile.release.package.swc_ecma_compat_es2015]
opt-level = "s"
[profile.release.package.turbo-tasks-fs]
opt-level = 3
[profile.release.package.swc_ecma_parser]
opt-level = 3
[profile.release.package.turbopack]
opt-level = 3
[profile.release.package.turbopack-browser]
opt-level = 3
[profile.release.package.turbo-tasks-backend]
opt-level = 3
[profile.release.package.styled_jsx]
opt-level = "s"
[profile.release.package.next-custom-transforms]
opt-level = 3
[profile.release.package.wast]
opt-level = "s"
[profile.release.package.wasmparser]
opt-level = "s"
[profile.release.package.browserslist-rs]
opt-level = "s"
[profile.release.package.tokio]
opt-level = 3
[profile.release.package.reqwest]
opt-level = "s"
[profile.release.package.swc_ecma_transforms_proposal]
opt-level = "s"
[profile.release.package.turbopack-resolve]
opt-level = 3
[profile.release.package.swc_ecma_transforms_optimization]
opt-level = 3
[profile.release.package.swc_ecma_transforms_base]
opt-level = 3
[profile.release.package.regex-automata]
opt-level = 3
[profile.release.package.auto-hash-map]
opt-level = 3
[profile.release.package.webc]
opt-level = "s"
[profile.release.package.turbopack-nodejs]
opt-level = 3
[profile.release.package.turbopack-trace-server]
opt-level = 3
[profile.release.package.swc_ecma_transforms_module]
opt-level = "s"
[profile.release.package.swc_ecma_transforms_typescript]
opt-level = 3
[profile.release.package.swc_css_prefixer]
opt-level = "s"
[profile.release.package.zstd-sys]
opt-level = 3
[profile.release.package.swc_sourcemap]
opt-level = 3
[profile.release.package.turbopack-wasm]
opt-level = 3
[profile.release.package.turbopack-ecmascript-plugins]
opt-level = 3
[profile.release.package.handlebars]
opt-level = "s"
[profile.release.package.swc_ecma_compat_bugfixes]
opt-level = "s"
[profile.release.package.h2]
opt-level = "s"
[profile.release.package.swc_ecma_compat_es2022]
opt-level = "s"
[profile.release.package.wasmer-config]
opt-level = "s"
[profile.release.package.wasmer-compiler]
opt-level = "s"
[profile.release.package.swc_ecma_utils]
opt-level = 3
[profile.release.package.regex-syntax]
opt-level = "s"
[profile.release.package.turbopack-image]
opt-level = 3
[profile.release.package.turbo-tasks-env]
opt-level = 3
[profile.release.package.napi]
opt-level = 3
[profile.release.package.mdxjs]
opt-level = "s"
[profile.release.package.serde_json]
opt-level = 3
[profile.release.package.swc_plugin_runner]
opt-level = "s"
[profile.release.package.markdown]
opt-level = "s"
[profile.release.package.swc_ecma_preset_env]
opt-level = "s"
[profile.release.package.turbo-tasks-fetch]
opt-level = 3
[profile.release.package.swc_ecma_visit]
opt-level = 3
[profile.release.package.turbopack-mdx]
opt-level = "s"
[profile.release.package.autocfg]
opt-level = "s"
[profile.release.package.image]
opt-level = 3
[profile.release.package.serde]
opt-level = 3
[profile.release.package.wasmer]
opt-level = "s"
[profile.release.package.wasmer-vm]
opt-level = "s"
[profile.release.package.wasmer-compiler-cranelift]
opt-level = "s"
[profile.release.package.regalloc2]
opt-level = "s"
[profile.release.package.swc_plugin_backend_wasmer]
opt-level = "s"
[profile.release.package.globset]
opt-level = "s"
[profile.release.package.toml_edit]
opt-level = "s"
[profile.release.package.miette]
opt-level = "s"
# Use a custom profile for CI where many tests are performance sensitive but we still want the additional validation of debug-assertions
[profile.release-with-assertions]
inherits = "release"
debug-assertions = true
overflow-checks = true
[profile.release-with-debug]
inherits = "release"
debug = true
[workspace.dependencies]
# Workspace crates
next-api = { path = "crates/next-api" }
next-build = { path = "crates/next-build" }
next-code-frame = { path = "crates/next-code-frame" }
next-core = { path = "crates/next-core" }
next-custom-transforms = { path = "crates/next-custom-transforms", default-features = false }
next-taskless = { path = "crates/next-taskless" }
# Turbopack
auto-hash-map = { path = "turbopack/crates/turbo-tasks-auto-hash-map" }
turbo-bincode = { path = "turbopack/crates/turbo-bincode" }
turbo-dyn-eq-hash = { path = "turbopack/crates/turbo-dyn-eq-hash" }
turbo-esregex = { path = "turbopack/crates/turbo-esregex" }
turbo-frozenmap = { path = "turbopack/crates/turbo-frozenmap" }
turbo-persistence = { path = "turbopack/crates/turbo-persistence" }
turbo-prehash = { path = "turbopack/crates/turbo-prehash" }
turbo-rcstr = { path = "turbopack/crates/turbo-rcstr" }
turbo-tasks = { path = "turbopack/crates/turbo-tasks" }
turbo-tasks-backend = { path = "turbopack/crates/turbo-tasks-backend" }
turbo-tasks-bytes = { path = "turbopack/crates/turbo-tasks-bytes" }
turbo-tasks-env = { path = "turbopack/crates/turbo-tasks-env" }
turbo-tasks-fetch = { path = "turbopack/crates/turbo-tasks-fetch" }
turbo-tasks-fs = { path = "turbopack/crates/turbo-tasks-fs" }
turbo-tasks-hash = { path = "turbopack/crates/turbo-tasks-hash" }
turbo-tasks-macros = { path = "turbopack/crates/turbo-tasks-macros" }
turbo-tasks-malloc = { path = "turbopack/crates/turbo-tasks-malloc", default-features = false }
turbo-tasks-testing = { path = "turbopack/crates/turbo-tasks-testing" }
turbo-unix-path = { path = "turbopack/crates/turbo-unix-path" }
turbopack = { path = "turbopack/crates/turbopack" }
turbopack-bench = { path = "turbopack/crates/turbopack-bench" }
turbopack-nodejs = { path = "turbopack/crates/turbopack-nodejs" }
turbopack-cli-utils = { path = "turbopack/crates/turbopack-cli-utils" }
turbopack-core = { path = "turbopack/crates/turbopack-core" }
turbopack-create-test-app = { path = "turbopack/crates/turbopack-create-test-app" }
turbopack-css = { path = "turbopack/crates/turbopack-css" }
turbopack-analyze = { path = "turbopack/crates/turbopack-analyze" }
turbopack-browser = { path = "turbopack/crates/turbopack-browser" }
turbopack-dev-server = { path = "turbopack/crates/turbopack-dev-server" }
turbopack-ecmascript = { path = "turbopack/crates/turbopack-ecmascript" }
turbopack-ecmascript-plugins = { path = "turbopack/crates/turbopack-ecmascript-plugins", default-features = false }
turbopack-ecmascript-runtime = { path = "turbopack/crates/turbopack-ecmascript-runtime" }
turbopack-ecmascript-hmr-protocol = { path = "turbopack/crates/turbopack-ecmascript-hmr-protocol" }
turbopack-env = { path = "turbopack/crates/turbopack-env" }
turbopack-image = { path = "turbopack/crates/turbopack-image" }
turbopack-mdx = { path = "turbopack/crates/turbopack-mdx" }
turbopack-node = { path = "turbopack/crates/turbopack-node", default-features = false }
turbopack-resolve = { path = "turbopack/crates/turbopack-resolve" }
turbopack-static = { path = "turbopack/crates/turbopack-static" }
turbopack-swc-utils = { path = "turbopack/crates/turbopack-swc-utils" }
turbopack-test-utils = { path = "turbopack/crates/turbopack-test-utils" }
turbopack-trace-server = { path = "turbopack/crates/turbopack-trace-server" }
turbopack-trace-utils = { path = "turbopack/crates/turbopack-trace-utils" }
turbopack-wasm = { path = "turbopack/crates/turbopack-wasm" }
# SWC crates
swc_core = { version = "57.0.0", features = [
"ecma_loader_lru",
"ecma_loader_parking_lot",
"parallel_rayon",
] }
swc_plugin_backend_wasmer = { version = "7.0.0" }
testing = "19.0.0"
# Keep consistent with preset_env_base through swc_core
browserslist-rs = "0.19.0"
mdxjs = "1.0.3"
modularize_imports = "0.110.0"
styled_components = "0.139.0"
styled_jsx = "0.114.0"
swc_emotion = "0.115.0"
swc_relay = "0.85.0"
react_remove_properties = "0.65.0"
remove_console = "0.66.0"
preset_env_base = "7.0.0"
# General Deps
chromiumoxide = { version = "0.5.4", features = [
"tokio-runtime",
], default-features = false }
# For matching on errors from chromiumoxide. Keep in
# sync with chromiumoxide's tungstenite requirement.
tungstenite = "0.20.1"
# flate2_zlib requires zlib, use flate2_rust
allsorts = { version = "0.14.0", default-features = false, features = [
"flate2_rust",
] }
anyhow = "1.0.100"
async-trait = "0.1.64"
bincode = { version = "2.0.1", features = ["serde"] }
bitfield = "0.19.4"
byteorder = "1.5.0"
bytes = "1.1.0"
bytes-str = "0.2.7"
chrono = "0.4.23"
clap = { version = "4.5.2", features = ["derive"] }
concurrent-queue = "2.5.0"
console-subscriber = "0.4.1"
const_format = "0.2.30"
crc32fast = "1.4.2"
criterion = { package = "codspeed-criterion-compat", version = "4.3.0" }
crossbeam-channel = "0.5.8"
dashmap = "6.1.0"
data-encoding = "2.3.3"
dhat = { version = "0.3.2" }
dunce = "1.0.3"
either = "1.15.0"
erased-serde = "0.4.5"
flate2 = "1.0.28"
futures = "0.3.31"
futures-retry = "0.6.0"
futures-util = "0.3.31"
hashbrown = "0.14.5"
image = { version = "0.25.8", default-features = false }
indexmap = "2.13.0"
indoc = "2.0.0"
inventory = "0.3.21"
itertools = "0.10.5"
lightningcss = { version = "1.0.0-alpha.70", features = [
"serde",
"visitor",
"into_owned",
"browserslist",
] }
lightningcss-napi = { version = "0.4.6", default-features = false, features = [
"visitor",
] }
lzzzz = "2.0.0"
markdown = "1.0.0-alpha.18"
memchr = "2.7.4"
mime = "0.3.16"
napi = { version = "2", default-features = false, features = [
"napi3",
"serde-json",
"tokio_rt",
"error_anyhow",
# Lightningcss uses this features
"napi4",
"napi5",
"compat-mode",
] }
napi-derive = "2"
napi-build = "2"
nohash-hasher = "0.2.0"
notify = "8.1.0"
once_cell = "1.21.3"
owo-colors = "4.2.2"
parcel_selectors = "0.28.2"
parking_lot = "0.12.1"
pathdiff = "0.2.1"
petgraph = "0.8.3"
pin-project-lite = "0.2.9"
postcard = "1.0.4"
proc-macro2 = "1.0.79"
qstring = "0.7.2"
quick_cache = { version = "0.6.14" }
quote = "1.0.23"
rand = "0.10.0"
rayon = "1.10.0"
regex = "1.10.6"
regress = "0.10.4"
reqwest = { version = "0.13.1", default-features = false }
ringmap = "0.2.3"
roaring = "0.10.10"
rstest = "0.16.0"
rustc-hash = "2.1.1"
semver = "1.0.16"
serde = { version = "1.0.217", features = ["derive"] }
serde_json = "1.0.138"
serde_path_to_error = "0.1.16"
serde_qs = "0.13.0"
serde_with = "3.12.0"
sha2 = "0.10.2"
smallvec = { version = "1.15.1", features = [
"serde",
"const_generics",
"union",
"const_new",
"impl_bincode",
] }
shrink-to-fit = "0.2.10"
strsim = "0.11.1"
swc_sourcemap = "9.3.4"
syn = "2.0.100"
tempfile = "3.20.0"
thiserror = "1.0.48"
thread_local = "1.1.8"
tokio = "1.43.0"
tokio-util = { version = "0.7.13", features = ["io", "rt"] }
tracing = "0.1.37"
tracing-subscriber = "0.3.16"
triomphe = { git = "https://github.com/sokra/triomphe", branch = "sokra/unstable" }
twox-hash = { version = "2.1.2", features = ["std", "xxhash3_64", "xxhash3_128"] }
unsize = "1.1.0"
unty = "0.0.4"
url = "2.2.2"
urlencoding = "2.1.2"
uuid = "1.18.1"
vergen = { version = "9.0.6", features = ["cargo"] }
vergen-gitcl = { version = "1.0.8", features = ["cargo"] }
webbrowser = "1.0.6"
[patch.crates-io]
bincode = { git = "https://github.com/bgw/bincode.git", branch = "bgw/patches" }
virtue = { git = "https://github.com/bgw/virtue.git", branch = "bgw/fix-generic-default-parsing" }
# We have to very frequently bump the swc major version of mdxjs-rs
mdxjs = { git = "https://github.com/vercel-labs/mdxjs-rs-turbopack.git", branch = "turbopack" }
# Doesn't compile on recent nightly versions because of https://github.com/Michael-F-Bryan/include_dir/pull/117
include_dir = { git = "https://github.com/vercel-labs/include_dir", branch = "turbopack" }