From e9ca312087a9ccf856b2cae191ff34ce09e3ae9a Mon Sep 17 00:00:00 2001 From: Juergen Daubert Date: Fri, 19 Feb 2021 18:12:17 +0100 Subject: [PATCH] [notify] python: update to 3.9.2 includes two security fixes, see https://docs.python.org/release/3.9.2/whatsnew/changelog.html --- python3/.footprint | 4 ++-- python3/.signature | 9 +++---- python3/Pkgfile | 13 ++++++---- python3/mpdecimal-2.5.1.patch | 45 +++++++++++++++++++++++++++++++++++ 4 files changed, 60 insertions(+), 11 deletions(-) create mode 100644 python3/mpdecimal-2.5.1.patch diff --git a/python3/.footprint b/python3/.footprint index 011413de..70df2269 100644 --- a/python3/.footprint +++ b/python3/.footprint @@ -2307,9 +2307,9 @@ drwxr-xr-x root/root usr/lib/python3.9/lib-dynload/ -rwxr-xr-x root/root usr/lib/python3.9/lib-dynload/zlib.cpython-39-x86_64-linux-gnu.so drwxr-xr-x root/root usr/lib/python3.9/lib2to3/ -rw-r--r-- root/root usr/lib/python3.9/lib2to3/Grammar.txt --rw-r--r-- root/root usr/lib/python3.9/lib2to3/Grammar3.9.1.final.0.pickle +-rw-r--r-- root/root usr/lib/python3.9/lib2to3/Grammar3.9.2.final.0.pickle -rw-r--r-- root/root usr/lib/python3.9/lib2to3/PatternGrammar.txt --rw-r--r-- root/root usr/lib/python3.9/lib2to3/PatternGrammar3.9.1.final.0.pickle +-rw-r--r-- root/root usr/lib/python3.9/lib2to3/PatternGrammar3.9.2.final.0.pickle -rw-r--r-- root/root usr/lib/python3.9/lib2to3/__init__.py -rw-r--r-- root/root usr/lib/python3.9/lib2to3/__main__.py drwxr-xr-x root/root usr/lib/python3.9/lib2to3/__pycache__/ diff --git a/python3/.signature b/python3/.signature index 087359fe..0a27b045 100644 --- a/python3/.signature +++ b/python3/.signature @@ -1,5 +1,6 @@ untrusted comment: verify with /etc/ports/core.pub -RWRJc1FUaeVeqvI9T3P9P3YD+tlO/ouLg2NHxYZ44SviHvtWVe7OKQC44rtccYvRtknJVqBGIlOawWxrIYQnCP1xGYw2VY+P5As= -SHA256 (Pkgfile) = 5f51b9c194eac0172631a2ad1f766e9c410b13d6332abd034342414556219b12 -SHA256 (.footprint) = 535dae110556aa817ef99619926c296abbcf9c43bb0e3adde26571cb4b802f41 -SHA256 (Python-3.9.1.tar.xz) = 991c3f8ac97992f3d308fefeb03a64db462574eadbff34ce8bc5bb583d9903ff +RWRJc1FUaeVeqjp52JIsLvp/ePIUGXU6U3YXQuji1c2//B7hIcGnt3u5NQXd9Fd8aJMq2zwHmT+LysRmZDU8a4m9JW+3olvCWQg= +SHA256 (Pkgfile) = a6f7f6e09eefbda27bb9f4c84d72fb3bcb75ab8223b39c4e568ef74439c96756 +SHA256 (.footprint) = 670f3ba509a38d9bc754a401cef42b3282c84b459f83d178a07715c4c9eeafe8 +SHA256 (Python-3.9.2.tar.xz) = 3c2034c54f811448f516668dce09d24008a0716c3a794dd8639b5388cbde247d +SHA256 (mpdecimal-2.5.1.patch) = 8eb389be1babe03a0231001dc16dd2d69a3ea0fbf6b8c976a580787e7ff1594c diff --git a/python3/Pkgfile b/python3/Pkgfile index 2484c6eb..39122566 100644 --- a/python3/Pkgfile +++ b/python3/Pkgfile @@ -1,16 +1,19 @@ # Description: Python interpreter, version 3. -# URL: https://www.python.org/ -# Maintainer: CRUX System Team, core-ports at crux dot nu -# Depends on: bzip2 expat gdbm libffi libnsl libtirpc mpdecimal sqlite3 xz +# URL: https://www.python.org/ +# Maintainer: CRUX System Team, core-ports at crux dot nu +# Depends on: bzip2 expat gdbm libffi libnsl libtirpc mpdecimal sqlite3 xz name=python3 -version=3.9.1 +version=3.9.2 release=1 -source=(https://www.python.org/ftp/python/${version%rc*}/Python-$version.tar.xz) +source=(https://www.python.org/ftp/python/${version%rc*}/Python-$version.tar.xz + mpdecimal-2.5.1.patch) build() { cd Python-$version + patch -p1 -i $SRC/mpdecimal-2.5.1.patch + # Ensure that we are using the system copy of various libraries rm -r Modules/expat rm -r Modules/_ctypes/{darwin,libffi}* diff --git a/python3/mpdecimal-2.5.1.patch b/python3/mpdecimal-2.5.1.patch new file mode 100644 index 00000000..47e427c6 --- /dev/null +++ b/python3/mpdecimal-2.5.1.patch @@ -0,0 +1,45 @@ +From dd436be488bdca2123d12d1e148d85cb6f98be5f Mon Sep 17 00:00:00 2001 +From: Stefan Krah +Date: Sun, 10 Jan 2021 16:35:48 +0100 +Subject: [PATCH] Portability fixes. + +--- + Modules/_decimal/_decimal.c | 4 ++-- + setup.py | 2 +- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/Modules/_decimal/_decimal.c b/Modules/_decimal/_decimal.c +index 664d45a90481d..bbd540bc376e2 100644 +--- a/Modules/_decimal/_decimal.c ++++ b/Modules/_decimal/_decimal.c +@@ -3295,7 +3295,7 @@ dec_format(PyObject *dec, PyObject *args) + } + else { + size_t n = strlen(spec.dot); +- if (n > 1 || (n == 1 && !isascii((uchar)spec.dot[0]))) { ++ if (n > 1 || (n == 1 && !isascii((unsigned char)spec.dot[0]))) { + /* fix locale dependent non-ascii characters */ + dot = dotsep_as_utf8(spec.dot); + if (dot == NULL) { +@@ -3304,7 +3304,7 @@ dec_format(PyObject *dec, PyObject *args) + spec.dot = PyBytes_AS_STRING(dot); + } + n = strlen(spec.sep); +- if (n > 1 || (n == 1 && !isascii((uchar)spec.sep[0]))) { ++ if (n > 1 || (n == 1 && !isascii((unsigned char)spec.sep[0]))) { + /* fix locale dependent non-ascii characters */ + sep = dotsep_as_utf8(spec.sep); + if (sep == NULL) { +diff --git a/setup.py b/setup.py +index ddc0bd067d4e4..c547a68664e8c 100644 +--- a/setup.py ++++ b/setup.py +@@ -2199,7 +2199,7 @@ def detect_decimal(self): + undef_macros = [] + if '--with-system-libmpdec' in sysconfig.get_config_var("CONFIG_ARGS"): + include_dirs = [] +- libraries = [':libmpdec.so.2'] ++ libraries = ['mpdec'] + sources = ['_decimal/_decimal.c'] + depends = ['_decimal/docstrings.h'] + else: