feat: drop legacy raw-X12 fallback; require pyx12 codes (PR 5 of 6) #357
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: Unit Testing | |
| on: [push, pull_request] | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| python-version: ['3.11', '3.12', '3.13', '3.14'] | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v8.1.0 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| - name: Install dependencies | |
| run: uv sync --extra dev | |
| - name: Test with pytest | |
| run: uv run pytest | |
| mypy: | |
| name: Type check (mypy strict) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v8.1.0 | |
| with: | |
| python-version: '3.12' | |
| - name: Install dev dependencies | |
| run: uv sync --extra dev | |
| - name: Run mypy | |
| run: uv run mypy | |
| check-maps: | |
| name: Validate bundled X12 maps | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v8.1.0 | |
| with: | |
| python-version: '3.12' | |
| - name: Install dev dependencies | |
| run: uv sync --extra dev | |
| - name: Run map validator | |
| run: uv run python tools/check_maps.py | |
| post-package: | |
| name: Post-packaging install regression test | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v8.1.0 | |
| with: | |
| python-version: '3.12' | |
| - name: Install dev dependencies | |
| run: uv sync --extra dev | |
| - name: Build wheel and run install regression suite | |
| run: uv run python tools/test_install.py | |
| docs: | |
| name: Build documentation | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v6 | |
| - name: Install uv | |
| uses: astral-sh/setup-uv@v8.1.0 | |
| with: | |
| python-version: '3.12' | |
| - name: Install docs dependencies | |
| run: uv sync --extra docs | |
| - name: Build HTML docs | |
| run: uv run sphinx-build -b html docs docs/_build/html | |
| - name: Check external links | |
| continue-on-error: true | |
| run: uv run sphinx-build -b linkcheck --keep-going docs docs/_build/linkcheck | |
| - name: Upload docs artifact | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: docs-html | |
| path: docs/_build/html | |
| - name: Upload linkcheck report | |
| if: always() | |
| uses: actions/upload-artifact@v7 | |
| with: | |
| name: linkcheck-report | |
| path: docs/_build/linkcheck |