# This workflow will install Python dependencies, run test and lint with a single version of Python # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions name: CI on: push: branches: [ master ] pull_request: branches: [ master ] jobs: type-check: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: python-version: '3.10' - name: Test with mypy run: | pip install mypy # Refer http://mypy-lang.blogspot.com/2021/06/mypy-0900-released.html pip install mypy types-requests types-python-dateutil types-PyYAML types-dateparser types-protobuf types-pytz mypy obsei build-and-test: needs: type-check runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: os: [ ubuntu-latest, macos-latest, windows-latest ] python-version: ['3.8', '3.9', '3.10', '3.11'] steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install '.[dev,all]' pip install --upgrade --upgrade-strategy eager trafilatura python -m spacy download en_core_web_lg python -m spacy download en_core_web_sm - name: Test with pytest run: | coverage run -m pytest coverage report -m