summaryrefslogtreecommitdiff
path: root/setuptools/dep_util.py
diff options
context:
space:
mode:
authorJason R. Coombs <jaraco@jaraco.com>2021-12-19 18:55:41 -0500
committerJason R. Coombs <jaraco@jaraco.com>2021-12-19 18:55:41 -0500
commitc44b668424abd77a33bf5e5061b102ddbfbf6cd8 (patch)
tree9994b7cde86cc6070fe6c94132a252a5bc59caf0 /setuptools/dep_util.py
parent460b59f0e68dba17e2465e8dd421bbc14b994d1f (diff)
parent93562cb376a8666fe8672c7c070c4002554ddbf1 (diff)
downloadpython-setuptools-git-c44b668424abd77a33bf5e5061b102ddbfbf6cd8.tar.gz
Merge distutils into main.
Diffstat (limited to 'setuptools/dep_util.py')
-rw-r--r--setuptools/dep_util.py25
1 files changed, 25 insertions, 0 deletions
diff --git a/setuptools/dep_util.py b/setuptools/dep_util.py
new file mode 100644
index 00000000..521eb716
--- /dev/null
+++ b/setuptools/dep_util.py
@@ -0,0 +1,25 @@
+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