docs: add GeoDebug README overview graphic #27
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: | |
| permissions: | |
| contents: read | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| python-version: ["3.12", "3.14"] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: ${{ matrix.python-version }} | |
| cache: pip | |
| - name: Install | |
| run: python -m pip install -e '.[dev]' | |
| - name: Ruff | |
| run: ruff check . | |
| - name: Mypy | |
| run: mypy src/geodebug | |
| - name: Tests | |
| run: pytest --cov=geodebug --cov-report=term-missing | |
| integration: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| cache: pip | |
| - name: Install geospatial extras | |
| run: python -m pip install -e '.[dev,all]' | |
| - name: Integration tests | |
| run: pytest tests/integration | |
| package: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.12" | |
| cache: pip | |
| - name: Install build tooling | |
| run: python -m pip install build twine | |
| - name: Build distributions | |
| run: python -m build | |
| - name: Validate distributions | |
| run: python -m twine check dist/* | |
| - name: Install wheel in clean environment | |
| run: | | |
| python -m venv .wheel-smoke | |
| .wheel-smoke/bin/python -m pip install --upgrade pip | |
| .wheel-smoke/bin/python -m pip install dist/*.whl | |
| .wheel-smoke/bin/geodebug --version | |
| .wheel-smoke/bin/geodebug schema > /tmp/report.schema.json | |
| .wheel-smoke/bin/geodebug schema --kind config > /tmp/config.schema.json | |
| .wheel-smoke/bin/python - <<'PY' | |
| import json | |
| from pathlib import Path | |
| report = json.loads(Path("/tmp/report.schema.json").read_text()) | |
| config = json.loads(Path("/tmp/config.schema.json").read_text()) | |
| assert report["properties"]["schema_version"]["const"] == "1.0.0" | |
| assert config["properties"]["schema_version"]["const"] == "1" | |
| PY | |
| smoke: | |
| strategy: | |
| matrix: | |
| os: [macos-latest, windows-latest] | |
| runs-on: ${{ matrix.os }} | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/setup-python@v5 | |
| with: | |
| python-version: "3.14" | |
| - name: Install | |
| run: python -m pip install -e '.[dev]' | |
| - name: Tests | |
| run: pytest |