rsnext/Cargo.toml
Tobias Koppers 666ce7bd8b
Chunking Refactor Step 1 (#56467)
### What?

This change moves a few methods around.

Module::as_chunk is moved to ChunkItem::as_chunk as temporary intermediate state.
EcmascriptPlaceable::as_chunk_item is moved to ChunkableModule::as_chunk_item. This generalizes the concept of converting a Module into a ChunkItem


### Why?

This is the first step of refactoring the chunking. In the end we want to avoid creating chunks from modules directly, but enforce everything going through the ChunkingContext to be chunked. This allows us to replace the existing chunking algorithm with a much more efficient one that avoid duplication between chunks in first place and doesn't require a post-chunking optimization.

### How?

see https://github.com/vercel/turbo/pull/6104

Closes WEB-1715

Co-authored-by: Justin Ridgewell <112982+jridgewell@users.noreply.github.com>
2023-10-05 20:05:05 +00:00

134 lines
4.1 KiB
TOML

[workspace]
resolver = "2"
members = [
"scripts/send-trace-to-jaeger",
"packages/next-swc/crates/core",
"packages/next-swc/crates/napi",
"packages/next-swc/crates/wasm",
"packages/next-swc/crates/next-api",
"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",
]
# This is a workaround for wasm timeout issue
[profile.dev.package."*"]
debug-assertions = false
# Set the settings for build scripts and proc-macros.
[profile.dev.build-override]
opt-level = 3
[workspace.dependencies]
# Workspace crates
next-api = { path = "packages/next-swc/crates/next-api", default-features = false }
next-build = { path = "packages/next-swc/crates/next-build", default-features = false }
next-core = { path = "packages/next-swc/crates/next-core", default-features = false }
next-swc = { path = "packages/next-swc/crates/core" }
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" }
# SWC crates
swc_core = { version = "0.83.28", features = [
"ecma_loader_lru",
"ecma_loader_parking_lot",
] }
testing = { version = "0.34.1" }
# Turbo crates
turbopack-binding = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-231005.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-231005.2" }
# [TODO]: need to refactor embed_directory! macro usage in next-core
turbo-tasks-fs = { git = "https://github.com/vercel/turbo.git", tag = "turbopack-231005.2" }
# 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 }
chromiumoxide = { version = "0.5.0", features = [
"tokio-runtime",
], default-features = false }
# For matching on errors from chromiumoxide. Keep in
# sync with chromiumoxide's tungstenite requirement.
tungstenite = "0.18.0"
# flate2_zlib requires zlib, use flate2_rust
allsorts = { version = "0.14.0", default_features = false, features = [
"outline",
"flate2_rust",
] }
anyhow = "1.0.69"
assert_cmd = "2.0.8"
async-compression = { version = "0.3.13", default-features = false, features = [
"gzip",
"tokio",
] }
async-recursion = "1.0.2"
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"
crossbeam-channel = "0.5.8"
dashmap = "5.4.0"
dialoguer = "0.10.3"
dunce = "1.0.3"
futures = "0.3.26"
futures-retry = "0.6.0"
httpmock = { version = "0.6.8", default-features = false }
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"
postcard = "1.0.4"
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"
shadow-rs = { version = "0.23.0", default-features = false, features = [
"tzdb",
] }
syn = "1.0.107"
tempfile = "3.3.0"
thiserror = "1.0.48"
tiny-gradient = "0.1.0"
tokio = "1.25.0"
tokio-util = { version = "0.7.7", features = ["io"] }
tracing = "0.1.37"
tracing-subscriber = "0.3.16"
url = "2.2.2"
urlencoding = "2.1.2"
webbrowser = "0.8.7"
dhat = { version = "0.3.2" }