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.1means major release 0, minor release 3, micro release 1.
- clgen 0.2.10.dev0means 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.1to0.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}.shscripts. 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.