CLgen Version Numbering¶
The installed version is available from the command line:
$ clgen --version
or from the API:
>>> import clgen
>>> clgen.version()
CLgen uses a <major>.<minor>.<micro>[.<dev>]
version numbering scheme. E.g.
clgen 0.3.1
means major release 0, minor release 3, micro release 1.clgen 0.2.10.dev0
means development version 0 of major release 0, minor release 2, micro release 10.
CLgen uses versioned caches, using the path ~/.cache/clgen/<major>.<minor>.x
. This means that caches between different micro and development releases are shared.
Release Schedule¶
There is no formal release schedule, but released versions follow the rough guidelines:
- Development releases (e.g.
0.1.1
to0.1.1.dev0
) are not tagged, so there is no “curl one-liner” installation scripts. They may be installed only by cloning the development repository. There may be multiple development releases per micro release. - Micro releases (e.g.
0.1.1
->0.1.2
) micro releases (and all other release types) are tagged, so that they may be installed using versionedinstall-{deps,cpu,cuda}.sh
scripts. Changes between micro releases may include bug fixes, refactors, and changes to command line and API usage. - Minor releases (e.g.
0.1.3
->0.2.0
) any change which breaks compatibility of filesystem caches (e.g. everything under~/.cache/clgen/<major.<minor>.x
) must require a minor release. - Major releases (e.g.
0.10.23
->1.0.0
) Who knows? This is still alpha software. Maybe a major release will be the time I sell the company and retire to the Bahamas. Thank you for participating in our incredible journey.