Spaces:
Running
Running
| name: Linux | |
| on: | |
| push: | |
| branches: | |
| - '*' | |
| paths: | |
| - 'test/**' | |
| - 'pysr/**' | |
| - '.github/workflows/CI.yml' | |
| - 'setup.py' | |
| pull_request: | |
| branches: | |
| - '*' | |
| paths: | |
| - 'test/**' | |
| - 'pysr/**' | |
| - '.github/workflows/CI.yml' | |
| - 'setup.py' | |
| jobs: | |
| test: | |
| runs-on: ${{ matrix.os }} | |
| defaults: | |
| run: | |
| shell: bash | |
| strategy: | |
| matrix: | |
| julia-version: ['1.7.1'] | |
| python-version: ['3.9'] | |
| os: [ubuntu-latest] | |
| steps: | |
| - uses: actions/[email protected] | |
| - name: "Set up Julia" | |
| uses: julia-actions/[email protected] | |
| with: | |
| version: ${{ matrix.julia-version }} | |
| - name: "Cache dependencies" | |
| uses: actions/cache@v1 # Thanks FromFile.jl | |
| env: | |
| cache-name: cache-artifacts | |
| with: | |
| path: ~/.julia/artifacts | |
| key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }} | |
| restore-keys: | | |
| ${{ runner.os }}-build-${{ env.cache-name }}- | |
| ${{ runner.os }}-build- | |
| ${{ runner.os }}- | |
| - name: "Set up Python" | |
| uses: actions/setup-python@v1 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: "Install PySR" | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install -r requirements.txt | |
| python setup.py install | |
| python -c 'import pysr; pysr.install()' | |
| - name: "Install Coverage tool" | |
| run: pip install coverage coveralls | |
| - name: "Run tests" | |
| run: coverage run --source=pysr --omit='*/feynman_problems.py' -m unittest test.test | |
| - name: "Install JAX" | |
| run: pip install jax jaxlib # (optional import) | |
| - name: "Run JAX tests" | |
| run: coverage run --append --source=pysr --omit='*/feynman_problems.py' -m unittest test.test_jax | |
| - name: "Install Torch" | |
| run: pip install torch # (optional import) | |
| - name: "Run Torch tests" | |
| run: coverage run --append --source=pysr --omit='*/feynman_problems.py' -m unittest test.test_torch | |
| - name: Coveralls | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| COVERALLS_FLAG_NAME: test-${{ matrix.test-name }} | |
| COVERALLS_PARALLEL: true | |
| run: coveralls --service=github | |
| conda_test: | |
| runs-on: ${{ matrix.os }} | |
| defaults: | |
| run: | |
| shell: bash -l {0} | |
| strategy: | |
| matrix: | |
| julia-version: ['1.7.1'] | |
| python-version: ['3.9'] | |
| os: ['ubuntu-latest'] | |
| steps: | |
| - uses: actions/[email protected] | |
| - name: "Set up Julia" | |
| uses: julia-actions/[email protected] | |
| with: | |
| version: ${{ matrix.julia-version }} | |
| - name: "Cache dependencies" | |
| uses: actions/cache@v1 # Thanks FromFile.jl | |
| env: | |
| cache-name: cache-artifacts | |
| with: | |
| path: ~/.julia/artifacts | |
| key: ${{ runner.os }}-build-${{ env.cache-name }}-${{ hashFiles('**/Project.toml') }} | |
| restore-keys: | | |
| ${{ runner.os }}-build-${{ env.cache-name }}- | |
| ${{ runner.os }}-build- | |
| ${{ runner.os }}- | |
| - name: "Set up Conda" | |
| uses: conda-incubator/setup-miniconda@v2 | |
| with: | |
| miniforge-variant: Mambaforge | |
| miniforge-version: latest | |
| auto-activate-base: true | |
| python-version: ${{ matrix.python-version }} | |
| activate-environment: test | |
| environment-file: environment.yml | |
| - name: "Install PySR" | |
| run: | | |
| python3 -m pip install . | |
| python3 -c 'import pysr; pysr.install()' | |
| - name: "Install Coverage tool" | |
| run: python3 -m pip install coverage coveralls | |
| - name: "Run tests" | |
| run: coverage run --append --source=pysr --omit='*/feynman_problems.py' -m unittest test.test | |
| - name: Coveralls | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| COVERALLS_FLAG_NAME: conda-test-${{ matrix.test-name }} | |
| COVERALLS_PARALLEL: true | |
| run: coveralls --service=github | |
| coveralls: | |
| name: Indicate completion to coveralls.io | |
| needs: | |
| - test | |
| - conda_test | |
| runs-on: ubuntu-latest | |
| defaults: | |
| run: | |
| shell: bash -l {0} | |
| container: python:3-slim | |
| steps: | |
| - name: Finished | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| run: | | |
| pip install coveralls | |
| coveralls --finish | |