[bumpversion]
-current_version = 50.0.2
+current_version = 50.0.3
commit = True
tag = True
+v50.0.3
+-------
+
+* #2363: Restore link_libpython support on Python 3.7 and earlier (see pypa/distutils#9).
+
+
v50.0.2
-------
url='http://bugs.jython.org/issue{jython}',
),
dict(
- pattern=r'Python #(?P<python>\d+)',
+ pattern=r'(Python #|bpo-)(?P<python>\d+)',
url='http://bugs.python.org/issue{python}',
),
dict(
pattern=r'setuptools_svn #(?P<setuptools_svn>\d+)',
url='{GH}/jaraco/setuptools_svn/issues/{setuptools_svn}',
),
+ dict(
+ pattern=r'pypa/distutils#(?P<distutils>\d+)',
+ url='{GH}/pypa/distutils/issues/{distutils}',
+ ),
dict(
pattern=r'^(?m)((?P<scm_version>v?\d+(\.\d+){1,2}))\n[-=]+\n',
with_scm='{text}\n{rev[timestamp]:%d %b %Y}\n',
[metadata]
name = setuptools
-version = 50.0.2
+version = 50.0.3
description = Easily download, build, install, upgrade, and uninstall Python packages
author = Python Packaging Authority
author_email = distutils-sig@python.org
from distutils.extension import Extension
from distutils.util import get_platform
from distutils import log
+from . import py37compat
from site import USER_BASE
ldversion = get_config_var('LDVERSION')
return ext.libraries + ['python' + ldversion]
- return ext.libraries
+ return ext.libraries + py37compat.pythonlib()
--- /dev/null
+import sys
+
+
+def _pythonlib_compat():
+ """
+ On Python 3.7 and earlier, distutils would include the Python
+ library. See pypa/distutils#9.
+ """
+ from distutils import sysconfig
+ if not sysconfig.get_config_var('Py_ENABLED_SHARED'):
+ return
+
+ yield 'python{}.{}{}'.format(
+ sys.hexversion >> 24,
+ (sys.hexversion >> 16) & 0xff,
+ sysconfig.get_config_var('ABIFLAGS'),
+ )
+
+
+def compose(f1, f2):
+ return lambda *args, **kwargs: f1(f2(*args, **kwargs))
+
+
+pythonlib = (
+ compose(list, _pythonlib_compat)
+ if sys.version_info < (3, 8)
+ and sys.platform != 'darwin'
+ and sys.platform[:3] != 'aix'
+ else list
+)