Spaces:
Sleeping
Sleeping
name: tests | |
on: | |
workflow_dispatch: | |
push: | |
branches: | |
- "main" | |
paths: | |
- "**.py" | |
- "requirements.txt" | |
- ".github/workflows/*.yml" | |
pull_request: | |
branches: | |
- "main" | |
paths: | |
- "**.py" | |
- "requirements.txt" | |
- ".github/workflows/*.yml" | |
jobs: | |
tests: | |
strategy: | |
fail-fast: false | |
matrix: | |
python: | |
- "3.9" | |
- "3.10" | |
- "3.11" | |
- "3.12" | |
os: | |
- "ubuntu-latest" | |
- "windows-latest" | |
- "macos-13" | |
transformers: | |
- null | |
include: # test backward compatibility | |
- python: "3.9" | |
os: "ubuntu-latest" | |
transformers: "4.45.0" | |
- python: "3.9" | |
os: "ubuntu-latest" | |
transformers: "4.49.0" | |
runs-on: ${{ matrix.os }} | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }}-${{ matrix.os }}-${{ matrix.python }}-${{ matrix.transformers }} | |
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} | |
env: | |
HF_TOKEN: ${{ secrets.HF_TOKEN }} | |
OS_NAME: ${{ matrix.os }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: ${{ matrix.python }} | |
cache: "pip" | |
cache-dependency-path: "**/requirements*.txt" | |
- name: Install dependencies | |
run: | | |
python -m pip install --upgrade pip | |
python -m pip install ".[torch,dev]" | |
- name: Install transformers | |
if: ${{ matrix.transformers }} | |
run: | | |
python -m pip install "transformers==${{ matrix.transformers }}" | |
- name: Cache files | |
id: hf-hub-cache | |
uses: actions/cache@v4 | |
with: | |
path: ${{ runner.temp }}/huggingface | |
key: huggingface-${{ matrix.os }}-${{ matrix.python }}-${{ matrix.transformers }}-${{ hashFiles('tests/version.txt') }} | |
- name: Check quality | |
run: | | |
make style && make quality | |
- name: Check license | |
run: | | |
make license | |
- name: Check build | |
run: | | |
make build | |
- name: Test with pytest | |
run: | | |
make test | |
env: | |
HF_HOME: ${{ runner.temp }}/huggingface | |
HF_HUB_OFFLINE: "${{ steps.hf-hub-cache.outputs.cache-hit == 'true' && '1' || '0' }}" | |