diff --git a/.cargo/config.toml b/.cargo/config.toml index 9f4c9cf..586348b 100644 --- a/.cargo/config.toml +++ b/.cargo/config.toml @@ -1,4 +1,4 @@ # These command aliases are not final, may change [alias] # Alias to build actual plugin binary for the specified target. -prepublish = "build --target wasm32-wasi" \ No newline at end of file +prepublish = "build --target wasm32-wasip1" \ No newline at end of file diff --git a/Cargo.lock b/Cargo.lock index 99c5a02..70e106a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -69,6 +69,12 @@ version = "1.0.91" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c042108f3ed77fd83760a5fd79b53be043192bb3b9dba91d8c574c0ada7850c8" +[[package]] +name = "arrayvec" +version = "0.7.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50" + [[package]] name = "ascii" version = "1.1.0" @@ -139,11 +145,12 @@ checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6" [[package]] name = "base64-simd" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "781dd20c3aff0bd194fe7d2a977dd92f21c173891f3a03b677359e5fa457e5d5" +checksum = "339abbe78e73178762e23bea9dfd08e697eb3f3301cd4be981c0f78ba5859195" dependencies = [ - "simd-abstraction", + "outref", + "vsimd", ] [[package]] @@ -261,7 +268,7 @@ checksum = "eee4243f1f26fc7a42710e7439c149e2b10b05472f88090acce52632f231a73a" dependencies = [ "camino", "cargo-platform", - "semver 1.0.23", + "semver", "serde", "serde_json", "thiserror", @@ -275,7 +282,7 @@ checksum = "2d886547e41f740c616ae73108f6eb70afe6d940c7bc697cb30f13daec073037" dependencies = [ "camino", "cargo-platform", - "semver 1.0.23", + "semver", "serde", "serde_json", "thiserror", @@ -940,7 +947,7 @@ checksum = "650eef8c711430f1a879fdd01d4745a7deea475becfb90269c06775983bbf086" [[package]] name = "next_superjson" -version = "0.7.1" +version = "0.8.0" dependencies = [ "serde", "serde_json", @@ -1008,15 +1015,15 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.20.2" +version = "1.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775" +checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" [[package]] name = "outref" -version = "0.1.0" +version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f222829ae9293e33a9f5e9f440c6760a3d450a64affe1846486b140db81c1f4" +checksum = "1a80800c0488c3a21695ea981a54918fbb37abf04f4d0720c453632255e2ff0e" [[package]] name = "overload" @@ -1036,6 +1043,25 @@ version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fb37767f6569cd834a413442455e0f066d0d522de8630436e2a1761d9726ba56" +[[package]] +name = "par-core" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "757892557993c69e82f9de0f9051e87144278aa342f03bf53617bbf044554484" +dependencies = [ + "once_cell", +] + +[[package]] +name = "par-iter" +version = "1.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8a5b20f31e9ba82bfcbbb54a67aa40be6cebec9f668ba5753be138f9523c531a" +dependencies = [ + "either", + "par-core", +] + [[package]] name = "parking_lot" version = "0.12.3" @@ -1365,15 +1391,6 @@ version = "2.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "357703d41365b4b27c590e3ed91eabb1b663f07c4c084095e60cbed4362dff0d" -[[package]] -name = "rustc_version" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "138e3e0acb6c9fb258b19b67cb8abd63c00679d2851805ea151465464fe9030a" -dependencies = [ - "semver 0.9.0", -] - [[package]] name = "rustix" version = "0.38.37" @@ -1417,15 +1434,6 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" -[[package]] -name = "semver" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1d7eb9ef2c18661902cc47e535f9bc51b78acd254da71d375c2f6720d9a40403" -dependencies = [ - "semver-parser", -] - [[package]] name = "semver" version = "1.0.23" @@ -1435,12 +1443,6 @@ dependencies = [ "serde", ] -[[package]] -name = "semver-parser" -version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "388a1df253eca08550bef6c72392cfe7c30914bf41df5269b68cbd6ff8f570a3" - [[package]] name = "serde" version = "1.0.213" @@ -1499,15 +1501,6 @@ version = "1.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64" -[[package]] -name = "simd-abstraction" -version = "0.7.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9cadb29c57caadc51ff8346233b5cec1d240b68ce55cf1afc764818791876987" -dependencies = [ - "outref", -] - [[package]] name = "simdutf8" version = "0.1.5" @@ -1545,17 +1538,16 @@ checksum = "b7c388c1b5e93756d0c740965c41e8822f866621d41acbdf6336a6a168f8840c" [[package]] name = "sourcemap" -version = "9.0.0" +version = "9.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dab08a862c70980b8e23698b507e272317ae52a608a164a844111f5372374f1f" +checksum = "e22afbcb92ce02d23815b9795523c005cb9d3c214f8b7a66318541c240ea7935" dependencies = [ "base64-simd", "bitvec", "data-encoding", "debugid", "if_chain", - "rustc-hash 1.1.0", - "rustc_version", + "rustc-hash 2.1.1", "serde", "serde_json", "unicode-id-start", @@ -1733,9 +1725,9 @@ dependencies = [ [[package]] name = "swc_common" -version = "8.0.1" +version = "11.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e4a932c152e7142de2d5dba1c393e5523c47cd8fe656e5b0d411954bbaf1810" +checksum = "44c332906667b0fa98622f19a19e43afa5aa63b652813f80645dd0f33eca1fbb" dependencies = [ "anyhow", "ast_node 3.0.0", @@ -1766,14 +1758,14 @@ dependencies = [ [[package]] name = "swc_core" -version = "16.10.0" +version = "26.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7453b2e6771d55f483903ed12fa9cf949ff7a3fefdfe4a63a5ea13b542e9eca" +checksum = "083af217e9715a7c1b020f7c9e71e4961285adb0333ee3f0e5e92962a0494a11" dependencies = [ "once_cell", "swc_allocator", "swc_atoms 5.0.0", - "swc_common 8.0.1", + "swc_common 11.1.3", "swc_ecma_ast", "swc_ecma_parser", "swc_ecma_transforms_base", @@ -1783,35 +1775,38 @@ dependencies = [ "swc_plugin", "swc_plugin_macro", "swc_plugin_proxy", + "swc_transform_common", "vergen", ] [[package]] name = "swc_ecma_ast" -version = "8.1.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01f80679b1afc52ae0663eed0a2539cc3c108d48c287b5601712f9850d9fa9c2" +checksum = "d2313360a518a37c4b9ee50030d189222927a3af902903cc70c50f6929e402dc" dependencies = [ "bitflags", "bytecheck", "is-macro", "num-bigint", + "once_cell", "phf", "rancor", "rkyv", + "rustc-hash 2.1.1", "scoped-tls", "string_enum", "swc_atoms 5.0.0", - "swc_common 8.0.1", + "swc_common 11.1.3", "swc_visit 2.0.0", "unicode-id-start", ] [[package]] name = "swc_ecma_codegen" -version = "8.0.2" +version = "13.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92103aa982740f265d6850bb3ffffbf6c3c1dee30ab0ed25117ca553f0d7467d" +checksum = "005b9e6e4cdd15c4c437d6662e4fc6dc93f60bd1c5159a1afcf6cd9eea6fb24f" dependencies = [ "ascii", "compact_str", @@ -1820,11 +1815,12 @@ dependencies = [ "once_cell", "regex", "rustc-hash 2.1.1", + "ryu-js", "serde", "sourcemap", "swc_allocator", "swc_atoms 5.0.0", - "swc_common 8.0.1", + "swc_common 11.1.3", "swc_ecma_ast", "swc_ecma_codegen_macros", "tracing", @@ -1832,9 +1828,9 @@ dependencies = [ [[package]] name = "swc_ecma_codegen_macros" -version = "1.0.1" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4ac2ff0957329e0dfcde86a1ac465382e189bf42a5989720d3476bea78eaa31a" +checksum = "e99e1931669a67c83e2c2b4375674f6901d1480994a76aa75b23f1389e6c5076" dependencies = [ "proc-macro2", "quote", @@ -1842,12 +1838,39 @@ dependencies = [ "syn 2.0.85", ] +[[package]] +name = "swc_ecma_lexer" +version = "14.0.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bb339d30ba6ee93da5d5638982faaa79586cd429fe331648abf42afa0eb0a7b5" +dependencies = [ + "arrayvec", + "bitflags", + "either", + "new_debug_unreachable", + "num-bigint", + "num-traits", + "phf", + "rustc-hash 2.1.1", + "serde", + "smallvec", + "smartstring", + "stacker", + "swc_atoms 5.0.0", + "swc_common 11.1.3", + "swc_ecma_ast", + "tracing", + "typed-arena", +] + [[package]] name = "swc_ecma_parser" -version = "10.0.2" +version = "14.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edfbfa5baabd14901a310f9d55d991625787d27d94de5c38a1a2ef85ebc19c97" +checksum = "60e07e6ecd47f748988902976d09c4022b1147772f88ad8a95852a20722ac7dc" dependencies = [ + "arrayvec", + "bitflags", "either", "new_debug_unreachable", "num-bigint", @@ -1859,54 +1882,55 @@ dependencies = [ "smartstring", "stacker", "swc_atoms 5.0.0", - "swc_common 8.0.1", + "swc_common 11.1.3", "swc_ecma_ast", + "swc_ecma_lexer", "tracing", "typed-arena", ] [[package]] name = "swc_ecma_testing" -version = "8.0.0" +version = "12.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5e72a43b7acd904fa0c6d244a72aeda66febbc5a9720975481cb836d6804b604" +checksum = "bfca232a0a2e743c963185665bc6fb6f92b1422449aba17ccd836ff4aa02858d" dependencies = [ "anyhow", "hex", "sha2", - "testing 8.0.0", + "testing 12.0.0", "tracing", ] [[package]] name = "swc_ecma_transforms_base" -version = "11.2.0" +version = "15.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39889063ff4819eae414dfe6426aa5cd72ebb0f9f48739a1fa1e7eb82d0adc78" +checksum = "49c0a76bff24b9fa13d5451e7a664d18158849c45434d863e0553e29fb31170b" dependencies = [ "better_scoped_tls 1.0.0", "bitflags", "indexmap", "once_cell", + "par-core", "phf", "rustc-hash 2.1.1", "serde", "smallvec", "swc_atoms 5.0.0", - "swc_common 8.0.1", + "swc_common 11.1.3", "swc_ecma_ast", "swc_ecma_parser", "swc_ecma_utils", "swc_ecma_visit", - "swc_parallel", "tracing", ] [[package]] name = "swc_ecma_transforms_testing" -version = "11.0.1" +version = "18.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "13c4d8c48a36ad5d02626f853edcf52ae82b65d238389e7e76270ddf564b69ab" +checksum = "297e4f7638cfc0d6088ad637ec717b9ffbf7555a913963344cd1f3ce2864a660" dependencies = [ "ansi_term", "anyhow", @@ -1917,7 +1941,7 @@ dependencies = [ "sha2", "sourcemap", "swc_allocator", - "swc_common 8.0.1", + "swc_common 11.1.3", "swc_ecma_ast", "swc_ecma_codegen", "swc_ecma_parser", @@ -1926,39 +1950,40 @@ dependencies = [ "swc_ecma_utils", "swc_ecma_visit", "tempfile", - "testing 8.0.0", + "testing 12.0.0", ] [[package]] name = "swc_ecma_utils" -version = "11.0.0" +version = "15.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "721dc779e7de200da96ac4002c710bc32c988e3e1ebf62b39d32bf99f14d9765" +checksum = "7d2c29dbfc54e02c14975aff9d2c75ae6fff0808d860d9971a493d37870e282f" dependencies = [ "indexmap", "num_cpus", "once_cell", + "par-core", + "par-iter", "rustc-hash 2.1.1", "ryu-js", "swc_atoms 5.0.0", - "swc_common 8.0.1", + "swc_common 11.1.3", "swc_ecma_ast", "swc_ecma_visit", - "swc_parallel", "tracing", "unicode-id", ] [[package]] name = "swc_ecma_visit" -version = "8.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f7a65fa06d0c0f709f1df4e820ccdc4eca7b3db7f9d131545e20c2ac2f1cd23" +checksum = "8227d1d2d76a9ccfd190ec06bb4a4720bf3edb9f954c69816b2bca5f5aa43887" dependencies = [ "new_debug_unreachable", "num-bigint", "swc_atoms 5.0.0", - "swc_common 8.0.1", + "swc_common 11.1.3", "swc_ecma_ast", "swc_visit 2.0.0", "tracing", @@ -2001,9 +2026,9 @@ dependencies = [ [[package]] name = "swc_error_reporters" -version = "9.1.1" +version = "13.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7938665a5561d6c3e2b796b5b2d0bc9a961d461db960cb5139f12e82b45bb471" +checksum = "572075b92eef780f9a13b99abcb4fbf8e6272abeed27b361632b5e3a2e8de70d" dependencies = [ "anyhow", "miette 7.2.0", @@ -2012,7 +2037,7 @@ dependencies = [ "serde", "serde_derive", "serde_json", - "swc_common 8.0.1", + "swc_common 11.1.3", ] [[package]] @@ -2037,15 +2062,6 @@ dependencies = [ "syn 2.0.85", ] -[[package]] -name = "swc_parallel" -version = "1.3.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f16052d5123ec45c1c49100781363f3f4e4a6be2da6d82f473b79db1e3abeb8" -dependencies = [ - "once_cell", -] - [[package]] name = "swc_plugin" version = "1.0.0" @@ -2057,9 +2073,9 @@ dependencies = [ [[package]] name = "swc_plugin_macro" -version = "1.0.0" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0917ccfdcd3fa6cf41bdacef2388702a3b274f9ea708d930e1e8db37c7c3e1c6" +checksum = "ace467dfafbbdf3aecff786b8605b35db57d945e92fd88800569aa2cba0cdf61" dependencies = [ "proc-macro2", "quote", @@ -2068,16 +2084,16 @@ dependencies = [ [[package]] name = "swc_plugin_proxy" -version = "8.0.0" +version = "11.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a18c199683d9f946db8dfca444212a3551e74a7c563196b154d5ac30f3bf9de6" +checksum = "ab1281343dca1fe02aa027e2dfdf77067e62506e77b651e3e9c1a4e3fa8bccf6" dependencies = [ "better_scoped_tls 1.0.0", "bytecheck", "rancor", "rkyv", "rustc-hash 2.1.1", - "swc_common 8.0.1", + "swc_common 11.1.3", "swc_ecma_ast", "swc_trace_macro", "tracing", @@ -2085,15 +2101,28 @@ dependencies = [ [[package]] name = "swc_trace_macro" -version = "2.0.0" +version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4c78717a841565df57f811376a3d19c9156091c55175e12d378f3a522de70cef" +checksum = "dfd2b4b0adb82e36f2ac688d00a6a67132c7f4170c772617516793a701be89e8" dependencies = [ - "proc-macro2", "quote", "syn 2.0.85", ] +[[package]] +name = "swc_transform_common" +version = "5.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3be97f7341c59045d8ecbd5579acad8063e545d10304db086846b9dcf985c56e" +dependencies = [ + "better_scoped_tls 1.0.0", + "once_cell", + "rustc-hash 2.1.1", + "serde", + "serde_json", + "swc_common 11.1.3", +] + [[package]] name = "swc_visit" version = "0.5.14" @@ -2220,9 +2249,9 @@ dependencies = [ [[package]] name = "testing" -version = "8.0.0" +version = "12.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8d32ddc0e2ebd072cbffe7424087267da990708a5bc3ae29e075904468450275" +checksum = "4afa5efbee09e27d4fa6f7d3278e351ab1feaf8d253eea84bc69975fb6da418e" dependencies = [ "ansi_term", "cargo_metadata 0.18.1", @@ -2233,8 +2262,8 @@ dependencies = [ "rustc-hash 2.1.1", "serde", "serde_json", - "swc_common 8.0.1", - "swc_error_reporters 9.1.1", + "swc_common 11.1.3", + "swc_error_reporters 13.0.0", "testing_macros 1.0.0", "tracing", "tracing-subscriber", @@ -2528,6 +2557,12 @@ version = "0.9.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a" +[[package]] +name = "vsimd" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5c3082ca00d5a5ef149bb8b555a72ae84c9c59f7250f013ac822ac2e49b19c64" + [[package]] name = "wasi" version = "0.11.0+wasi-snapshot-preview1" diff --git a/Cargo.toml b/Cargo.toml index 8463f9d..3f43226 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "next_superjson" -version = "0.7.1" +version = "0.8.0" edition = "2021" authors = ["https://github.com/serg-and"] description = "SWC Plugin of SuperJSON for Next.js" @@ -13,7 +13,8 @@ crate-type = ["cdylib", "rlib"] [dependencies] serde = "1.0.144" serde_json = "1.0.85" -swc_core = { version = "16.10.*", features = [ +# match next@15.4.0 +swc_core = { version = "26.4.*", features = [ "ecma_plugin_transform", "ecma_ast", "ecma_utils", diff --git a/README.md b/README.md index ac782d9..149db44 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@