From 53d0f1fd022f2d09c3ddff86a50c11cfa3b16578 Mon Sep 17 00:00:00 2001 From: Ronny Pfannschmidt Date: Sun, 21 May 2017 10:25:42 +0200 Subject: [PATCH] fail in borg package if version metadata is completely broken this helps to fail early when people do badly done scm based repackaging --- src/borg/__init__.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/borg/__init__.py b/src/borg/__init__.py index 9ac0e0f90..33b9616d7 100644 --- a/src/borg/__init__.py +++ b/src/borg/__init__.py @@ -4,3 +4,15 @@ from ._version import version as __version__ __version_tuple__ = tuple(LooseVersion(__version__).version[:3]) + +# assert that all semver components are integers +# this is mainly to show errors when people repackage poorly +# and setuptools_scm determines a 0.1.dev... version +assert all(isinstance(v, int) for v in __version_tuple__), \ + """\ +broken borgbackup version metadata: %r + +version metadata is obtained dynamically on installation via setuptools_scm, +please ensure your git repo has the correct tags or you provide the version +using SETUPTOOLS_SCM_PRETEND_VERSION in your build script. +""" % __version__