Commit graph

20 commits

Author SHA1 Message Date
Jeffery To
bed8dc2132
python3: Update to 3.10.3, refresh patches
Includes fixes for:
* Windows builds updated to bzip2 1.0.8 to mitigate CVE-2016-3189 and
  CVE-2019-12900
* CVE-2022-26488: Escalation of privilege via Windows Installer

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2022-03-21 16:43:35 +08:00
Jeffery To
5b2c8bccf3
python3: Update to 3.10.2, refresh patches
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2022-01-17 04:32:42 +08:00
Jeffery To
d63664a5e7
python3: Update to 3.10.1, refresh/remove patches
Removed patches:
* 027-bpo-43158-Use-configure-values-for-building-_uuid-ex.patch
  Already merged.
* 029-disable-deprecation-warning.patch
  Packages should be patched/fixed to remove the use of distutils
  instead of disabling this warning.

Also:
* Updates PKG_LICENSE to use the correct SPDX license identifier
* Fixes build for mipsel_24kc_24kf

Fixes https://github.com/openwrt/packages/issues/17217.

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2022-01-05 16:10:01 +08:00
Alexandru Ardelean
4e05541782 python3: bump to version 3.10.0
Manually re-applied:
  008-distutils-use-python-sysroot.patch
  016-adjust-config-paths.patch

Drop patch: 003-do-not-run-distutils-tests.patch
There is now a configure option '--disable-test-modules'
And seems we left the '_ctypes_test' around for quite some time.
Dropped now.
Refs:
  https://bugs.python.org/issue27640
  https://bugs.python.org/issue43282

Drop patch: 013-getbuildinfo-date-time-source-date-epoch.patch
Python build honors SOURCE_DATE_EPOCH pretty well now.

Drop setuptools patches. Setuptools should be reproducible with Python 3.6+
according to a mention here:
  https://github.com/pypa/setuptools/pull/1690#issuecomment-536517456
It's time to let upstream fix Setuptools reproduce-ability.

Drop patch: 010-do-not-add-rt-lib-dirs-when-cross-compiling.patch
I can't seem to fully remember why it's there.
And it seem to build fine without it.

Drop patch: 015-abort-on-failed-modules.patch
Python build supports a similar PYTHONSTRICTEXTENSIONBUILD=1 env-var
option.

Add patch: 026-openssl-feature-flags.patch
We need to keep this in our tree for a while.
See:
  https://bugs.python.org/issue45627

Backport patch: 027-bpo-43158-Use-configure-values-for-building-_uuid-ex.patch
Link: https://github.com/python/cpython/pull/29353
Fixes the build for uuid C module.

Add patch: 028-host-python-support-ssl-with-libressl.patch
We need the _ssl module working on the host-side with LibreSSL for pip to
work to download from https://pypi.org
Refs: https://github.com/openwrt/openwrt/pull/4749

Add patch: 029-disable-deprecation-warning.patch
Fixes apparmor build. The warning causes a configure error.

Refreshed the rest of patches.

Some old build-flags were removed. They don't seem to be necessary anymore.

Split python3-uuid from python3-light. To better manage the libuuid library
(if needed). Also, fixing the uuid C module build. Seems this was failing,
and was falling back to using hashlib.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2021-11-19 13:30:14 +02:00
Alexandru Ardelean
8b3297e507 python3: update to version 3.9.6
Refreshed patches.
Bumped pip to 21.1.3.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2021-07-06 16:20:18 +02:00
Alexandru Ardelean
e312275dd9 python3: bump version to 3.9.5
Refreshed Python patches.
Updated pip & setuptools version.

For pip, patch '001-pep517-pyc-fix.patch' was reworked.

Also, the current version of the bundled pip (21.1.1) no longer supports
Python2, so the 'py2.py3' suffix gets replaced with just py3.

For setuptools, there is no longer a script/module:
  https://github.com/pypa/setuptools/pull/2544

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2021-05-11 11:50:35 +03:00
Alexandru Ardelean
156e2e354e python3: bump to version 3.9.4
For some reason Python3 jumped from 3.9.2 to 3.9.4 in about a week.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2021-04-05 19:32:00 +03:00
Jeffery To
6d9005d5ac
python3: Update to 3.9.2, refresh patches
Includes fixes for:
* CVE-2021-3177 - ctypes: Buffer overflow in PyCArg_repr
* CVE-2021-23336 - urllib parse_qsl(): Web cache poisoning - semicolon
  as a query args separator

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2021-02-22 21:58:56 +08:00
Ilya Lipnitskiy
5d8d4fbbcb
treewide: Run refresh on all packages
The crude loop I wrote to come up with this changeset:

  find -L package/feeds/packages/ -name patches | \
  sed 's/patches$/refresh/' | sort | xargs make

Signed-off-by: Ilya Lipnitskiy <ilya.lipnitskiy@gmail.com>
2021-02-20 16:02:15 -08:00
Alexandru Ardelean
cc332fddaa python3: bump to version 3.9.0
Refreshed patches.

Dropped 'patches-setuptools/004-site-patch.patch'
Does not apply anymore. Setuptools has removed site.py support:
   https://github.com/pypa/setuptools/issues/2165
If this is still needed, we may need to re-think it's implementation.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2020-10-19 11:01:12 +03:00
Jeffery To
0973d21787
python3: Use default _PYTHON_HOST_PLATFORM
This lets the Python build process set _PYTHON_HOST_PLATFORM instead of
forcing an explicit value.

