subsetmaker: stabilize the computation of `scratch` subset
`heads` is set, order of the element are not deterministic and we need to
stabilize that if we want to get reproducible results.
Differential Revision: https://phab.mercurial-scm.org/D12394
--- a/contrib/perf-utils/subsetmaker.py Tue Jul 20 15:07:10 2021 +0200
+++ b/contrib/perf-utils/subsetmaker.py Sun Mar 13 15:53:29 2022 +0100
@@ -102,7 +102,9 @@
for x in range(n):
if not heads:
break
- pick = rand.choice(list(heads))
+ pickable = list(heads)
+ pickable.sort()
+ pick = rand.choice(pickable)
heads.remove(pick)
assert pick not in selected
selected.add(pick)