mirror of
https://github.com/zellij-org/zellij.git
synced 2026-09-22 08:02:38 +00:00
* initial chrome * mobile state * feat(mobile-web): implement browser→server actions (fit toggle, single-pane fullscreen, pane/tab focus) with fullscreen-truth reconciliation * panning * remove mobile plugin * fix first load race * improve web handshake * rustfmt * cleanups * moar cleanups * add bundle asset check to ci * fix(mobile-web): tab-scope co-presence, yield single-pane to desktop clients, fix render-mode desync * make mobile use no-ui fullscreen * client side welcome screen for mobile * attach web clients to first tab on tiles surface * fix: opening new pane in mobile single mode no longer exits mobile single mode * mobile chrome light theme support * fix server races and flaky tests * rustfmt * fix flakes * add pr
199 lines
4.1 KiB
YAML
199 lines
4.1 KiB
YAML
name: Rust
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
pull_request:
|
|
branches: [main]
|
|
workflow_dispatch:
|
|
|
|
env:
|
|
CARGO_TERM_COLOR: always
|
|
|
|
jobs:
|
|
build:
|
|
name: Build
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ubuntu-latest, macos-latest]
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Install Protoc
|
|
uses: arduino/setup-protoc@v3
|
|
with:
|
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Setup toolchain
|
|
uses: actions-rust-lang/setup-rust-toolchain@v1
|
|
with:
|
|
rustflags: ""
|
|
|
|
- name: Build
|
|
run: cargo xtask build
|
|
|
|
build-windows:
|
|
name: Build (Windows)
|
|
runs-on: windows-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Install Protoc
|
|
uses: arduino/setup-protoc@v3
|
|
with:
|
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Setup toolchain
|
|
uses: actions-rust-lang/setup-rust-toolchain@v1
|
|
with:
|
|
target: wasm32-wasip1
|
|
rustflags: ""
|
|
|
|
- name: Install NASM
|
|
uses: ilammy/setup-nasm@v1
|
|
|
|
- name: Build
|
|
run: cargo xtask build
|
|
|
|
test:
|
|
name: Test
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ubuntu-latest, macos-latest]
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Install Protoc
|
|
uses: arduino/setup-protoc@v3
|
|
with:
|
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Setup toolchain
|
|
uses: actions-rust-lang/setup-rust-toolchain@v1
|
|
with:
|
|
rustflags: ""
|
|
|
|
- name: Test
|
|
run: cargo xtask test
|
|
|
|
test-windows:
|
|
name: Test (Windows)
|
|
runs-on: windows-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Install Protoc
|
|
uses: arduino/setup-protoc@v3
|
|
with:
|
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Setup toolchain
|
|
uses: actions-rust-lang/setup-rust-toolchain@v1
|
|
with:
|
|
rustflags: ""
|
|
|
|
- name: Test zellij-utils
|
|
run: cargo test --no-default-features -p zellij-utils --lib
|
|
|
|
- name: Test zellij-server
|
|
run: cargo test --no-default-features -p zellij-server --lib
|
|
|
|
- name: Test zellij-client
|
|
run: cargo test --no-default-features -p zellij-client --lib
|
|
|
|
integration-test:
|
|
name: Integration Test
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
os: [ubuntu-latest]
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Install Protoc
|
|
uses: arduino/setup-protoc@v3
|
|
with:
|
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Setup toolchain
|
|
uses: actions-rust-lang/setup-rust-toolchain@v1
|
|
with:
|
|
rustflags: ""
|
|
|
|
- name: Install cargo-nextest
|
|
uses: taiki-e/install-action@v2
|
|
with:
|
|
tool: cargo-nextest
|
|
|
|
- name: Run whole-app integration tests
|
|
run: cargo xtask integration-test
|
|
|
|
test-no-web:
|
|
name: Test (No Web)
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Install Protoc
|
|
uses: arduino/setup-protoc@v3
|
|
with:
|
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
|
|
- name: Setup toolchain
|
|
uses: actions-rust-lang/setup-rust-toolchain@v1
|
|
with:
|
|
rustflags: ""
|
|
|
|
- name: Test without web support
|
|
run: cargo xtask test --no-web
|
|
|
|
assets:
|
|
name: Check Bundled Assets
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Setup toolchain
|
|
uses: actions-rust-lang/setup-rust-toolchain@v1
|
|
with:
|
|
rustflags: ""
|
|
|
|
- name: Test xtask
|
|
run: cargo test -p xtask
|
|
|
|
- name: Check bundled assets
|
|
run: cargo xtask assets --check
|
|
|
|
format:
|
|
name: Check Formatting
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
|
|
- name: Setup toolchain
|
|
uses: actions-rust-lang/setup-rust-toolchain@v1
|
|
with:
|
|
rustflags: ""
|
|
|
|
- name: Check Format
|
|
run: cargo xtask format --check
|