Date: Thursday, June 30, 2022 @ 11:23:04 Author: dvzrv Revision: 1242996
upgpkg: python-pdm 1.15.4-2: Rebuild to also devendor calls to pip vendored libs. As pdm calls pip._vendor, we need to devendor that as well: https://github.com/pdm-project/pdm/issues/1175 Modified: python-pdm/trunk/PKGBUILD python-pdm/trunk/python-pdm-1.15.4-devendor.patch ----------------------------------+ PKGBUILD | 16 +++- python-pdm-1.15.4-devendor.patch | 145 ++++++++++++++++++++++++++++++++++--- 2 files changed, 148 insertions(+), 13 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2022-06-30 10:38:50 UTC (rev 1242995) +++ PKGBUILD 2022-06-30 11:23:04 UTC (rev 1242996) @@ -4,7 +4,7 @@ pkgname=python-pdm # WARNING: vendored libs may change in patch level versions... pkgver=1.15.4 -pkgrel=1 +pkgrel=2 pkgdesc="A modern Python package manager with PEP 582 support" arch=(any) url="https://github.com/pdm-project/pdm" @@ -32,6 +32,13 @@ python-halo python-log_symbols ) +# packages devendored from pip sources +depends+=( + python-html5lib + python-requests + python-setuptools +) + makedepends=(python-build) checkdepends=(python-pytest python-pytest-mock python-pytest-xdist) optdepends=('python-keyring: for storing credentials') @@ -40,9 +47,9 @@ $pkgname-1.15.4-devendor.patch ) sha512sums=('35e32d6ccb2e4aa874f413e3d5f3a92c772a7ee6d7dd3f75a40ae082148cfb389585a1371e130ebdbc75ec25180d5f525177012198342e3ece354bfc799735e1' - '541d36828f2a11a98ba30ba521be505da7d7552097f1bedf381a4b5e9f637f7cdaf127bad0efc5851b69b5bc4abe4d569165444c27d9490df1155814123b23ea') + 'e878faa0e92847084788fb146bade64b0f99de1c74e85e1c6585e3f0b27fa5f643a0e3d177a370e3274fcc818b85270c112ee9484b2d5db5f59331cd55e22d50') b2sums=('e2c2e3437ee290aa849b1e04e51932fe58af1c77581a37a53b2885db6fc622c819688e222b2ef889192a62c2552a3f180fa3924f9c688f72ad79c5ee16180d03' - '929b3dc488a2479efd86dd950bc39429a363926eabbd0ad0a298d42f6bc38d165f0db62ede8bcdf6eba6d881bb4e1218f5bbca9dad779afa73fa8e883ca6949f') + 'a1345e217b6c0bc468f47c9ed4c8e0d4751b6bf2f6d88de91e35bd22f6df3888a0bda6d8f9f84b6a1085d6ed82a1b6be3efc8cdbb9fa367b0d3d42dfa2d68027') prepare() { # devendor bundled libraries @@ -64,7 +71,8 @@ # install to temporary location, as importlib is used python -m installer --destdir=test_dir dist/*.whl export PYTHONPATH="test_dir/$_site_packages:$PYTHONPATH" - pytest -vv -c /dev/null || echo "Failing tests because reasons: https://github.com/pdm-project/pdm/issues/1175" + # skip tests that would fail because of missing interpreters: https://github.com/pdm-project/pdm/issues/1175 + pytest -vv -c /dev/null -k 'not test_basic_integration' } package() { Modified: python-pdm-1.15.4-devendor.patch =================================================================== --- python-pdm-1.15.4-devendor.patch 2022-06-30 10:38:50 UTC (rev 1242995) +++ python-pdm-1.15.4-devendor.patch 2022-06-30 11:23:04 UTC (rev 1242996) @@ -1,6 +1,104 @@ +diff -ruN a/pdm/__init__.py b/pdm/__init__.py +--- a/pdm/__init__.py 2022-06-28 06:41:18.142208600 +0200 ++++ b/pdm/__init__.py 2022-06-30 13:06:52.281583369 +0200 +@@ -16,14 +16,3 @@ + "Synchronizer", + "Core", + ) +- +- +-def _fix_pkg_resources() -> None: +- import importlib +- import sys +- +- sys.modules["pkg_resources"] = importlib.import_module("pip._vendor.pkg_resources") +- +- +-_fix_pkg_resources() +-del _fix_pkg_resources +diff -ruN a/pdm/cli/actions.py b/pdm/cli/actions.py +--- a/pdm/cli/actions.py 2022-06-28 06:41:18.142208600 +0200 ++++ b/pdm/cli/actions.py 2022-06-30 13:05:15.234561298 +0200 +@@ -826,7 +826,7 @@ + import sys + from shlex import quote + +- from pip._vendor.packaging.version import parse as parse_version ++ from packaging.version import parse as parse_version + + from pdm.cli.utils import ( + is_homebrew_installation, +diff -ruN a/pdm/models/caches.py b/pdm/models/caches.py +--- a/pdm/models/caches.py 2022-06-28 06:41:18.146208500 +0200 ++++ b/pdm/models/caches.py 2022-06-30 13:04:26.081047734 +0200 +@@ -12,7 +12,7 @@ + from pdm.utils import open_file + + if TYPE_CHECKING: +- from pip._vendor import requests ++ import requests + + KT = TypeVar("KT") + VT = TypeVar("VT") +diff -ruN a/pdm/models/markers.py b/pdm/models/markers.py +--- a/pdm/models/markers.py 2022-06-28 06:41:18.146208500 +0200 ++++ b/pdm/models/markers.py 2022-06-30 13:01:37.863762738 +0200 +@@ -4,7 +4,7 @@ + from functools import reduce + from typing import Any, List, Optional, Set, Tuple, Union + +-from pip._vendor.packaging.markers import Marker as PackageMarker ++from packaging.markers import Marker as PackageMarker + + from pdm.models.specifiers import PySpecSet + from pdm.utils import join_list_with +diff -ruN a/pdm/models/repositories.py b/pdm/models/repositories.py +--- a/pdm/models/repositories.py 2022-06-28 06:41:18.146208500 +0200 ++++ b/pdm/models/repositories.py 2022-06-30 13:02:07.257204323 +0200 +@@ -6,7 +6,7 @@ + from typing import TYPE_CHECKING, Any, Callable, Iterable, Mapping, TypeVar, cast + + from packaging.version import parse as parse_version +-from pip._vendor.html5lib import parse ++from html5lib import parse + + from pdm import termui + from pdm._types import CandidateInfo, Package, SearchResult, Source +diff -ruN a/pdm/models/requirements.py b/pdm/models/requirements.py +--- a/pdm/models/requirements.py 2022-06-28 06:41:18.146208500 +0200 ++++ b/pdm/models/requirements.py 2022-06-30 13:04:45.914453815 +0200 +@@ -12,11 +12,11 @@ + from pathlib import Path + from typing import Any, Sequence, Type, TypeVar, cast + +-from pip._vendor.packaging.markers import InvalidMarker +-from pip._vendor.packaging.requirements import InvalidRequirement +-from pip._vendor.packaging.specifiers import SpecifierSet +-from pip._vendor.pkg_resources import Requirement as PackageRequirement +-from pip._vendor.pkg_resources import RequirementParseError, safe_name ++from packaging.markers import InvalidMarker ++from packaging.requirements import InvalidRequirement ++from packaging.specifiers import SpecifierSet ++from pkg_resources import Requirement as PackageRequirement ++from pkg_resources import RequirementParseError, safe_name + + from pdm._types import RequirementDict + from pdm.exceptions import ExtrasWarning, RequirementError +diff -ruN a/pdm/models/specifiers.py b/pdm/models/specifiers.py +--- a/pdm/models/specifiers.py 2022-06-28 06:41:18.146208500 +0200 ++++ b/pdm/models/specifiers.py 2022-06-30 13:04:03.440964652 +0200 +@@ -6,7 +6,7 @@ + from pathlib import Path + from typing import Any, Iterable, List, Set, Tuple, Union, cast + +-from pip._vendor.packaging.specifiers import SpecifierSet ++from packaging.specifiers import SpecifierSet + + from pdm.exceptions import InvalidPyVersion + from pdm.models.versions import Version diff -ruN a/pdm/project/core.py b/pdm/project/core.py ---- a/pdm/project/core.py 2022-06-14 09:10:17.230656100 +0200 -+++ b/pdm/project/core.py 2022-06-27 18:43:26.516225686 +0200 +--- a/pdm/project/core.py 2022-06-28 06:41:18.150208500 +0200 ++++ b/pdm/project/core.py 2022-06-30 12:59:13.863231124 +0200 @@ -42,7 +42,7 @@ if TYPE_CHECKING: from resolvelib.reporters import BaseReporter @@ -11,8 +109,8 @@ from pdm.resolver.providers import BaseProvider diff -ruN a/pdm/resolver/reporters.py b/pdm/resolver/reporters.py ---- a/pdm/resolver/reporters.py 2022-06-14 09:10:17.234656300 +0200 -+++ b/pdm/resolver/reporters.py 2022-06-27 18:43:26.516225686 +0200 +--- a/pdm/resolver/reporters.py 2022-06-28 06:41:18.150208500 +0200 ++++ b/pdm/resolver/reporters.py 2022-06-30 12:59:13.863231124 +0200 @@ -10,7 +10,7 @@ if TYPE_CHECKING: from resolvelib.resolvers import RequirementInformation, State # type: ignore @@ -23,8 +121,8 @@ from pdm.models.requirements import Requirement diff -ruN a/pdm/termui.py b/pdm/termui.py ---- a/pdm/termui.py 2022-06-14 09:10:17.234656300 +0200 -+++ b/pdm/termui.py 2022-06-27 18:43:26.516225686 +0200 +--- a/pdm/termui.py 2022-06-28 06:41:18.150208500 +0200 ++++ b/pdm/termui.py 2022-06-30 12:59:13.863231124 +0200 @@ -14,8 +14,9 @@ import click from click._compat import strip_ansi @@ -37,16 +135,45 @@ logger = logging.getLogger(__name__) logger.setLevel(logging.DEBUG) +diff -ruN a/pdm/utils.py b/pdm/utils.py +--- a/pdm/utils.py 2022-06-28 06:41:18.150208500 +0200 ++++ b/pdm/utils.py 2022-06-30 13:01:17.743688589 +0200 +@@ -33,8 +33,8 @@ + ) + + from packaging.version import Version +-from pip._vendor.packaging.tags import Tag +-from pip._vendor.requests import Session ++from packaging.tags import Tag ++from requests import Session + + from pdm._types import Distribution, Source + from pdm.models.pip_shims import ( diff -ruN a/pyproject.toml b/pyproject.toml ---- a/pyproject.toml 2022-06-14 09:10:17.234656300 +0200 -+++ b/pyproject.toml 2022-06-27 19:08:55.515337628 +0200 -@@ -22,6 +22,9 @@ +--- a/pyproject.toml 2022-06-28 06:41:18.150208500 +0200 ++++ b/pyproject.toml 2022-06-30 13:08:36.771965354 +0200 +@@ -22,6 +22,12 @@ "tomlkit>=0.8.0,<1", "typing-extensions; python_version < \"3.8\"", "wheel>=0.36.2", + "colorama", + "halo", ++ "html5lib", + "log_symbols", ++ "requests", ++ "setuptools", ] name = "pdm" description = "Python Development Master" +diff -ruN a/tests/conftest.py b/tests/conftest.py +--- a/tests/conftest.py 2022-06-28 06:41:18.150208500 +0200 ++++ b/tests/conftest.py 2022-06-30 13:00:15.103457478 +0200 +@@ -13,7 +13,7 @@ + import pytest + from click.testing import CliRunner + from pip._internal.vcs import versioncontrol +-from pip._vendor import requests ++import requests + + from pdm._types import CandidateInfo + from pdm.cli.actions import do_init, do_use
