Skip to content
Docs
Plugin
Selecting swc_core

Selecting the version

Currently, the Wasm plugins are not backwards compatible. So you need to select an appropriate version of swc_core for your plugin.

The page documents the version of swc_core you can use for each runtime.

Note for next.js

swc_core

If you use a version in a range of the title, the Wasm plugin will work for the runtimes written in the body.

v0.98.x ~

Changes

  • Span.ctxt is removed to reduce the size of Span.
  • ctxt: SyntaxContext is added to various AST nodes.
  • IdentName is used instead of Ident in some places like MemberProp, because those fields does not need ctxt or optional.

Upgrade guide

Versions

  • @swc/core@1.7.x

v0.95.x ~ v0.96.9

We optimized some AST type definitions.

  • @swc/core@1.6.x
  • next@15.0.0-canary.37 ~

v0.94.x

Do not use this version if you are building a plugin for SWC.

v0.91.x ~ v0.93.x

We added support for abstract auto-accessors.

  • @swc/core@1.5.x
  • next@15.0.0-canary.29 ~ v15.0.0-canary.36

v0.90.x

We refactored AST to make it less error-prone.

  • @swc/core@1.4.x
  • next@14.1.1-canary.52 ~ next@15.0.0-canary.28
  • @rspack/core@0.6.0 ~

v0.88.x ~ v0.89.x

Support for import phase proposal (stage 3) was added.

  • @swc/core@1.3.106 ~ @swc/core@1.3.107
  • @rspack/core@0.5.8 ~ @rspack/core@0.5.9

v0.82.x ~ v0.87.x

We modified AST definitions because of with of Import Attributes proposal (opens in a new tab).

  • @swc/core@1.3.81 ~ @swc/core@1.3.105
  • ~ next@14.1.0

Note: You may need to specify the version of swc_common, too, like

[dependencies]
swc_common = "=0.33.15"

v0.79.x ~ v0.81.x

We modified AST definitions because of await of Explicit Resource Management proposal (opens in a new tab).

  • @swc/core@1.3.68 ~ @swc/core@1.3.80
  • next@13.4.10-canary.1 ~

v0.78.x

We modified AST definitions because some of the previous definitions were misdesigned.

  • @swc/core@1.3.63 ~ @swc/core@1.3.67
  • next@13.4.8 ~ next@13.4.10-canary.0

v0.76.x ~ v0.77.x

We modified AST definitions because of Explicit Resource Management proposal (opens in a new tab), which is stage 3.

  • @swc/core@1.3.58 ~ @swc/core@1.3.62
  • next@13.4.3-canary.2 ~ next@13.4.7

v0.75.x

We enabled strict mode of rkyv and updated wasmer to v3.

  • @swc/core@1.3.49 ~ @swc/core@1.3.57
  • v13.3.1-canary.12 ~ next@13.4.3-canary.1

v0.72.4 ~ v0.74.6

We updated rkyv to v0.7.40 and the bug is now fixed.

  • @swc/core@1.3.44 ~ @swc/core@1.3.47

v0.69.x ~ v0.72.3

Due to a bug of rkyv@0.7.37, you are recommended to use nightly-2022-09-23 as the compiler if you are building a plugin for these targets.

  • @swc/core@1.3.40 ~ @swc/core@1.3.42
  • next@13.2.5-canary.5

v0.66.x ~ v0.68.x

  • @swc/core@1.3.39

v0.61.x ~ v0.64.x

  • @swc/core@1.3.38

v0.54.x ~ v0.59.x

  • @swc/core@1.3.29 ~ @swc/core@1.3.37

  • next@13.2.4-canary.0~

Last updated on July 18, 2024