]> granicus.if.org Git - python/commitdiff
Issue #28353: os.fwalk() no longer fails on broken links.
authorSerhiy Storchaka <storchaka@gmail.com>
Tue, 25 Oct 2016 11:34:38 +0000 (14:34 +0300)
committerSerhiy Storchaka <storchaka@gmail.com>
Tue, 25 Oct 2016 11:34:38 +0000 (14:34 +0300)
1  2 
Lib/os.py
Lib/test/test_os.py
Misc/NEWS

diff --cc Lib/os.py
Simple merge
index 1746ca4525da40538035230e0dc9edc18bd33aef,ac53e1b24411c2c89675aaae136f49f6da32c463..88598387d1e3e9f2b75db1aa6f7c294786967721
@@@ -861,9 -842,11 +865,11 @@@ class WalkTests(unittest.TestCase)
          self.sub1_path = join(self.walk_path, "SUB1")
          self.sub11_path = join(self.sub1_path, "SUB11")
          sub2_path = join(self.walk_path, "SUB2")
 -        self.sub21_path = join(sub2_path, "SUB21")
++        sub21_path = join(sub2_path, "SUB21")
          tmp1_path = join(self.walk_path, "tmp1")
          tmp2_path = join(self.sub1_path, "tmp2")
          tmp3_path = join(sub2_path, "tmp3")
 -        tmp5_path = join(self.sub21_path, "tmp3")
++        tmp5_path = join(sub21_path, "tmp3")
          self.link_path = join(sub2_path, "link")
          t2_path = join(support.TESTFN, "TEST2")
          tmp4_path = join(support.TESTFN, "TEST2", "tmp4")
          # Create stuff.
          os.makedirs(self.sub11_path)
          os.makedirs(sub2_path)
 -        os.makedirs(self.sub21_path)
++        os.makedirs(sub21_path)
          os.makedirs(t2_path)
  
-         for path in tmp1_path, tmp2_path, tmp3_path, tmp4_path:
+         for path in tmp1_path, tmp2_path, tmp3_path, tmp4_path, tmp5_path:
              with open(path, "x") as f:
                  f.write("I'm " + path + " and proud of it.  Blame test_os.\n")
  
          else:
              self.sub2_tree = (sub2_path, [], ["tmp3"])
  
 -        os.chmod(self.sub21_path, 0)
++        os.chmod(sub21_path, 0)
++        self.addCleanup(os.chmod, sub21_path, stat.S_IRWXU)
      def test_walk_topdown(self):
          # Walk top-down.
          all = list(self.walk(self.walk_path))
diff --cc Misc/NEWS
index 655e22c9feab9689f8dde8e16177ea94f4f4da44,ea90cbb9da68ce398eaafca948562f2f4246da39..4b63a9fde89c8c0964b450de09cce00f1b3d8c94
+++ b/Misc/NEWS
@@@ -22,84 -16,6 +22,86 @@@ Core and Builtin
  - Issue #23782: Fixed possible memory leak in _PyTraceback_Add() and exception
    loss in PyTraceBack_Here().
  
 +- Issue #28471: Fix "Python memory allocator called without holding the GIL"
 +  crash in socket.setblocking.
 +
 +
 +Library
 +-------
 +
++- Issue #28353: os.fwalk() no longer fails on broken links.
++
 +- Issue #28430: Fix iterator of C implemented asyncio.Future doesn't accept
 +  non-None value is passed to it.send(val).
 +
 +- Issue #27025: Generated names for Tkinter widgets now start by the "!" prefix
 +  for readability (was "`").
 +
 +- Issue #25464: Fixed HList.header_exists() in tkinter.tix module by addin
 +  a workaround to Tix library bug.
 +
 +- Issue #28488: shutil.make_archive() no longer adds entry "./" to ZIP archive.
 +
 +- Issue #25953: re.sub() now raises an error for invalid numerical group
 +  reference in replacement template even if the pattern is not found in
 +  the string.  Error message for invalid group reference now includes the
 +  group index and the position of the reference.
 +  Based on patch by SilentGhost.
 +
 +- Issue #18219: Optimize csv.DictWriter for large number of columns.
 +  Patch by Mariatta Wijaya.
 +
 +- Issue #28448: Fix C implemented asyncio.Future didn't work on Windows.
 +
 +- Issue #28480: Fix error building socket module when multithreading is
 +  disabled.
 +
 +- Issue #24452: Make webbrowser support Chrome on Mac OS X.
 +
 +- Issue #20766: Fix references leaked by pdb in the handling of SIGINT
 +  handlers.
 +
 +- Issue #28492: Fix how StopIteration exception is raised in _asyncio.Future.
 +
 +- Issue #28500: Fix asyncio to handle async gens GC from another thread.
 +
 +- Issue #26923: Fix asyncio.Gather to refuse being cancelled once all
 +  children are done.
 +  Patch by Johannes Ebke.
 +
 +- Issue #26796: Don't configure the number of workers for default
 +  threadpool executor.
 +  Initial patch by Hans Lawrenz.
 +
 +Build
 +-----
 +
 +- Issue #28208: Update Windows build to use SQLite 3.14.2.0.
 +
 +- Issue #28248: Update Windows build to use OpenSSL 1.0.2j.
 +
 +Tests
 +-----
 +
 +- Issue #26944: Fix test_posix for Android where 'id -G' is entirely wrong or
 +  missing the effective gid.
 +
 +- Issue #28409: regrtest: fix the parser of command line arguments.
 +
 +
 +What's New in Python 3.6.0 beta 2
 +=================================
 +
 +*Release date: 2016-10-10*
 +
 +Core and Builtins
 +-----------------
 +
 +- Issue #28183: Optimize and cleanup dict iteration.
 +
 +- Issue #26081: Added C implementation of asyncio.Future.
 +  Original patch by Yury Selivanov.
 +
  - Issue #28379: Added sanity checks and tests for PyUnicode_CopyCharacters().
    Patch by Xiang Zhang.