[Python-checkins] r72380 - in python/branches/release30-maint: Lib/distutils/command/build_clib.py Lib/distutils/tests/test_build_clib.py Misc/NEWS
tarek.ziade
python-checkins at python.org
Wed May 6 09:30:48 CEST 2009
Author: tarek.ziade
Date: Wed May 6 09:30:47 2009
New Revision: 72380
Log:
Merged revisions 72379 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r72379 | tarek.ziade | 2009-05-06 09:26:24 +0200 (Wed, 06 May 2009) | 1 line
Fixed #5940: distutils.command.build_clib.check_library_list is doing the right checkings again
........
Added:
python/branches/release30-maint/Lib/distutils/tests/test_build_clib.py
- copied, changed from r72379, /python/branches/py3k/Lib/distutils/tests/test_build_clib.py
Modified:
python/branches/release30-maint/ (props changed)
python/branches/release30-maint/Lib/distutils/command/build_clib.py
python/branches/release30-maint/Misc/NEWS
Modified: python/branches/release30-maint/Lib/distutils/command/build_clib.py
==============================================================================
--- python/branches/release30-maint/Lib/distutils/command/build_clib.py (original)
+++ python/branches/release30-maint/Lib/distutils/command/build_clib.py Wed May 6 09:30:47 2009
@@ -118,13 +118,15 @@
def check_library_list(self, libraries):
- """Ensure that the list of libraries (presumably provided as a
- command option 'libraries') is valid, i.e. it is a list of
- 2-tuples, where the tuples are (library_name, build_info_dict).
- Raise DistutilsSetupError if the structure is invalid anywhere;
- just returns otherwise."""
- # Yechh, blecch, ackk: this is ripped straight out of build_ext.py,
- # with only names changed to protect the innocent!
+ """Ensure that the list of libraries is valid.
+
+ `library` is presumably provided as a command option 'libraries'.
+ This method checks that it is a list of 2-tuples, where the tuples
+ are (library_name, build_info_dict).
+
+ Raise DistutilsSetupError if the structure is invalid anywhere;
+ just returns otherwise.
+ """
if not isinstance(libraries, list):
raise DistutilsSetupError(
"'libraries' option must be a list of tuples")
@@ -134,15 +136,18 @@
raise DistutilsSetupError(
"each element of 'libraries' must a 2-tuple")
- if isinstance(lib[0], str):
+ name, build_info = lib
+
+ if not isinstance(name, str):
raise DistutilsSetupError(
"first element of each tuple in 'libraries' "
"must be a string (the library name)")
- if '/' in lib[0] or (os.sep != '/' and os.sep in lib[0]):
+
+ if '/' in name or (os.sep != '/' and os.sep in name):
raise DistutilsSetupError("bad library name '%s': "
"may not contain directory separators" % lib[0])
- if not isinstance(lib[1], dict):
+ if not isinstance(build_info, dict):
raise DistutilsSetupError(
"second element of each tuple in 'libraries' "
"must be a dictionary (build info)")
Copied: python/branches/release30-maint/Lib/distutils/tests/test_build_clib.py (from r72379, /python/branches/py3k/Lib/distutils/tests/test_build_clib.py)
==============================================================================
--- /python/branches/py3k/Lib/distutils/tests/test_build_clib.py (original)
+++ python/branches/release30-maint/Lib/distutils/tests/test_build_clib.py Wed May 6 09:30:47 2009
@@ -1,6 +1,8 @@
"""Tests for distutils.command.build_clib."""
import unittest
+import os
+from distutils.dist import Distribution
from distutils.command.build_clib import build_clib
from distutils.errors import DistutilsSetupError
from distutils.tests import support
@@ -10,7 +12,10 @@
unittest.TestCase):
def test_check_library_dist(self):
- pkg_dir, dist = self.create_dist()
+ tmp_dir = self.mkdtemp()
+ pkg_dir = os.path.join(tmp_dir, 'foo')
+ os.mkdir(pkg_dir)
+ dist = Distribution()
cmd = build_clib(dist)
# 'libraries' option must be a list
Modified: python/branches/release30-maint/Misc/NEWS
==============================================================================
--- python/branches/release30-maint/Misc/NEWS (original)
+++ python/branches/release30-maint/Misc/NEWS Wed May 6 09:30:47 2009
@@ -55,6 +55,9 @@
Library
-------
+- Issue #5940: distutils.command.build_clib.check_library_list was not doing
+ the right type checkings anymore.
+
- Issue #4875: On win32, ctypes.util.find_library does no longer
return directories.
More information about the Python-checkins
mailing list