fix(testing): Allow using it with stable rustc (#1974)

testing_macros:
 - Make `#[fixture]` relative to cargo manifest dir.
This commit is contained in:
강동윤 2021-07-29 14:18:21 +09:00 committed by GitHub
parent f3603b2cb8
commit 4011703af5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
469 changed files with 274 additions and 276 deletions

View File

@ -1,46 +0,0 @@
[build]
rustflags = [
"--cfg", "procmacro2_semver_exempt",
"-C", "target-feature=+sse2,+aes",
]
rustdocflags = [
"--cfg", "procmacro2_semver_exempt",
]
[target.aarch64-apple-darwin]
rustflags = [
"--cfg", "procmacro2_semver_exempt",
]
[target.aarch64-unknown-linux-gnu]
rustflags = [
"--cfg", "procmacro2_semver_exempt",
]
linker = "aarch64-linux-gnu-gcc"
[target.aarch64-unknown-linux-musl]
linker = "aarch64-linux-gnu-gcc"
rustflags = ["--cfg", "procmacro2_semver_exempt", "-C", "target-feature=-crt-static", "-C", "link-arg=-lgcc"]
[target.armv7-unknown-linux-gnueabihf]
rustflags = [
"--cfg", "procmacro2_semver_exempt",
]
linker = "arm-linux-gnueabihf-gcc"
[target.aarch64-linux-android]
rustflags = [
"--cfg", "procmacro2_semver_exempt",
]
[target.aarch64-pc-windows-msvc]
rustflags = [
"--cfg", "procmacro2_semver_exempt",
]
[target.wasm32-unknown-unknown]
rustflags = [
"--cfg", "procmacro2_semver_exempt",
]

37
.cargo/config.toml Normal file
View File

@ -0,0 +1,37 @@
[build]
rustdocflags = []
rustflags = [
"-C",
"target-feature=+sse2,+aes",
]
[target.aarch64-apple-darwin]
rustflags = []
[target.aarch64-unknown-linux-gnu]
linker = "aarch64-linux-gnu-gcc"
rustflags = []
[target.aarch64-unknown-linux-musl]
linker = "aarch64-linux-gnu-gcc"
rustflags = [
"-C",
"target-feature=-crt-static",
"-C",
"link-arg=-lgcc",
]
[target.armv7-unknown-linux-gnueabihf]
linker = "arm-linux-gnueabihf-gcc"
rustflags = []
[target.aarch64-linux-android]
rustflags = []
[target.aarch64-pc-windows-msvc]
rustflags = []
[target.wasm32-unknown-unknown]
rustflags = []

View File

@ -58,22 +58,22 @@ passes the test-suite at all times.
Your basic steps to get going:
- Fork swc and create a branch from master for the issue you are working on.
- Make sure you have the `make` utility installed, along with Rust and C/C++
compilers.
- Please adhere to the code style that you see around the location you are
working on.
- [Commit as you go][githelp].
- Include tests that cover all non-trivial code. The existing tests
in `test/` provide templates on how to test swc's behavior in a
sandbox-environment. The internal crate `testing` provides a vast amount
of helpers to minimize boilerplate. See [`testing/lib.rs`] for an
introduction to writing tests.
- Make sure `cargo test` passes.
- All code changes are expected to comply with the formatting suggested by `rustfmt`.
You can use `rustup component add --toolchain nightly rustfmt-preview` to install `rustfmt` and use
`rustfmt +nightly --unstable-features --skip-children` on the changed files to automatically format your code.
- Push your commits to GitHub and create a pull request against swc's `master` branch.
- Fork swc and create a branch from master for the issue you are working on.
- Make sure you have the `make` utility installed, along with Rust and C/C++
compilers.
- Please adhere to the code style that you see around the location you are
working on.
- [Commit as you go][githelp].
- Include tests that cover all non-trivial code. The existing tests
in `test/` provide templates on how to test swc's behavior in a
sandbox-environment. The internal crate `testing` provides a vast amount
of helpers to minimize boilerplate. See [`testing/lib.rs`] for an
introduction to writing tests.
- Make sure `cargo test` passes.
- All code changes are expected to comply with the formatting suggested by `rustfmt`.
You can use `rustup component add --toolchain nightly rustfmt-preview` to install `rustfmt` and use
`rustfmt +nightly --unstable-features --skip-children` on the changed files to automatically format your code.
- Push your commits to GitHub and create a pull request against swc's `master` branch.
## Getting your development environment set up
@ -95,7 +95,6 @@ After cloning the project there are a few steps required to get the project runn
3. Setup some environment variables which is required for tests.
```bash
export RUSTFLAGS='--cfg procmacro2_semver_exempt'
export RUST_BACKTRACE=full
export PATH="$PATH:$PWD/ecmascript/transforms/node_modules/.bin"
```
@ -149,27 +148,27 @@ updated sort][lru] is good for finding issues like this.
Contributors with sufficient permissions on the Rust-repository can help by
adding labels to triage issues:
- Yellow, **A**-prefixed labels state which **area** of the project an issue
relates to.
- Yellow, **A**-prefixed labels state which **area** of the project an issue
relates to.
- Magenta, **B**-prefixed labels identify bugs which are **blockers**.
- Magenta, **B**-prefixed labels identify bugs which are **blockers**.
- Red, **C**-prefixed labels represent the **category** of an issue.
In particular, **C-feature-request** marks _proposals_ for new features. If
an issue is **C-feature-request**, but is not **Feature accepted**,
then it was not thoroughly discussed, and might need some additional design
or perhaps should be implemented as an external subcommand first. Ping
@swc-projcet/swc if you want to send a PR for an such issue.
- Red, **C**-prefixed labels represent the **category** of an issue.
In particular, **C-feature-request** marks _proposals_ for new features. If
an issue is **C-feature-request**, but is not **Feature accepted**,
then it was not thoroughly discussed, and might need some additional design
or perhaps should be implemented as an external subcommand first. Ping
@swc-projcet/swc if you want to send a PR for an such issue.
- Green, **E**-prefixed labels explain the level of **experience** or
**effort** necessary to fix the issue. [**E-mentor**][e-mentor] issues also
have some instructions on how to get started.
- Green, **E**-prefixed labels explain the level of **experience** or
**effort** necessary to fix the issue. [**E-mentor**][e-mentor] issues also
have some instructions on how to get started.
- Purple gray, **O**-prefixed labels are the **operating system** or platform
that this issue is specific to.
- Purple gray, **O**-prefixed labels are the **operating system** or platform
that this issue is specific to.
- Orange, **P**-prefixed labels indicate a bug's **priority**.
- Light orange, **L**-prefixed labels indicate language related to the bug.
- Orange, **P**-prefixed labels indicate a bug's **priority**.
- Light orange, **L**-prefixed labels indicate language related to the bug.
[gist]: https://gist.github.com/
[new-issues]: https://github.com/swc-project/swc/issues/new

