Add managed release bundle runtime #218
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
| # Workflow that runs on code changes to a pull request. | |
| name: Code changes | |
| on: | |
| pull_request: | |
| paths: | |
| - src/** | |
| - tests/** | |
| - .github/** | |
| - changelog.d/** | |
| workflow_dispatch: | |
| jobs: | |
| check-changelog: | |
| name: Check changelog fragment | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Check for changelog fragment | |
| run: .github/check-changelog.sh | |
| Lint: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install ruff | |
| run: pip install ruff | |
| - name: Run ruff format check | |
| run: ruff format --check . | |
| - name: Run ruff check | |
| run: ruff check . | |
| Mypy: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v5 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.13' | |
| - name: Install package | |
| run: uv pip install -e .[dev] --system | |
| - name: Run mypy (informational) | |
| run: mypy src/policyengine || echo "::warning::mypy found errors (non-blocking until codebase is clean)" | |
| Test: | |
| runs-on: macos-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| python-version: ['3.13', '3.14'] | |
| steps: | |
| - name: Checkout repo | |
| uses: actions/checkout@v4 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v5 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| allow-prereleases: true | |
| - name: Install package | |
| run: uv pip install -e .[dev] --system | |
| - name: Install policyengine | |
| run: uv pip install policyengine --system | |
| - name: Run tests with coverage | |
| run: make test | |
| env: | |
| HUGGING_FACE_TOKEN: ${{ secrets.HUGGING_FACE_TOKEN }} |