summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCalum Lind <calumlind+deluge@gmail.com>2019-06-05 19:53:17 +0100
committerCalum Lind <calumlind+deluge@gmail.com>2019-06-06 11:30:45 +0100
commit5e738cf73aa09fa21557d1980ff570c8c0769cb2 (patch)
treec09c0c37e16ca241ba98efc605139d3854e6a0bf
parentce8595e8dd1631ac0e80045893018fcc9be39bcd (diff)
downloaddeluge-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.py8
-rwxr-xr-xversion.py19
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())