diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7aa22ea..999a86e 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -35,6 +35,7 @@ jobs: # packaging metadata (trove classifiers). python-versions: ${{ steps.baipp.outputs.supported_python_classifiers_json_array }} + tests: name: Tests & Mypy API on ${{ matrix.python-version }} runs-on: ubuntu-latest @@ -84,6 +85,7 @@ jobs: --installpkg dist/*.whl -e py${PYTHON//./}-mypy + coverage: name: Ensure 100% test coverage runs-on: ubuntu-latest @@ -125,6 +127,7 @@ jobs: path: htmlcov if: ${{ failure() }} + mypy-pkg: name: Mypy Codebase runs-on: ubuntu-latest @@ -169,6 +172,7 @@ jobs: echo "$PWD/.venv/bin" >> $GITHUB_PATH - uses: jakebailey/pyright-action@v2 + docs: name: Build docs & run doctests needs: build-package @@ -190,6 +194,7 @@ jobs: uvx --with tox-uv tox run -e docs + install-dev: name: Verify dev env runs-on: ubuntu-latest @@ -212,6 +217,7 @@ jobs: python -Ic 'import svcs.flask' python -Ic 'import svcs.pyramid' + required-checks-pass: if: always() name: Ensure everything required is passing for branch protection. diff --git a/.github/workflows/pypi-package.yml b/.github/workflows/pypi-package.yml index 6455bcf..9703ec7 100644 --- a/.github/workflows/pypi-package.yml +++ b/.github/workflows/pypi-package.yml @@ -11,12 +11,6 @@ on: workflow_dispatch: -env: - FORCE_COLOR: "1" # Make tools pretty. - PIP_DISABLE_PIP_VERSION_CHECK: "1" - PIP_NO_PYTHON_VERSION_WARNING: "1" - - jobs: # Always build & lint package. build-package: @@ -36,6 +30,7 @@ jobs: with: attest-build-provenance-github: 'true' + # Upload to Test PyPI on every commit on main. release-test-pypi: name: Publish in-dev package to test.pypi.org @@ -59,6 +54,7 @@ jobs: with: repository-url: https://test.pypi.org/legacy/ + # Upload to real PyPI on GitHub Releases. release-pypi: name: Publish released package to pypi.org