fix: pipe operator into module-qualified calls (#326) #637
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| test: | |
| strategy: | |
| matrix: | |
| os: [ubuntu-latest, macos-latest] | |
| python-version: ["3.11", "3.12", "3.13"] | |
| name: test (${{ matrix.os }}, ${{ matrix.python-version }})${{ matrix.python-version == '3.12' && matrix.os == 'ubuntu-latest' && ' + coverage' || '' }} | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install dependencies | |
| run: pip install -e ".[dev]" | |
| - name: Run tests | |
| run: pytest -v | |
| - name: Run tests with coverage | |
| if: matrix.python-version == '3.12' && matrix.os == 'ubuntu-latest' | |
| run: pytest --cov=vera --cov-report=term-missing --cov-report=xml --cov-fail-under=80 | |
| - name: Upload coverage to Codecov | |
| if: matrix.python-version == '3.12' && matrix.os == 'ubuntu-latest' | |
| uses: codecov/codecov-action@v5 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| files: coverage.xml | |
| flags: python | |
| fail_ci_if_error: false | |
| typecheck: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Set up Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.12" | |
| - name: Install dependencies | |
| run: pip install -e ".[dev]" | |
| - name: Run mypy | |
| run: mypy vera/ | |
| lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Set up Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.12" | |
| - name: Install dependencies | |
| run: pip install -e ".[dev]" | |
| - name: Check conformance suite | |
| run: python scripts/check_conformance.py | |
| - name: Check all examples type-check and verify cleanly | |
| run: python scripts/check_examples.py | |
| - name: Check version numbers are in sync | |
| run: python scripts/check_version_sync.py | |
| - name: Check spec code blocks parse correctly | |
| run: python scripts/check_spec_examples.py | |
| - name: Check README code blocks parse correctly | |
| run: python scripts/check_readme_examples.py | |
| - name: Check SKILL.md code blocks parse correctly | |
| run: python scripts/check_skill_examples.py | |
| - name: Check FAQ code blocks parse correctly | |
| run: python scripts/check_faq_examples.py | |
| - name: Check HTML code blocks parse, check, and verify | |
| run: python scripts/check_html_examples.py | |
| - name: Check site assets are up-to-date | |
| run: python scripts/check_site_assets.py | |
| - name: Check license compliance | |
| run: python scripts/check_licenses.py | |
| security: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| with: | |
| fetch-depth: 0 | |
| - name: Gitleaks | |
| uses: gitleaks/gitleaks-action@v2 | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| browser-parity: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Set up Python | |
| uses: actions/setup-python@v6 | |
| with: | |
| python-version: "3.12" | |
| - name: Set up Node.js | |
| uses: actions/setup-node@v6 | |
| with: | |
| node-version: "22" | |
| - name: Install dependencies | |
| run: pip install -e ".[dev]" | |
| - name: Run browser parity tests | |
| run: pytest tests/test_browser.py -v | |
| env: | |
| NODE_V8_COVERAGE: ${{ runner.temp }}/v8-coverage | |
| - name: Generate JS coverage report | |
| if: always() | |
| run: npx c8 report --temp-directory="${{ runner.temp }}/v8-coverage" --reporter=lcov --report-dir=./js-coverage --src=vera/browser/ | |
| - name: Upload JS coverage to Codecov | |
| if: always() | |
| uses: codecov/codecov-action@v5 | |
| with: | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| files: js-coverage/lcov.info | |
| flags: javascript | |
| fail_ci_if_error: false |