feat: rework typescript generator & add suite #134
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
branches: [ main ] | |
# Allows you to run this workflow manually from the Actions tab | |
workflow_dispatch: | |
env: | |
CARGO_TERM_COLOR: always | |
CARGO_INCREMENTAL: 0 | |
CARGO_NET_RETRY: 10 | |
RUST_BACKTRACE: short | |
RUSTFLAGS: "-D warnings" | |
RUSTUP_MAX_RETRIES: 10 | |
jobs: | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
# will install toolchain specified in rust-toolchain | |
- name: Install Rust toolchain | |
run: | | |
rustup show | |
- name: Version Information | |
run: | | |
rustc --version | |
cargo --version | |
rustup --version | |
cargo fmt -- --version | |
cargo clippy -- --version | |
- name: Cache Dependencies | |
uses: Swatinem/rust-cache@v2 | |
- name: Lint (rustfmt) | |
run: | | |
cargo fmt -- --check | |
- name: Lint (clippy) | |
run: | | |
cargo clippy --locked --workspace --all-features --all-targets | |
tests: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
# will install toolchain specified in rust-toolchain | |
- name: Install Rust toolchain | |
run: | | |
rustup show | |
- name: Setup Additional Languages (python3) | |
uses: actions/setup-python@v4 | |
with: | |
python-version: '3.9' | |
- name: Setup Additional Languages (python3 packages) | |
run: | | |
python3 -m pip install pyre-check==0.0.59 | |
python3 -m pip install numpy==1.20.1 | |
echo '/github/home/.local/bin' >> $GITHUB_PATH | |
- name: Setup Additional Languages (.Net) | |
uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: | | |
2.1.x | |
3.1.x | |
- name: Setup Additional Languages (golang) | |
uses: actions/setup-go@v3 | |
with: | |
go-version: '~1.15.0' | |
- name: Setup Additional Languages (deno) | |
uses: denoland/setup-deno@v1 | |
with: | |
deno-version: v1.x | |
- name: Setup Additional Languages (dart) | |
uses: dart-lang/setup-dart@v1 | |
with: | |
sdk: 2.14.0 | |
- name: Setup Additional Languages (swift) | |
uses: swift-actions/setup-swift@v1 | |
with: | |
# older swift versions are having gpg issues https://github.com/swift-actions/setup-swift/issues/520 | |
swift-version: "5.7" | |
- name: Setup Additional Languages (ocaml) | |
uses: ocaml/setup-ocaml@v2 | |
with: | |
ocaml-compiler: 5.0 | |
opam-disable-sandboxing: true | |
- name: Setup Additional Languages (ocaml packages) | |
run: | | |
eval $(opam env) | |
opam install -y stdint uutf ppxlib | |
- name: Version Information | |
run: | | |
rustc --version | |
cargo --version | |
rustup --version | |
python3 --version | |
pyre --version | |
clang++ --version | |
javac -version | |
go version | |
dotnet --list-sdks | |
deno --version | |
dart --version | |
swift --version | |
eval $(opam env) | |
ocaml --version | |
- name: Compile (dev tests) | |
run: cargo test --no-run --locked | |
# It's faster to `test` before `build` according to | |
# https://github.com/rust-lang/rust-analyzer/blob/97b357e41b99ee3d5dd72a1640f6c74e4f4d6b64/.github/workflows/ci.yaml#L55 | |
- name: Compile (dev serde-reflection) | |
run: cargo build --locked --all-targets | |
- name: Test (dev) | |
run: | | |
eval $(opam env) | |
cargo test | |
- name: Compile (release tests) | |
run: cargo test --no-run --locked --release --all-features | |
- name: Compile (release serde-reflection) | |
run: cargo build --locked --release --all-targets --all-features | |
- name: Test (release) | |
run: | | |
eval $(opam env) | |
cargo test --locked --release --all-features |