stop palette scroll to bubble up #3834
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
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
types: [opened, synchronize, reopened, ready_for_review] | |
name: CI | |
concurrency: | |
group: ${{ github.ref }}-${{ github.workflow }} | |
cancel-in-progress: true | |
env: | |
CARGO_TERM_COLOR: always | |
CARGO_REGISTRIES_CRATES_IO_PROTOCOL: sparse | |
jobs: | |
build: | |
name: Rust on ${{ matrix.os }} (${{ join(matrix.features, ',') }}) | |
if: github.event.pull_request.draft == false | |
needs: [fmt, clippy] | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ ubuntu-latest, macos-latest ] | |
include: | |
- os: windows-latest | |
features: [] | |
- os: windows-latest | |
features: | |
- lapce-app/portable | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Install dependencies on Ubuntu | |
if: startsWith(matrix.os, 'ubuntu') | |
run: sudo make ubuntu-deps | |
- name: Update toolchain & add llvm-tools | |
run: | | |
rustup update --no-self-update | |
rustup component add llvm-tools-preview | |
- name: Cache Rust dependencies | |
uses: Swatinem/rust-cache@v2 | |
- name: Fetch dependencies | |
run: cargo fetch --locked | |
- name: Build | |
if: ${{ join(matrix.features, ',') == '' }} | |
run: cargo build --frozen | |
- name: Build | |
if: ${{ join(matrix.features, ',') != '' }} | |
run: cargo build --frozen --features ${{ join(matrix.features, ',') }} | |
- name: Free space | |
if: startsWith(matrix.os, 'windows') | |
run: cargo clean | |
- name: Install cargo-llvm-cov | |
uses: taiki-e/install-action@cargo-llvm-cov | |
- name: Run tests and coverage | |
if: ${{ toJSON(matrix.features) == '[]' }} | |
run: cargo llvm-cov --all-features --workspace --lcov --output-path lcov.info | |
- name: Run doc tests | |
run: cargo test --doc --workspace | |
- uses: codecov/codecov-action@v4 | |
with: | |
files: lcov.info | |
fmt: | |
name: Rustfmt | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Update toolchain & add rustfmt | |
run: | | |
rustup update | |
rustup component add rustfmt | |
- name: Run rustfmt | |
run: cargo fmt --all --check | |
clippy: | |
name: Clippy on ${{ matrix.os }} | |
strategy: | |
fail-fast: false | |
matrix: | |
os: [ ubuntu-latest, windows-latest, macos-latest ] | |
runs-on: ${{ matrix.os }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Update toolchain & add clippy | |
run: | | |
rustup update --no-self-update | |
rustup component add clippy | |
- name: Install dependencies on Ubuntu | |
if: startsWith(matrix.os, 'ubuntu') | |
run: sudo make ubuntu-deps | |
- name: Cache Rust dependencies | |
uses: Swatinem/rust-cache@v2 | |
- name: Fetch dependencies | |
run: cargo fetch --locked | |
- name: Run clippy | |
run: cargo clippy |