Howdy Barry,
Nitpick: Please call these “version strings”. A version string is hardly
ever just one number, and not in the general case anyway.
I'd like to suggest another user story:
Barry Warsaw
User Stories ============
Emily maintains a package consisting of programs and modules in several languages that inter-operate; several are Python, but some are Unix shell, Perl, and there are some C modules. Emily decides the simplest API for all these modules to get the package version string is a single text file named ``version`` at the root of the project tree. All the programs and modules, including the ``setup.py`` file, simply read the contents of ``version`` to get the version string. This is an often-overlooked case, I think. The unspoken assumption is often that ``setup.py`` is a suitable place for the overall version string, but this is not the case when that string must be read by non-Python programs. -- \ “If you can't beat them, arrange to have them beaten.” —George | `\ Carlin | _o__) | Ben Finney