diff --git a/azure/functions/__init__.py b/azure/functions/__init__.py index 7d8cf415..22f141e9 100644 --- a/azure/functions/__init__.py +++ b/azure/functions/__init__.py @@ -46,3 +46,5 @@ # Middlewares 'WsgiMiddleware', ) + +__version__ = '1.2.0' diff --git a/setup.py b/setup.py index c140e86c..7bcbfe58 100644 --- a/setup.py +++ b/setup.py @@ -1,9 +1,10 @@ from setuptools import setup +from azure.functions import __version__ setup( name='azure-functions', - version='1.2.0', + version=__version__, description='Azure Functions for Python', author='Microsoft Corporation', author_email='azpysdkhelp@microsoft.com', diff --git a/tests/test_code_quality.py b/tests/test_code_quality.py index 18e2d3b8..fe99a6f4 100644 --- a/tests/test_code_quality.py +++ b/tests/test_code_quality.py @@ -2,6 +2,8 @@ import subprocess import sys import unittest +import re +import azure.functions as func ROOT_PATH = pathlib.Path(__file__).parent.parent @@ -47,3 +49,11 @@ def test_flake8(self): output = ex.output.decode() raise AssertionError( f'flake8 validation failed:\n{output}') from None + + def test_library_version(self): + # PEP 440 Parsing version strings with regular expressions + is_valid = re.match( + r'^([1-9][0-9]*!)?(0|[1-9][0-9]*)(\.(0|[1-9][0-9]*))' + r'*((a|b|rc)(0|[1-9][0-9]*))?(\.post(0|[1-9][0-9]*))' + r'?(\.dev(0|[1-9][0-9]*))?$', func.__version__) is not None + self.assertTrue(is_valid, '__version__ field must be canonical')