From 00cd072ca13151168d464f8c0dae088181a3277b Mon Sep 17 00:00:00 2001 From: Carl Bordum Hansen Date: Sun, 14 Jul 2019 16:19:30 +0200 Subject: [PATCH] bpo-37592: sysconfig no longer relies on sys.version --- Lib/sysconfig.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Lib/sysconfig.py b/Lib/sysconfig.py index e76e6927cb1ff3..3aec2fd9d298d5 100644 --- a/Lib/sysconfig.py +++ b/Lib/sysconfig.py @@ -84,9 +84,12 @@ _SCHEME_KEYS = ('stdlib', 'platstdlib', 'purelib', 'platlib', 'include', 'scripts', 'data') - # FIXME don't rely on sys.version here, its format is an implementation detail - # of CPython, use sys.version_info or sys.hexversion -_PY_VERSION = sys.version.split()[0] +if sys.version_info.releaselevel == "final": + _PY_VERSION = "{}.{}.{}".format(*sys.version_info[:3]) +else: + major, minor, micro, releaselevel, serial = sys.version_info + releasetoken = "rc" if releaselevel == "candidate" else releaselevel[0] + _PY_VERSION = f"{major}.{minor}.{micro}{releasetoken}{serial}" _PY_VERSION_SHORT = '%d.%d' % sys.version_info[:2] _PY_VERSION_SHORT_NO_DOT = '%d%d' % sys.version_info[:2] _PREFIX = os.path.normpath(sys.prefix)