Date: Sunday, June 3, 2018 @ 15:31:34 Author: felixonmars Revision: 325651
upgpkg: python-setuptools 1:39.2.0-2 FS#58670 Modified: python-setuptools/trunk/PKGBUILD ----------+ PKGBUILD | 40 ++++++++++++++++++++++++++++------------ 1 file changed, 28 insertions(+), 12 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2018-06-03 14:25:03 UTC (rev 325650) +++ PKGBUILD 2018-06-03 15:31:34 UTC (rev 325651) @@ -1,27 +1,45 @@ # $Id$ # Maintainer: Angel Velasquez <an...@archlinux.org> # Maintainer: Felix Yan <felixonm...@archlinux.org> +# Contributor: Eli Schwartz <eschwa...@archlinux.org> pkgbase=python-setuptools pkgname=('python-setuptools' 'python2-setuptools') pkgver=39.2.0 -pkgrel=1 +pkgrel=2 epoch=1 pkgdesc="Easily download, build, install, upgrade, and uninstall Python packages" arch=('any') license=('PSF') -url="http://pypi.python.org/pypi/setuptools" -makedepends=('python-packaging' 'python2-packaging' 'python-appdirs' 'python2-appdirs') -checkdepends=('python-pytest-runner' 'python2-pytest-runner' 'python-pytest-flake8' - 'python2-pytest-flake8' 'python-mock' 'python2-mock' 'python-pytest-fixture-config' - 'python2-pytest-fixture-config' 'python-pytest-virtualenv' 'python2-pytest-virtualenv' - 'python-wheel' 'python2-wheel' 'python-pip' 'python2-pip' 'git') +url="https://pypi.org/project/setuptools/" +_deps=('appdirs' 'packaging') +makedepends=("${_deps[@]/#/python-}" "${_deps[@]/#/python2-}" 'git') +_checkdeps=('mock' 'pip' 'pytest-fixture-config' 'pytest-flake8' + 'pytest-runner' 'pytest-virtualenv' 'wheel') +checkdepends=("${_checkdeps[@]/#/python-}" "${_checkdeps[@]/#/python2-}" 'git') source=("$pkgbase-$pkgver.tar.gz::https://github.com/pypa/setuptools/archive/v$pkgver.tar.gz") sha512sums=('94f0bbf3660d9a27464c79d256e87247f153081128480b914a9bdc2f574ca9ae209a30baf117441a5b6e8530d711b7d3949abefd0dee4d17ef5397e07fb6d9a2') +export SETUPTOOLS_INSTALL_WINDOWS_SPECIFIC_FILES=0 + prepare() { - rm -r setuptools-$pkgver/{pkg_resources,setuptools}/_vendor + rm -r setuptools-$pkgver/{pkg_resources,setuptools}/{extern,_vendor} + # Upstream devendoring logic is badly broken, see: + # https://bugs.archlinux.org/task/58670 + # https://github.com/pypa/pip/issues/5429 + # https://github.com/pypa/setuptools/issues/1383 + # The simplest fix is to simply rewrite import paths to use the canonical + # location in the first place + for _module in setuptools pkg_resources; do + find setuptools-$pkgver/$_module -name \*.py -exec sed -i \ + -e 's/from '$_module.extern' import/import/' \ + -e 's/from '$_module.extern'./from /' \ + -e 's/import '$_module.extern'./import /' \ + -e "s/__import__('$_module.extern./__import__('/" \ + {} + + done + # Remove post-release tag since we are using stable tags sed -e '/tag_build = .post/d' \ -e '/tag_date = 1/d' \ @@ -44,8 +62,6 @@ cd "$srcdir"/setuptools-$pkgver-py2 sed -i -e "s|^#\!.*/usr/bin/env python|#!/usr/bin/env python2|" setuptools/command/easy_install.py - - export SETUPTOOLS_INSTALL_WINDOWS_SPECIFIC_FILES=0 } build() { @@ -73,7 +89,7 @@ )} package_python-setuptools() { - depends=('python-packaging' 'python-appdirs') + depends=("${_deps[@]/#/python-}") provides=('python-distribute') replaces=('python-distribute') @@ -82,7 +98,7 @@ } package_python2-setuptools() { - depends=('python2-packaging' 'python2-appdirs') + depends=("${_deps[@]/#/python2-}") provides=('python2-distribute') replaces=('python2-distribute')