Skip to content

Fix behavior, disorder and qualifier pipes #1554

Fix behavior, disorder and qualifier pipes

Fix behavior, disorder and qualifier pipes #1554

Workflow file for this run

name: Tests and Linting
on:
workflow_dispatch:
pull_request:
push:
branches: [master]
jobs:
linting:
name: Linting
if: github.event_name == 'pull_request'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
# requites to grab the history of the PR
fetch-depth: 0
- uses: actions/setup-python@v4
- uses: pre-commit/[email protected]
with:
extra_args: --color=always --from-ref ${{ github.event.pull_request.base.sha }} --to-ref ${{ github.event.pull_request.head.sha }}
pytest:
name: Pytest
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
python-version: ["3.7", "3.8", "3.9"]
steps:
- uses: actions/checkout@v2
- name: Cache downloaded resources
uses: actions/cache@v3
with:
path: ~/.data/
key: resources
# - name: Cache pip
# uses: actions/cache@v3
# with:
# path: ~/.cache/pip
# key: ${{ runner.os }}-python-${{ matrix.python-version }}-pip
- run: echo WEEK=$(date +%V) >>$GITHUB_ENV
shell: bash
- uses: hynek/setup-cached-uv@v1
with:
cache-suffix: -tests-${{ matrix.python-version }}-${{ env.WEEK }}
- name: Set up Java
uses: actions/setup-java@v2
with:
distribution: "temurin" # See 'Supported distributions' for available options
java-version: "8"
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
uv venv
pip install poetry
source .venv/bin/activate
uv pip install -e '.[dev,setup]' pytest-xdist pip
- name: Test with Pytest on Python ${{ matrix.python-version }}
env:
UMLS_API_KEY: ${{ secrets.UMLS_API_KEY }}
run: |
source .venv/bin/activate
coverage run -m pytest --ignore tests/test_docs.py # -n auto
# coverage combine
# mv .coverage .coverage.${{ matrix.python-version }}
if: matrix.python-version != '3.9'
- name: Test with Pytest on Python ${{ matrix.python-version }}
env:
UMLS_API_KEY: ${{ secrets.UMLS_API_KEY }}
run: |
source .venv/bin/activate
coverage run -m pytest # -n auto
# coverage combine
# mv .coverage .coverage.${{ matrix.python-version }}
if: matrix.python-version == '3.9'
- name: Upload coverage data
uses: actions/upload-artifact@v4
with:
name: coverage-data-${{ matrix.python-version }}
path: .coverage.*
if-no-files-found: ignore
coverage:
name: Coverage
needs: pytest
uses: aphp/foldedtensor/.github/workflows/coverage.yml@main
with:
base-branch: master
coverage-data-pattern: coverage-data-*
coverage-report: coverage.txt
coverage-badge: coverage.svg
coverage-branch: coverage
documentation:
name: Documentation
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v4
with:
python-version: "3.9"
# cache: 'pip'
- run: echo WEEK=$(date +%V) >>$GITHUB_ENV
shell: bash
- uses: hynek/setup-cached-uv@v1
with:
cache-suffix: -docs-${{ matrix.python-version }}-${{ env.WEEK }}
- name: Install dependencies
run: |
uv venv
uv pip install '.[dev]'
- name: Build documentation
run: |
source .venv/bin/activate
mkdocs build --clean
simple-installation:
name: Simple installation
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
python-version: ["3.7", "3.8", "3.9"]
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}
- run: echo WEEK=$(date +%V) >>$GITHUB_ENV
shell: bash
- uses: hynek/setup-cached-uv@v1
with:
cache-suffix: -simple-install-${{ matrix.python-version }}-${{ env.WEEK }}
- name: Install library
run: |
uv venv
uv pip install .