Spaces:
Running
Running
name: large_nightly | |
# This CI only runs once per day, but tries | |
# many different configurations. | |
on: | |
schedule: | |
# Run at the 0th minute of the 10th hour (UTC). | |
# This means the job will run at 5am EST. | |
- cron: "0 10 * * *" | |
# This will automatically run on master branch only. | |
workflow_dispatch: | |
jobs: | |
test: | |
runs-on: ${{ matrix.os }} | |
timeout-minutes: 60 | |
# Windows jobs are flaky: | |
continue-on-error: ${{ matrix.os == 'windows-latest' }} | |
defaults: | |
run: | |
shell: bash | |
strategy: | |
fail-fast: false | |
matrix: | |
julia-version: ['1.6', '1.8', '1.10'] | |
python-version: ['3.8', '3.10', '3.12'] | |
os: [ubuntu-latest, macos-latest, windows-latest] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: "Set up Julia" | |
uses: julia-actions/setup-julia@v2 | |
with: | |
version: ${{ matrix.julia-version }} | |
- name: "Set up Python" | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: "Install PySR" | |
run: | | |
python -m pip install --upgrade pip | |
pip install pytest nbval | |
pip install . | |
python -c 'import pysr' | |
- name: "Assert Julia version" | |
if: ${{ matrix.julia-version != '1'}} | |
run: python3 -c "from pysr import jl; assert jl.VERSION.major == jl.seval('v\"${{ matrix.julia-version }}\"').major; assert jl.VERSION.minor == jl.seval('v\"${{ matrix.julia-version }}\"').minor" | |
- name: "Run tests" | |
run: python -m pysr test main,cli,startup | |