diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 98 |
1 files changed, 57 insertions, 41 deletions
@@ -1,55 +1,71 @@ -# $Id$ -# Maintainer: Matteo Triggiani <davvore33@gmail.com> -# Contributor: -pkgname=('python-pickledb' 'python2-pickledb') -pkgver=0.9.2 +# Maintainer: +# Contributor: Marcell Meszaros < marcell.meszaros AT runbox.eu > +# Contributor: Matteo Triggiani <davvore33@gmail.com> + +_pypiname='pickleDB' +_distname='pickledb' +pkgname=python-${_distname} +pkgver=0.9.3.r13.g68b24d6 pkgrel=1 -pkgdesc='pickleDB is lightweight, fast, and simple database based on Python’s own json module' -url='http://packages.python.org/pickleDB/' +_commit_untagged_v_0_9_3=0c62055d29faba4a410016df7b5fe31ad7811801 +_commit_current=68b24d6291a89923ae604feab1f8817d9b1792b6 +pkgdesc='A lightweight, fast and simple database based on Python’s own json module' +url="https://pypi.org/project/${_pypiname}" +_repourl="https://github.com/patx/${_distname}" arch=('any') -license=('BSD') -makedepends=('python-setuptools' 'python2-setuptools') -source=("https://pypi.python.org/packages/source/p/pickleDB/pickleDB-$pkgver.tar.gz" "LICENSE") -md5sums=('02babaf13cf10782175e3ec6e4d452a5' '173f7ea52700eee04c0d48eb75d6f1cf') -prepare() { - cp -r "pickleDB-$pkgver" "python-pickledb-$pkgver" - cp -r "pickleDB-$pkgver" "python2-pickledb-$pkgver" -} +license=('BSD-3-Clause') +depends=( + 'python' +) +makedepends=( + 'git' + 'python-build' + 'python-installer' + 'python-setuptools' + 'python-wheel' +) +checkdepends=( + 'python-pytest' +) +source=("${_distname}::git+${_repourl}.git#commit=${_commit_current}") +b2sums=('SKIP') -build_python-pickledb() { - cd "$pkgname-$pkgver" +prepare() { + cd "${_distname}" + git tag -f v0.9.3 "${_commit_untagged_v_0_9_3}" - python setup.py build + sed -e "s/from distutils.core import setup/from setuptools import setup/" \ + -i setup.py } -build_python2-pickledb() { - cd "$pkgname-$pkgver" +pkgver() { + cd "${_distname}" - python2 setup.py build -} + # Generate git tag based version. Count only proper (v)#.#* [#=number] tags. + local _gitversion=$(git describe --long --tags --match '[v0-9][0-9.][0-9.]*' | sed -e 's|^v||' | tr '[:upper:]' '[:lower:]') -check_python-pickledb() { - cd "$pkgname-$pkgver" - python setup.py test - - cd "$pkgname-$pkgver" - python2 setup.py test + # Format git-based version for pkgver + # Expected format: e.g. 1.5.0rc2.r521.g99982a1c + # Or in case of 'post': 1.5.0.post1.r521.g99982a1c + echo "${_gitversion}" | sed \ + -e 's;^\([0-9][0-9.]*\)[-_.]\([a-zA-Z]\+\);\1\2;' \ + -e 's;\([0-9]\+-g\);r\1;' \ + -e 's;-;.;g' \ + -e 's;\(post.*\);\.\1;' } -package_python-pickledb() { - depends=('python-simplejson') - cd "$pkgname-$pkgver" - - python setup.py install --prefix=/usr --root="$pkgdir" --optimize=1 - install -Dm644 "${srcdir}/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +build() { + cd "${_distname}" + python -m build --wheel --no-isolation } -package_python2-pickledb() { - depends=('python2-simplejson') - cd "$pkgname-$pkgver" - - python2 setup.py install --root="$pkgdir" --optimize=1 - install -Dm644 "${srcdir}/LICENSE" "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +check() { + cd "${_distname}" + pytest tests.py -v } -# vim:set ts=2 sw=2 et: +package() { + cd "${_distname}" + python -m installer --destdir="$pkgdir" dist/*.whl + install -Dm644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/" +} |