<!DOCTYPE html PUBLIC
"-//W3C//DTD HTML 4.0 Transitional//EN">
<link rel=
"STYLESHEET" href=
"dist.css" type='text/css'
/>
<link rel=
"SHORTCUT ICON" href=
"../icons/pyfav.png" type=
"image/png" />
<link rel='start' href='../index.html' title='Python Documentation Index'
/>
<link rel=
"first" href=
"dist.html" title='Distributing Python Modules'
/>
<link rel='index' href='genindex.html' title='Index'
/>
<link rel='last' href='about.html' title='About this document...'
/>
<link rel='help' href='about.html' title='About this document...'
/>
<link rel=
"next" href=
"module-distutils.dirutil.html" />
<link rel=
"prev" href=
"module-distutils.archiveutil.html" />
<link rel=
"parent" href=
"api-reference.html" />
<link rel=
"next" href=
"module-distutils.dirutil.html" />
<meta name='aesop' content='information'
/>
<title>10.10 distutils.dep_util -- Dependency checking
</title>
<div id='top-navigation-panel' xml:id='top-navigation-panel'
>
<table align=
"center" width=
"100%" cellpadding=
"0" cellspacing=
"2">
<td class='online-navigation'
><a rel=
"prev" title=
"10.9 distutils.archive_util "
href=
"module-distutils.archiveutil.html"><img src='../icons/previous.png'
border='
0' height='
32' alt='Previous Page' width='
32'
/></A></td>
<td class='online-navigation'
><a rel=
"parent" title=
"10. API Reference"
href=
"api-reference.html"><img src='../icons/up.png'
border='
0' height='
32' alt='Up One Level' width='
32'
/></A></td>
<td class='online-navigation'
><a rel=
"next" title=
"10.11 distutils.dir_util "
href=
"module-distutils.dirutil.html"><img src='../icons/next.png'
border='
0' height='
32' alt='Next Page' width='
32'
/></A></td>
<td align=
"center" width=
"100%">Distributing Python Modules
</td>
<td class='online-navigation'
><img src='../icons/blank.png'
border='
0' height='
32' alt='' width='
32'
/></td>
<td class='online-navigation'
><a href=
"modindex.html" title=
"Module Index"><img src='../icons/modules.png'
border='
0' height='
32' alt='Module Index' width='
32'
/></a></td>
<td class='online-navigation'
><a rel=
"index" title=
"Index"
href=
"genindex.html"><img src='../icons/index.png'
border='
0' height='
32' alt='Index' width='
32'
/></A></td>
<div class='online-navigation'
>
<b class=
"navlabel">Previous:
</b>
<a class=
"sectref" rel=
"prev" href=
"module-distutils.archiveutil.html">10.9 distutils.archive_util
</A>
<b class=
"navlabel">Up:
</b>
<a class=
"sectref" rel=
"parent" href=
"api-reference.html">10. API Reference
</A>
<b class=
"navlabel">Next:
</b>
<a class=
"sectref" rel=
"next" href=
"module-distutils.dirutil.html">10.11 distutils.dir_util
</A>
<!--End of Navigation Panel-->
<H1><A NAME=
"SECTION00101000000000000000000">
10.10 <tt class=
"module">distutils.dep_util
</tt> -- Dependency checking
</A>
<A NAME=
"module-distutils.deputil"></A>
This module provides functions for performing simple, timestamp-based
dependency of files and groups of files; also, functions based entirely
on such timestamp dependency analysis.
<dl><dt><table cellpadding=
"0" cellspacing=
"0"><tr valign=
"baseline">
<td><nobr><b><tt id='l2h-
66' xml:id='l2h-
66'
class=
"function">newer
</tt></b>(
</nobr></td>
<td><var>source, target
</var>)
</td></tr></table></dt>
Return true if
<var>source
</var> exists and is more recently modified than
<var>target
</var>, or if
<var>source
</var> exists and
<var>target
</var> doesn't.
Return false if both exist and
<var>target
</var> is the same age or newer
Raise
<tt class=
"exception">DistutilsFileError
</tt> if
<var>source
</var> does not exist.
<dl><dt><table cellpadding=
"0" cellspacing=
"0"><tr valign=
"baseline">
<td><nobr><b><tt id='l2h-
67' xml:id='l2h-
67'
class=
"function">newer_pairwise
</tt></b>(
</nobr></td>
<td><var>sources, targets
</var>)
</td></tr></table></dt>
Walk two filename lists in parallel, testing if each source is newer
than its corresponding target. Return a pair of lists (
<var>sources
</var>,
<var>targets
</var>) where source is newer than target, according to the semantics
of
<tt class=
"function">newer()
</tt>
<dl><dt><table cellpadding=
"0" cellspacing=
"0"><tr valign=
"baseline">
<td><nobr><b><tt id='l2h-
68' xml:id='l2h-
68'
class=
"function">newer_group
</tt></b>(
</nobr></td>
<td><var>sources, target
</var><big>[
</big><var>, missing=
<code>'error'
</code></var><big>]
</big><var></var>)
</td></tr></table></dt>
Return true if
<var>target
</var> is out-of-date with respect to any file
listed in
<var>sources
</var> In other words, if
<var>target
</var> exists and is newer
than every file in
<var>sources
</var>, return false; otherwise return true.
<var>missing
</var> controls what we do when a source file is missing; the
default (
<code>'error'
</code>) is to blow up with an
<tt class=
"exception">OSError
</tt> from
inside
<tt class=
"function">os.stat()
</tt>;
if it is
<code>'ignore'
</code>, we silently drop any missing source files; if it is
<code>'newer'
</code>, any missing source files make us assume that
<var>target
</var> is
out-of-date (this is handy in ``dry-run'' mode: it'll make you pretend to
carry out commands that wouldn't work because inputs are missing, but
that doesn't matter because you're not actually going to run the
<div class='online-navigation'
>
<table align=
"center" width=
"100%" cellpadding=
"0" cellspacing=
"2">
<td class='online-navigation'
><a rel=
"prev" title=
"10.9 distutils.archive_util "
href=
"module-distutils.archiveutil.html"><img src='../icons/previous.png'
border='
0' height='
32' alt='Previous Page' width='
32'
/></A></td>
<td class='online-navigation'
><a rel=
"parent" title=
"10. API Reference"
href=
"api-reference.html"><img src='../icons/up.png'
border='
0' height='
32' alt='Up One Level' width='
32'
/></A></td>
<td class='online-navigation'
><a rel=
"next" title=
"10.11 distutils.dir_util "
href=
"module-distutils.dirutil.html"><img src='../icons/next.png'
border='
0' height='
32' alt='Next Page' width='
32'
/></A></td>
<td align=
"center" width=
"100%">Distributing Python Modules
</td>
<td class='online-navigation'
><img src='../icons/blank.png'
border='
0' height='
32' alt='' width='
32'
/></td>
<td class='online-navigation'
><a href=
"modindex.html" title=
"Module Index"><img src='../icons/modules.png'
border='
0' height='
32' alt='Module Index' width='
32'
/></a></td>
<td class='online-navigation'
><a rel=
"index" title=
"Index"
href=
"genindex.html"><img src='../icons/index.png'
border='
0' height='
32' alt='Index' width='
32'
/></A></td>
<div class='online-navigation'
>
<b class=
"navlabel">Previous:
</b>
<a class=
"sectref" rel=
"prev" href=
"module-distutils.archiveutil.html">10.9 distutils.archive_util
</A>
<b class=
"navlabel">Up:
</b>
<a class=
"sectref" rel=
"parent" href=
"api-reference.html">10. API Reference
</A>
<b class=
"navlabel">Next:
</b>
<a class=
"sectref" rel=
"next" href=
"module-distutils.dirutil.html">10.11 distutils.dir_util
</A>
<span class=
"release-info">Release
2.4.2, documentation updated on
28 September
2005.
</span>
<!--End of Navigation Panel-->
See
<i><a href=
"about.html">About this document...
</a></i> for information on suggesting changes.