aboutsummaryrefslogtreecommitdiff
path: root/lang/python
Commit message (Collapse)AuthorAge
...
| * | python3: Split setuptools into separate source packageJeffery To2023-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Packaging setuptools from a separate source package allows it to stay updated with upstream. Host setuptools will remain installed as part of python3. Host setuptools is used in a much more controlled way and so is less critical for it to track upstream. setuptools was in a separate source package that was removed in a53d0c5a403d1669e2cf6c59c2be6a9d3ed633a0; this work is not based on that earlier package. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
| * | python3: Split pip into separate source packageJeffery To2023-05-26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Packaging pip from a separate source package allows it to stay updated with upstream. Host pip will remain installed as part of python3. Host pip is used in a much more controlled way and so is less critical for it to track upstream. This also removes the python-pip-conf package and installs the pip.conf file as part of python3-pip. The patch 003-disable-pip-version-check.patch is originally from Debian: https://salsa.debian.org/python-team/packages/python-pip/-/blob/bb079efb8c6dd2c284eee94cf90e61bce19a6f73/debian/patches/disable-pip-version-check.patch pip was in a separate source package that was removed in a53d0c5a403d1669e2cf6c59c2be6a9d3ed633a0; this work is not based on that earlier package. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
| * | python3: Split venv module from python3-light into separate packageJeffery To2023-05-26
| |/ | | | | | | | | | | | | | | This adds a new subpackage for the venv module. This also moves the ensurepip module from python3-pip into python3-venv, as ensurepip is not necessary for pip but often used for venv. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* | Merge pull request #21188 from jefferyto/python-tomli-remove-packageTianling Shen2023-05-27
|\ \ | | | | | | python-tomli: Remove package
| * | python-tomli: Remove packageJeffery To2023-05-26
| |/ | | | | | | | | | | | | | | | | | | | | Python added tomli to its standard library in 3.11. Now that Python in the packages feed has been updated to 3.11, the separate tomli package is no longer necessary. This removes python-tomli and updates all dependant packages, removing python-tomli from their lists of dependencies. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* / numpy: bump version to 1.24.3Alexandru Ardelean2023-05-26
|/ | | | | | Need to also fix build for GCC 13 + musl. Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
* Merge pull request #21167 from ↵Alexandru Ardelean2023-05-26
|\ | | | | | | | | jefferyto/python-packages-do-not-set-pyvenv-launcher python-packages: Remove __PYVENV_LAUNCHER__ environment variable
| * python-packages: Remove __PYVENV_LAUNCHER__ environment variableJeffery To2023-05-25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Setting __PYVENV_LAUNCHER__ for Python package builds was added in a91a992abb1fe9b7c4e4e5d11532dbf18c5b213d, but neither the commit message nor the pull request[1] explain its purpose in detail. My guess is this was done to set the shebang for installed Python scripts. We now have a Makefile recipe to set the shebang, so it would be unnecessary to set this variable for this purpose. It appears that Python 3.11 has changed the handling of this (internal) environment variable, and setting it appears to be causing build errors for all Python packages. This removes setting __PYVENV_LAUNCHER__ for Python package builds. [1]: https://github.com/openwrt/packages/pull/525 Fixes: https://github.com/openwrt/packages/issues/21162 Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* | Merge pull request #21168 from jefferyto/python-poetry-core-1.6.0Tianling Shen2023-05-26
|\ \ | | | | | | python-poetry-core: Update to 1.6.0
| * | python-poetry-core: Update to 1.6.0Jeffery To2023-05-25
| |/ | | | | | | Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* / python3: Fix unnecessary linking with libbsdJeffery To2023-05-25
|/ | | | | | | | | configure will try to link with libbsd for the flock function, even when flock is available without it. Fixes: https://github.com/openwrt/packages/issues/21161 Fixes: 2445fe9fb25e ("python3: Update to 3.11.3, refresh/redo patches") Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* python-flit-core: Update to 3.9.0Jeffery To2023-05-24
| | | | Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* borgbackup: Move from lang/python into utilsJeffery To2023-05-24
| | | | | | | | lang/python is meant for Python libraries and other packages closely related to the Python language. It makes more sense for borgbackup to be in utils instead. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* python3: Update to 3.11.3, refresh/redo patchesJeffery To2023-05-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Removed patches: * 001-enable-zlib.patch: zlib module should be enabled automatically * 007-distutils-do-not-adjust-path.patch: Not necessary since we process shebang lines for all scripts (in python3-package.mk) * 030-bpo-43112-detect-musl-as-a-separate-SOABI-GH-24502.patch: Already merged * Move configure vars from config.site back into Makefile Centralizing all build information into one file makes it easier to maintain * No longer set ac_cv_header_uuid_h=yes as configure should detect libuuid * Order configure args by enable-/disable-/with-/without-, then alphabetically * Set ac_cv_working_openssl_hashlib=yes for host configure to bypass the OpenSSL API tests with LibreSSL * Use the default Host/Compile recipe instead of picking out specific targets to make Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* python3: Fix hashlib module not compiled for host PythonJeffery To2023-05-24
| | | | | | | | | | | | | | | | | | | | | | 026-openssl-feature-flags.patch and 028-host-python-support-ssl-with-libressl.patch were removed in 4ecd9d67e90651a8e93760bf0b5771f7057c74a8 to fix the ssl module after libressl was upgraded to 3.7.0[1]. However, the cause of the ssl module build failure was only 028-host-python-support-ssl-with-libressl.patch. Removing 026-openssl-feature-flags.patch caused a build failure for the hashlib module. This restores 026-openssl-feature-flags.patch with an updated version of the patch from OpenBSD[2]. [1]: https://github.com/openwrt/packages/issues/20107 [2]: https://github.com/openbsd/ports/blob/26a04435bf2a09dcbe22b718bfee08997617a906/lang/python/3.10/patches/patch-Modules__hashopenssl_c Fixes: 4ecd9d67e906 ("python3: fix ssl support by removing libressl patches") Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* python3: Fix uuid module not compiled for host PythonJeffery To2023-05-24
| | | | | | | This adds $(STAGING_DIR_HOST)/include/e2fsprogs to HOST_CFLAGS and HOST_CPPFLAGS so that configure can find uuid/uuid.h. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* python3: Fix multiarch/local paths added when building host PythonJeffery To2023-05-24
| | | | | | | | | | | | | | | | | | | | | | | | | | By default, the Python build process will add /usr/local/{lib,include}, and multiarch paths (e.g. /usr/{lib,include}/x86_64-linux-gnu) if building on Debian/Ubuntu, to its library and includes paths. 006-remove-multi-arch-and-local-paths.patch was added in 84202f17e1aac6faf66b8d186f7c5c62b6f72ffb to stop the Python build process from adding these paths. 006-remove-multi-arch-and-local-paths.patch was removed in 48277ec9158151763239461c6f60808e38a99c2f. 006-do-not-add-multiarch-paths-when-cross-compiling.patch was added in 0c8b0b0bf727a57b0138a1425d2f32786dddd146 to stop the Python build process from adding these paths for target Python. These paths are still added by the Python build process when building host Python. This replaces the cross-compiling-only patch with the original patch, renamed slightly and adapted for Python 3.10. Fixes: 48277ec91581 ("python3: bump to version 3.8") Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* python3: Fix race condition when doing parallel buildsJeffery To2023-05-24
| | | | | | | | | | | | | | | | | | | | When doing parallel builds, host Python can install the python3 symlink before the Python standard library is installed completely. When this occurs, it is possible for other packages to detect the python3 symlink and try to use host Python before it is fully installed. This adds a patch to make commoninstall (where the standard library is installed) a prerequisite of bininstall (where the python3 symlink is installed), so that commoninstall is fully completed before bininstall begins. Patch has been submitted upstream: https://github.com/python/cpython/pull/104693 Fixes: https://github.com/openwrt/packages/issues/19241 Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* python3: Fix readelf program name not replaced in _sysconfigdata.pyJeffery To2023-05-24
| | | | | | | | | | | | | | | | | | The Makefile lines to add READELF to TARGET_CONFIGURE_OPTS was removed in 4e05541782edeb06b51d691dadf52648df24c940. Without setting READELF, configure finds the symlink to $(TARGET_CROSS)readelf (e.g. arm-openwrt-linux-readelf) instead of $(TARGET_CROSS)readelf (e.g. arm-openwrt-linux-muslgnueabi-readelf). This leads to the symlink name being saved to _sysconfigdata.py, and so the readelf name is not replaced correctly (in Py3Package/python3-base/install). This restores the removed Makefile lines. Fixes: 4e05541782ed ("python3: bump to version 3.10.0") Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* python3: Fix __pycache__ files included in python3-lightJeffery To2023-05-24
| | | | | | | | | | | | | | | | 003-do-not-run-distutils-tests.patch was removed in 4e05541782edeb06b51d691dadf52648df24c940. This patch stopped "make install" from, among other things, running compileall. When this patch was removed, "make install" ran compileall as normal and created bytecode files in __pycache__ directories. These files were then packaged in python3-light. This adds a patch to stop compileall from being run during "make install". Fixes: 4e05541782ed ("python3: bump to version 3.10.0") Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* python3: Remove --without-pymallocJeffery To2023-05-24
| | | | | | | | | | | | --without-pymalloc was added in 7bf1ae65a89e380ce20ef5ab13b1a7276d6f7047 because leaving it enabled added an "m" flag/suffix to file names. This flag/suffix was removed in Python 3.8[1], so disabling pymalloc is no longer necessary. [1]: https://docs.python.org/3.8/whatsnew/3.8.html#build-and-c-api-changes Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* python3-libselinux: fix compilation with musl 1.2.4Tianling Shen2023-05-20
| | | | | | | | | musl 1.2.4 deprecated legacy "LFS64" ("large file support") interfaces so just having _GNU_SOURCE defined is not enough anymore. Manually pass -D_LARGEFILE64_SOURCE to allow to keep using LFS64 definitions. Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
* Merge pull request #20981 from jefferyto/python3-packages-fix-buildTianling Shen2023-05-20
|\ | | | | python3-packages: Set PYTHON3_PKG_BUILD:=0
| * python3-packages: Set PYTHON3_PKG_BUILD:=0Jeffery To2023-05-11
| | | | | | | | | | | | | | This sets PYTHON3_PKG_BUILD:=0 so that python3-package.mk does not set any default build recipes. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* | python-packaging: Update to 23.1Jeffery To2023-05-18
| | | | | | | | Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* | python-attrs: Update to 23.1.0Jeffery To2023-05-18
| | | | | | | | | | | | | | The package now uses pyproject.toml-based builds with additional build dependencies. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* | python-automat: Update to 22.10.0, refresh patchesJeffery To2023-05-18
| | | | | | | | | | | | | | This also removes the patch to avoid setuptools-scm and adds a build dependency on python-setuptools-scm/host. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* | python-hatchling: Update to 1.17.0Jeffery To2023-05-17
| | | | | | | | Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* | python-requests: bump to version 2.30.0Alexandru Ardelean2023-05-15
| | | | | | | | Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
* | django: bump to version 4.2.1Alexandru Ardelean2023-05-15
| | | | | | | | Signed-off-by: Alexandru Ardelean <alex@shruggie.ro>
* | Merge pull request #20985 from jefferyto/python-incremental-fix-host-buildTianling Shen2023-05-15
|\ \ | | | | | | python-incremental: Add missing host build dependencies
| * | python-incremental: Add missing host build dependenciesJeffery To2023-05-11
| |/ | | | | | | | | Fixes: 8d81b6732757 ("python-incremental: Update to 22.10.0, redo patch, add host build") Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* | numpy: Avoid build user config filesJeffery To2023-05-11
| | | | | | | | | | | | | | | | This stops numpy from reading .numpy-site.cfg in the build user's home directory. The code actually tries to find both .numpy-site.cfg and site.cfg in the user's home directory; this patch prevents both. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* | numpy: Fix compilation when OpenBLAS support is not enabledJeffery To2023-05-11
| | | | | | | | | | | | | | | | | | | | | | Currently, if OpenBLAS support is not enabled, a site.cfg file is not written and numpy will use build host paths for libraries. If the build host has any conflicting libraries, specifically libpython3.10.a, then compilation will fail. This ensures site.cfg is always written with buildroot paths. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* | numpy: Fix pyproject.toml-based buildJeffery To2023-05-11
|/ | | | | | | | The versions of setuptools and wheel pinned in pyproject.toml are older than the versions available in the packages repo. This unpins the versions so that the build can proceed. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* Merge pull request #20958 from jefferyto/python-trove-classifiers-2023.5.2Tianling Shen2023-05-10
|\ | | | | python-trove-classifiers: Update to 2023.5.2
| * python-trove-classifiers: Update to 2023.5.2Jeffery To2023-05-08
| | | | | | | | Signed-off-by: Jeffery To <jeffery.to@gmail.com>
* | Merge pull request #20801 from jefferyto/python-pyprojectJeffery To2023-05-10
|\ \ | |/ |/| python: Add proper support for pyproject.toml-based builds, update Python packages for new build process
| * python-packages: Clean up build variablesJeffery To2023-04-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Rename PYTHON3_PKG_SETUP_VARS to PYTHON3_PKG_BUILD_VARS, and PYTHON3_PKG_SETUP_DIR to PYTHON3_PKG_BUILD_PATH The new variable names emphasize that these values apply to the new build process. * Remove PYTHON3_PKG_SETUP_ARGS set to the empty string These were set to override the default arguments in the old build process and not applicable to the new build process. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
| * python-libraries: Update build optionsJeffery To2023-04-24
| | | | | | | | | | | | | | | | This updates the build options for these packages to work with the pyproject.toml-based build process, and removes PYTHON3_PKG_FORCE_DISTUTILS_SETUP:=1. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
| * python-typing-extensions: Update to 4.5.0, add myself as maintainerJeffery To2023-04-24
| | | | | | | | Signed-off-by: Jeffery To <jeffery.to@gmail.com>
| * python-packaging: Remove BROKENJeffery To2023-04-24
| | | | | | | | | | | | | | With proper support of pyproject.toml-based builds in place, this package will now build. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
| * python-jsonschema: Remove previous build workaroundJeffery To2023-04-24
| | | | | | | | | | | | | | With proper support for pyproject.toml-based builds in place, this is no longer necessary. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
| * python-exceptiongroup: Remove previous build workaroundJeffery To2023-04-24
| | | | | | | | | | | | | | With proper support for pyproject.toml-based builds in place, this is no longer necessary. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
| * python-astral: Remove BROKENJeffery To2023-04-24
| | | | | | | | | | | | | | With proper support for pyproject.toml-based builds in place, this package will now build. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
| * python: Add proper support for pyproject.toml-based buildsJeffery To2023-04-24
| | | | | | | | | | | | | | | | | | | | | | | | | | This removes the changes made in 61f202c0170785addbbc449e4de61cc5886f0833 and adds actual support for pyproject.toml-based (PEP 517) builds of Python packages. Packages can force the use of the old build process by setting PYTHON3_PKG_FORCE_DISTUTILS_SETUP:=1; this should only be a temporary workaround until the package can be updated/fixed to use the new build process. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
| * python-libraries: Force old build processJeffery To2023-04-24
| | | | | | | | | | | | | | | | These packages will need adjustments to work with pyproject.toml-based builds, so set PYTHON3_PKG_FORCE_DISTUTILS_SETUP:=1 to force the old build process (when pyproject.toml-based builds are in place) for now. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
| * python-ubus: Force old build processJeffery To2023-04-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This package will not build with the pyproject.toml-based build process because it has a build dependency on pytest-runner[1]. pytest-runner has been deprecated[2], so instead of adding a package for pytest-runner to fulfill the build dependency, force this package to use the old build process. [1]: https://gitlab.nic.cz/turris/python-ubus/-/blob/v0.1.1/setup.py#L35 [2]: https://github.com/pytest-dev/pytest-runner#deprecation-notice Signed-off-by: Jeffery To <jeffery.to@gmail.com>
| * python-twisted: Update to 22.10.0Jeffery To2023-04-24
| | | | | | | | | | | | | | | | | | Includes fix for CVE-2022-39348 (NameVirtualHost Host header injection). This adds a build dependency that will be required for pyproject.toml-based builds. Signed-off-by: Jeffery To <jeffery.to@gmail.com>
| * python-pytest-forked: Update to 1.6.0Jeffery To2023-04-24
| | | | | | | | | | | | | | | | | | The overly-strict build requirements in 1.3.0[1] would cause a build failure with pyproject.toml-based builds. [1]: https://github.com/pytest-dev/pytest-forked/blob/v1.3.0/pyproject.toml#L2 Signed-off-by: Jeffery To <jeffery.to@gmail.com>