Browse Source

Use git tag as version.

master 1.7.14-2
Erik Stein 4 years ago
parent
commit
7ea1abf954
  1. 2
      featherlight_js/__init__.py
  2. 33
      setup.py

2
featherlight_js/__init__.py

@ -1,2 +0,0 @@
__version__ = '1.7.9'
VERSION = tuple(int(d) for d in __version__.split('.'))

33
setup.py

@ -1,14 +1,39 @@
#!/usr/bin/env python
from io import open
import os
from setuptools import setup, find_packages
import os
import re
import subprocess
"""
Use `git tag -a 1.0.0` to tag a release; `python setup.py --version`
to update the _version.py file.
"""
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('-')
if len(parts) == 3:
version = '{}.{}+{}'.format(*parts)
else:
version = parts[0]
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']

Loading…
Cancel
Save