Skip to content

Merge pull request #36 from kafonek/mrk/ci-publish-crates-io #6

Merge pull request #36 from kafonek/mrk/ci-publish-crates-io

Merge pull request #36 from kafonek/mrk/ci-publish-crates-io #6

Workflow file for this run

name: Tests
on: [push]
concurrency:
group: tests-${{ github.ref }}
cancel-in-progress: true
jobs:
test-ipython:
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v3
# Install IPython kernel -- tests will launch one kernel process per test
- uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install IPython Kernel
run: |
python -m pip install ipykernel
python -m ipykernel install --user --name=python3.10
- name: Set up Rust 1.74.0
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: '1.74.0'
- name: Run tests
run: cargo test --features test_ipython
test-evcxr:
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v3
- name: Set up Rust 1.74.0
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: '1.74.0'
# Cache Evcxr installation
- name: Cache Evcxr installation
uses: actions/cache@v3
with:
path: ~/.cargo/bin
key: ${{ runner.os }}-evcxr-${{ hashFiles('**/Cargo.lock') }}
- name: Install evcxr-jupyter
run: |
cargo install evcxr_jupyter
evcxr_jupyter --install
- name: Run tests
run: cargo test --features test_evcxr
test-irkernel:
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v3
- name: Set up R (release)
uses: r-lib/actions/setup-r@v2
- name: Cache R packages
uses: actions/cache@v3
with:
path: ${{ env.R_LIBS_USER }}
key: R-packages-${{ runner.os }}
- name: Install IRkernel
run: Rscript -e 'install.packages("IRkernel")'
- name: Set up Rust 1.74.0
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: '1.74.0'
- name: Run tests
run: cargo test --features test_irkernel
test-deno:
runs-on: ubuntu-latest
timeout-minutes: 5
steps:
- uses: actions/checkout@v3
# Deno needs Python/Jupyter in PATH before it can run `deno jupyter ...`
- uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install Jupyter
run: python -m pip install jupyter
- name: Set up Deno stable release
uses: denoland/setup-deno@v1
with:
deno-version: v1.x
- name: Install Deno Jupyter kernel
run: deno jupyter --unstable --install
- name: Set up Rust 1.74.0
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: '1.74.0'
- name: Run tests
run: cargo test --features test_deno
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Set up Rust Nightly
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: 'nightly'
components: rustfmt,clippy
- name: Check code format
run: cargo fmt -- --check
- name: Check clippy
run: cargo clippy -- -D warnings