From: Miss Islington (bot) <31488909+miss-islington@users.noreply.github.com> Date: Tue, 5 Apr 2022 03:22:04 +0000 (-0700) Subject: bpo-40982: shutil docs: Remove outdated copytree() example (GH-24778) X-Git-Tag: v3.9.13~134 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=bc9ec24290d0fa823fa2ac19ac9767b2b8498faa;p=thirdparty%2FPython%2Fcpython.git bpo-40982: shutil docs: Remove outdated copytree() example (GH-24778) It is not preferable to keep a copy of the implementation in the docs. (cherry picked from commit e06f920c5bc6e9fad29082ba0d84043722806e17) Co-authored-by: Zackery Spytz --- diff --git a/Doc/library/shutil.rst b/Doc/library/shutil.rst index 11c670749216..5f71049f918e 100644 --- a/Doc/library/shutil.rst +++ b/Doc/library/shutil.rst @@ -470,42 +470,7 @@ file then shutil will silently fallback on using less efficient copytree example ~~~~~~~~~~~~~~~~ -This example is the implementation of the :func:`copytree` function, described -above, with the docstring omitted. It demonstrates many of the other functions -provided by this module. :: - - def copytree(src, dst, symlinks=False): - names = os.listdir(src) - os.makedirs(dst) - errors = [] - for name in names: - srcname = os.path.join(src, name) - dstname = os.path.join(dst, name) - try: - if symlinks and os.path.islink(srcname): - linkto = os.readlink(srcname) - os.symlink(linkto, dstname) - elif os.path.isdir(srcname): - copytree(srcname, dstname, symlinks) - else: - copy2(srcname, dstname) - # XXX What about devices, sockets etc.? - except OSError as why: - errors.append((srcname, dstname, str(why))) - # catch the Error from the recursive copytree so that we can - # continue with other files - except Error as err: - errors.extend(err.args[0]) - try: - copystat(src, dst) - except OSError as why: - # can't copy file access times on Windows - if why.winerror is None: - errors.extend((src, dst, str(why))) - if errors: - raise Error(errors) - -Another example that uses the :func:`ignore_patterns` helper:: +An example that uses the :func:`ignore_patterns` helper:: from shutil import copytree, ignore_patterns