# Code Quality - Linting and Type Checking name: Lint on: push: branches: [ main, develop ] pull_request: branches: [ main, develop ] env: POETRY_VERSION: 1.8.0 PYTHON_VERSION: "3.12" jobs: lint: name: Lint Code runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Set up Python uses: actions/setup-python@v5 with: python-version: ${{ env.PYTHON_VERSION }} cache: 'pip' - name: Install Poetry run: | curl -sSL https://install.python-poetry.org | python3 - echo "$HOME/.local/bin" >> $GITHUB_PATH - name: Install dependencies run: | poetry config virtualenvs.in-project true poetry install --no-root - name: Run Black run: poetry run black --check src/ tests/ - name: Run Ruff run: poetry run ruff check src/ tests/ - name: Run MyPy run: poetry run mypy src/