First release published to all three distribution channels from a single tag: PyPI sdist, the geodels conda channel, and the geodels/gospl-hpc Docker image. Documentation covers the new PyPI install path; the version-spelling convention has been normalised so the artefact name is identical across all channels.
ℹ️
v2026.6.12shipped to PyPI and Docker Hub one day earlier but did not reach thegeodelsconda channel —conda/meta.yamlhad not been bumped, so the conda-build run silently skipped the upload (anaconda upload --skip-existingmatched the existing 2026-06-11 release).v2026.6.13is the first release that exists on all three channels. PyPI users ongospl==2026.6.12are functionally equivalent to2026.6.13; the only diff is doc/AGENTS.md.
New distribution channel: PyPI
pip install --no-deps --no-build-isolation gospl- New
.github/workflows/pypi-publish.ymlbuilds the sdist on everyv*tag push and publishes via Trusted Publishing (OIDC, no API tokens).workflow_dispatchtriggers a TestPyPI dry-run upload. - Sdist-only by design (no binary wheels). goSPL links against the user's MPI / PETSc / parallel-HDF5 stack at install time; a wheel would lock those bindings to a single MPI ABI.
- New
docs/getting_started/installPip.rstcovers the bring-your-own-MPI constraints, the--no-deps --no-build-isolationrationale, and the TestPyPI dry-run recipe.
Version-spelling convention
Adopted no-leading-zero spelling (2026.6.13, not 2026.06.13) so PyPI display, conda artefact filename, git tag, and gospl.__version__ are all bitwise-identical. PyPI auto-normalises per PEP 440; conda does not — writing the no-zero form throughout the project avoids the channel divergence the old spelling created.
| Channel | Artefact |
|---|---|
| PyPI | gospl 2026.6.13 |
conda (geodels) |
gospl-2026.6.13-*.conda |
| Docker Hub | geodels/gospl-hpc:v2026.6.13 |
Release-process fix (silent-no-op guard)
conda/meta.yaml:2 is now formally documented as a second source of truth that must be bumped in lockstep with meson.build:4. The previous tag (v2026.6.12) caught conda-build silently no-op'ing the upload because the two had drifted. AGENTS.md > __version__ records the rationale; commit-checklist item 11 enforces the two-file bump for future releases.
Documentation
- New
docs/getting_started/installPip.rst— PyPI sdist install path, bring-your-own-MPI constraints, editable-dev section, TestPyPI dry-run. - Updated install pages (
installHPC,installConda,installDocker) referencev2026.6.13. - AGENTS.md — Released-packages table extended, Milestones table records both
v2026.6.12(PyPI+Docker only) andv2026.6.13(full sync), version-source claim corrected, "Last reviewed" bumped.
Install
# Conda (recommended for fresh installs — pulls every dep including MPI/PETSc)
mamba install -c geodels -c conda-forge gospl
# PyPI (requires an existing MPI / PETSc / parallel-HDF5 stack)
pip install --no-deps --no-build-isolation gospl
# Docker / Singularity HPC container (NCI Gadi, Pawsey Setonix)
docker pull geodels/gospl-hpc:v2026.6.13
singularity pull docker://geodels/gospl-hpc:v2026.6.13Full changelog: v2026.06.11...v2026.6.13
Form options to set:
- Target: v2026.6.13 (auto-populated from the URL)
- Previous tag: v2026.06.11 (so the auto-generated changelog button works if you want to add it — but the manual notes above already cover it).
- Set as the latest release ✓ (check this box)
- Create a discussion for this release — your call; usually nice for major releases, optional.
- Leave "Set as a pre-release" unchecked.