Skip to content

Commit 9990a8e

Browse files
authored
chore: prevent normalization of semver versioning (#227)
* chore: prevent normalization of semver versioning * chore: update style for consistency * chore: update workaround to make sic work
1 parent 36ec8dd commit 9990a8e

File tree

1 file changed

+19
-4
lines changed

1 file changed

+19
-4
lines changed

packages/proto-plus/setup.py

Lines changed: 19 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,22 @@
1515
import io
1616
import os
1717

18-
from setuptools import find_packages, setup
18+
import setuptools
19+
20+
# Disable version normalization performed by setuptools.setup()
21+
try:
22+
# Try the approach of using sic(), added in setuptools 46.1.0
23+
from setuptools import sic
24+
except ImportError:
25+
# Try the approach of replacing packaging.version.Version
26+
sic = lambda v: v
27+
try:
28+
# setuptools >=39.0.0 uses packaging from setuptools.extern
29+
from setuptools.extern import packaging
30+
except ImportError:
31+
# setuptools <39.0.0 uses packaging from pkg_resources.extern
32+
from pkg_resources.extern import packaging
33+
packaging.version.Version = packaging.version.LegacyVersion
1934

2035
version = "1.18.1"
2136

@@ -24,14 +39,14 @@
2439
with io.open(os.path.join(PACKAGE_ROOT, "README.rst")) as file_obj:
2540
README = file_obj.read()
2641

27-
setup(
42+
setuptools.setup(
2843
name="proto-plus",
29-
version=version,
44+
version=sic(version),
3045
license="Apache 2.0",
3146
author="Google LLC",
3247
author_email="googleapis-packages@google.com",
3348
url="https://github.com/googleapis/proto-plus-python.git",
34-
packages=find_packages(exclude=["docs", "tests"]),
49+
packages=setuptools.find_packages(exclude=["docs", "tests"]),
3550
description="Beautiful, Pythonic protocol buffers.",
3651
long_description=README,
3752
platforms="Posix; MacOS X",

0 commit comments

Comments
 (0)