From 51fbd66a0e9f0d575fcda8003c3828ffc2484788 Mon Sep 17 00:00:00 2001 From: Chandan Singh Date: Mon, 9 Nov 2020 23:49:30 +0000 Subject: setup.py: Ensure we have a version number BuildStream requires a version number at runtime. But, builds fine if I can't find any tags. So, make it an error at build time if we don't have a valid version number. Fixes #1383. --- setup.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'setup.py') diff --git a/setup.py b/setup.py index 334a96e2a..a7c698030 100755 --- a/setup.py +++ b/setup.py @@ -24,10 +24,24 @@ from pathlib import Path import re import sys + +################################### +# Ensure we have a version number # +################################### + # Add local directory to the path, in order to be able to import versioneer sys.path.append(os.path.dirname(__file__)) import versioneer # pylint: disable=wrong-import-position +version = versioneer.get_version() + +if version.startswith("0+untagged"): + print( + "Your git repository has no tags - BuildStream can't " "determine its version. Please run `git fetch --tags`.", + file=sys.stderr, + ) + sys.exit(1) + ################################################################## # Python requirements @@ -315,8 +329,7 @@ register_cython_module("buildstream._variables", dependencies=["buildstream.node ##################################################### setup( name="BuildStream", - # Use versioneer - version=versioneer.get_version(), + version=version, cmdclass=get_cmdclass(), author="BuildStream Developers", author_email="dev@buildstream.apache.org", -- cgit v1.2.1