Skip to main content

regionate

A package for creating xgcm-grid consistent regional masks and boundaries, leveraging its sibling package sectionate.

PyPI Conda Version Docs License

Quick Start Guide

For users: minimal installation within an existing environment

conda install -c conda-forge regionate

For developers: installing from scratch using conda

git clone git@github.com:hdrake/regionate.git
cd regionate
conda env create -f docs/environment.yml
conda activate docs_env_regionate
pip install -e .
python -m ipykernel install --user --name docs_env_regionate --display-name "docs_env_regionate"
jupyter-lab

Releasing

The git tag is the version. regionate has no version string checked into the source tree: hatch-vcs derives it from the tag at build time and writes regionate/_version.py (gitignored, but shipped inside the sdist and wheel). To cut a release you tag; there is no file to bump and nothing to keep in sync.

  1. Make sure main is green and has everything you want in the release.
  2. Publish a GitHub Release whose tag is vX.Y.Z, targeting the commit you want to ship:
    gh release create vX.Y.Z --target "$(git rev-parse origin/main)" \
      --title vX.Y.Z --generate-notes
    
    Publishing it (not merely pushing a tag) is what fires the workflow. Target the commit you actually want: a tag placed before the commit you meant to release builds the previous version, and PyPI rejects it as a duplicate.
  3. The Publish to PyPI workflow builds from that tag and uploads. It checks out with fetch-depth: 0 so the tag is visible to hatch-vcs, and asserts that the built version matches the tag before publishing.
  4. Verify: https://pypi.org/project/regionate/.
  5. conda-forge builds from the PyPI sdist and lags by design; the autotick bot opens the version-bump PR. Its recipe must list hatch-vcs alongside hatchling in host, since it builds with --no-build-isolation.

Two things follow from the tag being the version. Never add a version literal back to the tree — regionate/version.py is a shim over the generated file, and a 0.0.0+unknown from it means the package was imported without being built or installed, not that a number is missing. And any checkout that installs the package needs its tags: a shallow clone, or a fork that never fetched them, resolves a .devN version instead of the release line. That is why CI checks out with fetch-depth: 0 and Read the Docs unshallows in post_checkout.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

regionate-0.5.6.tar.gz (33.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

regionate-0.5.6-py3-none-any.whl (28.6 kB view details)

Uploaded Python 3

File details

Details for the file regionate-0.5.6.tar.gz.

File metadata

  • Download URL: regionate-0.5.6.tar.gz
  • Upload date:
  • Size: 33.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.6

File hashes

Hashes for regionate-0.5.6.tar.gz
Algorithm Hash digest
SHA256 ef07c411fd6a84b5cdcee4fd2c8074bda81f4760f399393141eff21d0e40fcf8
MD5 6d9aa58601e1a87f28f7068a19aa65e9
BLAKE2b-256 7b140804280a43aa9d2e9f04a78c1b7c0753d2bc12b95f475a30a53d6573bf65

See more details on using hashes here.

File details

Details for the file regionate-0.5.6-py3-none-any.whl.

File metadata

  • Download URL: regionate-0.5.6-py3-none-any.whl
  • Upload date:
  • Size: 28.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.14.6

File hashes

Hashes for regionate-0.5.6-py3-none-any.whl
Algorithm Hash digest
SHA256 fa23e7ef55da60c32a9209d0608bc457a6c70e74c18307f4c67493dc72b901a2
MD5 71de650d929bf3ce80e21fd97fab5e11
BLAKE2b-256 3f7c0bcf857dcd8a2d8549b05edc5a50ce8bc882b0d30b121cd164bf50f9a95b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page