From b5047cba93f9f9d1110c93350165bf2b904c9c21 Mon Sep 17 00:00:00 2001 From: th0ma7 Date: Sun, 13 Oct 2024 09:28:51 -0400 Subject: [PATCH] python 3.10-3.11 updates (#6200) * py310-311: Update crossenv cffi==1.17.0 and cryptography==43.0.0 * pip: Update from 23.2.1 to 23.3.2 * py311: Update to 3.11.9 along with updating all wheels * py310: Update all wheels * py311: Downgrade numpy back to 1.25.2 * py310-py311: Fully functional build locally * py310-py311: Re-enable numpy * pip: Update from version 23.3.2 to 24.2 * py310-311: Misc post-rebase adjustments * pip: Revert back to version 23.2.1 * pip (pure/wheel): force installing latest version 24.2 * python310: Update to version 3.10.15 * python311: Update to version 3.11.10 * remove comments and empty lines in final requirements-abi3.txt and requirements.txt * python311: fix to make all wheels - downgrade numpy to v1.24.4 (python311, bazarr) - downgrade setuptools in crossenv and requirements-pure.txt to v68.1.2 * python311: temp build with all wheels * Revert "python311: temp build with all wheels" This reverts commit 033743848838e7274efe2600802c754907cd3687. --------- Co-authored-by: hgy59 --- cross/pip/Makefile | 3 +- cross/python310/Makefile | 44 ++++++------------ cross/python310/digests | 6 +-- cross/python311/Makefile | 46 ++++++------------- cross/python311/digests | 6 +-- mk/spksrc.wheel.mk | 2 +- native/python310/Makefile | 8 ++-- native/python310/digests | 6 +-- native/python311/Makefile | 6 +-- native/python311/digests | 6 +-- .../src/requirements-crossenv-numpy.txt | 4 +- spk/python310/Makefile | 10 ++-- spk/python310/src/requirements-abi3.txt | 4 +- .../src/requirements-crossenv-greenlet-v2.txt | 2 +- .../requirements-crossenv-numpy-armv7l.txt | 2 + .../src/requirements-crossenv-numpy-gcc4.txt | 2 + spk/python310/src/requirements-crossenv.txt | 42 ++++++++++------- spk/python310/src/requirements-pure.txt | 17 +++---- spk/python311/Makefile | 10 ++-- spk/python311/src/requirements-abi3.txt | 4 +- .../src/requirements-crossenv-greenlet-v2.txt | 2 +- .../requirements-crossenv-numpy-armv7l.txt | 2 + .../src/requirements-crossenv-numpy-gcc4.txt | 2 + .../src/requirements-crossenv-numpy.txt | 6 ++- .../src/requirements-crossenv-rpds-py.txt | 2 +- spk/python311/src/requirements-crossenv.txt | 34 +++++++------- spk/python311/src/requirements-pure.txt | 17 +++---- 27 files changed, 146 insertions(+), 149 deletions(-) diff --git a/cross/pip/Makefile b/cross/pip/Makefile index f5600891540..ed974ed83c1 100644 --- a/cross/pip/Makefile +++ b/cross/pip/Makefile @@ -1,5 +1,6 @@ PKG_NAME = pip -# use the same version in native/python310|311/Makefile (python310|311_native_post_install) +# used to be the same version in native/python310|311/Makefile (python310|311_native_post_install) +# but this is now the last version of pip that can be installed using legacy setup.py PKG_VERS = 23.2.1 PKG_EXT = tar.gz PKG_DIST_NAME = $(PKG_NAME)-$(PKG_VERS).$(PKG_EXT) diff --git a/cross/python310/Makefile b/cross/python310/Makefile index 1a2881e6860..b9256f25de9 100644 --- a/cross/python310/Makefile +++ b/cross/python310/Makefile @@ -1,5 +1,5 @@ PKG_NAME = python310 -PKG_VERS = 3.10.14 +PKG_VERS = 3.10.15 PKG_VERS_MAJOR_MINOR = $(word 1,$(subst ., ,$(PKG_VERS))).$(word 2,$(subst ., ,$(PKG_VERS))) PKG_EXT = tar.xz PKG_DIST_NAME = Python-$(PKG_VERS).$(PKG_EXT) @@ -144,19 +144,19 @@ CROSSENV_WHEELS = cffi==1.17.0 # It also breaks numpy at crossenv creation time using github-action # https://numpy.org/devdocs/reference/distutils_status_migration.html # Python 3.12 considerations: scikit-build-core, meson-python -#CROSSENV_WHEELS += Cython==3.0.2 -CROSSENV_WHEELS += Cython==0.29.36 +CROSSENV_WHEELS += Cython==3.0.2 +#CROSSENV_WHEELS += Cython==0.29.37 CROSSENV_WHEELS += flit==3.9.0 -CROSSENV_WHEELS += scikit-build==0.17.6 -CROSSENV_WHEELS += setuptools-rust==1.7.0 -CROSSENV_WHEELS += setuptools-scm==7.1.0 +CROSSENV_WHEELS += scikit-build==0.18.1 +CROSSENV_WHEELS += setuptools-rust==1.10.2 +CROSSENV_WHEELS += setuptools-scm==8.1.0 # For future use when building numpy >= 1.26 -#CROSSENV_WHEELS += meson-python==0.13.2 -#CROSSENV_WHEELS += scikit-build-core==0.5.0 +#CROSSENV_WHEELS += meson-python==1.5.2 +#CROSSENV_WHEELS += scikit-build-core==0.10.7 ifneq ($(findstring $(ARCH),$(OLD_PPC_ARCHS)),$(ARCH)) -CROSSENV_WHEELS += cryptography==41.0.3 -CROSSENV_WHEELS += maturin==1.2.3 -CROSSENV_WHEELS += poetry==1.6.1 +CROSSENV_WHEELS += cryptography==43.0.1 +CROSSENV_WHEELS += maturin==1.7.4 +CROSSENV_WHEELS += poetry==1.8.3 endif # Create the crossenv in preparation for @@ -169,28 +169,10 @@ python310_post_install: $(WORK_DIR)/python-cc.mk . $(WORK_DIR)/crossenv/bin/activate && $(RUN) wget --no-verbose https://bootstrap.pypa.io/get-pip.py . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-python get-pip.py "pip==24.2" --no-setuptools --no-wheel --disable-pip-version-check . $(WORK_DIR)/crossenv/bin/activate && $(RUN) python get-pip.py "pip==24.2" --no-setuptools --no-wheel --disable-pip-version-check - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install "setuptools==74.0.0" "wheel==0.44.0" "pip-tools==7.4.1" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install "setuptools==74.0.0" "wheel==0.44.0" "pip-tools==7.4.1" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install "setuptools==75.1.0" "wheel==0.44.0" "pip-tools==7.4.1" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install "setuptools==75.1.0" "wheel==0.44.0" "pip-tools==7.4.1" . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install $(CROSSENV_WHEELS) . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install $(CROSSENV_WHEELS) -# [numpy] <= 1.2x.y Must be installed using setuptools < 70.0 -# [numpy] <= 1.21.6 (armv5) - gcc-4.6.4 - unsupported -# [numpy] <= 1.22.4 (armv7l) - gcc-4.8.3 - unsupported -ifneq ($(findstring $(ARCH),$(ARMv5_ARCHS) $(ARMv7L_ARCHS)),$(ARCH)) - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install "setuptools==69.5.1" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install "setuptools==69.5.1" -# [numpy] <= 1.24.4 last working version with gcc-4.9 -ifeq ($(call version_le, $(TC_GCC), 5.0),1) - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install "numpy==1.24.4" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install "numpy==1.24.4" -# [numpy] >= 1.25.0 requires c++17 -else ifeq ($(call version_gt, $(TC_GCC), 5.0),1) - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install "numpy==1.25.2" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install "numpy==1.25.2" -endif - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install "setuptools==74.0.0" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install "setuptools==74.0.0" -endif ifneq ($(PYTHON_LIB_NATIVE),$(PYTHON_LIB_CROSS)) cp $(PYTHON_LIB_CROSS)/_sysconfigdata_*.py $(PYTHON_LIB_NATIVE)/_sysconfigdata.py endif diff --git a/cross/python310/digests b/cross/python310/digests index 73d7b7d7132..97d74f52750 100644 --- a/cross/python310/digests +++ b/cross/python310/digests @@ -1,3 +1,3 @@ -Python-3.10.14.tar.xz SHA1 9103b4716dff30b40fd0239982f3a2d851143a46 -Python-3.10.14.tar.xz SHA256 9c50481faa8c2832329ba0fc8868d0a606a680fc4f60ec48d26ce8e076751fda -Python-3.10.14.tar.xz MD5 05148354ce821ba7369e5b7958435400 +Python-3.10.15.tar.xz SHA1 f498fd8921e3c37e6aded9acb11ed23c8daa0bbe +Python-3.10.15.tar.xz SHA256 aab0950817735172601879872d937c1e4928a57c409ae02369ec3d91dccebe79 +Python-3.10.15.tar.xz MD5 8b1faa1b193e4e90c0f17eb2decd89b5 diff --git a/cross/python311/Makefile b/cross/python311/Makefile index 2e789afbaa7..540bae4a5b2 100644 --- a/cross/python311/Makefile +++ b/cross/python311/Makefile @@ -1,5 +1,5 @@ PKG_NAME = python311 -PKG_VERS = 3.11.5 +PKG_VERS = 3.11.10 PKG_VERS_MAJOR_MINOR = $(word 1,$(subst ., ,$(PKG_VERS))).$(word 2,$(subst ., ,$(PKG_VERS))) PKG_EXT = tar.xz PKG_DIST_NAME = Python-$(PKG_VERS).$(PKG_EXT) @@ -133,8 +133,8 @@ python311_install: $(RUN) _PYTHON_HOST_PLATFORM=$(TC_TARGET) $(MAKE) install prefix=$(STAGING_INSTALL_PREFIX) # default wheels to install in crossenv -CROSSENV_WHEELS = cffi==1.17.0 -CROSSENV_WHEELS += cryptography==41.0.3 +CROSSENV_WHEELS = cffi==1.17.1 +CROSSENV_WHEELS += cryptography==43.0.1 # # Cython version >= 3.x breaks PyYAML wheel # https://github.com/yaml/pyyaml/issues/601 @@ -143,16 +143,18 @@ CROSSENV_WHEELS += cryptography==41.0.3 # https://numpy.org/devdocs/reference/distutils_status_migration.html # Python 3.12 considerations: scikit-build-core, meson-python #CROSSENV_WHEELS += Cython==3.0.2 -CROSSENV_WHEELS += Cython==0.29.36 +CROSSENV_WHEELS += Cython==0.29.37 CROSSENV_WHEELS += flit==3.9.0 -CROSSENV_WHEELS += maturin==1.2.3 -CROSSENV_WHEELS += poetry==1.6.1 -CROSSENV_WHEELS += scikit-build==0.17.6 -CROSSENV_WHEELS += setuptools-rust==1.7.0 -CROSSENV_WHEELS += setuptools-scm==7.1.0 +CROSSENV_WHEELS += maturin==1.7.4 +CROSSENV_WHEELS += poetry==1.8.3 +CROSSENV_WHEELS += scikit-build==0.18.1 +CROSSENV_WHEELS += setuptools-rust==1.10.2 +CROSSENV_WHEELS += setuptools-scm==8.1.0 # For future use when building numpy >= 1.26 -#CROSSENV_WHEELS += meson-python==0.13.2 -#CROSSENV_WHEELS += scikit-build-core==0.5.0 +#CROSSENV_WHEELS += meson-python==1.5.2 +#CROSSENV_WHEELS += scikit-build-core==0.10.7 +# For pydantic_core==2.23.0: (typing-extensions >=4.6.0,!=4.7.0) +CROSSENV_WHEELS += typing_extensions==4.12.2 # Create the crossenv in preparation for @@ -165,28 +167,10 @@ python311_post_install: $(WORK_DIR)/python-cc.mk . $(WORK_DIR)/crossenv/bin/activate && $(RUN) wget --no-verbose https://bootstrap.pypa.io/get-pip.py . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-python get-pip.py "pip==24.2" --no-setuptools --no-wheel --disable-pip-version-check . $(WORK_DIR)/crossenv/bin/activate && $(RUN) python get-pip.py "pip==24.2" --no-setuptools --no-wheel --disable-pip-version-check - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install "setuptools==74.0.0" "wheel==0.44.0" "pip-tools==7.4.1" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install "setuptools==74.0.0" "wheel==0.44.0" "pip-tools==7.4.1" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install "setuptools==68.1.2" "wheel==0.44.0" "pip-tools==7.4.1" + . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install "setuptools==68.1.2" "wheel==0.44.0" "pip-tools==7.4.1" . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install $(CROSSENV_WHEELS) . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install $(CROSSENV_WHEELS) -# [numpy] <= 1.2x.y Must be installed using setuptools < 70.0 -# [numpy] <= 1.21.6 (armv5) - gcc-4.6.4 - unsupported -# [numpy] <= 1.22.4 (armv7l) - gcc-4.8.3 - unsupported -ifneq ($(findstring $(ARCH),$(ARMv5_ARCHS) $(ARMv7L_ARCHS)),$(ARCH)) - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install "setuptools==69.5.1" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install "setuptools==69.5.1" -# [numpy] <= 1.24.4 last working version with gcc-4.9 -ifeq ($(call version_le, $(TC_GCC), 5.0),1) - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install "numpy==1.24.4" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install "numpy==1.24.4" -# [numpy] >= 1.25.0 requires c++17 -else ifeq ($(call version_gt, $(TC_GCC), 5.0),1) - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install "numpy==1.25.2" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install "numpy==1.25.2" -endif - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) build-pip --disable-pip-version-check install "setuptools==74.0.0" - . $(WORK_DIR)/crossenv/bin/activate && $(RUN) pip --disable-pip-version-check install "setuptools==74.0.0" -endif ifneq ($(PYTHON_LIB_NATIVE),$(PYTHON_LIB_CROSS)) cp $(PYTHON_LIB_CROSS)/_sysconfigdata_*.py $(PYTHON_LIB_NATIVE)/_sysconfigdata.py endif diff --git a/cross/python311/digests b/cross/python311/digests index 646c54d3e9f..80952233979 100644 --- a/cross/python311/digests +++ b/cross/python311/digests @@ -1,3 +1,3 @@ -Python-3.11.5.tar.xz SHA1 b13ec58fa6ebf5b0f7178555c5506e135cb7d785 -Python-3.11.5.tar.xz SHA256 85cd12e9cf1d6d5a45f17f7afe1cebe7ee628d3282281c492e86adf636defa3f -Python-3.11.5.tar.xz MD5 393856f1b7713aa8bba4b642ab9985d3 +Python-3.11.10.tar.xz SHA1 eb0ee5c84407445809a556592008cfc1867a39bc +Python-3.11.10.tar.xz SHA256 07a4356e912900e61a15cb0949a06c4a05012e213ecd6b4e84d0f67aabbee372 +Python-3.11.10.tar.xz MD5 af59e243df4c7019f941ae51891c10bc diff --git a/mk/spksrc.wheel.mk b/mk/spksrc.wheel.mk index a3d8d9acc2c..ab8a7e36633 100644 --- a/mk/spksrc.wheel.mk +++ b/mk/spksrc.wheel.mk @@ -122,7 +122,7 @@ ifneq ($(strip $(WHEELS)),) sed -e '/^pure:\|^#\|^$$/d' -e /^cross:/s/^cross://g $$wheel >> $(WHEELHOUSE)/$(WHEELS_CROSSENV_COMPILE) ; \ elif [ $$(basename $$wheel) = $(WHEELS_LIMITED_API) ]; then \ $(MSG) "Adding existing $$wheel file as ABI-limited" ; \ - cat $$wheel >> $(WHEELHOUSE)/$(WHEELS_LIMITED_API) ; \ + sed -e '/^#\|^$$/d' $$wheel >> $(WHEELHOUSE)/$(WHEELS_LIMITED_API) ; \ else \ $(MSG) "Adapting existing $$wheel file" ; \ sed -rn /^pure:/s/^pure://gp $$wheel >> $(WHEELHOUSE)/$(WHEELS_PURE_PYTHON) ; \ diff --git a/native/python310/Makefile b/native/python310/Makefile index 80062b791bb..81f2ac89707 100644 --- a/native/python310/Makefile +++ b/native/python310/Makefile @@ -1,5 +1,5 @@ PKG_NAME = python310 -PKG_VERS = 3.10.14 +PKG_VERS = 3.10.15 PKG_EXT = tar.xz PKG_DIST_NAME = Python-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://www.python.org/ftp/python/$(PKG_VERS) @@ -34,10 +34,10 @@ PIP_NATIVE = $(WORK_DIR)/../../../native/$(PKG_NAME)/work-native/install/usr/loc .PHONY: python310_native_post_install python310_native_post_install: $(WORK_DIR)/python-native.mk @$(MSG) Installing pip - @$(RUN) wget --no-verbose https://bootstrap.pypa.io/get-pip.py - @$(RUN) $(PYTHON) get-pip.py "pip==23.2.1" --no-setuptools --no-wheel --disable-pip-version-check + @$(RUN) wget https://bootstrap.pypa.io/get-pip.py + @$(RUN) $(PYTHON) get-pip.py "pip==24.2" --no-setuptools --no-wheel --disable-pip-version-check @$(MSG) Installing setuptools, wheel, cffi and cross env - @$(PIP) --disable-pip-version-check install "setuptools==68.1.2" "setuptools-rust==1.7.0" "maturin==1.2.3" "wheel==0.41.2" "cffi==1.15.1" "crossenv==1.4.0" + @$(PIP) --disable-pip-version-check install "setuptools==75.1.0" "setuptools-rust==1.10.2" "maturin==1.7.4" "wheel==0.44.0" "cffi==1.17.1" "crossenv==1.5.0" $(WORK_DIR)/python-native.mk: @echo PIP=$(PIP_NATIVE) >> $@ diff --git a/native/python310/digests b/native/python310/digests index 73d7b7d7132..97d74f52750 100644 --- a/native/python310/digests +++ b/native/python310/digests @@ -1,3 +1,3 @@ -Python-3.10.14.tar.xz SHA1 9103b4716dff30b40fd0239982f3a2d851143a46 -Python-3.10.14.tar.xz SHA256 9c50481faa8c2832329ba0fc8868d0a606a680fc4f60ec48d26ce8e076751fda -Python-3.10.14.tar.xz MD5 05148354ce821ba7369e5b7958435400 +Python-3.10.15.tar.xz SHA1 f498fd8921e3c37e6aded9acb11ed23c8daa0bbe +Python-3.10.15.tar.xz SHA256 aab0950817735172601879872d937c1e4928a57c409ae02369ec3d91dccebe79 +Python-3.10.15.tar.xz MD5 8b1faa1b193e4e90c0f17eb2decd89b5 diff --git a/native/python311/Makefile b/native/python311/Makefile index 9125b82b8fb..224df7c2a7d 100644 --- a/native/python311/Makefile +++ b/native/python311/Makefile @@ -1,5 +1,5 @@ PKG_NAME = python311 -PKG_VERS = 3.11.5 +PKG_VERS = 3.11.10 PKG_EXT = tar.xz PKG_DIST_NAME = Python-$(PKG_VERS).$(PKG_EXT) PKG_DIST_SITE = https://www.python.org/ftp/python/$(PKG_VERS) @@ -35,9 +35,9 @@ PIP_NATIVE = $(WORK_DIR)/../../../native/$(PKG_NAME)/work-native/install/usr/loc python311_native_post_install: $(WORK_DIR)/python-native.mk @$(MSG) Installing pip @$(RUN) wget https://bootstrap.pypa.io/get-pip.py - @$(RUN) $(PYTHON) get-pip.py "pip==23.2.1" --no-setuptools --no-wheel --disable-pip-version-check + @$(RUN) $(PYTHON) get-pip.py "pip==24.2" --no-setuptools --no-wheel --disable-pip-version-check @$(MSG) Installing setuptools, wheel, cffi and cross env - @$(PIP) --disable-pip-version-check install "setuptools==68.1.2" "setuptools-rust==1.7.0" "maturin==1.2.3" "wheel==0.41.2" "cffi==1.15.1" "crossenv==1.4.0" + @$(PIP) --disable-pip-version-check install "setuptools==75.1.0" "setuptools-rust==1.10.2" "maturin==1.7.4" "wheel==0.44.0" "cffi==1.17.1" "crossenv==1.5.0" $(WORK_DIR)/python-native.mk: @echo PIP=$(PIP_NATIVE) >> $@ diff --git a/native/python311/digests b/native/python311/digests index 646c54d3e9f..80952233979 100644 --- a/native/python311/digests +++ b/native/python311/digests @@ -1,3 +1,3 @@ -Python-3.11.5.tar.xz SHA1 b13ec58fa6ebf5b0f7178555c5506e135cb7d785 -Python-3.11.5.tar.xz SHA256 85cd12e9cf1d6d5a45f17f7afe1cebe7ee628d3282281c492e86adf636defa3f -Python-3.11.5.tar.xz MD5 393856f1b7713aa8bba4b642ab9985d3 +Python-3.11.10.tar.xz SHA1 eb0ee5c84407445809a556592008cfc1867a39bc +Python-3.11.10.tar.xz SHA256 07a4356e912900e61a15cb0949a06c4a05012e213ecd6b4e84d0f67aabbee372 +Python-3.11.10.tar.xz MD5 af59e243df4c7019f941ae51891c10bc diff --git a/spk/bazarr/src/requirements-crossenv-numpy.txt b/spk/bazarr/src/requirements-crossenv-numpy.txt index 5d9f9574df8..28ca2efc7ef 100644 --- a/spk/bazarr/src/requirements-crossenv-numpy.txt +++ b/spk/bazarr/src/requirements-crossenv-numpy.txt @@ -7,4 +7,6 @@ # [numpy] # - Require Cython in cross/python311 crossenv # - Numpy 1.25.x require c++17 -numpy==1.25.1 +#numpy==1.25.1 +# - Temp. reverted to 1.24.x +numpy==1.24.4 diff --git a/spk/python310/Makefile b/spk/python310/Makefile index d1c20881b02..38e9c044a38 100644 --- a/spk/python310/Makefile +++ b/spk/python310/Makefile @@ -1,7 +1,7 @@ SPK_NAME = python310 -SPK_VERS = 3.10.14 +SPK_VERS = 3.10.15 SPK_VERS_MAJOR_MINOR = $(word 1,$(subst ., ,$(SPK_VERS))).$(word 2,$(subst ., ,$(SPK_VERS))) -SPK_REV = 20 +SPK_REV = 21 SPK_ICON = src/python3.png DEPENDS = cross/$(SPK_NAME) @@ -13,7 +13,7 @@ DESCRIPTION_FRE = Language de programmation Python. DESCRIPTION_SPN = Lenguaje de programaciĆ³n Python. STARTABLE = no DISPLAY_NAME = Python 3.10 -CHANGELOG = "1. Update to Python 3.10.14" +CHANGELOG = "1. Update to Python 3.10.15
2. Update all mandatory wheels" HOMEPAGE = https://www.python.org LICENSE = PSF @@ -64,7 +64,8 @@ DEPENDS += cross/libxml2 DEPENDS += cross/libxslt # [mysqlclient] -DEPENDS += cross/mysql-connector-c cross/mariadb-connector-c +DEPENDS += cross/mysql-connector-c +DEPENDS += cross/mariadb-connector-c ENV += MYSQLCLIENT_CFLAGS="$(CFLAGS) -I$(STAGING_INSTALL_PREFIX)/include/mysql -I$(STAGING_INSTALL_PREFIX)/include/mariadb -I$(STAGING_INSTALL_PREFIX)/$(PYTHON_INC_DIR)" ENV += MYSQLCLIENT_LDFLAGS="$(LDFLAGS)" @@ -130,6 +131,7 @@ else ifeq ($(call version_gt, $(TC_GCC), 5.0),1) WHEELS += src/requirements-crossenv-numpy.txt endif endif + # workaround for compiler bug: # https://github.com/numpy/numpy/issues/13622 ifeq ($(call version_le, $(TC_GCC), 5.0),1) diff --git a/spk/python310/src/requirements-abi3.txt b/spk/python310/src/requirements-abi3.txt index be833c19a14..4e50951c5f1 100644 --- a/spk/python310/src/requirements-abi3.txt +++ b/spk/python310/src/requirements-abi3.txt @@ -8,5 +8,5 @@ # Require: # - CFLAGS=-sdt=c99 < gcc-4.9 # - CFLAGS=-sdt=c11 >= gcc-4.9 -pycryptodome==3.18.0 -pycryptodomex==3.18.0 +pycryptodome==3.20.0 +pycryptodomex==3.20.0 diff --git a/spk/python310/src/requirements-crossenv-greenlet-v2.txt b/spk/python310/src/requirements-crossenv-greenlet-v2.txt index 47a0d61c465..c2b4802c7ad 100644 --- a/spk/python310/src/requirements-crossenv-greenlet-v2.txt +++ b/spk/python310/src/requirements-crossenv-greenlet-v2.txt @@ -6,4 +6,4 @@ # [greenlet] # - Mandatory require full c++11 support -greenlet==2.0.2 +greenlet==3.0.3 diff --git a/spk/python310/src/requirements-crossenv-numpy-armv7l.txt b/spk/python310/src/requirements-crossenv-numpy-armv7l.txt index 5e7bd0d6286..959ec3c2450 100644 --- a/spk/python310/src/requirements-crossenv-numpy-armv7l.txt +++ b/spk/python310/src/requirements-crossenv-numpy-armv7l.txt @@ -7,4 +7,6 @@ # [numpy] # - armv7L (hi3535-6.1) Last known working version # - Require Cython in cross/python310 crossenv +# - numpy.distutils is deprecated since NumPy 1.23.0 +# Recommend to use `setuptools < 60.0` for Python >= 3.12 numpy==1.22.4 diff --git a/spk/python310/src/requirements-crossenv-numpy-gcc4.txt b/spk/python310/src/requirements-crossenv-numpy-gcc4.txt index f4cb4bea3c8..296f605e160 100644 --- a/spk/python310/src/requirements-crossenv-numpy-gcc4.txt +++ b/spk/python310/src/requirements-crossenv-numpy-gcc4.txt @@ -8,4 +8,6 @@ # - Require Cython in cross/python311 crossenv # - aarch64-6.1 require workaround WHEELS_CFLAGS=-O0 # ref: https://github.com/numpy/numpy/issues/13622 +# - numpy.distutils is deprecated since NumPy 1.23.0 +# Recommend to use `setuptools < 60.0` for Python >= 3.12 numpy==1.24.4 diff --git a/spk/python310/src/requirements-crossenv.txt b/spk/python310/src/requirements-crossenv.txt index e4745c4b630..2b8ad58528b 100644 --- a/spk/python310/src/requirements-crossenv.txt +++ b/spk/python310/src/requirements-crossenv.txt @@ -4,52 +4,52 @@ ## various wheels. Uncoment to enable. ## -# [bcrypt] & [cryptography] +# [bcrypt] # Require environment variables # PYO3_CROSS_LIB_DIR=$(STAGING_INSTALL_PREFIX)/lib/ # PYO3_CROSS_INCLUDE_DIR=$(STAGING_INSTALL_PREFIX)/include/ -bcrypt==4.1.1 +bcrypt==4.2.0 # [cryptography] # Mandatory of using OPENSSL_*_DIR starting with version >= 40 # https://docs.rs/openssl/latest/openssl/#automatic # ENV += OPENSSL_LIB_DIR=$(STAGING_INSTALL_PREFIX)/lib/ # ENV += OPENSSL_INCLUDE_DIR=$(STAGING_INSTALL_PREFIX)/include/ -cryptography==41.0.3 +cryptography==43.0.1 # Requirement for cryptography -cffi==1.15.1 +cffi==1.17.0 # commonly used cross-compiled wheels # All tested and can be enabled but may conflict # with local python apps requirements immutables==0.20 -MarkupSafe==2.1.3 +MarkupSafe==2.1.5 msgpack-python==0.5.6 netifaces==0.11.0 -psutil==5.9.5 -regex==2023.8.8 -SQLAlchemy==2.0.20 -zope.interface==6.0 +psutil==6.0.0 +regex==2024.7.24 +SQLAlchemy==2.0.32 +zope.interface==7.0.2 # [gevent] # Depends: libev, c-ares # Require environment variables # GEVENTSETUP_EMBED_CARES=FALSE # GEVENTSETUP_EMBED_LIBEV=FALSE -gevent==23.7.0 +gevent==24.2.1 # [lxml] # Depends: libxml2, libxslt -lxml==4.9.3 +lxml==5.3.0 # [mysqlclient] # Depends: mysql-connector-c, mariadb-connector-c # Require environment variables # MYSQLCLIENT_CFLAGS # MYSQLCLIENT_LDFLAGS -mysqlclient==2.2.0 +mysqlclient==2.2.4 # [Pillow] # Require --global-options arguments @@ -60,13 +60,23 @@ Pillow==9.5.0 # Depends: c-ares # Require environment variables # PYCARES_USE_SYSTEM_LIB=1 -pycares==4.3.0 +pycares==4.4.0 # [pycurl] # Depends: curl # Require environment variables # PYCURL_CURL_CONFIG -pycurl==7.45.2 +pycurl==7.45.3 + +# [pydantic_core] +# Requires path to maturin from crossenv +# Requires WHEELS_CFLAGS = -std=c11 for = gcc-4.9 +# Requires WHEELS_CFLAGS = -std=c99 for < gcc-4.9 +# Require environment variables +# PYO3_CROSS_LIB_DIR=$(STAGING_INSTALL_PREFIX)/lib/ +# PYO3_CROSS_INCLUDE_DIR=$(STAGING_INSTALL_PREFIX)/include/ +# --> maturin error with py310 +#pydantic_core==2.7.0 # [PyNaCl] # Depends: cross/libsodium @@ -76,7 +86,7 @@ PyNaCl==1.5.0 # [PyYAML] # Depends: libyaml -PyYAML==6.0.1 +PyYAML==6.0.2 # [rencode] # Updated fork of the project @@ -85,7 +95,7 @@ git+https://github.com/totaam/rencode.git@f6254ab26161f90b9c5e97915b9193fee805fc # [ujson] # - Require setuptools-scm in cross/python3* crossenv -ujson==5.8.0 +ujson==5.10.0 # [webrtcvad] # webrtcvad==2.0.10 # requires unreleased version at specific commit for qoriq arch diff --git a/spk/python310/src/requirements-pure.txt b/spk/python310/src/requirements-pure.txt index acae8820607..9dd870046fa 100644 --- a/spk/python310/src/requirements-pure.txt +++ b/spk/python310/src/requirements-pure.txt @@ -1,26 +1,27 @@ # basic default wheels -#pip==23.2.1 ==> Always install latest version (service-setup.sh:install_python_virtualenv) +# ==> Always install latest version (service-setup.sh:install_python_virtualenv) +pip==24.2 # Always match what's in cross/python310/Makefile -setuptools==68.1.2 -wheel==0.41.2 +setuptools==75.1.0 +wheel==0.44.0 # Always use latest version available -# certifi==2023.7.22 +# certifi==2024.8.30 certifi # Mandatory for python application # to create their local virtualenv # in order to install wheels within # their running environment -virtualenv==20.24.4 +virtualenv==20.26.6 # Other mandatory wheels that # gets install by default as # basic dependencies of above -distlib==0.3.7 -filelock==3.12.3 -platformdirs==3.10.0 +distlib==0.3.8 +filelock==3.16.1 +platformdirs==4.3.6 six==1.16.0 ## diff --git a/spk/python311/Makefile b/spk/python311/Makefile index 30a7c204f9a..87eba19e7ee 100644 --- a/spk/python311/Makefile +++ b/spk/python311/Makefile @@ -1,7 +1,7 @@ SPK_NAME = python311 -SPK_VERS = 3.11.5 +SPK_VERS = 3.11.10 SPK_VERS_MAJOR_MINOR = $(word 1,$(subst ., ,$(SPK_VERS))).$(word 2,$(subst ., ,$(SPK_VERS))) -SPK_REV = 8 +SPK_REV = 9 SPK_ICON = src/python3.png # Platform "powerpc-none-linux-gnuspe" with compiler "gcc" is not supported by the @@ -18,7 +18,7 @@ DESCRIPTION_FRE = Language de programmation Python. DESCRIPTION_SPN = Lenguaje de programaciĆ³n Python. STARTABLE = no DISPLAY_NAME = Python 3.11 -CHANGELOG = "1. Update to Python 3.11.5" +CHANGELOG = "1. Update to Python 3.11.10
2. Update all mandatory wheels" HOMEPAGE = https://www.python.org LICENSE = PSF @@ -64,7 +64,8 @@ DEPENDS += cross/libxml2 DEPENDS += cross/libxslt # [mysqlclient] -DEPENDS += cross/mysql-connector-c cross/mariadb-connector-c +DEPENDS += cross/mysql-connector-c +DEPENDS += cross/mariadb-connector-c ENV += MYSQLCLIENT_CFLAGS="$(CFLAGS) -I$(STAGING_INSTALL_PREFIX)/include/mysql -I$(STAGING_INSTALL_PREFIX)/include/mariadb -I$(STAGING_INSTALL_PREFIX)/$(PYTHON_INC_DIR)" ENV += MYSQLCLIENT_LDFLAGS="$(LDFLAGS)" @@ -155,6 +156,7 @@ else ifeq ($(call version_gt, $(TC_GCC), 5.0),1) WHEELS += src/requirements-crossenv-numpy.txt endif endif + # workaround for compiler bug: # https://github.com/numpy/numpy/issues/13622 ifeq ($(call version_le, $(TC_GCC), 5.0),1) diff --git a/spk/python311/src/requirements-abi3.txt b/spk/python311/src/requirements-abi3.txt index be833c19a14..4e50951c5f1 100644 --- a/spk/python311/src/requirements-abi3.txt +++ b/spk/python311/src/requirements-abi3.txt @@ -8,5 +8,5 @@ # Require: # - CFLAGS=-sdt=c99 < gcc-4.9 # - CFLAGS=-sdt=c11 >= gcc-4.9 -pycryptodome==3.18.0 -pycryptodomex==3.18.0 +pycryptodome==3.20.0 +pycryptodomex==3.20.0 diff --git a/spk/python311/src/requirements-crossenv-greenlet-v2.txt b/spk/python311/src/requirements-crossenv-greenlet-v2.txt index 47a0d61c465..c2b4802c7ad 100644 --- a/spk/python311/src/requirements-crossenv-greenlet-v2.txt +++ b/spk/python311/src/requirements-crossenv-greenlet-v2.txt @@ -6,4 +6,4 @@ # [greenlet] # - Mandatory require full c++11 support -greenlet==2.0.2 +greenlet==3.0.3 diff --git a/spk/python311/src/requirements-crossenv-numpy-armv7l.txt b/spk/python311/src/requirements-crossenv-numpy-armv7l.txt index d794fd86565..243383864b9 100644 --- a/spk/python311/src/requirements-crossenv-numpy-armv7l.txt +++ b/spk/python311/src/requirements-crossenv-numpy-armv7l.txt @@ -7,4 +7,6 @@ # [numpy] # - armv7L (hi3535-6.1) Last known working version # - Require Cython in cross/python311 crossenv +# - numpy.distutils is deprecated since NumPy 1.23.0 +# Recommend to use `setuptools < 60.0` for Python >= 3.12 numpy==1.22.4 diff --git a/spk/python311/src/requirements-crossenv-numpy-gcc4.txt b/spk/python311/src/requirements-crossenv-numpy-gcc4.txt index f4cb4bea3c8..296f605e160 100644 --- a/spk/python311/src/requirements-crossenv-numpy-gcc4.txt +++ b/spk/python311/src/requirements-crossenv-numpy-gcc4.txt @@ -8,4 +8,6 @@ # - Require Cython in cross/python311 crossenv # - aarch64-6.1 require workaround WHEELS_CFLAGS=-O0 # ref: https://github.com/numpy/numpy/issues/13622 +# - numpy.distutils is deprecated since NumPy 1.23.0 +# Recommend to use `setuptools < 60.0` for Python >= 3.12 numpy==1.24.4 diff --git a/spk/python311/src/requirements-crossenv-numpy.txt b/spk/python311/src/requirements-crossenv-numpy.txt index 39ecab3b7e6..8ee5a285e37 100644 --- a/spk/python311/src/requirements-crossenv-numpy.txt +++ b/spk/python311/src/requirements-crossenv-numpy.txt @@ -7,4 +7,8 @@ # [numpy] # - Require Cython in cross/python310 crossenv # - Numpy 1.25.x require c++17 -numpy==1.25.2 +# - Numpy 1.26.x requires: +# c++17, meson-python, scikit-build-core +#numpy==1.25.2 +# - Temp. reverted to 1.24.x +numpy==1.24.4 diff --git a/spk/python311/src/requirements-crossenv-rpds-py.txt b/spk/python311/src/requirements-crossenv-rpds-py.txt index a1f828d76e9..dbe0de961fc 100644 --- a/spk/python311/src/requirements-crossenv-rpds-py.txt +++ b/spk/python311/src/requirements-crossenv-rpds-py.txt @@ -10,4 +10,4 @@ # PYO3_CROSS_INCLUDE_DIR=$(STAGING_INSTALL_PREFIX)/include/ # Requires path to maturin from crossenv # ENV += PATH=$(WORK_DIR)/crossenv/build/bin:$(PATH) -rpds-py==0.10.0 +rpds-py==0.20.0 diff --git a/spk/python311/src/requirements-crossenv.txt b/spk/python311/src/requirements-crossenv.txt index 71d675dccfc..40c49bdcdb1 100644 --- a/spk/python311/src/requirements-crossenv.txt +++ b/spk/python311/src/requirements-crossenv.txt @@ -4,52 +4,52 @@ ## various wheels. Uncoment to enable. ## -# [bcrypt] & [cryptography] +# [bcrypt] # Require environment variables # PYO3_CROSS_LIB_DIR=$(STAGING_INSTALL_PREFIX)/lib/ # PYO3_CROSS_INCLUDE_DIR=$(STAGING_INSTALL_PREFIX)/include/ -bcrypt==4.1.1 +bcrypt==4.2.0 # [cryptography] # Mandatory of using OPENSSL_*_DIR starting with version >= 40 # https://docs.rs/openssl/latest/openssl/#automatic # ENV += OPENSSL_LIB_DIR=$(STAGING_INSTALL_PREFIX)/lib/ # ENV += OPENSSL_INCLUDE_DIR=$(STAGING_INSTALL_PREFIX)/include/ -cryptography==41.0.3 +cryptography==43.0.1 # Requirement for cryptography -cffi==1.15.1 +cffi==1.17.0 # commonly used cross-compiled wheels # All tested and can be enabled but may conflict # with local python apps requirements immutables==0.20 -MarkupSafe==2.1.3 +MarkupSafe==2.1.5 msgpack-python==0.5.6 netifaces==0.11.0 -psutil==5.9.5 -regex==2023.8.8 -SQLAlchemy==2.0.20 -zope.interface==6.0 +psutil==6.0.0 +regex==2024.7.24 +SQLAlchemy==2.0.32 +zope.interface==7.0.2 # [gevent] # Depends: libev, c-ares # Require environment variables # GEVENTSETUP_EMBED_CARES=FALSE # GEVENTSETUP_EMBED_LIBEV=FALSE -gevent==23.7.0 +gevent==24.2.1 # [lxml] # Depends: libxml2, libxslt -lxml==4.9.3 +lxml==5.3.0 # [mysqlclient] # Depends: mysql-connector-c, mariadb-connector-c # Require environment variables # MYSQLCLIENT_CFLAGS # MYSQLCLIENT_LDFLAGS -mysqlclient==2.2.0 +mysqlclient==2.2.4 # [Pillow] # Require --global-options arguments @@ -60,13 +60,13 @@ Pillow==9.5.0 # Depends: c-ares # Require environment variables # PYCARES_USE_SYSTEM_LIB=1 -pycares==4.3.0 +pycares==4.4.0 # [pycurl] # Depends: curl # Require environment variables # PYCURL_CURL_CONFIG -pycurl==7.45.2 +pycurl==7.45.3 # [pydantic_core] # Requires path to maturin from crossenv @@ -75,7 +75,7 @@ pycurl==7.45.2 # Require environment variables # PYO3_CROSS_LIB_DIR=$(STAGING_INSTALL_PREFIX)/lib/ # PYO3_CROSS_INCLUDE_DIR=$(STAGING_INSTALL_PREFIX)/include/ -pydantic_core==2.7.0 +pydantic_core==2.23.0 # [PyNaCl] # Depends: cross/libsodium @@ -85,7 +85,7 @@ PyNaCl==1.5.0 # [PyYAML] # Depends: libyaml -PyYAML==6.0.1 +PyYAML==6.0.2 # [rencode] # Updated fork of the project @@ -94,7 +94,7 @@ git+https://github.com/totaam/rencode.git@f6254ab26161f90b9c5e97915b9193fee805fc # [ujson] # - Require setuptools-scm in cross/python3* crossenv -ujson==5.8.0 +ujson==5.10.0 # [webrtcvad] # webrtcvad==2.0.10 # requires unreleased version at specific commit for qoriq arch diff --git a/spk/python311/src/requirements-pure.txt b/spk/python311/src/requirements-pure.txt index acae8820607..5dedc5cf9b8 100644 --- a/spk/python311/src/requirements-pure.txt +++ b/spk/python311/src/requirements-pure.txt @@ -1,26 +1,27 @@ # basic default wheels -#pip==23.2.1 ==> Always install latest version (service-setup.sh:install_python_virtualenv) +# ==> Always install latest version (service-setup.sh:install_python_virtualenv) +pip==24.2 -# Always match what's in cross/python310/Makefile +# Always match what's in cross/python311/Makefile setuptools==68.1.2 -wheel==0.41.2 +wheel==0.44.0 # Always use latest version available -# certifi==2023.7.22 +# certifi==2024.8.30 certifi # Mandatory for python application # to create their local virtualenv # in order to install wheels within # their running environment -virtualenv==20.24.4 +virtualenv==20.26.6 # Other mandatory wheels that # gets install by default as # basic dependencies of above -distlib==0.3.7 -filelock==3.12.3 -platformdirs==3.10.0 +distlib==0.3.8 +filelock==3.16.1 +platformdirs==4.3.6 six==1.16.0 ##