xbudget: easy handling of budgets diagnosed from General Circulation Models with xarray
Quick Start Guide
For users: minimal installation within an existing environment
conda install -c conda-forge xbudget
For developers: installing from scratch using conda
git clone git@github.com:hdrake/xbudget.git
cd xbudget
conda env create -f docs/environment.yml
conda activate docs_env_xbudget
pip install -e .
python -m ipykernel install --user --name docs_env_xbudget --display-name "docs_env_xbudget"
jupyter-lab
Releasing
The git tag is the version. xbudget has no version string checked into the
source tree: hatch-vcs derives it from the tag at build time and writes
xbudget/_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.
- Make sure
mainis green and has everything you want in the release, and move the## Unreleasedentries in CHANGELOG.md under the new version heading. - 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. - The Publish to PyPI workflow builds from that tag and uploads. It checks
out with
fetch-depth: 0so the tag is visible tohatch-vcs, and asserts that the built version matches the tag before publishing. - Verify: https://pypi.org/project/xbudget/.
- conda-forge builds from the PyPI sdist and lags by design; the autotick bot
opens the version-bump PR. The feedstock recipe must list
hatch-vcsalongsidehatchlingin itshostrequirements, since it builds with--no-build-isolation.
Release files for xbudget 0.8.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| xbudget-0.8.0.tar.gz | 103.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| xbudget-0.8.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 184.5 kB
Release files / xbudget-0.8.0.tar.gz
| Download URL | xbudget-0.8.0.tar.gz |
|---|---|
| Size | 103.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d813eda4a9ca00527a2ec4b6186634a5c5b56b4557b8311cce2be488a680708f
|
|
BLAKE2b-256 checksum How to use checksums |
e22e38b790153762a3566ff8daaa628369fad4c29f6d29497090a5aa41489b4c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|
Release files / xbudget-0.8.0-py3-none-any.whl
| Download URL | xbudget-0.8.0-py3-none-any.whl |
|---|---|
| Size | 81.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3223a886a46b66ffcd8e4b39257369eb3cb29ef1282f55cb2fc725d89e8b67ce
|
|
BLAKE2b-256 checksum How to use checksums |
5ef0786634bde6e265c690fe2df14103de321bcb4ef984c95eff7085bd1ef067
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.6
|