Date: Tuesday, April 11, 2023 @ 21:53:00
  Author: dvzrv
Revision: 1444761

upgpkg: python-dropbox 11.36.0-2: Rebuild against Python 3.11.

Remove unnecessary quotes and curly braces.
Use bash arrays with one entry per line for better handling.
Remove broken version specifiers. Remove use of python-mock.
Switch to PEP517.
Run tests in check().

Modified:
  python-dropbox/trunk/PKGBUILD

----------+
 PKGBUILD |   68 +++++++++++++++++++++++++++++++++++++++++--------------------
 1 file changed, 46 insertions(+), 22 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD    2023-04-11 21:18:04 UTC (rev 1444760)
+++ PKGBUILD    2023-04-11 21:53:00 UTC (rev 1444761)
@@ -2,40 +2,64 @@
 # Contributor: Andrey Mivrenik <gim at fastmail dot fm>
 # Contributor: Tim Diels <[email protected]>
 
+_name=dropbox-sdk-python
 pkgname=python-dropbox
-_pkgname=dropbox-sdk-python
 pkgver=11.36.0
-pkgrel=1
+pkgrel=2
 pkgdesc="Python SDK for Dropbox Core APIs"
 url="https://github.com/dropbox/dropbox-sdk-python";
-arch=('any')
-license=('MIT')
-depends=(python python-urllib3 python-requests python-stone)
-makedepends=(python-setuptools python-pytest-runner)
-source=("${pkgname}-${pkgver}.tar.gz::https://github.com/dropbox/$_pkgname/archive/v$pkgver.tar.gz";)
+arch=(any)
+license=(MIT)
+depends=(
+  python
+  python-requests
+  python-setuptools  # for dropbox.session
+  python-six
+  python-stone
+  python-urllib3
+)
+makedepends=(
+  python-build
+  python-installer
+  python-setuptools
+  python-pytest-runner
+  python-wheel
+)
+checkdepends=(
+  python-ply
+  python-pytest
+  python-pytest-mock
+)
+source=($url/archive/v$pkgver/$_name-v$pkgver.tar.gz)
 
sha512sums=('5dc30fabd0abe52de68d152300a5dbfc9e5fb55ed5799a3ceba5e0782914944d1ed915761f4ca3993913250608e3152234495abefff6f2b548cd11b7f2fe0e23')
+b2sums=('46864c7d4143272a81a6e14c7430c153dc93dd0a82d8e78ef8bcf3c1a64919e2cccf725832fb794179f6eef953f172bc1dd579447ee2e8c36a141f9402807b3d')
 
 prepare() {
-  sed -e 's|pytest-runner == 5.2.0|pytest-runner|' -i 
$_pkgname-$pkgver/setup.py # Unversion dependency
+  cd $_name-$pkgver
+  # remove strict version dependencies
+  # remove broken version specifiers
+  sed -e 's/==/>=/;s/2\.\*/2.0/' -i setup.py requirements.txt 
test/requirements.txt
+  # don't use mock
+  sed -e 's/import mock/from unittest import mock/' -i 
test/unit/test_dropbox_unit.py
 }
 
 build() {
-  cd "$srcdir/$_pkgname-$pkgver"
+  cd $_name-$pkgver
+  python -m build --wheel --no-isolation
+}
 
-  python setup.py build
+check() {
+  local site_packages=$(python -c "import site; 
print(site.getsitepackages()[0])")
+
+  cd $_name-$pkgver
+  # 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 --ignore test/integration/
 }
 
-# requires API token in $DROPBOX_TOKEN
-#check() {
-#  cd "$srcdir/$_pkgname-$pkgver"
-#
-#  python setup.py pytest --addopts "-k 'not TestDropboxTeam'"
-#  python2 setup.py pytest --addopts "-k 'not TestDropboxTeam'"
-#}
-
 package() {
-  cd "$srcdir/$_pkgname-$pkgver"
-
-  python setup.py install --root="$pkgdir" --optimize=1
-  install -Dm0644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE"
+  cd $_name-$pkgver
+  python -m installer --destdir="$pkgdir" dist/*.whl
+  install -vDm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/"
 }

Reply via email to