feat: Implement comprehensive Shadow DOM support (#50) #106
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: MyPy CI | |
| on: | |
| push: | |
| branches: | |
| - '*' # matches every branch that doesn't contain a '/' | |
| - '*/*' # matches every branch containing a single '/' | |
| - '**' # matches every branch | |
| pull_request: | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| # Add security hardening | |
| permissions: | |
| contents: read | |
| strategy: | |
| max-parallel: 4 | |
| matrix: | |
| python-version: ["3.10", "3.11", "3.12", "3.13"] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Set up Python ${{ matrix.python-version }} | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| # Add caching for better performance | |
| - name: Cache Poetry dependencies | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.cache/pypoetry | |
| key: poetry-${{ runner.os }}-${{ matrix.python-version }}-${{ hashFiles('**/poetry.lock') }} | |
| restore-keys: | | |
| poetry-${{ runner.os }}-${{ matrix.python-version }}- | |
| - name: Install Poetry | |
| run: | | |
| python -m pip install --upgrade pip | |
| python -m pip install poetry | |
| - name: Configure Poetry | |
| run: | | |
| poetry config virtualenvs.create true | |
| poetry config virtualenvs.in-project true | |
| - name: Install dependencies | |
| run: | | |
| poetry install | |
| poetry run pip install mypy | |
| - name: Verify installation | |
| run: | | |
| python --version | |
| poetry run mypy --version | |
| poetry --version | |
| - name: mypy | |
| run: poetry run mypy . --ignore-missing-imports |