diff options
author | Calum Lind <calumlind+deluge@gmail.com> | 2019-06-05 19:53:17 +0100 |
---|---|---|
committer | Calum Lind <calumlind+deluge@gmail.com> | 2019-06-06 11:30:45 +0100 |
commit | 5e738cf73aa09fa21557d1980ff570c8c0769cb2 (patch) | |
tree | c09c0c37e16ca241ba98efc605139d3854e6a0bf | |
parent | ce8595e8dd1631ac0e80045893018fcc9be39bcd (diff) | |
download | deluge-5e738cf73aa09fa21557d1980ff570c8c0769cb2.tar.gz deluge-5e738cf73aa09fa21557d1980ff570c8c0769cb2.tar.bz2 deluge-5e738cf73aa09fa21557d1980ff570c8c0769cb2.zip |
Simplify the get_version method
Use post segment instead of dev for non-dev tags.
Default to 'deluge-' and '.dev0' to simplify getting version.
Refactor to use subprocess.check_output
Use deluge.common.get_version as fallback in docs conf.
-rw-r--r-- | docs/source/conf.py | 8 | ||||
-rwxr-xr-x | version.py | 19 |
2 files changed, 13 insertions, 14 deletions
diff --git a/docs/source/conf.py b/docs/source/conf.py index 313c35289..44b0f3f5d 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -14,7 +14,6 @@ import os import sys from datetime import date -import pkg_resources from recommonmark.states import DummyStateMachine from recommonmark.transform import AutoStructify from six.moves import builtins @@ -34,7 +33,7 @@ sys.path.append( try: from version import get_version except ImportError: - get_version = None + from deluge.common import get_version # General configuration @@ -71,10 +70,7 @@ current_year = date.today().year copyright = '2008-%s, Deluge Team' % current_year # noqa: A001 # The full version, including alpha/beta/rc tags. -if get_version: - release = get_version(prefix='deluge-', suffix='.dev0') -else: - release = pkg_resources.get_distribution('Deluge').version +release = get_version() # The short X.Y version. version = '.'.join(release.split('.', 2)[:2]) diff --git a/version.py b/version.py index 2f2fc81ff..b1e36adc2 100755 --- a/version.py +++ b/version.py @@ -34,7 +34,7 @@ from __future__ import print_function, unicode_literals import os -from subprocess import PIPE, Popen +import subprocess __all__ = ('get_version',) @@ -44,16 +44,19 @@ VERSION_FILE = os.path.join(os.path.dirname(__file__), 'RELEASE-VERSION') def call_git_describe(prefix='', suffix=''): cmd = 'git describe --tags --match %s[0-9]*' % prefix try: - output = Popen(cmd.split(), stdout=PIPE, stderr=PIPE).communicate() - version = output[0].decode('utf-8').strip().replace(prefix, '') + output = subprocess.check_output(cmd.split(), stderr=subprocess.PIPE) + except subprocess.CalledProcessError: + return None + else: + version = output.decode('utf-8').strip().replace(prefix, '') + # A dash signifies git commit increments since parent tag. if '-' in version: - version = '.dev'.join(version.replace(suffix, '').split('-')[:2]) + segment = '.dev' if 'dev' in version else '.post' + version = segment.join(version.replace(suffix, '').split('-')[:2]) return version - except OSError: - return None -def get_version(prefix='', suffix=''): +def get_version(prefix='deluge-', suffix='.dev0'): try: with open(VERSION_FILE, 'r') as f: release_version = f.readline().strip() @@ -75,4 +78,4 @@ def get_version(prefix='', suffix=''): if __name__ == '__main__': - print(get_version(prefix='deluge-', suffix='.dev0')) + print(get_version()) |