Adding a Version Option to Your App =================================== Almost every app out there supports a ``--version`` option of some sort that provides the end user with version information. This is pretty important to include, so we've added an example below. .. code-block:: python from cement.core.foundation import CementApp from cement.core.controller import CementBaseController VERSION = '0.9.1' BANNER = """ My Awesome Application v%s Copyright (c) 2014 John Doe Enterprises """ % VERSION class MyBaseController(CementBaseController): class Meta: label = 'base' description = 'MyApp Does Amazing Things' arguments = [ (['-v', '--version'], dict(action='version', version=BANNER)), ] class MyApp(CementApp): class Meta: label = 'myapp' base_controller = MyBaseController with MyApp() as app: app.run() This looks like: .. code-block:: text $ python myapp.py --help usage: myapp.py (sub-commands ...) [options ...] {arguments ...} MyApp Does Amazing Things optional arguments: -h, --help show this help message and exit --debug toggle debug output --quiet suppress all output -v, --version show program's version number and exit $ python myapp.py --version My Awesome Application v0.9.1 Copyright (c) 2014 John Doe Enterprises