\section{\module{cmpcache} --- Efficient file comparisons} \declaremodule{standard}{cmpcache} \sectionauthor{Moshe Zadka}{mzadka@geocities.com} \modulesynopsis{Compare files very efficiently.} The \module{cmpcache} module defines a function to compare files, taking all sort of short-cuts to make it a highly efficient operation. The \module{cmpcache} module defines the following function: \begin{funcdesc}{cmp}{f1, f2} Compare two files given as names. The following tricks are used to optimize the comparisons: \begin{itemize} \item Signatures (type, size and mtime) are computed via \refmodule{statcache} \item Files with identical type, size and mtime are assumed equal. \item Files with different type or size are never equal. \item The module only compares files it already compared if their signature changed. \item No external programs are called. \end{itemize} \end{funcdesc} Example: \begin{verbatim} >>> import cmpcache >>> cmpcache.cmp('libundoc.tex', 'libundoc.tex') 1 >>> cmpcache.cmp('libundoc.tex', 'lib.tex') 0 \end{verbatim}