Date: Wednesday, July 28, 2021 @ 04:30:13 Author: eschwartz Revision: 988361
upgpkg: python-flit 3.2.0-3: fix various issues with dephell + PEP 621 metadata Use flit in-tree to run flit in order to build flit's sdist. Fixes support for scripts, strangely including flit_core as a subdirectory of flit, and more. Also remove tests from the install dir while we are at it. Modified: python-flit/trunk/PKGBUILD ----------+ PKGBUILD | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2021-07-28 04:04:17 UTC (rev 988360) +++ PKGBUILD 2021-07-28 04:30:13 UTC (rev 988361) @@ -5,15 +5,13 @@ pkgbase=python-$_pkgname pkgname=($pkgbase{,-core}) pkgver=3.2.0 -pkgrel=2 +pkgrel=3 pkgdesc='Simplified packaging of Python modules' arch=('any') url='https://github.com/takluyver/flit' license=('BSD') depends=('python' 'python-toml') -makedepends=('python-setuptools' 'python-dephell' - 'python-requests' 'python-docutils') - #'python-build' 'python-install' 'python-pyproject2setuppy' +makedepends=('python-setuptools' 'python-requests' 'python-docutils') checkdepends=('python-pytest' 'python-testpath' 'python-responses') source=("$pkgbase-$pkgver.tar.gz::$url/archive/$pkgver.tar.gz") sha512sums=('b40768fb4b0b2a2e3116ac790dfa629da5a57cda34b10abb8ce6a8febcc3436795d5122dcfa3db2c6d07d493f00391d2ca7300112561c8ff2a0b04d77c879662') @@ -21,21 +19,32 @@ prepare() { cd $_pkgname-$pkgver - dephell deps convert --from pyproject.toml --to setup.py + # regenerate the dist without the "I don't support people using setup.py" flag + PYTHONPATH="$PWD/flit_core/" python -m flit build --format sdist + bsdtar --strip-components 1 -xvf \ + dist/${_pkgname}-${pkgver}.tar.gz ${_pkgname}-${pkgver}/setup.py cd flit_core - dephell deps convert --from pyproject.toml --to setup.py + # flit_core.buildapi does not ever generate setup.py, only `flit build` does??? + # since we still rely on them... patch the self builder to import from the flit directory's subclass + sed -i 's/from .sdist import SdistBuilder/from flit.sdist import SdistBuilder/' flit_core/build_thyself.py + PYTHONPATH="$PWD/../" python ./build_dists.py + bsdtar --strip-components 1 -xvf \ + dist/flit_core-${pkgver}.tar.gz flit_core-${pkgver}/setup.py } build() { cd $_pkgname-$pkgver - python setup.py build + # flit doesn't either support people invoking setup.py outside of pip. The + # undocumented setuptools.launch reimplements the same thing, but less well + # done. Still enough for flit to build. + python -m setuptools.launch setup.py build cd flit_core - python setup.py build + python -m setuptools.launch setup.py build } check() { @@ -51,7 +60,7 @@ cd $_pkgname-$pkgver - python setup.py install --root="$pkgdir" --optimize=1 --skip-build + python -m setuptools.launch setup.py install --root="$pkgdir" --optimize=1 --skip-build cp -a flit/license_templates "$pkgdir"/usr/lib/python3.9/site-packages/flit/ install -Dm 644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE @@ -62,7 +71,10 @@ cd $_pkgname-$pkgver/flit_core - python setup.py install --root="$pkgdir" --optimize=1 --skip-build + python -m setuptools.launch setup.py install --root="$pkgdir" --optimize=1 --skip-build + # installing tests to a subdir of your project might not conflict the toplevel, but + # don't do it anyway... + rm -r "$pkgdir"/usr/lib/python*/site-packages/flit_core/tests/ install -Dm 644 ../LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE }