- Just bump version to final, sorry
- Reorganize and update documentation.
- Add a new way of using versiontools that does not require using
setup_requires. This way is based on bundling a small helper module to help you bootstrap your project when installed from source.
- Add :meth:`versiontools.Version.from_expression()` that creates a Version object from a python import expression (and an optional variable identifer)
- Move and rename private function
- Move and rename private function
- Remove private function
- Fix incorrectly specified line in git support. Previosuly a KeyError may bleed to the outside calling code, depending on python version.
- Fix incorrectly specified line in bzr support. Previously a non-bzr directory could be associated as a malformed bzr branch.
- Improve git support by adding code paths compatible with python-git 0.1.6 (which is easier to get on Debian)
- Change git support to default to short commit id. If you want to access the long commit id you need to access it directly as GitIntegration.commit_id
- Improve performance when working with checkouts. The use of branch.nick has been replaced with branch._get_nick(local=True). This avoids network operations and is much more responsive.
- Fixed all pep8 issues (prettier syntax)
- Fixed an issue with using __import__ on Python 2.4.
- Fixed an issue with using :versiontools:path.to.symbol with nested modules
- Fixed an issue with using exceptions on Python 3.x
- Added test that demostrated that exception handling works on all Python versions.
- Unified error handling across version control plugins.
- General documentation improvements, installation, usage, code refrerence, and writing additional plug-ins.
- Added a backwards incompatible constraint on serial to be greater than zero on alpha, beta and release candidates as required by PEP 386.
- Add support for Mercurial repositories
- Fix a bug in exception handling that affected 1.6
- Add support for python2.4 and python2.5 thanks to Jannis Leidel (thanks!).
- Add tox (http://codespeak.net/~hpk/tox/) configuration file for easier testing.
- Added Git support, contributed by Jannis Leidel (thanks!). To use it you need GitPython >= 0.3.2.RC1. It does not currently work on GitPython packaged in Ubuntu Natty (0.1.6).
- Work harder to figure out the source tree a __version__ object comes from. This is possible with a new function :meth:`versiontools.Version.from_tuple_and_hint`.
- Allow people to omit the version identifier in setup.py (defaulting to
Change version string produced by :meth:`versiontools.Version.__str__` and versiontools.format_version to be more useful when vcs integration is not available and the release is not final. Consult the table below for details.
Prior to 1.3.2
When VCS integration is not available
When releaselevel==dev but VCS integration is not available we now add a .dev suffix to differentiate from released versions
.devREVNOis only added when releaselevel==dev.
It will never appear on alphas , betas or release candidates.
- To make setup.py test work in third party components we cannot use versiontools in our own setup.
- Add integration with setuptools (or more accurately, distribute) so that you no longer have to try-import versiontools. This means that you may finally install your packages with pip and everything will work correctly.
- Prevent an unexplained crash when following the backtrace in
.. seealso:: To get started quickly see :ref:`usage`
- Change how vcs objects are constructed. With this change they are only constructed lazily when needed. This speeds up common operations, delays the time any additional modules are imported (if any) and retains backwards comp ability.
- Updated documentation on installation instructions to point to the new PPA
- Updated recommended usage guide so that installed programs do not depend on versiontools. This allows you to use versiontools in setup.py and still benefit from the smart version formatting and keep your deployment lightweight.
- Added basic unit tests
- Fixed most PEP8 issues
VCS revision and serial are two distinct fields. Serial is no longer displayed for development releases.
.devREVNOis only added when VCS integration is available.
Add :func:`versiontools.format_version` that converts a 5-element tuple to a proper version string and is more obvious in intent.
Change default of Version releaselevel to "final"
Change default of Version serial to 0
Serial field is no longer initialized with revision number from vcs, instead it is used to count alphas, betas and release candidates.
All version components except for releaselevel must be non-negative integers or strings that can be converted to such integers
Do not warn about "directory foo is not a bzr branch". This message was changed to debug as it is now legitimate for released code not to have bzr version control files.
- Add support to obtain VCS integration object via :data:`~versiontools.Version.vcs` attribute
- Add support to obtain branch nickname from :class:`~versiontools.bzr_support.BzrIntegration` (via :data:`~versiontools.bzr_support.BzrIntegration.branch_nick` property)
- Add :ref:`code_reference`.
- Don't crash when :class:`ImportError` occurs during VCS integration initialization
- Add documentation
- Fix chicken-and-egg problem so that packages can now depend on versiontools and still be installed correctly with pip
- Make VCS integration more robust in the way it locates source tree
- Initial release