summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorPellegrino Prevete2022-09-30 01:06:02 +0000
committerPellegrino Prevete2022-09-30 01:06:02 +0000
commit30664e33c6ae5093226bdbcdd4aa2e84a9f506ed (patch)
tree8f2813982eacb7595e0dd8626111d53ad883bd02
downloadaur-30664e33c6ae.tar.gz
wip
-rw-r--r--.SRCINFO87
-rw-r--r--PKGBUILD153
-rw-r--r--resolvelib-0.5.5.patch46
3 files changed, 286 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..8583a0d0d822
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,87 @@
+pkgbase = python2-pip
+ pkgdesc = The PyPA recommended tool for installing Python packages
+ pkgver = 22.2.2
+ pkgrel = 1
+ url = https://pip.pypa.io/
+ arch = any
+ license = MIT
+ checkdepends = git
+ checkdepends = python-cryptography
+ checkdepends = python-pytest-runner
+ checkdepends = python-freezegun
+ checkdepends = python-pytest
+ checkdepends = python-scripttest
+ checkdepends = python-pretend
+ checkdepends = python-yaml
+ checkdepends = python-mock
+ checkdepends = python-pip
+ checkdepends = python-tomli-w
+ checkdepends = python-virtualenv
+ checkdepends = python-werkzeug
+ checkdepends = python-wheel
+ checkdepends = python-csv23
+ checkdepends = subversion
+ makedepends = python-appdirs
+ makedepends = python-cachecontrol
+ makedepends = python-colorama
+ makedepends = python-contextlib2
+ makedepends = python-distlib
+ makedepends = python-distro
+ makedepends = python-html5lib
+ makedepends = python-packaging
+ makedepends = python-pep517
+ makedepends = python-progress
+ makedepends = python-requests
+ makedepends = python-retrying
+ makedepends = python-resolvelib
+ makedepends = python-setuptools
+ makedepends = python-six
+ makedepends = python-toml
+ makedepends = python-pyopenssl
+ makedepends = python2-appdirs
+ makedepends = python2-cachecontrol
+ makedepends = python2-colorama
+ makedepends = python2-contextlib2
+ makedepends = python2-distlib
+ makedepends = python2-distro
+ makedepends = python2-html5lib
+ makedepends = python2-packaging
+ makedepends = python2-pep517
+ makedepends = python2-progress
+ makedepends = python2-requests
+ makedepends = python2-retrying
+ makedepends = python2-resolvelib
+ makedepends = python2-setuptools
+ makedepends = python2-six
+ makedepends = python2-toml
+ makedepends = python2-pyopenssl
+ makedepends = python2-ipaddress
+ makedepends = python-sphinx
+ makedepends = python-sphinx-inline-tabs
+ source = pip-22.2.2.tar.gz::https://github.com/pypa/pip/archive/22.2.2.tar.gz
+ source = resolvelib-0.5.5.patch
+ sha512sums = bd59e28b55475b77a8f11ea771cbad3b2602ff974e219f9a55288963a9522c9279a5b00fde40fb65cfebefae0e905d3da3c06fe50b402aa5326b25f70a98a015
+ sha512sums = f339a20e965c583c1dc741d9fff90749aab049d591f0ac974e2187d4f41842661802b96266e8e35454b65d61d65c337a770d58b81119af07483fde0eda48001b
+ b2sums = 2179b0d3f5f05bbd678f1785b4dbc0613078c09c83b45faa62d766182dfeb564095abda809ed99f45644abcb06c125efc528aeaed3ad40ab1c9e8972e33ccbb2
+
+pkgname = python2-pip
+ depends = python2-appdirs
+ depends = python2-cachecontrol
+ depends = python2-colorama
+ depends = python2-contextlib2
+ depends = python2-distlib
+ depends = python2-distro
+ depends = python2-html5lib
+ depends = python2-packaging
+ depends = python2-pep517
+ depends = python2-progress
+ depends = python2-requests
+ depends = python2-retrying
+ depends = python2-resolvelib
+ depends = python2-setuptools
+ depends = python2-six
+ depends = python2-toml
+ depends = python2-pyopenssl
+ depends = python2-ipaddress
+ conflicts = python-pyinstall
+ replaces = python-pyinstall
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..03ff6a01eb15
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,153 @@
+# Maintainer: Pellegrino Prevete <pellegrinoprevete@gmail.com>
+# Contributor: David Runge <dvzrv@archlinux.org>
+# Contributor: Felix Yan <felixonmars@archlinux.org>
+# Contributor: Dan McGee <dan@archlinux.org>
+# Contributor: Eli Schwartz <eschwartz@archlinux.org>
+# Contributor: Sebastien Binet <binet@lblbox>
+
+# shellcheck disable=SC2034
+_name=pip
+pkgname="python2-${_name}"
+pkgver=22.2.2
+pkgrel=1
+pkgdesc="The PyPA recommended tool for installing Python packages"
+url="https://pip.pypa.io/"
+arch=(any)
+license=(MIT)
+_deps=('appdirs'
+ 'cachecontrol'
+ 'colorama'
+ 'contextlib2'
+ 'distlib'
+ 'distro'
+ 'html5lib'
+ 'packaging'
+ 'pep517'
+ 'progress'
+ 'requests'
+ 'retrying'
+ 'resolvelib'
+ 'setuptools'
+ 'six'
+ 'toml'
+ # add these until
+ # https://github.com/pypa/pip/issues/5354#issuecomment-672678167
+ # is resolved
+ 'pyopenssl')
+makedepends=("${_deps[@]/#/python-}"
+ "${_deps[@]/#/python2-}"
+ 'python2-ipaddress'
+ 'python-sphinx'
+ 'python-sphinx-inline-tabs')
+checkdepends=(
+ git
+ python-cryptography
+ 'python-pytest-runner'
+ python-freezegun
+ python-pytest
+ python-scripttest
+ 'python-pretend'
+ 'python-yaml'
+ 'python-mock'
+ python-pip
+ python-tomli-w
+ python-virtualenv
+ python-werkzeug
+ python-wheel
+ python-csv23
+ subversion)
+source=("${_name}-${pkgver}.tar.gz::https://github.com/pypa/${_name}/archive/${pkgver}.tar.gz"
+ resolvelib-0.5.5.patch)
+sha512sums=('bd59e28b55475b77a8f11ea771cbad3b2602ff974e219f9a55288963a9522c9279a5b00fde40fb65cfebefae0e905d3da3c06fe50b402aa5326b25f70a98a015'
+ 'f339a20e965c583c1dc741d9fff90749aab049d591f0ac974e2187d4f41842661802b96266e8e35454b65d61d65c337a770d58b81119af07483fde0eda48001b')
+b2sums=('2179b0d3f5f05bbd678f1785b4dbc0613078c09c83b45faa62d766182dfeb564095abda809ed99f45644abcb06c125efc528aeaed3ad40ab1c9e8972e33ccbb2')
+
+shopt -s extglob
+#prepare() {
+# cd pip-$pkgver
+
+ # Backported from:
+ # https://github.com/pypa/pip/commit/0d39ae9734d054c25e48e2da7ddb76545e5de330
+# patch -p1 -i ../resolvelib-0.5.5.patch
+
+ # Remove certifi usage
+# sed -i 's|from pip._vendor.certifi import where|where = lambda: "/etc/ssl/certs/ca-certificates.crt"|' src/pip/_internal/commands/debug.py
+
+# rm -rf src/pip/_vendor/!(__init__.py)
+# sed -i -e 's/DEBUNDLED = False/DEBUNDLED = True/' \
+# src/pip/_vendor/__init__.py
+#}
+
+build() {
+ cd "${_name}-${pkgver}"
+
+ python2 -m build --wheel --no-isolation
+
+ cd docs/
+ PYTHONPATH="${srcdir}/${_name}-${pkgver}/src/" python pip_sphinxext.py
+ PYTHONPATH="${srcdir}/${_name}-${pkgver}/src/" sphinx-build -W -b man -d build/doctrees/man man build/man -c html
+ mkdir -p build/man-pip2
+ cd build/man
+ for manfile in *; do
+ sed 's/pip/pip2/g;s/PIP/PIP2/g' $manfile > ../man-pip2/${manfile/pip/pip2}
+ done
+}
+
+check() {
+ local _site_packages=$(python -c "import site; print(site.getsitepackages()[0])")
+ local _deselected=(
+ # deselect tests that would require python-pip in checkdepends (may or may not work due to devendored dependencies when python-pip is updated)
+ --deselect tests/unit/test_direct_url_helpers.py::test_from_link_vcs_with_source_dir_obtains_commit_id
+ --deselect tests/unit/test_direct_url_helpers.py::test_from_link_vcs_without_source_dir
+ --deselect tests/unit/test_wheel_builder.py::test_should_cache_git_sha
+ )
+
+ cd "${srcdir}/${_name}-${pkgver}"
+ # install to temporary location
+ python2 -m installer --destdir=test_dir dist/*.whl
+ export PYTHONPATH="test_dir/$_site_packages:$PYTHONPATH"
+ pytest -vv -m unit "${_deselected[@]}"
+}
+
+package_python-pip() {
+ local _site_packages=$(python -c "import site; print(site.getsitepackages()[0])")
+ depends=("${_deps[@]/#/python-}")
+
+ cd "${_name}-${pkgver}"
+ # python setup.py install --prefix=/usr --root="$pkgdir"
+ python2 -m installer --destdir="$pkgdir" dist/*.whl
+
+ install -D -m644 LICENSE.txt \
+ "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+
+ install -Dm644 -t "$pkgdir"/usr/share/man/man1 docs/build/man/*
+
+ PYTHONPATH="$pkgdir"/usr/lib/python3.9/site-packages "$pkgdir"/usr/bin/pip completion --bash \
+ | install -Dm644 /dev/stdin "$pkgdir"/usr/share/bash-completion/completions/pip
+ PYTHONPATH="$pkgdir"/usr/lib/python3.9/site-packages "$pkgdir"/usr/bin/pip completion --fish \
+ | install -Dm644 /dev/stdin "$pkgdir"/usr/share/fish/vendor_completions.d/pip.fish
+}
+
+package_python2-pip() {
+ depends=("${_deps[@]/#/python2-}" 'python2-ipaddress')
+ conflicts=('python-pyinstall')
+ replaces=('python-pyinstall')
+
+ cd pip-$pkgver
+ python2 setup.py install --prefix=/usr --root="$pkgdir"
+
+ mv "$pkgdir/usr/bin/pip" "$pkgdir/usr/bin/pip2"
+ sed -i "s|#!/usr/bin/env python$|#!/usr/bin/env python2|" \
+ "${pkgdir}"/usr/lib/python2.7/site-packages/pip/__init__.py
+ python2 -m compileall "${pkgdir}"/usr/lib/python2.7/site-packages/pip/__init__.py
+
+ install -D -m644 LICENSE.txt \
+ "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+
+ install -Dm644 -t "$pkgdir"/usr/share/man/man1 docs/build/man-pip2/*
+
+ PYTHONPATH="$pkgdir"/usr/lib/python2.7/site-packages "$pkgdir"/usr/bin/pip2 completion --bash \
+ | install -Dm644 /dev/stdin "$pkgdir"/usr/share/bash-completion/completions/pip2
+ PYTHONPATH="$pkgdir"/usr/lib/python2.7/site-packages "$pkgdir"/usr/bin/pip2 completion --fish \
+ | install -Dm644 /dev/stdin "$pkgdir"/usr/share/fish/vendor_completions.d/pip2.fish
+}
diff --git a/resolvelib-0.5.5.patch b/resolvelib-0.5.5.patch
new file mode 100644
index 000000000000..30b89bbfd020
--- /dev/null
+++ b/resolvelib-0.5.5.patch
@@ -0,0 +1,46 @@
+From 0d39ae9734d054c25e48e2da7ddb76545e5de330 Mon Sep 17 00:00:00 2001
+From: Tzu-ping Chung <uranusjr@gmail.com>
+Date: Tue, 9 Mar 2021 05:20:23 +0800
+Subject: [PATCH] Pull in resolvelib's typing information
+
+---
+ .../resolution/resolvelib/factory.py | 9 ++-
+ .../resolution/resolvelib/provider.py | 24 ++++--
+ .../resolution/resolvelib/resolver.py | 25 +++++--
+ src/pip/_vendor/resolvelib.pyi | 1 -
+ src/pip/_vendor/resolvelib/__init__.py | 2 +-
+ src/pip/_vendor/resolvelib/__init__.pyi | 15 ++++
+ src/pip/_vendor/resolvelib/providers.py | 8 +-
+ src/pip/_vendor/resolvelib/providers.pyi | 44 +++++++++++
+ src/pip/_vendor/resolvelib/py.typed | 0
+ src/pip/_vendor/resolvelib/reporters.pyi | 10 +++
+ src/pip/_vendor/resolvelib/resolvers.py | 39 +++++-----
+ src/pip/_vendor/resolvelib/resolvers.pyi | 73 +++++++++++++++++++
+ src/pip/_vendor/resolvelib/structs.pyi | 35 +++++++++
+ src/pip/_vendor/vendor.txt | 2 +-
+ 14 files changed, 242 insertions(+), 45 deletions(-)
+ delete mode 100644 src/pip/_vendor/resolvelib.pyi
+ create mode 100644 src/pip/_vendor/resolvelib/__init__.pyi
+ create mode 100644 src/pip/_vendor/resolvelib/providers.pyi
+ create mode 100644 src/pip/_vendor/resolvelib/py.typed
+ create mode 100644 src/pip/_vendor/resolvelib/reporters.pyi
+ create mode 100644 src/pip/_vendor/resolvelib/resolvers.pyi
+ create mode 100644 src/pip/_vendor/resolvelib/structs.pyi
+
+diff --git a/src/pip/_internal/resolution/resolvelib/provider.py b/src/pip/_internal/resolution/resolvelib/provider.py
+index 2085a0714a3..cd2ccfa60a3 100644
+--- a/src/pip/_internal/resolution/resolvelib/provider.py
++++ b/src/pip/_internal/resolution/resolvelib/provider.py
+@@ -50,9 +50,9 @@ def __init__(
+ self._upgrade_strategy = upgrade_strategy
+ self._user_requested = user_requested
+
+- def identify(self, dependency):
++ def identify(self, requirement_or_candidate):
+ # type: (Union[Requirement, Candidate]) -> str
+- return dependency.name
++ return requirement_or_candidate.name
+
+ def get_preference(
+ self,
+