Release history¶
Version 1.9.1¶
Just bump version to final, sorry
Version 1.9¶
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
versiontools.Version.from_expression()
that creates a Version object from a python import expression (and an optional variable identifer)Move and rename private function
versiontools.handle_version
toversiontools.setuptools_hooks:version()
.Move and rename private function
versiontools.get_exception_message
toversiontools._get_exception_message()
.Remove private function
versiontools.isstring
.
Version 1.8.3¶
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.
Version 1.8.2¶
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
Version 1.8.1¶
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.
Version 1.8¶
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.
Version 1.7¶
Add support for Mercurial repositories
Fix a bug in exception handling that affected 1.6
Version 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.
Version 1.5¶
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).
Version 1.4¶
Work harder to figure out the source tree a __version__ object comes from. This is possible with a new function
versiontools.Version.from_tuple_and_hint()
.Allow people to omit the version identifier in setup.py (defaulting to
__version__
)
Version 1.3.2¶
Change version string produced by
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
1.3.2
Comment
1.2.3
When VCS integration is not available
1.2.3.dev
When releaselevel==dev but VCS integration is not available we now add a .dev suffix to differentiate from released versions
1.2.3a5
or1.2.3a5.devREVNO
1.2.3a5
`.devREVNO
is only added when releaselevel==dev.It will never appear on alphas , betas or release candidates.
1.2.3b5
or1.2.3b5.devREVNO
1.2.3b5
1.2.3c5
or1.2.3c5.devREVNO
1.2.3c5
Version 1.3.1¶
To make setup.py test work in third party components we cannot use versiontools in our own setup.
Version 1.3¶
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
Version._find_source_tree()
.
See also
To get started quickly see Usage instructions
Version 1.2¶
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
Version 1.1¶
Change version string produced by
versiontools.Version.__str__()
to be compatible with PEP 386 The following table shows how old versions map to new versions:Old Version
New Version
Comment
1.2
1.2
1.2.3
1.2.3
1.2.3.dev.5
1.2.3.devREVNO
VCS revision and serial are two distinct fields. Serial is no longer displayed for development releases.
1.2.3.alpha.5
1.2.3a5
or1.2.3a5.devREVNO
.devREVNO
is only added when VCS integration is available.1.2.3.beta.5
1.2.3b5
or1.2.3b5.devREVNO
1.2.3.candidate.5
1.2.3c5
or1.2.3c5.devREVNO
Add
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.
Version 1.0.4¶
Add support to obtain VCS integration object via
vcs
attributeAdd support to obtain branch nickname from
BzrIntegration
(viabranch_nick
property)Add Code reference.
Version 1.0.3¶
Don’t crash when
ImportError
occurs during VCS integration initialization
Version 1.0.2¶
Add documentation
Fix chicken-and-egg problem so that packages can now depend on versiontools and still be installed correctly with pip
Version 1.0.1¶
Make VCS integration more robust in the way it locates source tree
Version 1.0¶
Initial release