Try to make CI deterministic#4138
Conversation
|
Okay, so after replacing all Hash{Map,Set}s in |
|
And that was all Hash{Map,Set}s in the entire repo replaced. The issue persists. So it is not caused by any of the hashmaps in this repo. The issue might step from external deps or |
|
Alright, I analyzed the code and narrow it down to all changes in To be specific:
This explains why the order of |
|
Thank you for looking into this, it has been terribly annoying so far. |
|
Closed in favor of #4190 |
There currently is an issue that the CI gets a different result for
raw.rs. I suspect that this is because the code gen iterates a hashmap somewhere without sorting by key first.After a quick search, I found 2 such occurrences, but I don't know whether they are the cause of the issue. I used
crate::sorted_iterto sort the iter, just like in other places.With this, all
forloops incrates\cli-support\src\js\mod.rshave a deterministic iteration order. However, this might not be enough. If some vector iterated incrates\cli-support\src\js\mod.rswas created from iterating a hashmap directly, the output will still not be deterministic.