diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 28e1d90..aecf45a 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -7,64 +7,49 @@ on: branches: [main] jobs: - test: + lint: runs-on: ubuntu-latest - strategy: - matrix: - python-version: ["3.9", "3.10", "3.11", "3.12"] - steps: - uses: actions/checkout@v4 - - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v5 - with: - python-version: ${{ matrix.python-version }} - cache: 'pip' - - - name: Install dependencies - run: | - python -m pip install --upgrade pip - pip install -e ".[dev]" - - - name: Lint with ruff - run: ruff check . - - - name: Type check with mypy - run: | - pip install types-PyYAML - mypy dataforge --python-version ${{ matrix.python-version }} --ignore-missing-imports --no-error-summary - - - name: Run tests - run: pytest tests/ -v --cov=dataforge --cov-report=xml - - - name: Upload coverage - if: matrix.python-version == '3.11' - uses: codecov/codecov-action@v4 - with: - files: ./coverage.xml - fail_ci_if_error: false - - build: - runs-on: ubuntu-latest - needs: test - - steps: - - uses: actions/checkout@v4 - - name: Set up Python uses: actions/setup-python@v5 with: - python-version: "3.11" - cache: 'pip' + python-version: '3.11' + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install ruff black mypy + - name: Run ruff + run: ruff check . + - name: Run black + run: black --check . + - name: Run mypy + run: mypy . + test: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.11' + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install -e . + - name: Run tests + run: pytest -v + + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.11' - name: Install build run: pip install build - - name: Build package run: python -m build - - - name: Verify build - run: | - pip install dist/*.whl - dataforge --help