[Python-checkins] bpo-42958: Improve description of shallow= in filecmp.cmp docs (GH-27166) (GH-27608)

ambv webhook-mailer at python.org
Wed Aug 4 16:09:59 EDT 2021

commit: 7dad0337518a0d599caf8f803a5bf45db67cbe9b
branch: 3.9
author: Miss Islington (bot) <31488909+miss-islington at users.noreply.github.com>
committer: ambv <lukasz at langa.pl>
date: 2021-08-04T22:09:45+02:00

bpo-42958: Improve description of shallow= in filecmp.cmp docs (GH-27166) (GH-27608)

Co-authored-by: Łukasz Langa <lukasz at langa.pl>
Co-authored-by: Alexander Vandenbulcke <alexander.vandenbulcke95 at gmail.com>
(cherry picked from commit a8dc4893d2b28827e82447326ea47759c161a722)

Co-authored-by: andrei kulakov <andrei.avk at gmail.com>

A Misc/NEWS.d/next/Documentation/2021-07-15-11-19-03.bpo-42958.gC5IHM.rst
M Doc/library/filecmp.rst
M Lib/filecmp.py

diff --git a/Doc/library/filecmp.rst b/Doc/library/filecmp.rst
index 31b9b4afab934..1d04c3ef9fd27 100644
--- a/Doc/library/filecmp.rst
+++ b/Doc/library/filecmp.rst
@@ -22,8 +22,11 @@ The :mod:`filecmp` module defines the following functions:
    Compare the files named *f1* and *f2*, returning ``True`` if they seem equal,
    ``False`` otherwise.
-   If *shallow* is true, files with identical :func:`os.stat` signatures are
-   taken to be equal.  Otherwise, the contents of the files are compared.
+   If *shallow* is true and the :func:`os.stat` signatures (file type, size, and
+   modification time) of both files are identical, the files are taken to be
+   equal.
+   Otherwise, the files are treated as different if their sizes or contents differ.
    Note that no external programs are called from this function, giving it
    portability and efficiency.
diff --git a/Lib/filecmp.py b/Lib/filecmp.py
index 7a4da6beb5050..1893f909de83c 100644
--- a/Lib/filecmp.py
+++ b/Lib/filecmp.py
@@ -36,8 +36,9 @@ def cmp(f1, f2, shallow=True):
     f2 -- Second file name
-    shallow -- Just check stat signature (do not read the files).
-               defaults to True.
+    shallow -- treat files as identical if their stat signatures (type, size,
+               mtime) are identical. Otherwise, files are considered different
+               if their sizes or contents differ.  [default: True]
     Return value:
diff --git a/Misc/NEWS.d/next/Documentation/2021-07-15-11-19-03.bpo-42958.gC5IHM.rst b/Misc/NEWS.d/next/Documentation/2021-07-15-11-19-03.bpo-42958.gC5IHM.rst
new file mode 100644
index 0000000000000..c93b84d095526
--- /dev/null
+++ b/Misc/NEWS.d/next/Documentation/2021-07-15-11-19-03.bpo-42958.gC5IHM.rst
@@ -0,0 +1,2 @@
+Updated the docstring and docs of :func:`filecmp.cmp` to be more accurate
+and less confusing especially in respect to *shallow* arg.

More information about the Python-checkins mailing list