46
Cargo.lock generated
View File

@ -912,7 +912,7 @@ dependencies = [
[[package]]
name = "jsdoc"
version = "0.32.0"
version = "0.33.0"
dependencies = [
"anyhow",
"dashmap",
@ -2260,7 +2260,7 @@ checksum = "6446ced80d6c486436db5c078dde11a9f73d42b57fb273121e160b84f63d894c"
[[package]]
name = "swc"
version = "0.31.0"
version = "0.32.0"
dependencies = [
"ahash 0.7.4",
"anyhow",
@ -2351,7 +2351,7 @@ dependencies = [
[[package]]
name = "swc_bundler"
version = "0.47.0"
version = "0.48.0"
dependencies = [
"ahash 0.7.4",
"anyhow",
@ -2430,7 +2430,7 @@ dependencies = [
[[package]]
name = "swc_ecma_codegen"
version = "0.63.0"
version = "0.64.0"
dependencies = [
"bitflags",
"num-bigint",
@ -2456,7 +2456,7 @@ dependencies = [
[[package]]
name = "swc_ecma_dep_graph"
version = "0.32.0"
version = "0.33.0"
dependencies = [
"swc_atoms",
"swc_common",
@ -2468,7 +2468,7 @@ dependencies = [
[[package]]
name = "swc_ecma_ext_transforms"
version = "0.22.0"
version = "0.23.0"
dependencies = [
"phf",
"swc_atoms",
@ -2481,7 +2481,7 @@ dependencies = [
[[package]]
name = "swc_ecma_loader"
version = "0.11.1"
version = "0.12.0"
dependencies = [
"anyhow",
"dashmap",
@ -2500,7 +2500,7 @@ dependencies = [
[[package]]
name = "swc_ecma_minifier"
version = "0.13.0"
version = "0.14.0"
dependencies = [
"ansi_term 0.12.1",
"anyhow",
@ -2528,7 +2528,7 @@ dependencies = [
[[package]]
name = "swc_ecma_parser"
version = "0.64.0"
version = "0.65.0"
dependencies = [
"either",
"enum_kind",
@ -2552,7 +2552,7 @@ dependencies = [
[[package]]
name = "swc_ecma_preset_env"
version = "0.30.0"
version = "0.31.0"
dependencies = [
"dashmap",
"fxhash",
@ -2578,7 +2578,7 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms"
version = "0.60.0"
version = "0.61.0"
dependencies = [
"pretty_assertions 0.6.1",
"sourcemap",
@ -2605,7 +2605,7 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_base"
version = "0.23.1"
version = "0.24.0"
dependencies = [
"fxhash",
"once_cell",
@ -2624,7 +2624,7 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_classes"
version = "0.9.0"
version = "0.10.0"
dependencies = [
"swc_atoms",
"swc_common",
@ -2636,7 +2636,7 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_compat"
version = "0.26.0"
version = "0.27.0"
dependencies = [
"arrayvec",
"fxhash",
@ -2672,7 +2672,7 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_module"
version = "0.27.0"
version = "0.28.0"
dependencies = [
"Inflector",
"anyhow",
@ -2695,7 +2695,7 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_optimization"
version = "0.30.0"
version = "0.31.0"
dependencies = [
"dashmap",
"fxhash",
@ -2722,7 +2722,7 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_proposal"
version = "0.27.0"
version = "0.28.0"
dependencies = [
"either",
"fxhash",
@ -2744,7 +2744,7 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_react"
version = "0.28.0"
version = "0.29.0"
dependencies = [
"base64 0.13.0",
"dashmap",
@ -2770,7 +2770,7 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_testing"
version = "0.23.0"
version = "0.24.0"
dependencies = [
"ansi_term 0.12.1",
"serde",
@ -2788,7 +2788,7 @@ dependencies = [
[[package]]
name = "swc_ecma_transforms_typescript"
version = "0.29.0"
version = "0.30.0"
dependencies = [
"fxhash",
"serde",
@ -2810,7 +2810,7 @@ dependencies = [
[[package]]
name = "swc_ecma_utils"
version = "0.40.1"
version = "0.41.0"
dependencies = [
"once_cell",
"scoped-tls",
@ -2835,7 +2835,7 @@ dependencies = [
[[package]]
name = "swc_ecmascript"
version = "0.47.0"
version = "0.48.0"
dependencies = [
"swc_ecma_ast",
"swc_ecma_codegen",
@ -2933,7 +2933,7 @@ dependencies = [
[[package]]
name = "testing"
version = "0.11.0"
version = "0.12.0"
dependencies = [
"ansi_term 0.12.1",
"difference",

View File

@ -9,7 +9,7 @@ edition = "2018"
license = "Apache-2.0/MIT"
name = "swc"
repository = "https://github.com/swc-project/swc.git"
version = "0.31.0"
version = "0.32.0"
[lib]
name = "swc"
@ -29,15 +29,15 @@ serde = {version = "1", features = ["derive"]}
serde_json = "1"
sourcemap = "6"
swc_atoms = {version = "0.2", path = "./atoms"}
swc_bundler = {version = "0.47.0", path = "./bundler"}
swc_bundler = {version = "0.48.0", path = "./bundler"}
swc_common = {version = "0.11.0", path = "./common", features = ["sourcemap", "concurrent"]}
swc_ecma_ast = {version = "0.49.0", path = "./ecmascript/ast"}
swc_ecma_codegen = {version = "0.63.0", path = "./ecmascript/codegen"}
swc_ecma_ext_transforms = {version = "0.22.0", path = "./ecmascript/ext-transforms"}
swc_ecma_loader = {version = "0.11.0", path = "./ecmascript/loader", features = ["lru", "node", "tsc"]}
swc_ecma_parser = {version = "0.64.0", path = "./ecmascript/parser"}
swc_ecma_preset_env = {version = "0.30.0", path = "./ecmascript/preset-env"}
swc_ecma_transforms = {version = "0.60.0", path = "./ecmascript/transforms", features = [
swc_ecma_codegen = {version = "0.64.0", path = "./ecmascript/codegen"}
swc_ecma_ext_transforms = {version = "0.23.0", path = "./ecmascript/ext-transforms"}
swc_ecma_loader = {version = "0.12.0", path = "./ecmascript/loader", features = ["lru", "node", "tsc"]}
swc_ecma_parser = {version = "0.65.0", path = "./ecmascript/parser"}
swc_ecma_preset_env = {version = "0.31.0", path = "./ecmascript/preset-env"}
swc_ecma_transforms = {version = "0.61.0", path = "./ecmascript/transforms", features = [
"compat",
"module",
"optimization",
@ -45,14 +45,14 @@ swc_ecma_transforms = {version = "0.60.0", path = "./ecmascript/transforms", fea
"react",
"typescript",
]}
swc_ecma_utils = {version = "0.40.0", path = "./ecmascript/utils"}
swc_ecma_utils = {version = "0.41.0", path = "./ecmascript/utils"}
swc_ecma_visit = {version = "0.35.0", path = "./ecmascript/visit"}
swc_node_base = {version = "0.2.0", path = "./node/base"}
swc_visit = {version = "0.2.3", path = "./visit"}
[dev-dependencies]
rayon = "1"
testing = {version = "0.11.0", path = "./testing"}
testing = {version = "0.12.0", path = "./testing"}
walkdir = "2"
[[example]]

View File

@ -9,7 +9,7 @@ include = ["Cargo.toml", "build.rs", "src/**/*.rs", "src/**/*.js"]
license = "Apache-2.0/MIT"
name = "swc_bundler"
repository = "https://github.com/swc-project/swc.git"
version = "0.47.0"
version = "0.48.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[features]
@ -34,11 +34,11 @@ retain_mut = "0.1.2"
swc_atoms = {version = "0.2.4", path = "../atoms"}
swc_common = {version = "0.11.0", path = "../common"}
swc_ecma_ast = {version = "0.49.0", path = "../ecmascript/ast"}
swc_ecma_codegen = {version = "0.63.0", path = "../ecmascript/codegen"}
swc_ecma_loader = {version = "0.11.0", path = "../ecmascript/loader"}
swc_ecma_parser = {version = "0.64.0", path = "../ecmascript/parser"}
swc_ecma_transforms = {version = "0.60.0", path = "../ecmascript/transforms", features = ["optimization"]}
swc_ecma_utils = {version = "0.40.0", path = "../ecmascript/utils"}
swc_ecma_codegen = {version = "0.64.0", path = "../ecmascript/codegen"}
swc_ecma_loader = {version = "0.12.0", path = "../ecmascript/loader"}
swc_ecma_parser = {version = "0.65.0", path = "../ecmascript/parser"}
swc_ecma_transforms = {version = "0.61.0", path = "../ecmascript/transforms", features = ["optimization"]}
swc_ecma_utils = {version = "0.41.0", path = "../ecmascript/utils"}
swc_ecma_visit = {version = "0.35.0", path = "../ecmascript/visit"}
[dev-dependencies]
@ -46,8 +46,8 @@ hex = "0.4"
ntest = "0.7.2"
reqwest = {version = "0.10.8", features = ["blocking"]}
sha-1 = "0.9"
swc_ecma_transforms = {version = "0.60.0", path = "../ecmascript/transforms", features = ["react", "typescript"]}
swc_ecma_transforms = {version = "0.61.0", path = "../ecmascript/transforms", features = ["react", "typescript"]}
tempfile = "3.1.0"
testing = {version = "0.11.0", path = "../testing"}
testing = {version = "0.12.0", path = "../testing"}
url = "2.1.1"
walkdir = "2"

View File

@ -1160,7 +1160,7 @@ impl Visit for ExportCollector {
}
}
#[testing::fixture("deno-exec/**/entry.ts")]
#[testing::fixture("tests/deno-exec/**/entry.ts")]
fn exec(input: PathBuf) {
let dir = tempfile::tempdir().expect("failed to crate temp file");
let path = dir.path().join("main.js");

View File

@ -6,7 +6,7 @@ edition = "2018"
license = "Apache-2.0/MIT"
name = "swc_ecmascript"
repository = "https://github.com/swc-project/swc.git"
version = "0.47.0"
version = "0.48.0"
[package.metadata.docs.rs]
all-features = true
@ -32,12 +32,12 @@ typescript = ["typescript-parser", "swc_ecma_transforms/typescript"]
[dependencies]
swc_ecma_ast = {version = "0.49.0", path = "./ast"}
swc_ecma_codegen = {version = "0.63.0", path = "./codegen", optional = true}
swc_ecma_dep_graph = {version = "0.32.0", path = "./dep-graph", optional = true}
swc_ecma_minifier = {version = "0.13.0", path = "./minifier", optional = true}
swc_ecma_parser = {version = "0.64.0", path = "./parser", optional = true, default-features = false}
swc_ecma_transforms = {version = "0.60.0", path = "./transforms", optional = true}
swc_ecma_utils = {version = "0.40.0", path = "./utils", optional = true}
swc_ecma_codegen = {version = "0.64.0", path = "./codegen", optional = true}
swc_ecma_dep_graph = {version = "0.33.0", path = "./dep-graph", optional = true}
swc_ecma_minifier = {version = "0.14.0", path = "./minifier", optional = true}
swc_ecma_parser = {version = "0.65.0", path = "./parser", optional = true, default-features = false}
swc_ecma_transforms = {version = "0.61.0", path = "./transforms", optional = true}
swc_ecma_utils = {version = "0.41.0", path = "./utils", optional = true}
swc_ecma_visit = {version = "0.35.0", path = "./visit", optional = true}
[dev-dependencies]

View File

@ -7,7 +7,7 @@ include = ["Cargo.toml", "src/**/*.rs"]
license = "Apache-2.0/MIT"
name = "swc_ecma_codegen"
repository = "https://github.com/swc-project/swc.git"
version = "0.63.0"
version = "0.64.0"
[dependencies]
bitflags = "1"
@ -17,8 +17,8 @@ swc_atoms = {version = "0.2", path = "../../atoms"}
swc_common = {version = "0.11.0", path = "../../common"}
swc_ecma_ast = {version = "0.49.0", path = "../ast"}
swc_ecma_codegen_macros = {version = "0.5.2", path = "./macros"}
swc_ecma_parser = {version = "0.64.0", path = "../parser"}
swc_ecma_parser = {version = "0.65.0", path = "../parser"}
[dev-dependencies]
swc_common = {version = "0.11.0", path = "../../common", features = ["sourcemap"]}
testing = {version = "0.11.0", path = "../../testing"}
testing = {version = "0.12.0", path = "../../testing"}

View File

@ -6,7 +6,7 @@ use swc_ecma_codegen::{text_writer::JsWriter, Emitter};
use swc_ecma_parser::{lexer::Lexer, Parser, Syntax};
use testing::{run_test2, NormalizedOutput};
#[testing::fixture("fixture/**/input.ts")]
#[testing::fixture("tests/fixture/**/input.ts")]
fn test_fixture(input: PathBuf) {
let dir = input.parent().unwrap();
let output = dir.join(format!(

View File

@ -6,7 +6,7 @@ edition = "2018"
license = "Apache-2.0/MIT"
name = "swc_ecma_dep_graph"
repository = "https://github.com/swc-project/swc.git"
version = "0.32.0"
version = "0.33.0"
[dependencies]
swc_atoms = {version = "0.2", path = "../../atoms"}
@ -15,5 +15,5 @@ swc_ecma_ast = {version = "0.49.0", path = "../ast"}
swc_ecma_visit = {version = "0.35.0", path = "../visit"}
[dev-dependencies]
swc_ecma_parser = {version = "0.64.0", path = "../parser"}
testing = {version = "0.11.0", path = "../../testing"}
swc_ecma_parser = {version = "0.65.0", path = "../parser"}
testing = {version = "0.12.0", path = "../../testing"}

View File

@ -5,7 +5,7 @@ documentation = "https://rustdoc.swc.rs/swc_ecma_ext_transforms/"
edition = "2018"
license = "Apache-2.0/MIT"
name = "swc_ecma_ext_transforms"
version = "0.22.0"
version = "0.23.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
@ -14,6 +14,6 @@ phf = {version = "0.8.0", features = ["macros"]}
swc_atoms = {version = "0.2", path = "../../atoms"}
swc_common = {version = "0.11.0", path = "../../common"}
swc_ecma_ast = {version = "0.49.0", path = "../ast"}
swc_ecma_parser = {version = "0.64.0", path = "../parser"}
swc_ecma_utils = {version = "0.40.0", path = "../utils"}
swc_ecma_parser = {version = "0.65.0", path = "../parser"}
swc_ecma_utils = {version = "0.41.0", path = "../utils"}
swc_ecma_visit = {version = "0.35.0", path = "../visit"}

View File

@ -5,7 +5,7 @@ documentation = "https://rustdoc.swc.rs/jsdoc/"
edition = "2018"
license = "Apache-2.0/MIT"
name = "jsdoc"
version = "0.32.0"
version = "0.33.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
@ -19,6 +19,6 @@ swc_common = {version = "0.11.0", path = "../../common"}
anyhow = "1"
dashmap = "4.0.2"
swc_ecma_ast = {version = "0.49.0", path = "../ast"}
swc_ecma_parser = {version = "0.64.0", path = "../parser"}
testing = {version = "0.11.0", path = "../../testing"}
swc_ecma_parser = {version = "0.65.0", path = "../parser"}
testing = {version = "0.12.0", path = "../../testing"}
walkdir = "2"

View File

@ -6,7 +6,7 @@ edition = "2018"
license = "Apache-2.0/MIT"
name = "swc_ecma_loader"
repository = "https://github.com/swc-project/swc.git"
version = "0.11.1"
version = "0.12.0"
[package.metadata.docs.rs]
all-features = true
@ -33,7 +33,7 @@ swc_ecma_ast = {version = "0.49.0", path = "../ast"}
swc_ecma_visit = {version = "0.35.0", path = "../visit"}
[dev-dependencies]
testing = {version = "0.11.0", path = "../../testing"}
testing = {version = "0.12.0", path = "../../testing"}
[target.'cfg(windows)'.dependencies]
normpath = {version = "0.2", optional = true}

View File

@ -7,7 +7,7 @@ include = ["Cargo.toml", "src/**/*.rs", "src/lists/*.json"]
license = "Apache-2.0/MIT"
name = "swc_ecma_minifier"
repository = "https://github.com/swc-project/swc.git"
version = "0.13.0"
version = "0.14.0"
[features]
debug = []
@ -25,16 +25,16 @@ serde_regex = "1.1.0"
swc_atoms = {version = "0.2", path = "../../atoms"}
swc_common = {version = "0.11.0", path = "../../common"}
swc_ecma_ast = {version = "0.49.0", path = "../ast"}
swc_ecma_codegen = {version = "0.63.0", path = "../codegen"}
swc_ecma_parser = {version = "0.64.0", path = "../parser"}
swc_ecma_transforms = {version = "0.60.0", path = "../transforms/", features = ["optimization"]}
swc_ecma_transforms_base = {version = "0.23.0", path = "../transforms/base"}
swc_ecma_utils = {version = "0.40.0", path = "../utils"}
swc_ecma_codegen = {version = "0.64.0", path = "../codegen"}
swc_ecma_parser = {version = "0.65.0", path = "../parser"}
swc_ecma_transforms = {version = "0.61.0", path = "../transforms/", features = ["optimization"]}
swc_ecma_transforms_base = {version = "0.24.0", path = "../transforms/base"}
swc_ecma_utils = {version = "0.41.0", path = "../utils"}
swc_ecma_visit = {version = "0.35.0", path = "../visit"}
[dev-dependencies]
ansi_term = "0.12.1"
anyhow = "1"
pretty_assertions = "0.6.1"
testing = {version = "0.11.0", path = "../../testing"}
testing = {version = "0.12.0", path = "../../testing"}
walkdir = "2.3.1"

View File

@ -199,7 +199,7 @@ fn stdout_of(code: &str) -> Result<String, Error> {
Ok(String::from_utf8_lossy(&actual_output.stdout).to_string())
}
#[testing::fixture("compress/fixture/**/input.js")]
#[testing::fixture("tests/compress/fixture/**/input.js")]
fn base_fixture(input: PathBuf) {
let dir = input.parent().unwrap();
let config = dir.join("config.json");
@ -229,7 +229,7 @@ fn base_fixture(input: PathBuf) {
}
/// Tests used to prevent regressions.
#[testing::fixture("compress/exec/**/input.js")]
#[testing::fixture("tests/compress/exec/**/input.js")]
fn base_exec(input: PathBuf) {
let dir = input.parent().unwrap();
let config = dir.join("config.json");
@ -266,7 +266,7 @@ fn base_exec(input: PathBuf) {
}
/// Tests ported from terser.
#[testing::fixture("terser/compress/**/input.js")]
#[testing::fixture("tests/terser/compress/**/input.js")]
fn fixture(input: PathBuf) {
if is_ignored(&input) {
return;

View File

@ -13,7 +13,7 @@ use testing::assert_eq;
use testing::run_test2;
use testing::DebugUsingDisplay;
#[testing::fixture("hygiene/identical/**/*.js")]
#[testing::fixture("tests/hygiene/identical/**/*.js")]
fn identical(input: PathBuf) {
run_test2(false, |cm, handler| {
let fm = cm.load_file(&input).expect("failed to load input.js");

View File

@ -7,7 +7,7 @@ include = ["Cargo.toml", "src/**/*.rs", "examples/**/*.rs"]
license = "Apache-2.0/MIT"
name = "swc_ecma_parser"
repository = "https://github.com/swc-project/swc.git"
version = "0.64.0"
version = "0.65.0"
[package.metadata.docs.rs]
all-features = true
@ -35,7 +35,7 @@ unicode-xid = "0.2"
env_logger = "0.7"
pretty_assertions = "0.6"
serde_json = "1"
testing = {version = "0.11.0", path = "../../testing"}
testing = {version = "0.12.0", path = "../../testing"}
walkdir = "2"
[[example]]

View File

@ -18,9 +18,9 @@ use swc_ecma_visit::VisitWith;
use testing::fixture;
use testing::Tester;
#[fixture("comments/**/input.js")]
#[fixture("comments/**/input.ts")]
#[fixture("comments/**/input.tsx")]
#[fixture("tests/comments/**/input.js")]
#[fixture("tests/comments/**/input.ts")]
#[fixture("tests/comments/**/input.tsx")]
fn test(input: PathBuf) {
let ext = input.extension().unwrap();
let ext = ext.to_string_lossy();

View File

@ -17,8 +17,8 @@ use testing::StdErr;
#[path = "common/mod.rs"]
mod common;
#[testing::fixture("typescript/**/*.ts")]
#[testing::fixture("typescript/**/*.tsx")]
#[testing::fixture("tests/typescript/**/*.ts")]
#[testing::fixture("tests/typescript/**/*.tsx")]
fn spec(file: PathBuf) {
let file_name = file
.display()
@ -196,7 +196,7 @@ where
output
}
#[testing::fixture("typescript-errors/**/*.ts")]
#[testing::fixture("tests/typescript-errors/**/*.ts")]
fn errors(file: PathBuf) {
let file_name = file.display().to_string();

View File

@ -5,7 +5,7 @@ documentation = "https://rustdoc.swc.rs/swc_ecma_preset_env/"
edition = "2018"
license = "Apache-2.0/MIT"
name = "swc_ecma_preset_env"
version = "0.30.0"
version = "0.31.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
@ -22,13 +22,13 @@ string_enum = {version = "0.3.1", path = "../../macros/string_enum"}
swc_atoms = {version = "0.2", path = "../../atoms"}
swc_common = {version = "0.11.0", path = "../../common"}
swc_ecma_ast = {version = "0.49.0", path = "../ast"}
swc_ecma_transforms = {version = "0.60.0", path = "../transforms", features = ["compat", "proposal"]}
swc_ecma_utils = {version = "0.40.0", path = "../utils"}
swc_ecma_transforms = {version = "0.61.0", path = "../transforms", features = ["compat", "proposal"]}
swc_ecma_utils = {version = "0.41.0", path = "../utils"}
swc_ecma_visit = {version = "0.35.0", path = "../visit"}
walkdir = "2"
[dev-dependencies]
pretty_assertions = "0.6"
swc_ecma_codegen = {version = "0.63.0", path = "../codegen"}
swc_ecma_parser = {version = "0.64.0", path = "../parser"}
testing = {version = "0.11.0", path = "../../testing"}
swc_ecma_codegen = {version = "0.64.0", path = "../codegen"}
swc_ecma_parser = {version = "0.65.0", path = "../parser"}
testing = {version = "0.12.0", path = "../../testing"}

View File

@ -6,7 +6,7 @@ edition = "2018"
license = "Apache-2.0/MIT"
name = "swc_ecma_transforms"
repository = "https://github.com/swc-project/swc.git"
version = "0.60.0"
version = "0.61.0"
[package.metadata.docs.rs]
all-features = true
@ -24,23 +24,23 @@ typescript = ["swc_ecma_transforms_typescript"]
swc_atoms = {version = "0.2.0", path = "../../atoms"}
swc_common = {version = "0.11.0", path = "../../common"}
swc_ecma_ast = {version = "0.49.0", path = "../ast"}
swc_ecma_parser = {version = "0.64.0", path = "../parser"}
swc_ecma_transforms_base = {version = "0.23.0", path = "./base"}
swc_ecma_transforms_compat = {version = "0.26.0", path = "./compat", optional = true}
swc_ecma_transforms_module = {version = "0.27.0", path = "./module", optional = true}
swc_ecma_transforms_optimization = {version = "0.30.0", path = "./optimization", optional = true}
swc_ecma_transforms_proposal = {version = "0.27.0", path = "./proposal", optional = true}
swc_ecma_transforms_react = {version = "0.28.0", path = "./react", optional = true}
swc_ecma_transforms_typescript = {version = "0.29.0", path = "./typescript", optional = true}
swc_ecma_utils = {version = "0.40.0", path = "../utils"}
swc_ecma_parser = {version = "0.65.0", path = "../parser"}
swc_ecma_transforms_base = {version = "0.24.0", path = "./base"}
swc_ecma_transforms_compat = {version = "0.27.0", path = "./compat", optional = true}
swc_ecma_transforms_module = {version = "0.28.0", path = "./module", optional = true}
swc_ecma_transforms_optimization = {version = "0.31.0", path = "./optimization", optional = true}
swc_ecma_transforms_proposal = {version = "0.28.0", path = "./proposal", optional = true}
swc_ecma_transforms_react = {version = "0.29.0", path = "./react", optional = true}
swc_ecma_transforms_typescript = {version = "0.30.0", path = "./typescript", optional = true}
swc_ecma_utils = {version = "0.41.0", path = "../utils"}
swc_ecma_visit = {version = "0.35.0", path = "../visit"}
unicode-xid = "0.2"
[dev-dependencies]
pretty_assertions = "0.6"
sourcemap = "6"
swc_ecma_codegen = {version = "0.63.0", path = "../codegen"}
swc_ecma_transforms_testing = {version = "0.23.0", path = "./testing"}
swc_ecma_codegen = {version = "0.64.0", path = "../codegen"}
swc_ecma_transforms_testing = {version = "0.24.0", path = "./testing"}
tempfile = "3"
testing = {version = "0.11.0", path = "../../testing"}
testing = {version = "0.12.0", path = "../../testing"}
walkdir = "2"

View File

@ -6,7 +6,7 @@ edition = "2018"
license = "Apache-2.0/MIT"
name = "swc_ecma_transforms_base"
repository = "https://github.com/swc-project/swc.git"
version = "0.23.1"
version = "0.24.0"
[dependencies]
fxhash = "0.2.1"
@ -17,10 +17,10 @@ smallvec = "1.6.0"
swc_atoms = {version = "0.2", path = "../../../atoms"}
swc_common = {version = "0.11.0", path = "../../../common"}
swc_ecma_ast = {version = "0.49.0", path = "../../ast"}
swc_ecma_parser = {version = "0.64.0", path = "../../parser"}
swc_ecma_utils = {version = "0.40.0", path = "../../utils"}
swc_ecma_parser = {version = "0.65.0", path = "../../parser"}
swc_ecma_utils = {version = "0.41.0", path = "../../utils"}
swc_ecma_visit = {version = "0.35.0", path = "../../visit"}
[dev-dependencies]
swc_ecma_codegen = {version = "0.63.0", path = "../../codegen"}
testing = {version = "0.11.0", path = "../../../testing"}
swc_ecma_codegen = {version = "0.64.0", path = "../../codegen"}
testing = {version = "0.12.0", path = "../../../testing"}

View File

@ -75,14 +75,14 @@ where
.unwrap();
}
#[fixture("resolver/**/input.js")]
#[fixture("tests/resolver/**/input.js")]
fn test_resolver(input: PathBuf) {
run(Syntax::default(), &input, || {
chain!(resolver(), hygiene(), fixer(None))
});
}
#[fixture("ts-resolver/**/input.ts")]
#[fixture("tests/ts-resolver/**/input.ts")]
fn test_ts_resolver(input: PathBuf) {
run(Syntax::Typescript(Default::default()), &input, || {
let top_level_mark = Mark::fresh(Mark::root());

View File

@ -15,8 +15,8 @@ use swc_ecma_visit::Visit;
use swc_ecma_visit::VisitWith;
use testing::fixture;
#[fixture("../../../parser/tests/typescript/**/*.ts")]
#[fixture("../../../parser/tests/typescript/**/*.tsx")]
#[fixture("../../parser/tests/typescript/**/*.ts")]
#[fixture("../../parser/tests/typescript/**/*.tsx")]
fn no_empty(input: PathBuf) {
eprintln!("{}", input.display());

View File

@ -6,12 +6,12 @@ edition = "2018"
license = "Apache-2.0/MIT"
name = "swc_ecma_transforms_classes"
repository = "https://github.com/swc-project/swc.git"
version = "0.9.0"
version = "0.10.0"
[dependencies]
swc_atoms = {version = "0.2.6", path = "../../../atoms"}
swc_common = {version = "0.11.0", path = "../../../common"}
swc_ecma_ast = {version = "0.49.0", path = "../../ast"}
swc_ecma_transforms_base = {version = "0.23.0", path = "../base"}
swc_ecma_utils = {version = "0.40.0", path = "../../utils"}
swc_ecma_transforms_base = {version = "0.24.0", path = "../base"}
swc_ecma_utils = {version = "0.41.0", path = "../../utils"}
swc_ecma_visit = {version = "0.35.0", path = "../../visit"}

View File

@ -6,7 +6,7 @@ edition = "2018"
license = "Apache-2.0/MIT"
name = "swc_ecma_transforms_compat"
repository = "https://github.com/swc-project/swc.git"
version = "0.26.0"
version = "0.27.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
@ -21,13 +21,13 @@ smallvec = "1.6.0"
swc_atoms = {version = "0.2.5", path = "../../../atoms"}
swc_common = {version = "0.11.0", path = "../../../common"}
swc_ecma_ast = {version = "0.49.0", path = "../../ast"}
swc_ecma_transforms_base = {version = "0.23.0", path = "../base"}
swc_ecma_transforms_classes = {version = "0.9.0", path = "../classes"}
swc_ecma_transforms_base = {version = "0.24.0", path = "../base"}
swc_ecma_transforms_classes = {version = "0.10.0", path = "../classes"}
swc_ecma_transforms_macros = {version = "0.2.1", path = "../macros"}
swc_ecma_utils = {version = "0.40.0", path = "../../utils"}
swc_ecma_utils = {version = "0.41.0", path = "../../utils"}
swc_ecma_visit = {version = "0.35.0", path = "../../visit"}
[dev-dependencies]
swc_ecma_parser = {version = "0.64.0", path = "../../parser"}
swc_ecma_transforms_testing = {version = "0.23.0", path = "../testing"}
testing = {version = "0.11.0", path = "../../../testing"}
swc_ecma_parser = {version = "0.65.0", path = "../../parser"}
swc_ecma_transforms_testing = {version = "0.24.0", path = "../testing"}
testing = {version = "0.12.0", path = "../../../testing"}

View File

@ -6,7 +6,7 @@ edition = "2018"
license = "Apache-2.0/MIT"
name = "swc_ecma_transforms_module"
repository = "https://github.com/swc-project/swc.git"
version = "0.27.0"
version = "0.28.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
@ -19,13 +19,13 @@ serde = {version = "1.0.118", features = ["derive"]}
swc_atoms = {version = "0.2", path = "../../../atoms"}
swc_common = {version = "0.11.0", path = "../../../common"}
swc_ecma_ast = {version = "0.49.0", path = "../../ast"}
swc_ecma_loader = {version = "0.11.0", path = "../../loader", features = ["node"]}
swc_ecma_parser = {version = "0.64.0", path = "../../parser"}
swc_ecma_transforms_base = {version = "0.23.0", path = "../base"}
swc_ecma_utils = {version = "0.40.0", path = "../../utils"}
swc_ecma_loader = {version = "0.12.0", path = "../../loader", features = ["node"]}
swc_ecma_parser = {version = "0.65.0", path = "../../parser"}
swc_ecma_transforms_base = {version = "0.24.0", path = "../base"}
swc_ecma_utils = {version = "0.41.0", path = "../../utils"}
swc_ecma_visit = {version = "0.35.0", path = "../../visit"}
[dev-dependencies]
swc_ecma_transforms_compat = {version = "0.26.0", path = "../compat"}
swc_ecma_transforms_testing = {version = "0.23.0", path = "../testing/"}
testing = {version = "0.11.0", path = "../../../testing/"}
swc_ecma_transforms_compat = {version = "0.27.0", path = "../compat"}
swc_ecma_transforms_testing = {version = "0.24.0", path = "../testing/"}
testing = {version = "0.12.0", path = "../../../testing/"}

View File

@ -6,7 +6,7 @@ edition = "2018"
license = "Apache-2.0/MIT"
name = "swc_ecma_transforms_optimization"
repository = "https://github.com/swc-project/swc.git"
version = "0.30.0"
version = "0.31.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
@ -20,16 +20,16 @@ serde_json = "1.0.61"
swc_atoms = {version = "0.2", path = "../../../atoms"}
swc_common = {version = "0.11.0", path = "../../../common"}
swc_ecma_ast = {version = "0.49.0", path = "../../ast"}
swc_ecma_parser = {version = "0.64.0", path = "../../parser"}
swc_ecma_transforms_base = {version = "0.23.0", path = "../base"}
swc_ecma_utils = {version = "0.40.0", path = "../../utils"}
swc_ecma_parser = {version = "0.65.0", path = "../../parser"}
swc_ecma_transforms_base = {version = "0.24.0", path = "../base"}
swc_ecma_utils = {version = "0.41.0", path = "../../utils"}
swc_ecma_visit = {version = "0.35.0", path = "../../visit"}
[dev-dependencies]
swc_ecma_transforms_compat = {version = "0.26.0", path = "../compat"}
swc_ecma_transforms_module = {version = "0.27.0", path = "../module"}
swc_ecma_transforms_proposal = {version = "0.27.0", path = "../proposal"}
swc_ecma_transforms_react = {version = "0.28.0", path = "../react"}
swc_ecma_transforms_testing = {version = "0.23.0", path = "../testing"}
swc_ecma_transforms_typescript = {version = "0.29.0", path = "../typescript"}
testing = {version = "0.11.0", path = "../../../testing"}
swc_ecma_transforms_compat = {version = "0.27.0", path = "../compat"}
swc_ecma_transforms_module = {version = "0.28.0", path = "../module"}
swc_ecma_transforms_proposal = {version = "0.28.0", path = "../proposal"}
swc_ecma_transforms_react = {version = "0.29.0", path = "../react"}
swc_ecma_transforms_testing = {version = "0.24.0", path = "../testing"}
swc_ecma_transforms_typescript = {version = "0.30.0", path = "../typescript"}
testing = {version = "0.12.0", path = "../../../testing"}

View File

@ -6,7 +6,7 @@ use swc_ecma_transforms_optimization::simplify::dce::dce;
use swc_ecma_transforms_optimization::simplify::expr_simplifier;
use swc_ecma_transforms_testing::test_fixture;
#[testing::fixture("dce/**/input.js")]
#[testing::fixture("tests/dce/**/input.js")]
fn dce_single_pass(input: PathBuf) {
let output = input.with_file_name("output.js");
@ -22,7 +22,7 @@ fn dce_single_pass(input: PathBuf) {
);
}
#[testing::fixture("dce/**/input.js")]
#[testing::fixture("tests/dce/**/input.js")]
fn dce_repeated(input: PathBuf) {
let output = input.with_file_name("output.full.js");
@ -38,7 +38,7 @@ fn dce_repeated(input: PathBuf) {
);
}
#[testing::fixture("expr-simplifier/**/input.js")]
#[testing::fixture("tests/expr-simplifier/**/input.js")]
fn expr(input: PathBuf) {
let output = input.with_file_name("output.js");

View File

@ -6,7 +6,7 @@ edition = "2018"
license = "Apache-2.0/MIT"
name = "swc_ecma_transforms_proposal"
repository = "https://github.com/swc-project/swc.git"
version = "0.27.0"
version = "0.28.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
@ -22,14 +22,14 @@ smallvec = "1.6.0"
swc_atoms = {version = "0.2", path = "../../../atoms"}
swc_common = {version = "0.11.0", path = "../../../common"}
swc_ecma_ast = {version = "0.49.0", path = "../../ast"}
swc_ecma_loader = {version = "0.11.0", path = "../../loader", optional = true}
swc_ecma_parser = {version = "0.64.0", path = "../../parser"}
swc_ecma_transforms_base = {version = "0.23.0", path = "../base"}
swc_ecma_transforms_classes = {version = "0.9.0", path = "../classes"}
swc_ecma_utils = {version = "0.40.0", path = "../../utils"}
swc_ecma_loader = {version = "0.12.0", path = "../../loader", optional = true}
swc_ecma_parser = {version = "0.65.0", path = "../../parser"}
swc_ecma_transforms_base = {version = "0.24.0", path = "../base"}
swc_ecma_transforms_classes = {version = "0.10.0", path = "../classes"}
swc_ecma_utils = {version = "0.41.0", path = "../../utils"}
swc_ecma_visit = {version = "0.35.0", path = "../../visit"}
[dev-dependencies]
swc_ecma_transforms_compat = {version = "0.26.0", path = "../compat"}
swc_ecma_transforms_module = {version = "0.27.0", path = "../module"}
swc_ecma_transforms_testing = {version = "0.23.0", path = "../testing"}
swc_ecma_transforms_compat = {version = "0.27.0", path = "../compat"}
swc_ecma_transforms_module = {version = "0.28.0", path = "../module"}
swc_ecma_transforms_testing = {version = "0.24.0", path = "../testing"}

View File

@ -7,7 +7,7 @@ include = ["Cargo.toml", "src/**/*.rs"]
license = "Apache-2.0/MIT"
name = "swc_ecma_transforms_react"
repository = "https://github.com/swc-project/swc.git"
version = "0.28.0"
version = "0.29.0"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
@ -22,14 +22,14 @@ string_enum = {version = "0.3.1", path = "../../../macros/string_enum"}
swc_atoms = {version = "0.2", path = "../../../atoms"}
swc_common = {version = "0.11.0", path = "../../../common"}
swc_ecma_ast = {version = "0.49.0", path = "../../ast"}
swc_ecma_parser = {version = "0.64.0", path = "../../parser"}
swc_ecma_transforms_base = {version = "0.23.0", path = "../base"}
swc_ecma_utils = {version = "0.40.0", path = "../../utils"}
swc_ecma_parser = {version = "0.65.0", path = "../../parser"}
swc_ecma_transforms_base = {version = "0.24.0", path = "../base"}
swc_ecma_utils = {version = "0.41.0", path = "../../utils"}
swc_ecma_visit = {version = "0.35.0", path = "../../visit"}
[dev-dependencies]
swc_ecma_codegen = {version = "0.63.0", path = "../../codegen/"}
swc_ecma_transforms_compat = {version = "0.26.0", path = "../compat/"}
swc_ecma_transforms_module = {version = "0.27.0", path = "../module"}
swc_ecma_transforms_testing = {version = "0.23.0", path = "../testing/"}
testing = {version = "0.11.0", path = "../../../testing"}
swc_ecma_codegen = {version = "0.64.0", path = "../../codegen/"}
swc_ecma_transforms_compat = {version = "0.27.0", path = "../compat/"}
swc_ecma_transforms_module = {version = "0.28.0", path = "../module"}
swc_ecma_transforms_testing = {version = "0.24.0", path = "../testing/"}
testing = {version = "0.12.0", path = "../../../testing"}

View File

@ -1294,7 +1294,7 @@ exports.default = RandomComponent;
"#
);
#[testing::fixture("fixture/**/input.js")]
#[testing::fixture("tests/jsx/fixture/**/input.js")]
fn fixture(input: PathBuf) {
let mut output = input.with_file_name("output.js");
if !output.exists() {

Some files were not shown because too many files have changed in this diff Show More