# Maintainer: David Runge <dvzrv@archlinux.org>

_name=pendulum
pkgname=python-pendulum
pkgver=3.1.0
pkgrel=2
pkgdesc="Python datetimes made easy"
arch=(x86_64 aarch64)
url="https://pendulum.eustace.io/"
_url="https://github.com/python-pendulum/pendulum"
license=(MIT)
depends=(
  gcc-libs
  glibc
  python
  python-dateutil
  python-time-machine
)
makedepends=(
  python-build
  python-installer
  python-maturin
  python-wheel
)
checkdepends=(
  python-babel
  python-freezegun
  python-pytest
  python-pytz
)
source=(
  $pkgname-$pkgver.tar.gz::$_url/archive/$pkgver.tar.gz
  bump-pyo3-version-to-0.25.patch
)
sha512sums=('f8c750829e9494769d9912538735c4c614f66336dd3911fd1ec1e770e25a7c934585858632c39c5d4164188b72efa40c39fb4c2af8fa10fe582039b2f9154273'
            '35f09d1ce0060e66b2af08e4797647cfe44a564194bd436464d043479784fb749e1bfa8f2afd145f24bb77f4f98162d9c7f44a9b742504be649701fbb415c0fc')
b2sums=('4d50929261a554d7448599bde4e7dfab00dd23183cc811a44c2f8551dca4bebf637eb0368253163b71ac3f21cb8bf53b4692141ba306ac86323ecd09f508c8d5'
        '979f910050b3f44a51c33e5948a29d8ece24f19d128373c7af0effcf05320de68abf3ec1b268d82c90870783c7a721eb06942f5a35df5a3d2dd076ce453edf75')

prepare() {
  cd $_name-$pkgver
  patch -Np1 -i ${srcdir}/bump-pyo3-version-to-0.25.patch
}

build() {
  cd $_name-$pkgver
  python -m build --wheel --no-isolation
}

check() {
  local pytest_options=(
    -vv
  )
  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="$PWD/test_dir/$site_packages:$PYTHONPATH"
  pytest "${pytest_options[@]}"
}

package() {
  cd $_name-$pkgver
  python -m installer --destdir="$pkgdir" dist/*.whl
  install -vDm 644 {CHANGELOG.md,README.rst} -t "$pkgdir/usr/share/doc/$pkgname/"
  install -vDm 644 LICENSE -t "$pkgdir/usr/share/licenses/$pkgname/"
}
