summaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/python/python3-setuptools
diff options
context:
space:
mode:
authorRichard Purdie <richard.purdie@linuxfoundation.org>2021-05-28 08:39:23 +0000
committerRichard Purdie <richard.purdie@linuxfoundation.org>2021-06-01 14:03:27 +0100
commitea6fffe4f07cfd105f861ad0d2dc7c7605bf9e64 (patch)
tree4ca14b763a332eeb01b9d5a262dc43b0efdc4c8d /meta/recipes-devtools/python/python3-setuptools
parentf88e16f4e4f77f532502806246dda38dfbc1a1e5 (diff)
downloadopenembedded-core-contrib-ea6fffe4f07cfd105f861ad0d2dc7c7605bf9e64.tar.gz
python3-setuptools: upgrade 56.2.0 -> 57.0.0
Add a patch to fix a reproducibility issue in the new version. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/python/python3-setuptools')
-rw-r--r--meta/recipes-devtools/python/python3-setuptools/reproducibility.patch40
1 files changed, 40 insertions, 0 deletions
diff --git a/meta/recipes-devtools/python/python3-setuptools/reproducibility.patch b/meta/recipes-devtools/python/python3-setuptools/reproducibility.patch
new file mode 100644
index 0000000000..149d8ad5ce
--- /dev/null
+++ b/meta/recipes-devtools/python/python3-setuptools/reproducibility.patch
@@ -0,0 +1,40 @@
+The License-File lines in PKG-INFO change ordering depending on the order on disk,
+for example for python-packaging, one build shows:
+
+License-File: LICENSE
+License-File: LICENSE.APACHE
+License-File: LICENSE.BSD
+
+and the other shows:
+
+License-File: LICENSE
+License-File: LICENSE.BSD
+License-File: LICENSE.APACHE
+
+This is because glob uses os.listdir() which is unsorted. Sort the result to avoid this.
+
+Upstream-Status: Submitted [https://github.com/pypa/setuptools/issues/2691]
+Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
+
+Index: setuptools-57.0.0/setuptools/dist.py
+===================================================================
+--- setuptools-57.0.0.orig/setuptools/dist.py
++++ setuptools-57.0.0/setuptools/dist.py
+@@ -15,7 +15,7 @@ import distutils.command
+ from distutils.util import strtobool
+ from distutils.debug import DEBUG
+ from distutils.fancy_getopt import translate_longopt
+-from glob import iglob
++from glob import glob
+ import itertools
+ import textwrap
+ from typing import List, Optional, TYPE_CHECKING
+@@ -603,7 +603,7 @@ class Distribution(_Distribution):
+ return (
+ path
+ for pattern in patterns
+- for path in iglob(pattern)
++ for path in sorted(glob(pattern))
+ if not path.endswith('~')
+ and os.path.isfile(path)
+ )