Skip to content

Add LSP type definition support #86

Add LSP type definition support

Add LSP type definition support #86

Workflow file for this run

name: "CI"
on:
pull_request:
push:
branches: ["main"]
schedule:
# Run every Friday at 00:00 UTC
- cron: "0 0 * * 5"
jobs:
CI:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: nixbuild/nix-quick-install-action@v32
with:
nix_conf: |
keep-env-derivations = true
keep-outputs = true
- name: Restore and save Nix store
uses: nix-community/cache-nix-action@v6
with:
primary-key: nix-${{ runner.os }}-${{ hashFiles('**/*.nix', '**/flake.lock') }}
restore-prefixes-first-match: nix-${{ runner.os }}-
gc-max-store-size-linux: 20G
- name: Cache pre-commit hooks
uses: actions/cache@v4
with:
path: ~/.cache/pre-commit
key: pre-commit|${{ hashFiles('.pre-commit-config.yaml') }}
- name: Cache Cargo dependencies
uses: actions/cache@v4
with:
path: |
~/.cargo/registry
~/.cargo/git
target
key: ${{ runner.os }}-cargo-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ runner.os }}-cargo-
- name: Setup nix develop env
run: |
echo 'use flake' >.envrc
- uses: HatsuneMiku3939/direnv-action@v1
# and avoid develop env being gc
- name: Run pre-commit hooks on all files
run: pre-commit run --all-files
- name: Build nix package
run: nix build --profile default
# use --profile default to avoid dependencies being gc
- name: Run nix flake check
run: nix flake check --all-systems
- name: Run integration tests
run: cargo test -- --show-output