Skip to content

Update xjb impl

Update xjb impl #221

Workflow file for this run

name: "Run Test (x86_64 Linux, SDE, with Nix)"
on:
workflow_dispatch:
push:
branches:
- "main"
- "dev"
paths:
- "src/**"
- "test/**"
- "CMakeLists.txt"
pull_request:
paths:
- "src/**"
- "test/**"
- "CMakeLists.txt"
jobs:
RUN-TEST:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
pyver: ["10", "11", "12", "13", "14", "15", "14t"]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install nix
uses: cachix/install-nix-action@master
- name: Setup cachix
uses: cachix/cachix-action@master
with:
name: antares0982
- name: Nix Develop
run: |
nix develop .#devenv-py3${{ matrix.pyver }} -c echo "Nix develop environment set up."
- name: Release Test (Build Only)
run: |
nix develop .#buildenv-py3${{ matrix.pyver }} -c python ./dev_tools/linux_test.py --build-dir build-py3.${{ matrix.pyver }} --build-type Release --build-only
- name: DEBUG Tests (Build and Run)
run: |
nix develop .#buildenv-py3${{ matrix.pyver }} -c python ./dev_tools/linux_test.py --build-dir build-py3.${{ matrix.pyver }} --build-type Debug
- name: Print Features
id: "print_features"
run: |
result=$(PYTHONPATH=$(pwd)/build-py3.${{ matrix.pyver }} nix develop .#buildenv-py3${{ matrix.pyver }} -c python -c "import ssrjson;print(ssrjson.get_current_features()['simd'])")
echo $result
echo "result=$result" >> $GITHUB_OUTPUT
- name: Run Python Tests (SDE, AVX512)
if: steps.print_features.outputs.result != 'AVX512'
run: |
PYTHONPATH=$(pwd)/build-py3.${{ matrix.pyver }} .nix-devenv/bin/run-sde-clx .nix-devenv/bin/python3.${{ matrix.pyver }} -m pytest --random-order python-test --ignore python-test/test_memory.py
- name: Run Python Tests (SDE, AVX2)
if: steps.print_features.outputs.result != 'AVX2'
run: |
PYTHONPATH=$(pwd)/build-py3.${{ matrix.pyver }} .nix-devenv/bin/run-sde-rpl .nix-devenv/bin/python3.${{ matrix.pyver }} -m pytest --random-order python-test --ignore python-test/test_memory.py
- name: Run Python Tests (SDE, SSE4.2)
if: steps.print_features.outputs.result != 'SSE4.2'
run: |
PYTHONPATH=$(pwd)/build-py3.${{ matrix.pyver }} .nix-devenv/bin/run-sde-ivb .nix-devenv/bin/python3.${{ matrix.pyver }} -m pytest --random-order python-test --ignore python-test/test_memory.py
- name: Run C Tests (SDE, ALL)
run: |
PYTHONPATH=$(pwd)/build-py3.${{ matrix.pyver }} .nix-devenv/bin/run-sde-clx ./build-py3.${{ matrix.pyver }}/ssrjson_test
RUN-TEST-LOCKFREE:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
pyver: ["14t"]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install nix
uses: cachix/install-nix-action@master
- name: Setup cachix
uses: cachix/cachix-action@master
with:
name: antares0982
- name: Nix Develop
run: |
nix develop .#devenv-py3${{ matrix.pyver }} -c echo "Nix develop environment set up."
- name: Release Test (Build Only)
run: |
nix develop .#buildenv-py3${{ matrix.pyver }} -c python ./dev_tools/linux_test.py --lockfree --build-dir build-py3.${{ matrix.pyver }} --build-type Release --build-only
- name: DEBUG Tests (Build and Run)
run: |
nix develop .#buildenv-py3${{ matrix.pyver }} -c python ./dev_tools/linux_test.py --lockfree --build-dir build-py3.${{ matrix.pyver }} --build-type Debug
- name: Print Features
id: "print_features"
run: |
result=$(PYTHONPATH=$(pwd)/build-py3.${{ matrix.pyver }} nix develop .#buildenv-py3${{ matrix.pyver }} -c python -c "import ssrjson;print(ssrjson.get_current_features()['simd'])")
echo $result
echo "result=$result" >> $GITHUB_OUTPUT
- name: Run Python Tests (SDE, AVX512)
if: steps.print_features.outputs.result != 'AVX512'
run: |
PYTHONPATH=$(pwd)/build-py3.${{ matrix.pyver }} .nix-devenv/bin/run-sde-clx .nix-devenv/bin/python3.${{ matrix.pyver }} -m pytest --random-order python-test --ignore python-test/test_memory.py
- name: Run Python Tests (SDE, AVX2)
if: steps.print_features.outputs.result != 'AVX2'
run: |
PYTHONPATH=$(pwd)/build-py3.${{ matrix.pyver }} .nix-devenv/bin/run-sde-rpl .nix-devenv/bin/python3.${{ matrix.pyver }} -m pytest --random-order python-test --ignore python-test/test_memory.py
- name: Run Python Tests (SDE, SSE4.2)
if: steps.print_features.outputs.result != 'SSE4.2'
run: |
PYTHONPATH=$(pwd)/build-py3.${{ matrix.pyver }} .nix-devenv/bin/run-sde-ivb .nix-devenv/bin/python3.${{ matrix.pyver }} -m pytest --random-order python-test --ignore python-test/test_memory.py
- name: Run C Tests (SDE, ALL)
run: |
PYTHONPATH=$(pwd)/build-py3.${{ matrix.pyver }} .nix-devenv/bin/run-sde-clx ./build-py3.${{ matrix.pyver }}/ssrjson_test