Skip to content

Commit 2ae0312

Browse files
committed
setup: look for distutils in setuptools
distutils isn't part of the stdlib in Python 3.12+. Let's try to load setuptools's copy instead.
1 parent 3fcb6a1 commit 2ae0312

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

setup.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,17 @@
77

88
from __future__ import print_function
99

10-
from distutils.version import LooseVersion
1110
import platform
1211
import os
1312
import sys
1413
from setuptools import setup
1514

15+
# Python 3.12 dropped distutils from the stdlib. Try to access it via
16+
# setuptools.
17+
try:
18+
from setuptools._distutils.version import LooseVersion
19+
except ImportError:
20+
from distutils.version import LooseVersion
1621

1722
if sys.version_info[0:2] < (3, 8):
1823
print("Python 3.8+ is required", file=sys.stderr)

0 commit comments

Comments
 (0)