Skip to content

search: bump index threshold + OR semantics + use workspace name as t… #119

search: bump index threshold + OR semantics + use workspace name as t…

search: bump index threshold + OR semantics + use workspace name as t… #119

Workflow file for this run

name: Rust
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
env:
CARGO_TERM_COLOR: always
FORCE_JAVASCRIPT_ACTIONS_TO_NODE24: true
jobs:
validate-config-template:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v5
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Generate per-OS configs
run: |
set -euo pipefail
mkdir -p out
for target in \
x86_64-pc-windows-msvc \
aarch64-pc-windows-msvc \
x86_64-unknown-linux-gnu \
aarch64-unknown-linux-gnu \
x86_64-apple-darwin \
aarch64-apple-darwin
do
python scripts/generate_config.py "$target" config.toml.template "out/$target.toml"
done
- name: Validate configs
run: python scripts/validate_configs.py out
build-and-test:
strategy:
matrix:
os: [ubuntu-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v5
- name: Install MSVC toolchain (Windows)
if: matrix.os == 'windows-latest'
run: rustup default stable-x86_64-pc-windows-msvc
- name: Clippy (core)
run: cargo clippy -- -D warnings
- name: Build (core)
run: cargo build --verbose
- name: Run unit tests
# Only run lib tests (unit tests in src/).
# Integration tests in tests/ need real session data and are skipped on CI.
run: cargo test --lib --verbose
- name: Clippy (semantic plugin)
working-directory: semantic-plugin
run: cargo clippy -- -D warnings
- name: Build (semantic plugin)
working-directory: semantic-plugin
run: cargo build --verbose