Browse Source

include git commit count in version and update in setup.py

master
j 7 years ago
parent
commit
aee11eb907
  1. 1
      .gitignore
  2. 24
      setup.py
  3. 8
      shared/utils/__init__.py

1
.gitignore vendored

@ -58,3 +58,4 @@ docs/_build/
# PyBuilder
target/
_version.py

24
setup.py

@ -1,14 +1,30 @@
#!/usr/bin/env python
from io import open
import os
from setuptools import setup, find_packages
import os
import re
import subprocess
def get_version(prefix):
import re
with open(os.path.join(prefix, '__init__.py')) as fd:
metadata = dict(re.findall("__([a-z]+)__ = '([^']+)'", fd.read()))
if os.path.exists('.git'):
parts = subprocess.check_output(['git', 'describe', '--tags']).decode().strip().split('-')
version = '{}.{}+{}'.format(*parts)
version_py = "__version__ = '{}'".format(version)
_version = os.path.join(prefix, '_version.py')
if not os.path.exists(_version) or open(_version).read().strip() != version_py:
with open(_version, 'w') as fd:
fd.write(version_py)
return version
else:
for f in ('_version.py', '__init__.py'):
f = os.path.join(prefix, f)
if os.path.exists(f):
with open(f) as fd:
metadata = dict(re.findall("__([a-z]+)__ = '([^']+)'", fd.read()))
if 'version' in metadata:
break
return metadata['version']

8
shared/utils/__init__.py

@ -3,8 +3,14 @@ from __future__ import unicode_literals
# Erik Stein <code@classlibrary.net>, 2007-2016
__version__ = '0.2.1'
VERSION = tuple(int(d) for d in __version__.split('.'))
try:
from ._version import __version__
except ImportError:
pass
VERSION = __version__.split('+')
VERSION = tuple(list(map(int, VERSION[0].split('.'))) + VERSION[1:])
try:
from django.utils.translation import ugettext_lazy as _

Loading…
Cancel
Save