Skip to content

Removed serialize for now #9

Removed serialize for now

Removed serialize for now #9

Workflow file for this run

name: All tests
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
workflow_dispatch:
jobs:
build:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.11", "3.12", "3.13"]
steps:
- name: Checkout repo with submodules
uses: actions/checkout@v4
with:
fetch-depth: 0
submodules: recursive
persist-credentials: true
token: ${{ secrets.GITHUB_TOKEN }}
- name: Sync and update FracturedJson submodule to tip of main
run: |
set -euo pipefail
# Ensure .gitmodules remotes are in sync and initialize submodules
git submodule sync --recursive
git submodule update --init --recursive
# Force FracturedJson to origin/main (robust for shallow clones)
if [ -d "FracturedJson" ]; then
pushd FracturedJson
git fetch --no-tags origin main
if git rev-parse --verify origin/main >/dev/null 2>&1; then
git checkout -B main origin/main
git reset --hard origin/main
else
echo "ERROR: origin/main not found for FracturedJson"
git show-ref || true
exit 1
fi
popd
else
echo "ERROR: FracturedJson directory not found after init"
exit 1
fi
- name: Install uv and set the python version
uses: astral-sh/setup-uv@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install the project
run: uv sync --locked --all-extras --dev
- name: Build FracturedJson binaries
run: uv run python3 src/build/build_binaries.py
- name: Run tests
run: uv run pytest