Also:

* Save the target _PYTHON_HOST_PLATFORM value during Build/InstallDev
  for use when building target Python packages (in python3-package.mk).

* Use the (mostly) default PYTHON_FOR_BUILD value, instead patch
  configure to remove the platform triplet from the sysconfigdata file
  name.

* Remove the "CROSS_COMPILE=yes" make variable (there is no indication
  that this variable is necessary).

* Force host pip to build packages from source instead of downloading
  binary wheels.

  Previously, host pip can download universal (platform-independent)
  wheels but not platform-specific wheels, because of the custom
  _PYTHON_HOST_PLATFORM value. (Packages that do not have universal
  wheels would be compiled from source.)

  With a correct _PYTHON_HOST_PLATFORM, host pip can install
  platform-specific wheels as well. However, the pre-built shared object
  (.so) files in these wheels will have the host's platform triplet in
  their file names. When target Python packages are built (using the
  target's _PYTHON_HOST_PLATFORM), Python will not use these shared
  object files.

  By forcing host pip to build packages from source, the built shared
  object files will not have the platform triplet in their file names.
  (Host Python has been patched to remove the platform triplet from file
  names.) This allows these packages to be used when building target
  Python packages.

  (The net effect of this complete change is that platform-dependent
  packages will continue to be compiled from source, while
  platform-independent packages will now also be compiled from source.)

Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-07-08 17:11:42 +08:00
Jeffery To
0254a4bea9 python3: Update to 3.8.3, refresh patches
Signed-off-by: Jeffery To <jeffery.to@gmail.com>
2020-05-20 17:40:38 +08:00
Alexandru Ardelean
48277ec915 python3: bump to version 3.8
This required a bit work to get working, compared to other versions. So,
some things have changed a bit more significantly.

Some highlights:
* there is no longer a pgen executable, seems this is now part of
  libpython; let's see what this means for us in the future
* blake2 hash (from OpenSSL) detection needs some fixing; will upstream
  added patch 002-fix-blake2-detection.patch
* removed all bpo patches; those should be fixed in upstream
* some needed to be manually re-applied as stuff changed:
  - 001-enable-zlib.patch  - file changed
  - 004-do-not-write-bytes-codes.patch  - file changed
  - 015-abort-on-failed-modules.patch - variable was renamed
    cross_compiling -> CROSS_COMPILING
* 017_lib2to3_fix_pyc_search.patch - the code changed, it does not seem to
     have the original problem with respect to file-extension, as there
     does not seem to be any special extension logic anymore there
* 006-remove-multi-arch-and-local-paths.patch - dropped patch; I can't
     remember the full-details of this issue; it was something with
     Debian/Ubuntu's multi-arch stuff; it was probably added maybe due to
     some overzealous (on my part) thingy caused by some weird reports,
     that I could never solve; let's have this patch dropped and see
* make package/python3/refresh to reduce fuzz for the rest

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2019-10-21 15:24:51 +03:00
Josef Schlehofer
ce769db007
python3: Update to version 3.7.4
- Update setuptools to 40.8.0
- Update pip to 19.0.3
- Refreshed patches
- Removed 4 patches (2 of them was included in 3.7.3 and other two are
included in this release)

Makefile python3:
- Move PKG_MAINTAINER above PKG_LICENSE

Signed-off-by: Josef Schlehofer <pepe.schlehofer@gmail.com>
2019-07-10 10:11:50 +02:00
Rosen Penev
3b935060e8 python3: Fix compilation with deprecated OpenSSL APIs
Also refreshed patches.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
2019-03-11 15:08:09 -07:00
Martin Strobel
fe01c8fc05 python3: update to python 3.7.0
Fixes python3 host SSL build -> host-pip can use https:// urls again.
Updates Pip to 10.0.1
rebased patches

Signed-off-by: Martin Strobel <arctus@crza.de>
2018-07-11 06:34:54 +02:00
Alexandru Ardelean
b7d1d2149e python3: update to version 3.6.5
Add PKG_RELEASE for setuptools and pip.
Refresh all patches.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2018-05-03 14:46:35 +03:00
Alexandru Ardelean
4ec5d3d62f python3: bump to version 3.6.4
Re-worked patch `003-do-not-run-distutils-tests.patch`
to reduce patch-size.

Removed `011-fix-ncursesw-definition-colisions.patch`
it is fixed upstream.

Refreshed with `make package/python3/refresh`

Resetting PKG_RELEASE to 1.
This variable was never used for pip3 & setuptools, since
VERSION is specified in the package definitions.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-12-31 17:58:34 +02:00
Alexandru Ardelean
5986c5f5cd python3: refresh patches make package/python3/refresh cmd
This was a bit overdue.
I did not know about this methodology.
Reduces patch fuzz.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-07-26 23:56:51 +03:00
Alexandru Ardelean
68312f49c0 python packages: move all things python under lang/python
I admit this may be be a bit aggressive, but the lang
folder is getting cluttered/filled up with Python, PHP, Perl,
Ruby, etc. packages.

Makes sense to try to group them into per-lang folders.

I took the Pythons.

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>
2017-05-17 16:51:14 +03:00
Renamed from lang/python3/patches/016-adjust-config-paths.patch (Browse further)