swc/crates/swc_core
David Sherret 981d7b152b
refactor(common): Make ahash optional (#7816)
**Description:**

This adds the ability to not include `ahash` with swc_common, which
caused some issues for me compiling dprint-plugin-typescript to Wasm
because of:

```
   Compiling ahash v0.8.3
   Compiling getrandom v0.2.10
error: the wasm*-unknown-unknown targets are not supported by default, you may need to enable the "js" feature. For more information see: https://docs.rs/getrandom/#webassembly-support
   --> C:\Users\david\.cargo\registry\src\index.crates.io-6f17d22bba15001f\getrandom-0.2.10\src\lib.rs:285:9
    |
285 | /         compile_error!("the wasm*-unknown-unknown targets are not supported by \
286 | |                         default, you may need to enable the \"js\" feature. \
287 | |                         For more information see: \
288 | |                         https://docs.rs/getrandom/#webassembly-support");
    | |________________________________________________________________________^
``` 

(I can't enable the JS feature because it's running the wasm file in
Wasmer and also I don't support Wasi in dprint plugins)

**BREAKING CHANGE:**

This removes swc_common's "perf" feature and makes it the default, then
adds an `ahash` feature instead. An alternative would be to make the
`ahash` dep optional and part of the default features, then do
`default-features = false` in the downstream crates (I think, but I'm
not sure), but I figure most people will be using the perf default
anyway? I'm not sure what's preferable.

**Related issue:**

 - Closes #7729.
2023-08-16 18:02:05 +00:00
..
src fix(swc_core): Correctly expose plugin with host (#7427) 2023-05-22 05:27:01 +00:00
tests refactor(common): Make ahash optional (#7816) 2023-08-16 18:02:05 +00:00
.gitignore refactor(bindings): Deprecate jsvalue::*_serde (#6462) 2022-11-18 10:21:23 +09:00
build.rs refactor: Fix lints using clippy from nightly-2023-03-13 (#6920) 2023-03-14 04:56:21 +00:00
Cargo.toml refactor(common): Make ahash optional (#7816) 2023-08-16 18:02:05 +00:00
README.md chore: Publish v1.3.38 (#7018) 2023-03-06 09:30:21 +00:00

swc_core

Selecting version

If you are writing a Wasm plugin for SWC or next.js, please refer to the documentation.