From b231336ab168386ecbf8f3042b0e37dc4640c153 Mon Sep 17 00:00:00 2001 From: Christoph Reiter Date: Wed, 6 Aug 2025 07:47:30 +0200 Subject: [PATCH] Various Python Updates (#25065) --- mingw-w64-python-biopython/PKGBUILD | 6 +-- mingw-w64-python-boto3/PKGBUILD | 4 +- mingw-w64-python-botocore/PKGBUILD | 4 +- mingw-w64-python-build/PKGBUILD | 4 +- mingw-w64-python-cmd2/PKGBUILD | 5 +- .../004-launcher-fix-gcc.patch | 11 +++++ mingw-w64-python-distlib/PKGBUILD | 13 +++-- mingw-w64-python-rich-argparse/PKGBUILD | 47 +++++++++++++++++++ 8 files changed, 78 insertions(+), 16 deletions(-) create mode 100644 mingw-w64-python-distlib/004-launcher-fix-gcc.patch create mode 100644 mingw-w64-python-rich-argparse/PKGBUILD diff --git a/mingw-w64-python-biopython/PKGBUILD b/mingw-w64-python-biopython/PKGBUILD index b075e09867..79a018d389 100644 --- a/mingw-w64-python-biopython/PKGBUILD +++ b/mingw-w64-python-biopython/PKGBUILD @@ -3,8 +3,8 @@ _realname=biopython pkgbase=mingw-w64-python-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-python-${_realname}") -pkgver=1.84 -pkgrel=3 +pkgver=1.85 +pkgrel=1 pkgdesc="Freely available tools for computational molecular biology. (mingw-w64)" arch=('any') mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64') @@ -21,7 +21,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-python-build" "${MINGW_PACKAGE_PREFIX}-python-setuptools" "${MINGW_PACKAGE_PREFIX}-cc") source=("https://pypi.org/packages/source/${_realname::1}/${_realname}/${_realname}-${pkgver}.tar.gz") -sha256sums=('60fbe6f996e8a6866a42698c17e552127d99a9aab3259d6249fbaabd0e0cc7b4') +sha256sums=('5dafab74059de4e78f49f6b5684eddae6e7ce46f09cfa059c1d1339e8b1ea0a6') build() { cp -r "${_realname}-${pkgver}" "python-build-${MSYSTEM}" && cd "python-build-${MSYSTEM}" diff --git a/mingw-w64-python-boto3/PKGBUILD b/mingw-w64-python-boto3/PKGBUILD index 9d77a96480..89779a0df0 100644 --- a/mingw-w64-python-boto3/PKGBUILD +++ b/mingw-w64-python-boto3/PKGBUILD @@ -3,7 +3,7 @@ _realname=boto3 pkgbase=mingw-w64-python-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-python-${_realname}") -pkgver=1.38.23 +pkgver=1.40.2 pkgrel=1 pkgdesc='The AWS SDK for Python (mingw-w64)' arch=('any') @@ -20,7 +20,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-python-build" "${MINGW_PACKAGE_PREFIX}-python-installer" "${MINGW_PACKAGE_PREFIX}-python-setuptools") source=("https://pypi.org/packages/source/${_realname::1}/${_realname}/${_realname}-${pkgver}.tar.gz") -sha256sums=('bcf73aca469add09e165b8793be18e7578db8d2604d82505ab13dc2495bad982') +sha256sums=('2dfbc214fdbf94abfd61eec687ea39089d05af43bb00be792c76f3a6c1393f7b') build() { cp -r "${_realname}-${pkgver}" "python-build-${MSYSTEM}" && cd "python-build-${MSYSTEM}" diff --git a/mingw-w64-python-botocore/PKGBUILD b/mingw-w64-python-botocore/PKGBUILD index d565cec649..961baed014 100644 --- a/mingw-w64-python-botocore/PKGBUILD +++ b/mingw-w64-python-botocore/PKGBUILD @@ -3,7 +3,7 @@ _realname=botocore pkgbase=mingw-w64-python-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-python-${_realname}") -pkgver=1.38.23 +pkgver=1.40.2 pkgrel=1 pkgdesc='A low-level interface to a growing number of Amazon Web Services (mingw-w64)' arch=('any') @@ -20,7 +20,7 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-python-build" "${MINGW_PACKAGE_PREFIX}-python-installer" "${MINGW_PACKAGE_PREFIX}-python-setuptools") source=("https://pypi.org/packages/source/${_realname::1}/${_realname}/${_realname}-${pkgver}.tar.gz") -sha256sums=('29685c91050a870c3809238dc5da1ac65a48a3a20b4bca46b6057dcb6b39c72a') +sha256sums=('77c4710bf37b28e897833b5b1f47d6a83e45a29985cd01a560dfdb8b6ad524e5') build() { cp -r "${_realname}-${pkgver}" "python-build-${MSYSTEM}" && cd "python-build-${MSYSTEM}" diff --git a/mingw-w64-python-build/PKGBUILD b/mingw-w64-python-build/PKGBUILD index d8ad06f0fb..48428b399a 100644 --- a/mingw-w64-python-build/PKGBUILD +++ b/mingw-w64-python-build/PKGBUILD @@ -3,7 +3,7 @@ _realname=build pkgbase=mingw-w64-python-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-python-${_realname}") -pkgver=1.2.2.post1 +pkgver=1.3.0 pkgrel=1 pkgdesc="A simple, correct Python build frontend (mingw-w64)" arch=('any') @@ -27,7 +27,7 @@ makedepends=( options=('!strip') source=("https://pypi.org/packages/source/${_realname::1}/${_realname}/${_realname}-${pkgver}.tar.gz" "0001-optional-colorama.patch") -sha256sums=('b36993e92ca9375a219c99e606a122ff365a760a2d4bba0caa09bd5278b608b7' +sha256sums=('698edd0ea270bde950f53aed21f3a0135672206f3911e0176261a31e0e07b397' '2ad33a8d2d16bb09896dfe1020593bbe664e13d8ffd20cd7bc6f68d31d47e0e9') prepare() { diff --git a/mingw-w64-python-cmd2/PKGBUILD b/mingw-w64-python-cmd2/PKGBUILD index 736e4247ea..9bf6bcd905 100644 --- a/mingw-w64-python-cmd2/PKGBUILD +++ b/mingw-w64-python-cmd2/PKGBUILD @@ -3,7 +3,7 @@ _realname=cmd2 pkgbase=mingw-w64-python-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-python-${_realname}") -pkgver=2.6.2 +pkgver=2.7.0 pkgrel=1 pkgdesc="Extra features for standard library's cmd module (mingw-w64)" arch=('any') @@ -17,6 +17,7 @@ license=('spdx:MIT') depends=("${MINGW_PACKAGE_PREFIX}-python" "${MINGW_PACKAGE_PREFIX}-python-pyperclip" "${MINGW_PACKAGE_PREFIX}-python-pyreadline3" + "${MINGW_PACKAGE_PREFIX}-python-rich-argparse" "${MINGW_PACKAGE_PREFIX}-python-wcwidth") makedepends=("${MINGW_PACKAGE_PREFIX}-python-build" "${MINGW_PACKAGE_PREFIX}-python-installer" @@ -26,7 +27,7 @@ checkdepends=("${MINGW_PACKAGE_PREFIX}-python-pytest" "${MINGW_PACKAGE_PREFIX}-python-pytest-cov" "${MINGW_PACKAGE_PREFIX}-python-mock") source=("https://pypi.org/packages/source/${_realname::1}/${_realname}/${_realname}-${pkgver}.tar.gz") -sha512sums=('75531dca561427eef259765a55c6385401edd8bc9d5c4cf08ab97e53e118334be932ee5c59f9e1fcd529a7a5f7416e654ee1d618d91623068ef21bcc66dcfdd7') +sha512sums=('6d2e7f3c9e125782da8983fb27a53d5db0c0cc35a8c86eb129961596ff3ff5751622894ee8fb355b0330de3b2cbb7cf18eddaba2ad0b8781e80b479cf53a1c89') build() { export SETUPTOOLS_SCM_PRETEND_VERSION="${pkgver}" diff --git a/mingw-w64-python-distlib/004-launcher-fix-gcc.patch b/mingw-w64-python-distlib/004-launcher-fix-gcc.patch new file mode 100644 index 0000000000..b10d8fad4c --- /dev/null +++ b/mingw-w64-python-distlib/004-launcher-fix-gcc.patch @@ -0,0 +1,11 @@ +--- distlib-0.4.0/PC/launcher.c.orig 2022-08-06 10:15:08.000000000 +0200 ++++ distlib-0.4.0/PC/launcher.c 2025-08-05 08:51:52.576544100 +0200 +@@ -841,7 +841,7 @@ + ok = SetConsoleCtrlHandler((PHANDLER_ROUTINE) control_key_handler, TRUE); + assert(ok, "control handler setting failed"); + #if !defined(_CONSOLE) +- clear_app_starting_state(&child_process_info); ++ clear_app_starting_state(); + #endif + CloseHandle(child_process_info.hThread); + WaitForSingleObjectEx(child_process_info.hProcess, INFINITE, FALSE); diff --git a/mingw-w64-python-distlib/PKGBUILD b/mingw-w64-python-distlib/PKGBUILD index 7f2b27aa21..6873525c85 100644 --- a/mingw-w64-python-distlib/PKGBUILD +++ b/mingw-w64-python-distlib/PKGBUILD @@ -4,7 +4,7 @@ _realname=distlib pkgbase=mingw-w64-python-${_realname} pkgname=("${MINGW_PACKAGE_PREFIX}-python-${_realname}") -pkgver=0.3.9 +pkgver=0.4.0 pkgrel=1 pkgdesc="Low-level components of distutils2/packaging (mingw-w64)" arch=('any') @@ -13,16 +13,18 @@ msys2_references=( 'purl: pkg:pypi/distlib' ) url="https://github.com/pypa/distlib" -license=('FSF') +license=('spdx:PSF-2.0') depends=("${MINGW_PACKAGE_PREFIX}-python") makedepends=("${MINGW_PACKAGE_PREFIX}-python-build" "${MINGW_PACKAGE_PREFIX}-python-installer" "${MINGW_PACKAGE_PREFIX}-python-setuptools" "${MINGW_PACKAGE_PREFIX}-cc") source=("https://files.pythonhosted.org/packages/source/${_realname:0:1}/${_realname}/${_realname}-${pkgver}.tar.gz" - "003-launcher-secure-api-shim.patch") -sha256sums=('a60f20dea646b8a33f3e7772f74dc0b2d0772d2837ee1342a00645c81edf9403' - 'f90de01cd05cf901e9ac375e5f92727b83cb90ce3847d6ac0a18e504cd3793ca') + "003-launcher-secure-api-shim.patch" + "004-launcher-fix-gcc.patch") +sha256sums=('feec40075be03a04501a973d81f633735b4b69f98b05450592310c0f401a4e0d' + 'f90de01cd05cf901e9ac375e5f92727b83cb90ce3847d6ac0a18e504cd3793ca' + '9381f6c1dbd8afe3d6e7654979bd3f7a68ad8fe4c0a2b3c529d19f9f04eecc19') prepare() { cd "${srcdir}" @@ -31,6 +33,7 @@ prepare() { cd "python-build-${MSYSTEM}" patch -Np1 -i "${srcdir}/003-launcher-secure-api-shim.patch" + patch -Np1 -i "${srcdir}/004-launcher-fix-gcc.patch" } build() { diff --git a/mingw-w64-python-rich-argparse/PKGBUILD b/mingw-w64-python-rich-argparse/PKGBUILD new file mode 100644 index 0000000000..b3b82bf946 --- /dev/null +++ b/mingw-w64-python-rich-argparse/PKGBUILD @@ -0,0 +1,47 @@ +# Maintainer: Christoph Reiter + +_pyname=rich_argparse +_realname=rich-argparse +pkgbase=mingw-w64-python-${_realname} +pkgname=("${MINGW_PACKAGE_PREFIX}-python-${_realname}") +pkgver=1.7.1 +pkgrel=1 +pkgdesc="Rich help formatters for argparse and optparse (mingw-w64)" +arch=('any') +mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64') +url='https://github.com/hamdanal/rich-argparse' +msys2_references=( + 'purl: pkg:pypi/rich-argparse' +) +license=('spdx:MIT') +depends=("${MINGW_PACKAGE_PREFIX}-python" + "${MINGW_PACKAGE_PREFIX}-python-rich") +makedepends=("${MINGW_PACKAGE_PREFIX}-python-build" + "${MINGW_PACKAGE_PREFIX}-python-installer" + "${MINGW_PACKAGE_PREFIX}-python-hatchling") +checkdepends=("${MINGW_PACKAGE_PREFIX}-python-pytest") +options=('!strip') +source=("https://pypi.org/packages/source/${_pyname::1}/${_pyname}/${_pyname}-${pkgver}.tar.gz") +sha256sums=('d7a493cde94043e41ea68fb43a74405fa178de981bf7b800f7a3bd02ac5c27be') + +build() { + cp -r "${_pyname}-${pkgver}" "python-build-${MSYSTEM}" && cd "python-build-${MSYSTEM}" + + python -m build --wheel --skip-dependency-check --no-isolation +} + +check() { + cd "python-build-${MSYSTEM}" + + python -m pytest +} + +package() { + cd "python-build-${MSYSTEM}" + + MSYS2_ARG_CONV_EXCL="--prefix=" \ + python -m installer --prefix=${MINGW_PREFIX} \ + --destdir="${pkgdir}" dist/*.whl + + install -Dm644 LICENSE "${pkgdir}${MINGW_PREFIX}/share/licenses/python-${_realname}/LICENSE" +}