1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
|
python-semanticversion
======================
.. image:: https://secure.travis-ci.org/rbarrois/python-semanticversion.png?branch=master
:target: http://travis-ci.org/rbarrois/python-semanticversion/
This small python library provides a few tools to handle `SemVer <http://semver.org>`_ in Python.
The first release (0.1.0) should handle the 2.0.0-rc1 version of the SemVer scheme.
Usage
=====
Define a Version::
>>> from semantic_version import Version
>>> v = Version('0.1.1')
Compare it to other versions::
>>> v < Version('0.1.2')
True
>>> sorted([Version('0.1.1'), Version('0.11.1'), Version('0.1.1-alpha')])
[<SemVer(0, 1, 1, ('alpha',), ())>,
<SemVer(0, 1, 1, (), ())>,
<SemVer(0, 11, 1, (), ())>]
Define a simple specification::
>>> from semantic_version import Spec
>>> s = Spec('>=0.1.1')
>>> Version('0.1.1') in s
True
>>> Version('0.1.1-alpha') in s
False
Define complex specifications::
>>> from semantic_version import SpecList
>>> s = SpecList('>=0.1.1,<0.2.0')
>>> Version('0.1.2') in s
True
>>> Version('0.3.0') in s
False
>>> Version('0.2.0') in s
False
Framework integration
=====================
Integrates with `Django <http://djangoproject.com>`_, through ``VersionField``, ``SpecField`` and ``SpecListField``::
from semantic_version import django_fields as semver_fields
class MyComputer(models.Model):
name = models.CharField(max_length=40)
kernel_version = semver_fields.VersionField()
Links
=====
- Package on `PyPI <http://pypi.python.org/>`_: http://pypi.python.org/semantic_version/
- Doc on `ReadTheDocs <http://readthedocs.org/>`_: http://readthedocs.org/docs/python-semanticversion/
- Source on `GitHub <http://github.com/>`_: http://github.com/rbarrois/python-semanticversion/
- Build on `Travis CI <http://travis-ci.org/>`_: http://travis-ci.org/rbarrois/python-semanticversion/
- Semantic Version specification: http://semver.org/
|