swc/.github/workflows/compilation.yml
Donny/강동윤 3d204b44f0
perf(es/transforms): Make transforms parallel (#2449)
swc_ecma_utils:
 - `collect_decls`: More parallel.

swc_ecma_transforms_macros:
 - Add `Parallel`, which is helper for `#[parallel]`.
 - Add `ParExplode`, which is helper for `#[parallel(explode)]`.

swc_ecma_transforms_macros:
 - Add `#[parllel]`.

swc_ecma_transforms_compat:
 - `sticky_regex`: Parallel.
 - `typeof_symbol`: Parallel.
 - `for_of`: Remove exponential visit.
 - `regenerator`: Remove exponential visit.
 - `object_spread`: Parallel.
 - `instance_of`: Parallel.
 - `duplicate_keys`: Parallel.
 - `logical_assignments`: Parallel.
 - `template_literal`: Parallel.
 - `block_scoped_functions`: Migrate to `VisitMut`.
 - `for_of`: Migrate to `VisitMut`.
 - `destructuring`: Reduce `Visit`.
 - `arrow`: Migrate to `VisitMut`.
 - `function_name`: Parallel.
 - `reserved_words`: Parallel.
 - `for_of`: Parallel.

swc_ecma_transforms_module:
 - `import_analyzer`: Migrate to `VisitMut`.

swc_ecma_transforms_react:
 - `jsx_src`: Parallel.
-  `jsx_self`: Migrate to `VisitMut`.
-  `jsx_self`: Parallel.

swc_ecma_transforms_proposal:
 - `export_default_from`: Migrate to `VisitMut`.

swc_ecma_transforms_optimization:
 - `inline_globals`: Parallel.
 - `json_parse`: Migrate to `VisitMut`.
 - `json_parse`: Parallel.
2021-10-18 00:03:30 +09:00

78 lines
2.0 KiB
YAML

name: Compilation
on: [push, pull_request]
#on:
# push:
# # Ignore commits created by bors
# branches-ignore:
# - 'staging'
# - 'trying'
# pull_request:
# branches-ignore:
# - 'staging'
# - 'trying'
env:
CARGO_INCREMENTAL: 0
CI: "1"
jobs:
check:
name: compilation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
# We explicitly do this to cache properly.
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
profile: minimal
- name: Cache
uses: actions/cache@v2
with:
path: |
~/.cargo/
key: ${{ runner.os }}-cargo-compliation
- name: Install cargo hack
run: |
cargo install cargo-hack --version 0.3.11
- name: Check swc_common
run: |
(cd common && cargo hack check --feature-powerset --no-dev-deps)
- name: Check swc_ecma_ast
run: |
(cd ecmascript/ast && cargo hack check --feature-powerset --no-dev-deps)
- name: Check swc_ecma_transforms
run: |
(cd ecmascript/transforms && cargo hack check --feature-powerset --no-dev-deps)
- name: Check swc_ecma_transforms_base
run: |
(cd ecmascript/transforms/base && cargo hack check --feature-powerset --no-dev-deps)
- name: Check swc_ecma_transforms_compat
run: |
(cd ecmascript/transforms/compat && cargo hack check --feature-powerset --no-dev-deps)
- name: Check swc_ecma_transforms_optimization
run: |
(cd ecmascript/transforms/optimization && cargo hack check --feature-powerset --no-dev-deps)
- name: Check swc_ecma_utils
run: |
(cd ecmascript/utils && cargo hack check --feature-powerset --no-dev-deps)
- name: Check swc_bundler
run: |
(cd bundler && cargo hack check --feature-powerset --no-dev-deps)
- name: Check swc
run: |
cargo hack check --feature-powerset --no-dev-deps