diff --git a/extra/python-wheel/build b/extra/python-wheel/build new file mode 100755 index 00000000..1a55e2dd --- /dev/null +++ b/extra/python-wheel/build @@ -0,0 +1,8 @@ +#!/bin/sh -e + +patch -p1 < use-system-packaging.patch + +rm -rf src/wheel/vendored + +gpep517 build-wheel --wheel-dir .dist --output-fd 3 3>&1 >&2 +python -m installer -d "$1" .dist/*.whl diff --git a/extra/python-wheel/checksums b/extra/python-wheel/checksums new file mode 100644 index 00000000..d6605d46 --- /dev/null +++ b/extra/python-wheel/checksums @@ -0,0 +1,2 @@ +1141c659a589b43114bc6b1d9a47757331fa28b9dfbcee9548bc271a05b7d005c3 +fa4390b8c20916f3d49f8fdf859c8cda3b7d2ad0c52c557e959671a7bb16719f7f diff --git a/extra/python-wheel/depends b/extra/python-wheel/depends new file mode 100644 index 00000000..c698ff53 --- /dev/null +++ b/extra/python-wheel/depends @@ -0,0 +1,4 @@ +python +python-flit-core make +python-gpep517 make +python-packaging diff --git a/extra/python-wheel/patches/use-system-packaging.patch b/extra/python-wheel/patches/use-system-packaging.patch new file mode 100644 index 00000000..9437d983 --- /dev/null +++ b/extra/python-wheel/patches/use-system-packaging.patch @@ -0,0 +1,63 @@ +Upstream vendors packaging, use system packaging instead + +diff --git a/setup.py b/setup.py +index 78b124e..e5025c9 100644 +--- a/setup.py ++++ b/setup.py +@@ -4,7 +4,7 @@ + from distutils.core import setup + + packages = \ +-['wheel', 'wheel.cli', 'wheel.vendored', 'wheel.vendored.packaging'] ++['wheel', 'wheel.cli'] + + package_data = \ + {'': ['*']} +diff --git a/src/wheel/bdist_wheel.py b/src/wheel/bdist_wheel.py +index 2f93c47..78cdd90 100644 +--- a/src/wheel/bdist_wheel.py ++++ b/src/wheel/bdist_wheel.py +@@ -19,6 +19,7 @@ from email.policy import EmailPolicy + from glob import iglob + from shutil import rmtree + from zipfile import ZIP_DEFLATED, ZIP_STORED ++from packaging import tags + + import setuptools + from setuptools import Command +@@ -27,8 +28,7 @@ from . import __version__ as wheel_version + from .macosx_libfile import calculate_macosx_platform_tag + from .metadata import pkginfo_to_metadata + from .util import log +-from .vendored.packaging import tags +-from .vendored.packaging import version as _packaging_version ++from packaging import version as _packaging_version + from .wheelfile import WheelFile + + +diff --git a/src/wheel/metadata.py b/src/wheel/metadata.py +index b391c96..ffa1706 100644 +--- a/src/wheel/metadata.py ++++ b/src/wheel/metadata.py +@@ -12,7 +12,7 @@ from email.message import Message + from email.parser import Parser + from typing import Iterator + +-from .vendored.packaging.requirements import Requirement ++from packaging.requirements import Requirement + + + def _nonblank(str): +diff --git a/tests/test_bdist_wheel.py b/tests/test_bdist_wheel.py +index d202469..95ea27d 100644 +--- a/tests/test_bdist_wheel.py ++++ b/tests/test_bdist_wheel.py +@@ -20,7 +20,7 @@ from wheel.bdist_wheel import ( + remove_readonly, + remove_readonly_exc, + ) +-from wheel.vendored.packaging import tags ++from packaging import tags + from wheel.wheelfile import WheelFile + + DEFAULT_FILES = { diff --git a/extra/python-wheel/sources b/extra/python-wheel/sources new file mode 100644 index 00000000..d6022a46 --- /dev/null +++ b/extra/python-wheel/sources @@ -0,0 +1,2 @@ +https://files.pythonhosted.org/packages/source/w/wheel/wheel-0.42.0.tar.gz +patches/use-system-packaging.patch diff --git a/extra/python-wheel/version b/extra/python-wheel/version new file mode 100644 index 00000000..27a69437 --- /dev/null +++ b/extra/python-wheel/version @@ -0,0 +1 @@ +0.42.0 1