chore: prevent normalization of semver versioning (#172)

* chore: prevent normalization of semver versioning

* chore: update workaround to make sic work

* chore: loosening setuptools 46.x for Python2
diff --git a/setup.py b/setup.py
index 5de5aaf..9bdb4ef 100644
--- a/setup.py
+++ b/setup.py
@@ -17,6 +17,21 @@
 
 import setuptools
 
+# Disable version normalization performed by setuptools.setup()
+# Including this workaround for Python2.7 support
+try:
+    # Try the approach of using sic(), added in setuptools 46.1.0
+    from setuptools import sic
+except ImportError:
+    # Try the approach of replacing packaging.version.Version
+    sic = lambda v: v
+    try:
+        # setuptools >=39.0.0 uses packaging from setuptools.extern
+        from setuptools.extern import packaging
+    except ImportError:
+        # setuptools <39.0.0 uses packaging from pkg_resources.extern
+        from pkg_resources.extern import packaging
+    packaging.version.Version = packaging.version.LegacyVersion
 
 # Package metadata.
 
@@ -74,7 +89,7 @@
 
 setuptools.setup(
     name=name,
-    version=version,
+    version=sic(version),
     description=description,
     long_description=readme,
     author="Google LLC",