1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
|
Description: Make the build reproducible
Author: Chris Lamb <lamby@debian.org>
Last-Update: 2021-10-22
--- a/snakemake/dag.py
+++ b/snakemake/dag.py
@@ -2073,7 +2073,7 @@ class DAG(DAGExecutorInterface):
huefactor = 2 / (3 * len(self.rules))
rulecolor = {
rule: "{:.2f} 0.6 0.85".format(i * huefactor)
- for i, rule in enumerate(self.rules)
+ for i, rule in sorted(enumerate(self.rules))
}
# markup
@@ -2141,7 +2141,7 @@ class DAG(DAGExecutorInterface):
huefactor = 2 / (3 * len(self.rules))
rulecolor = {
rule: hsv_to_htmlhexrgb(i * huefactor, 0.6, 0.85)
- for i, rule in enumerate(self.rules)
+ for i, rule in sorted(enumerate(self.rules))
}
def resolve_input_functions(input_files):
@@ -2247,7 +2247,7 @@ class DAG(DAGExecutorInterface):
{items}
}}\
"""
- ).format(items="\n".join(nodes + edges))
+ ).format(items="\n".join(sorted(nodes) + sorted(edges)))
def summary(self, detailed=False):
if detailed:
|