aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDaniel Nunes <gandaganza@gmail.com>2017-01-14 22:05:18 +0000
committerDaniel Nunes <gandaganza@gmail.com>2017-01-14 22:05:18 +0000
commit59d325c236500eb5cd8e88e9f13094253d689de7 (patch)
tree7fa6fec3aeb619d7eefb55b833759835ad4b635f
parentdbf57427babbfbf58086b27c0d1d9b3503892daa (diff)
downloadexternal_python_setuptools-59d325c236500eb5cd8e88e9f13094253d689de7.tar.gz
external_python_setuptools-59d325c236500eb5cd8e88e9f13094253d689de7.tar.bz2
external_python_setuptools-59d325c236500eb5cd8e88e9f13094253d689de7.zip
Added newer_pairwise_group() convenience function.
-rw-r--r--setuptools/dep_util.py23
1 files changed, 23 insertions, 0 deletions
diff --git a/setuptools/dep_util.py b/setuptools/dep_util.py
new file mode 100644
index 00000000..2931c13e
--- /dev/null
+++ b/setuptools/dep_util.py
@@ -0,0 +1,23 @@
+from distutils.dep_util import newer_group
+
+# yes, this is was almost entirely copy-pasted from
+# 'newer_pairwise()', this is just another convenience
+# function.
+def newer_pairwise_group(sources_groups, targets):
+ """Walk both arguments in parallel, testing if each source group is newer
+ than its corresponding target. Returns a pair of lists (sources_groups,
+ targets) where sources is newer than target, according to the semantics
+ of 'newer_group()'.
+ """
+ if len(sources_groups) != len(targets):
+ raise ValueError("'sources_group' and 'targets' must be the same length")
+
+ # build a pair of lists (sources_groups, targets) where source is newer
+ n_sources = []
+ n_targets = []
+ for i in range(len(sources_groups)):
+ if newer_group(sources_groups[i], targets[i]):
+ n_sources.append(sources_groups[i])
+ n_targets.append(targets[i])
+
+ return n_sources, n_targets