swc/bindings
magic-akari 9c9a538f23
refactor(es/typescript): Reimplement TypeScript pass (#7202)
**Description:**

## Bugfixes
- Exported `let`/`var` declarations in TypeScript namespaces should be mutable.
- Fix missing declaration of complex exported patterns in TypeScript namespaces.
- Preserve concrete TS namespaces.

## New Features
- Introducing [Verbatim Module Syntax](https://www.typescriptlang.org/tsconfig#verbatimModuleSyntax).
- Enum value will now be inlined whenever possible within a single module, optimizing runtime performance.
- Constant enums will be automatically eliminated when feasible, This can reduce bundle size.
- Added support for cross-referencing enum values.

## Deprecated
`TsEnumConfig` is deprecated
  - The `treat_const_enum_as_enum` transform option is deprecated.
  - The `ts_enum_is_readonly` assumption option is deprecated.

**BREAKING CHANGE:**

TypeScript Config is changed.


**Related issue:**

 - Closes #5197
 - Closes #5259 
 - Closes #7177
 - Closes #7453
 - Closes #7676 
 - Closes #7681
 - Closes #7791 
 - Closes #7961
2023-09-25 01:41:00 +00:00
..
binding_core_node chore: Publish v1.3.88 with swc_core v0.83.19 (#7997) 2023-09-24 04:57:46 +00:00
binding_core_wasm refactor(es/typescript): Reimplement TypeScript pass (#7202) 2023-09-25 01:41:00 +00:00
node_macro_deps refactor(bindings): Use separate workspace for bindings (#5506) 2022-08-16 15:01:49 +09:00
swc_cli chore: Publish crates 2023-09-24 13:59:06 +09:00
Cargo.lock chore: Publish crates 2023-09-24 13:59:06 +09:00
Cargo.toml chore(ci): Merge CI scripts (#5999) 2022-09-30 16:57:15 +09:00
README.md refactor(bindings): Use separate workspace for bindings (#5506) 2022-08-16 15:01:49 +09:00

SWC bindings

This folder contains actual bindings binary SWC will build for the supported platforms (@swc/core, swc_cli, @swc/wasm).

All the bindings binary uses publicly published swc_core SDK to build deterministic host binary for the specific changes, in result Cargo's workspace gets confused to select dependency versions if it belongs to the workspace contains unpublished packages. To avoid those problems, these bindings are not being built as part of the workspace.