Installation and versioning
A clean conda environment is recommended:
conda create -n zarrsmith python=3.12
conda activate zarrsmith
Then install the latest release from PyPI (add [napari] for the napari widgets):
pip install zarrsmith
pip install "zarrsmith[napari]"
Or install from the repository:
git clone https://github.com/embl-mif/zarrsmith.git
cd zarrsmith
pip install .
For development work:
pip install -e .
To use the napari widgets as well:
pip install -e .[napari]
The optional extras are napari (the widgets), notebooks (Jupyter, to run the example notebooks), dev (tests and packaging), docs (the documentation build) and all (all of them):
pip install -e .[napari,notebooks]
Versioning
ZarrSmith uses semantic versions (MAJOR.MINOR.PATCH) derived from git tags with setuptools-scm. The version is never edited by hand. Releases are opt-in: merging a PR into main does nothing unless the PR carries a release label, so you can merge many feature PRs and release once, from the PR that should trigger it:
PR label |
Result |
|---|---|
|
new |
|
new |
|
new |
none |
no release |
The label must be on the PR when it is merged (create the three labels once in the repository’s Labels page). The generated release notes cover everything merged since the previous release.
Direct pushes to main do not create a release; a Docker image can also be built by hand by pushing a v* tag or running the Docker workflow manually. Installs from untagged commits get a dev version such as 0.3.2.dev3+g1a2b3c4. Check the installed version with zarrsmith --version or zarrsmith.__version__.