Merge pull request #152 from python-astrodynamics/feature/httpx2 #350
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 | |
| permissions: | |
| contents: read | |
| on: | |
| push: | |
| branches: ["main"] | |
| pull_request: | |
| branches: ["main"] | |
| workflow_dispatch: | |
| env: | |
| FORCE_COLOR: "1" | |
| UV_PYTHON_DOWNLOADS: "false" | |
| UV_NO_SYNC: "true" | |
| jobs: | |
| lint: | |
| name: "lint" | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - uses: "actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97" # v7.0.0 | |
| with: | |
| python-version: "3.12" | |
| - uses: "astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9" # v9.0.0 | |
| with: | |
| enable-cache: true | |
| - uses: "j178/prek-action@5337cb91e0fa35a7ff31b9ca345126d8bbbcdf16" # v2.0.6 | |
| - name: "Check source distribution contents" | |
| run: | | |
| uv sync --only-group check-sdist | |
| uv run check-sdist | |
| tests: | |
| name: "Python ${{ matrix.python-version }}" | |
| runs-on: "ubuntu-latest" | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| python-version: ["3.10", "3.11", "3.12", "3.13", "3.14", "3.15"] | |
| steps: | |
| - uses: "actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1" # v7.0.1 | |
| with: | |
| persist-credentials: false | |
| - uses: "actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97" # v7.0.0 | |
| with: | |
| python-version: "${{ matrix.python-version }}" | |
| allow-prereleases: true | |
| - uses: "astral-sh/setup-uv@c771a70e6277c0a99b617c7a806ffedaca235ff9" # v9.0.0 | |
| with: | |
| enable-cache: true | |
| - name: "Install dependencies" | |
| run: | | |
| python -VV | |
| python -m site | |
| uv --version | |
| uv sync --only-group nox --only-group coverage --no-install-project | |
| - name: "Run nox targets for ${{ matrix.python-version }}" | |
| run: "uv run nox --python ${{ matrix.python-version }}" | |
| - name: "Convert coverage" | |
| run: | | |
| uv run coverage combine | |
| uv run coverage xml | |
| - name: "Upload coverage to Codecov" | |
| uses: codecov/codecov-action@fb8b3582c8e4def4969c97caa2f19720cb33a72f # v7.0.0 | |
| with: | |
| fail_ci_if_error: true | |
| token: ${{ secrets.CODECOV_TOKEN }} | |
| alls-green: | |
| name: "all required checks passed" | |
| runs-on: "ubuntu-latest" | |
| if: always() | |
| needs: | |
| - lint | |
| - tests | |
| steps: | |
| - name: Decide whether the needed jobs succeeded or failed | |
| uses: re-actors/alls-green@05ac9388f0aebcb5727afa17fcccfecd6f8ec5fe # v1.2.2 | |
| with: | |
| jobs: ${{ toJSON(needs) }} |