vibeview.codenames¶
Release codename catalogue.
Every vibe-view minor release carries a “Person’s Animal” codename, the same
form the vibe-qc and vibe-queue series use, so the three products read as one
family. Each product draws from its own pool of people, so no name is ever
claimed twice; vibe-view’s pool is visualization, computer graphics and
crystallographic imaging. See docs/codenames.md for the policy and the
pool, and docs/release_process.md for where in a cut the entry is added.
This module is the single source of truth. Four surfaces read it:
vibe-view --version(vibeview.cli)the browser viewer’s About box (
vibeview.app)the Electron desktop About box, via the launcher handshake config (
electron/main.jsreadsCONFIG.codename)the documentation site’s
{{codename}}substitution (docs/conf.py, which loads this file standalone – it must therefore keep importing nothing beyond the standard library)
Before this module existed the string was pasted into all four by hand, which
is a drift the test suite could not see. tests/test_release_codenames.py
now checks that every surface agrees with the catalogue.
Programmatic API¶
codename_for_version(version)Resolve a version string to its codename, or
None.codename_for_current()Convenience: the codename of the running
vibeview.__version__.version_label()The
"2.15.2 -- Person's Animal"string the user-facing surfaces print.
Functions
Return the codename of the running vibe-view, or |
|
|
Return the codename for a vibe-view release version, or |
|
Format the version string the user-facing surfaces print. |
- vibeview.codenames.codename_for_current()[source]¶
Return the codename of the running vibe-view, or
None.Imported lazily so this module stays importable with nothing but the standard library –
docs/conf.pyloads it by path, outside the package, in a container wherevibeviewis not installed.- Return type:
str | None
- vibeview.codenames.codename_for_version(version)[source]¶
Return the codename for a vibe-view release version, or
None.Resolution order:
Strip any PEP-440
.devN/aN/bN/rcNsuffix and local version label, so a dev build inherits the codename of the release it leads up to.Direct lookup of the resulting
X.Y.ZinRELEASE_CODENAMES.Fall back to the parent minor,
f"{X}.{Y}.0", so patch releases inherit without needing an entry of their own.Nonewhen no codename is registered for that minor.
Examples
>>> codename_for_version("2.15.0") "Roothaan's Roadrunner" >>> codename_for_version("2.15.2") # patch inherits the minor "Roothaan's Roadrunner" >>> codename_for_version("2.15.0.dev1") # dev inherits the release "Roothaan's Roadrunner" >>> codename_for_version("99.99.99") is None True