merge heads
diff --git a/Lib/asyncore.py b/Lib/asyncore.py
index 35db387..d8d28a4 100644
--- a/Lib/asyncore.py
+++ b/Lib/asyncore.py
@@ -345,6 +345,7 @@
err = self.socket.connect_ex(address)
if err in (EINPROGRESS, EALREADY, EWOULDBLOCK) \
or err == EINVAL and os.name in ('nt', 'ce'):
+ self.addr = address
return
if err in (0, EISCONN):
self.addr = address
diff --git a/Lib/doctest.py b/Lib/doctest.py
index 8297fad..095f560 100644
--- a/Lib/doctest.py
+++ b/Lib/doctest.py
@@ -2314,7 +2314,8 @@
return "Doctest: " + self._dt_test.name
class SkipDocTestCase(DocTestCase):
- def __init__(self):
+ def __init__(self, module):
+ self.module = module
DocTestCase.__init__(self, None)
def setUp(self):
@@ -2324,7 +2325,10 @@
pass
def shortDescription(self):
- return "Skipping tests from %s" % module.__name__
+ return "Skipping tests from %s" % self.module.__name__
+
+ __str__ = shortDescription
+
def DocTestSuite(module=None, globs=None, extraglobs=None, test_finder=None,
**options):
@@ -2372,7 +2376,7 @@
if not tests and sys.flags.optimize >=2:
# Skip doctests when running with -O2
suite = unittest.TestSuite()
- suite.addTest(SkipDocTestCase())
+ suite.addTest(SkipDocTestCase(module))
return suite
elif not tests:
# Why do we want to do this? Because it reveals a bug that might
diff --git a/Lib/idlelib/NEWS.txt b/Lib/idlelib/NEWS.txt
index 46ef3cb..205b9f3 100644
--- a/Lib/idlelib/NEWS.txt
+++ b/Lib/idlelib/NEWS.txt
@@ -1,3 +1,10 @@
+What's New in IDLE 2.7.3?
+=======================
+
+- Issue #3573: IDLE hangs when passing invalid command line args
+ (directory(ies) instead of file(s)).
+
+
What's New in IDLE 2.7.2?
=======================
diff --git a/Lib/idlelib/PyShell.py b/Lib/idlelib/PyShell.py
index 895d7da..eeb33e1 100644
--- a/Lib/idlelib/PyShell.py
+++ b/Lib/idlelib/PyShell.py
@@ -1412,8 +1412,10 @@
if enable_edit:
if not (cmd or script):
- for filename in args:
- flist.open(filename)
+ for filename in args[:]:
+ if flist.open(filename) is None:
+ # filename is a directory actually, disconsider it
+ args.remove(filename)
if not args:
flist.new()
if enable_shell:
diff --git a/Misc/NEWS b/Misc/NEWS
index 310d0fd..1994d38 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -30,6 +30,15 @@
Library
-------
+- Issue #12757: Fix the skipping of doctests when python is run with -OO so
+ that it works in unittest's verbose mode as well as non-verbose mode.
+
+- Issue #3573: IDLE hangs when passing invalid command line args
+ (directory(ies) instead of file(s)) (Patch by Guilherme Polo)
+
+- Issue #13694: asynchronous connect in asyncore.dispatcher does not set addr
+ attribute.
+
- Issue #10484: Fix the CGIHTTPServer's PATH_INFO handling problem.
- Issue #11199: Fix the with urllib which hangs on particular ftp urls.