diff --git a/packages/next/build/swc/Cargo.lock b/packages/next/build/swc/Cargo.lock index 03a2f6a522677..e2f35a8c34015 100644 --- a/packages/next/build/swc/Cargo.lock +++ b/packages/next/build/swc/Cargo.lock @@ -627,9 +627,9 @@ checksum = "60302e4db3a61da70c0cb7991976248362f30319e88850c487b9b95bbf059e00" [[package]] name = "memchr" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b16bd47d9e329435e309c58469fe0791c2d0d1ba96ec0954152a5ae2b04387dc" +checksum = "308cc39be01b73d0d18f82a0e7b2a3df85245f84af96fdddc5d202d27e47b86a" [[package]] name = "memoffset" @@ -733,8 +733,7 @@ dependencies = [ "swc_atoms", "swc_common", "swc_css", - "swc_css_codegen", - "swc_ecma_preset_env", + "swc_ecma_preset_env 0.46.0", "swc_ecma_transforms_testing", "swc_ecmascript", "swc_node_base", @@ -1568,9 +1567,9 @@ checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c" [[package]] name = "swc" -version = "0.59.1" +version = "0.60.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "804f087046c85e911d3a3e76588e46401254623ee9deecddbfa4cd8ba28d1a56" +checksum = "dc262c3b4c1a7a7ee0a26899d84b22e9de80e574ba9fddcd1c9571a033af745d" dependencies = [ "ahash", "anyhow", @@ -1589,14 +1588,14 @@ dependencies = [ "swc_bundler", "swc_common", "swc_ecma_ast", - "swc_ecma_codegen", + "swc_ecma_codegen 0.74.0", "swc_ecma_ext_transforms", "swc_ecma_loader", "swc_ecma_minifier", "swc_ecma_parser", - "swc_ecma_preset_env", - "swc_ecma_transforms", - "swc_ecma_transforms_base", + "swc_ecma_preset_env 0.47.0", + "swc_ecma_transforms 0.76.0", + "swc_ecma_transforms_base 0.35.0", "swc_ecma_utils", "swc_ecma_visit", "swc_ecmascript", @@ -1616,9 +1615,9 @@ dependencies = [ [[package]] name = "swc_bundler" -version = "0.62.0" +version = "0.63.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e7360144a62afe3b00b4934381ff1628686f91167a9e0a2afb3a28036e11090" +checksum = "c7ff55f233193862196e3a80a7d0f6fdcfa66e4942b007b639183e58c626ba31" dependencies = [ "ahash", "anyhow", @@ -1634,10 +1633,10 @@ dependencies = [ "swc_atoms", "swc_common", "swc_ecma_ast", - "swc_ecma_codegen", + "swc_ecma_codegen 0.74.0", "swc_ecma_loader", "swc_ecma_parser", - "swc_ecma_transforms", + "swc_ecma_transforms 0.76.0", "swc_ecma_utils", "swc_ecma_visit", "tracing", @@ -1645,9 +1644,9 @@ dependencies = [ [[package]] name = "swc_common" -version = "0.13.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9fed0fa425ffe24526b14c6a7308c4061ef572035ee7d46222d651e19bec20d" +checksum = "8400b2ce541d8ca826bd4a0eb06f03f23c68495f34246932d645bd46e511ad44" dependencies = [ "ahash", "ast_node", @@ -1789,7 +1788,25 @@ dependencies = [ "swc_atoms", "swc_common", "swc_ecma_ast", - "swc_ecma_codegen_macros", + "swc_ecma_codegen_macros 0.5.2", + "swc_ecma_parser", +] + +[[package]] +name = "swc_ecma_codegen" +version = "0.74.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "86671dca4eed5c2cd694d32da60c3defe88837adbdf9a579efdb412e74995c76" +dependencies = [ + "bitflags", + "memchr", + "num-bigint", + "once_cell", + "sourcemap", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_codegen_macros 0.6.0", "swc_ecma_parser", ] @@ -1806,6 +1823,19 @@ dependencies = [ "syn", ] +[[package]] +name = "swc_ecma_codegen_macros" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bdbf826c739281cdb3b3c23883fd1a7586ea1c15b1287530e7123a7fad8f0e25" +dependencies = [ + "pmutil", + "proc-macro2", + "quote", + "swc_macros_common", + "syn", +] + [[package]] name = "swc_ecma_ext_transforms" version = "0.31.0" @@ -1845,9 +1875,9 @@ dependencies = [ [[package]] name = "swc_ecma_minifier" -version = "0.31.0" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5dd00f6020c50de4841e9cd201fbe6f21e3d0d347ae0eb26625884ee22c2c2d5" +checksum = "4dbab1ce38f2d81134d446d4daa15944ab13615013699e9d3fb97b53584cc30f" dependencies = [ "indexmap", "once_cell", @@ -1861,10 +1891,10 @@ dependencies = [ "swc_atoms", "swc_common", "swc_ecma_ast", - "swc_ecma_codegen", + "swc_ecma_codegen 0.74.0", "swc_ecma_parser", - "swc_ecma_transforms", - "swc_ecma_transforms_base", + "swc_ecma_transforms 0.76.0", + "swc_ecma_transforms_base 0.35.0", "swc_ecma_utils", "swc_ecma_visit", "tracing", @@ -1910,7 +1940,31 @@ dependencies = [ "swc_atoms", "swc_common", "swc_ecma_ast", - "swc_ecma_transforms", + "swc_ecma_transforms 0.75.0", + "swc_ecma_utils", + "swc_ecma_visit", + "walkdir", +] + +[[package]] +name = "swc_ecma_preset_env" +version = "0.47.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3f2304bad373cbfb04a0fdf5864577fb26b5bb65f6576fe03f91f3eb09ee1e14" +dependencies = [ + "dashmap", + "indexmap", + "once_cell", + "rustc-hash", + "semver", + "serde", + "serde_json", + "st-map", + "string_enum", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_transforms 0.76.0", "swc_ecma_utils", "swc_ecma_visit", "walkdir", @@ -1926,11 +1980,29 @@ dependencies = [ "swc_common", "swc_ecma_ast", "swc_ecma_parser", - "swc_ecma_transforms_base", - "swc_ecma_transforms_compat", + "swc_ecma_transforms_base 0.34.0", + "swc_ecma_transforms_compat 0.38.0", + "swc_ecma_transforms_proposal 0.42.0", + "swc_ecma_utils", + "swc_ecma_visit", + "unicode-xid", +] + +[[package]] +name = "swc_ecma_transforms" +version = "0.76.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0ecffff212d7f8ab3ae7dde0145073f44bbae005e1921cb1b9be926a3c374ccb" +dependencies = [ + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_parser", + "swc_ecma_transforms_base 0.35.0", + "swc_ecma_transforms_compat 0.39.0", "swc_ecma_transforms_module", "swc_ecma_transforms_optimization", - "swc_ecma_transforms_proposal", + "swc_ecma_transforms_proposal 0.43.0", "swc_ecma_transforms_react", "swc_ecma_transforms_typescript", "swc_ecma_utils", @@ -1957,6 +2029,25 @@ dependencies = [ "swc_ecma_visit", ] +[[package]] +name = "swc_ecma_transforms_base" +version = "0.35.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "31a7abb84019a7075d40ff64fabda1085549b52d0dd071ccf73bbcefd4c58ce3" +dependencies = [ + "once_cell", + "phf", + "rustc-hash", + "scoped-tls", + "smallvec 1.6.1", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_parser", + "swc_ecma_utils", + "swc_ecma_visit", +] + [[package]] name = "swc_ecma_transforms_classes" version = "0.20.0" @@ -1966,7 +2057,21 @@ dependencies = [ "swc_atoms", "swc_common", "swc_ecma_ast", - "swc_ecma_transforms_base", + "swc_ecma_transforms_base 0.34.0", + "swc_ecma_utils", + "swc_ecma_visit", +] + +[[package]] +name = "swc_ecma_transforms_classes" +version = "0.21.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8443bbb9640517da3be412db040b2806242670330020333782af4da04c9460d4" +dependencies = [ + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_transforms_base 0.35.0", "swc_ecma_utils", "swc_ecma_visit", ] @@ -1988,8 +2093,32 @@ dependencies = [ "swc_atoms", "swc_common", "swc_ecma_ast", - "swc_ecma_transforms_base", - "swc_ecma_transforms_classes", + "swc_ecma_transforms_base 0.34.0", + "swc_ecma_transforms_classes 0.20.0", + "swc_ecma_transforms_macros", + "swc_ecma_utils", + "swc_ecma_visit", +] + +[[package]] +name = "swc_ecma_transforms_compat" +version = "0.39.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "850d0ea1e1f4820a5d9264cccbe390f1e732a7fe3b7c0d81441689545cbc4382" +dependencies = [ + "arrayvec", + "indexmap", + "is-macro", + "num-bigint", + "ordered-float", + "rustc-hash", + "serde", + "smallvec 1.6.1", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_transforms_base 0.35.0", + "swc_ecma_transforms_classes 0.21.0", "swc_ecma_transforms_macros", "swc_ecma_utils", "swc_ecma_visit", @@ -2010,9 +2139,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_module" -version = "0.42.0" +version = "0.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca289cf3b091282ac14f3a4c5663cd4322edcdba8bcce76cc3b2874bafe0fab3" +checksum = "b1a386df34e5f1c404fadf93e9078be444fe052b6103055fec6cd056fd899140" dependencies = [ "Inflector", "anyhow", @@ -2025,16 +2154,16 @@ dependencies = [ "swc_ecma_ast", "swc_ecma_loader", "swc_ecma_parser", - "swc_ecma_transforms_base", + "swc_ecma_transforms_base 0.35.0", "swc_ecma_utils", "swc_ecma_visit", ] [[package]] name = "swc_ecma_transforms_optimization" -version = "0.45.0" +version = "0.46.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "087bd09a4da8a042401e921257cd4d1236caf63d556582b03ba5eae7e429cb46" +checksum = "56d31eac94cf6990bab937e8916c8760ce2a053447f56cc71d4c8f6463572f01" dependencies = [ "dashmap", "indexmap", @@ -2046,7 +2175,7 @@ dependencies = [ "swc_common", "swc_ecma_ast", "swc_ecma_parser", - "swc_ecma_transforms_base", + "swc_ecma_transforms_base 0.35.0", "swc_ecma_utils", "swc_ecma_visit", "tracing", @@ -2066,18 +2195,39 @@ dependencies = [ "swc_common", "swc_ecma_ast", "swc_ecma_parser", - "swc_ecma_transforms_base", - "swc_ecma_transforms_classes", + "swc_ecma_transforms_base 0.34.0", + "swc_ecma_transforms_classes 0.20.0", "swc_ecma_transforms_macros", "swc_ecma_utils", "swc_ecma_visit", ] [[package]] -name = "swc_ecma_transforms_react" +name = "swc_ecma_transforms_proposal" version = "0.43.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e1812bbc80f6255ba9578889f180c6c69390842bb184f53201b5d4519d97a77c" +checksum = "8d6f4ddfad53b7097030e34dbf3b0f45adf8e6d97dc906220d0143b4885cf971" +dependencies = [ + "either", + "rustc-hash", + "serde", + "smallvec 1.6.1", + "swc_atoms", + "swc_common", + "swc_ecma_ast", + "swc_ecma_parser", + "swc_ecma_transforms_base 0.35.0", + "swc_ecma_transforms_classes 0.21.0", + "swc_ecma_transforms_macros", + "swc_ecma_utils", + "swc_ecma_visit", +] + +[[package]] +name = "swc_ecma_transforms_react" +version = "0.44.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "844d1e575dce38be3677712f69630eb05d5afbc26782413418f3f12da7ce292f" dependencies = [ "base64 0.13.0", "dashmap", @@ -2091,7 +2241,7 @@ dependencies = [ "swc_common", "swc_ecma_ast", "swc_ecma_parser", - "swc_ecma_transforms_base", + "swc_ecma_transforms_base 0.35.0", "swc_ecma_utils", "swc_ecma_visit", ] @@ -2108,9 +2258,9 @@ dependencies = [ "serde_json", "swc_common", "swc_ecma_ast", - "swc_ecma_codegen", + "swc_ecma_codegen 0.73.0", "swc_ecma_parser", - "swc_ecma_transforms_base", + "swc_ecma_transforms_base 0.34.0", "swc_ecma_utils", "swc_ecma_visit", "tempfile", @@ -2119,9 +2269,9 @@ dependencies = [ [[package]] name = "swc_ecma_transforms_typescript" -version = "0.44.0" +version = "0.45.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5c45502d1ba1e8891503c43c62f5425cfc94e49f0845e557e04d883120eb591" +checksum = "b8894a6968545c5f2bfbcfe188591eeab545aec818aa07515694b27d57228ac0" dependencies = [ "rustc-hash", "serde", @@ -2129,7 +2279,7 @@ dependencies = [ "swc_common", "swc_ecma_ast", "swc_ecma_parser", - "swc_ecma_transforms_base", + "swc_ecma_transforms_base 0.35.0", "swc_ecma_utils", "swc_ecma_visit", ] @@ -2164,15 +2314,15 @@ dependencies = [ [[package]] name = "swc_ecmascript" -version = "0.67.0" +version = "0.68.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e18310dd4a008ff3530390bf649ab88d0fa1778d94f40f12e7d97eb9148bc9af" +checksum = "aae347819a2cddd41cbb92feab6d25b66cfefeeddea46e559f2910d51fb83329" dependencies = [ "swc_ecma_ast", - "swc_ecma_codegen", + "swc_ecma_codegen 0.74.0", "swc_ecma_minifier", "swc_ecma_parser", - "swc_ecma_transforms", + "swc_ecma_transforms 0.76.0", "swc_ecma_utils", "swc_ecma_visit", ] diff --git a/packages/next/build/swc/Cargo.toml b/packages/next/build/swc/Cargo.toml index 462a3dcbe8cef..4b431fae56a44 100644 --- a/packages/next/build/swc/Cargo.toml +++ b/packages/next/build/swc/Cargo.toml @@ -16,12 +16,11 @@ path-clean = "0.1" regex = "1.5" serde = "1" serde_json = "1" -swc = "0.59.1" +swc = "0.60" swc_atoms = "0.2" -swc_common = { version = "0.13.0", features = ["concurrent", "sourcemap"] } +swc_common = { version = "0.13", features = ["concurrent", "sourcemap"] } swc_css = "0.8.2" -swc_css_codegen = "0.6.0" -swc_ecmascript = { version = "0.67.0", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } +swc_ecmascript = { version = "0.68", features = ["codegen", "minifier", "optimization", "parser", "react", "transforms", "typescript", "utils", "visit"] } swc_ecma_preset_env = "0.46.0" swc_node_base = "0.4.0" swc_stylis = "0.5.0" diff --git a/packages/next/build/swc/src/next_dynamic.rs b/packages/next/build/swc/src/next_dynamic.rs index 97d326e3dcbe7..a5fed989d7fe6 100644 --- a/packages/next/build/swc/src/next_dynamic.rs +++ b/packages/next/build/swc/src/next_dynamic.rs @@ -92,15 +92,6 @@ impl Fold for NextDynamicPatcher { self.is_next_dynamic_first_arg = false; if let None = self.dynamically_imported_specifier { - HANDLER.with(|handler| { - handler - .struct_span_err( - identifier.span, - "First argument for next/dynamic must be an arrow function returning a valid \ - dynamic import call e.g. `dynamic(() => import('../some-component'))`", - ) - .emit() - }); return expr; } diff --git a/packages/next/build/swc/src/styled_jsx/transform_css.rs b/packages/next/build/swc/src/styled_jsx/transform_css.rs index 9908e3e4b5527..8fe7c76916d8f 100644 --- a/packages/next/build/swc/src/styled_jsx/transform_css.rs +++ b/packages/next/build/swc/src/styled_jsx/transform_css.rs @@ -2,12 +2,12 @@ use easy_error::{bail, Error}; use std::panic; use swc_common::{source_map::Pos, BytePos, Span, SyntaxContext, DUMMY_SP}; use swc_css::ast::*; -use swc_css::parser::{parse_str, parse_tokens, parser::ParserConfig}; -use swc_css::visit::{VisitMut, VisitMutWith}; -use swc_css_codegen::{ +use swc_css::codegen::{ writer::basic::{BasicCssWriter, BasicCssWriterConfig}, - CodegenConfig, Emit, + CodeGenerator, CodegenConfig, Emit, }; +use swc_css::parser::{parse_str, parse_tokens, parser::ParserConfig}; +use swc_css::visit::{VisitMut, VisitMutWith}; use swc_ecmascript::ast::{Expr, Str, StrKind, Tpl, TplElement}; use swc_ecmascript::utils::HANDLER; use swc_stylis::prefixer::prefixer; @@ -63,7 +63,7 @@ pub fn transform_css( let mut s = String::new(); { let mut wr = BasicCssWriter::new(&mut s, BasicCssWriterConfig { indent: " " }); - let mut gen = swc_css_codegen::CodeGenerator::new(&mut wr, CodegenConfig { minify: true }); + let mut gen = CodeGenerator::new(&mut wr, CodegenConfig { minify: true }); gen.emit(&ss).unwrap(); } diff --git a/packages/next/native/next-swc.darwin-arm64.node b/packages/next/native/next-swc.darwin-arm64.node index 361cec92c8281..ca22eeab9ca4d 100644 Binary files a/packages/next/native/next-swc.darwin-arm64.node and b/packages/next/native/next-swc.darwin-arm64.node differ diff --git a/packages/next/native/next-swc.darwin-x64.node b/packages/next/native/next-swc.darwin-x64.node index 06d85429ded2b..5d5df26dae8df 100644 Binary files a/packages/next/native/next-swc.darwin-x64.node and b/packages/next/native/next-swc.darwin-x64.node differ diff --git a/packages/next/native/next-swc.linux-x64-gnu.node b/packages/next/native/next-swc.linux-x64-gnu.node index 684a735aec3e0..a6f4cc3d53473 100644 Binary files a/packages/next/native/next-swc.linux-x64-gnu.node and b/packages/next/native/next-swc.linux-x64-gnu.node differ diff --git a/packages/next/native/next-swc.win32-x64-msvc.node b/packages/next/native/next-swc.win32-x64-msvc.node index 9a6a8f1dadb22..942db449c7ebe 100644 Binary files a/packages/next/native/next-swc.win32-x64-msvc.node and b/packages/next/native/next-swc.win32-x64-msvc.node differ