Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 14 additions & 3 deletions .github/workflows/nightly_build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,16 +16,17 @@ jobs:
- target: x86_64-unknown-linux-gnu
os: ubuntu-latest
binary_extension: ""
- target: x86_64-apple-darwin
os: macos-13
binary_extension: ""
arch : X64
- target: aarch64-apple-darwin
os: macos-14
arch : ARM64
- target: aarch64-unknown-linux-gnu
os: ubuntu-24.04-arm
arch : ARM64
binary_extension: ""
- target: x86_64-pc-windows-msvc
os: windows-latest
arch : X64
binary_extension: ".exe"
runs-on: ${{ matrix.os }}
steps:
Expand All @@ -38,6 +39,16 @@ jobs:
toolchain: stable
targets: ${{ matrix.target }}

- name: Restore cache
id: cache
uses: actions/cache@v4
with:
path: |
~/.cargo/registry
~/.cargo/git
target
key: ${{ matrix.os }}-${{ matrix.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}

- name: Build
run: cargo build --target ${{ matrix.target }} --release --locked --bin boa

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/pull_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
target
~/.cargo/git
~/.cargo/registry
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}
- uses: boa-dev/[email protected]
with:
token: ${{ secrets.GITHUB_TOKEN }}
Expand Down
22 changes: 15 additions & 7 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -82,23 +82,22 @@ jobs:
strategy:
fail-fast: false
matrix:
build: [linux, macos-amd64, macos-arm64, win-msvc]
build: [linux, macos-arm64, win-msvc]
include:
- build: linux
os: ubuntu-20.04
os: ubuntu-latest
target: x86_64-unknown-linux-gnu
binary_extension: ""
- build: macos-amd64
os: macos-13
target: x86_64-apple-darwin
arch: X64
binary_extension: ""
- build: macos-arm64
os: macos-14
target: aarch64-apple-darwin
arch : ARM64
binary_extension: ""
- build: win-msvc
os: windows-2019
os: windows-latest
target: x86_64-pc-windows-msvc
arch : X64
binary_extension: ".exe"
runs-on: ${{ matrix.os }}
steps:
Expand All @@ -111,6 +110,15 @@ jobs:
toolchain: stable
targets: ${{ matrix.target }}

- name: Cache cargo
uses: actions/cache@v4
with:
path: |
target
~/.cargo/git
~/.cargo/registry
key: ${{ matrix.os }}-${{ matrix.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}

- name: Build
run: cargo build --target ${{ matrix.target }} --verbose --release --locked --bin boa

Expand Down
71 changes: 55 additions & 16 deletions .github/workflows/rust.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,9 +39,15 @@ jobs:
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@stable

- uses: Swatinem/rust-cache@v2
- name: Cache cargo
uses: actions/cache@v4
with:
key: tarpaulin
path: |
target
~/.cargo/git
~/.cargo/registry
key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}

- name: Install cargo-tarpaulin
uses: baptiste0928/[email protected]
with:
Expand All @@ -66,11 +72,15 @@ jobs:
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU: ${{ (github.ref == 'refs/heads/main' || github.base_ref == 'main') && '-D warnings' || '' }}
strategy:
matrix:
os:
- macos-13
- macos-14
- windows-latest
- ubuntu-24.04-arm
include:
- os: macos-14
arch: ARM64
- os: windows-latest
arch: x64
- os: ubuntu-24.04-arm
arch: ARM64
- os: ubuntu-latest
arch: X64
steps:
- name: Checkout repository
uses: actions/checkout@v5
Expand All @@ -80,7 +90,15 @@ jobs:
with:
toolchain: stable

- uses: Swatinem/rust-cache@v2
- name: Cache cargo
uses: actions/cache@v4
with:
path: |
target
~/.cargo/git
~/.cargo/registry
key: ${{ matrix.os }}-${{ matrix.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}

- name: Build tests
run: cargo test --no-run --profile ci
# this order is faster according to rust-analyzer
Expand Down Expand Up @@ -157,9 +175,14 @@ jobs:
toolchain: stable
components: clippy

- uses: Swatinem/rust-cache@v2
- name: Cache cargo
uses: actions/cache@v4
with:
key: clippy
path: |
target
~/.cargo/git
~/.cargo/registry
key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}

- name: Install cargo-workspaces
run: cargo install cargo-workspaces
Expand Down Expand Up @@ -194,9 +217,15 @@ jobs:
with:
toolchain: stable

- uses: Swatinem/rust-cache@v2
- name: Cache cargo
uses: actions/cache@v4
with:
key: docs
path: |
target
~/.cargo/git
~/.cargo/registry
key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}

- name: Generate documentation
run: cargo doc -v --document-private-items --all-features

Expand All @@ -217,9 +246,14 @@ jobs:
with:
toolchain: stable

- uses: Swatinem/rust-cache@v2
- name: Cache cargo
uses: actions/cache@v4
with:
key: build-fuzz
path: |
target
~/.cargo/git
~/.cargo/registry
key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}

- name: Install cargo-fuzz
run: cargo install cargo-fuzz
Expand All @@ -244,9 +278,14 @@ jobs:
with:
toolchain: stable

- uses: Swatinem/rust-cache@v2
- name: Cache cargo
uses: actions/cache@v4
with:
key: build-run-examples
path: |
target
~/.cargo/git
~/.cargo/registry
key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}

- name: Install cargo-workspaces
run: cargo install cargo-workspaces
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test262.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ jobs:
target
~/.cargo/git
~/.cargo/registry
key: ${{ runner.os }}-cargo-test262-${{ hashFiles('**/Cargo.lock') }}
key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}

- name: Checkout the data repo
uses: actions/checkout@v5
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test262_release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
target
~/.cargo/git
~/.cargo/registry
key: ${{ runner.os }}-cargo-test262-${{ hashFiles('**/Cargo.lock') }}
key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}

# Checkout the `data` repository
- name: Checkout the data repo
Expand Down
12 changes: 11 additions & 1 deletion .github/workflows/webassembly.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,11 +49,21 @@ jobs:
with:
toolchain: stable

- uses: Swatinem/rust-cache@v2

- name: Cache cargo
uses: actions/cache@v4
with:
path: |
target
~/.cargo/git
~/.cargo/registry
key: ${{ runner.os }}-${{ runner.arch }}-cargo-${{ hashFiles('**/Cargo.lock') }}

- name: Install wasm-pack
uses: baptiste0928/[email protected]
with:
crate: wasm-pack

- name: Build Playground
run: wasm-pack build ./ffi/wasm --verbose
- name: Test (Chrome)
Expand Down
Loading