Split source and binary scan routing with merge-only hybrid support, binary provenance, and router-backed MCP scan contexts. Add async MCP scan jobs for long-running scans, detector precision fixes, benchmark scripts, docs, and integration coverage.
64 lines
1.6 KiB
YAML
64 lines
1.6 KiB
YAML
image: debian/trixie
|
|
packages:
|
|
- clang
|
|
- clang-tidy
|
|
- llvm-dev
|
|
- libclang-dev
|
|
- libclang-cpp-dev
|
|
- libz3-dev
|
|
- libxxhash-dev
|
|
- meson
|
|
- ninja-build
|
|
- pkg-config
|
|
- python3
|
|
- python3-pip
|
|
- python3-venv
|
|
- catch2
|
|
- libsqlite3-dev
|
|
- libnlohmann-json3-dev
|
|
- libcli11-dev
|
|
- libspdlog-dev
|
|
- libfmt-dev
|
|
sources:
|
|
- https://git.sr.ht/~trevon/fold
|
|
environment:
|
|
CC: clang
|
|
CXX: clang++
|
|
tasks:
|
|
- install-conan: |
|
|
python3 -m venv $HOME/.venv
|
|
$HOME/.venv/bin/pip install --upgrade pip
|
|
$HOME/.venv/bin/pip install 'conan>=2,<3'
|
|
echo 'export PATH=$HOME/.venv/bin:$PATH' >> ~/.buildenv
|
|
- conan-profile: |
|
|
conan profile detect --force
|
|
- configure: |
|
|
cd fold
|
|
conan install . --output-folder=build --build=missing \
|
|
-s build_type=Release -o build_tests=True
|
|
meson setup build/release \
|
|
--native-file build/conan_meson_native.ini \
|
|
-Dbuild-tests=true \
|
|
-Dbuild-mcp-server=true \
|
|
-Dbuild-lsp-server=true
|
|
- build: |
|
|
cd fold
|
|
meson compile -C build/release
|
|
- hygiene: |
|
|
cd fold
|
|
./scripts/check_hygiene.sh
|
|
- test: |
|
|
cd fold
|
|
meson test -C build/release --print-errorlogs
|
|
- smoke-cli: |
|
|
cd fold
|
|
./build/release/src/cli/fold --version
|
|
./build/release/src/cli/fold scan \
|
|
--compile-db tests/fixtures/compile_commands.json \
|
|
--format markdown --detectors clone \
|
|
--output /tmp/fold-smoke.md
|
|
head -30 /tmp/fold-smoke.md
|
|
triggers:
|
|
- action: email
|
|
condition: failure
|
|
to: tremaux@gmail.com
|