Skip to content

Versioning

Rob Kelly edited this page May 1, 2019 · 3 revisions

pyGSTi Version Numbers

The standards on this page are a proposal and may not apply to the current version of pyGSTi

pyGSTi uses a modified semantic versioning numbering system. Releases are numbered like this:

v[official].[major].[minor].[patch]

Where:

  • The official version is either 0 for a development release, or 1 for a production release.

  • The major version is incremented when a release makes incompatible API changes.

  • The minor version is incremented when a release adds new functionality without breaking backwards-compatibility.

  • The patch version is incremented when a release only includes backwards-compatible bug fixes.

The only place where the version number is defined is in the git tag of a new release. pyGSTi uses setuptools-scm internally to determine the current version number. On an unstable development version of pyGSTi, the current version number looks like this:

[next_version].dev[distance]+g[revision]

Where:

  • The next_version is determined by adding 1 to the last version number of the latest tag from the current commit.

  • The distance is the number of commits since the latest tag.

  • The revision is the abbreviated git slug of the latest commit.

You can check the installed version of pyGSTi like this:

$ python -c "import pygsti; print(pygsti.__version__)" 2>/dev/null
0.9.7.4.dev105+g844d62ec

You should use the above command whenever you want to reference the currently-installed version number of pyGSTi in a script.

Clone this wiki locally