From 98d8e335b80719587ea19f1a9dec5ef215eaaee6 Mon Sep 17 00:00:00 2001 From: Frost Ming Date: Wed, 4 Nov 2020 18:17:54 +0800 Subject: [PATCH] Consistent order of hashes Fix #4513 --- news/4513.bugfix.rst | 1 + pipenv/resolver.py | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) create mode 100644 news/4513.bugfix.rst diff --git a/news/4513.bugfix.rst b/news/4513.bugfix.rst new file mode 100644 index 00000000..7b2a17a5 --- /dev/null +++ b/news/4513.bugfix.rst @@ -0,0 +1 @@ +Make the order of hashes in resolution result stable. diff --git a/pipenv/resolver.py b/pipenv/resolver.py index b06deca6..d53cdf37 100644 --- a/pipenv/resolver.py +++ b/pipenv/resolver.py @@ -250,7 +250,7 @@ class Entry(object): entry_hashes = set(self.entry.hashes) locked_hashes = set(self.lockfile_entry.hashes) if entry_hashes != locked_hashes and not self.is_updated: - self.entry_dict["hashes"] = list(entry_hashes | locked_hashes) + self.entry_dict["hashes"] = sorted(entry_hashes | locked_hashes) self.entry_dict["name"] = self.name if "version" in self.entry_dict: self.entry_dict["version"] = self.strip_version(self.entry_dict["version"])