summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Runge2020-03-14 09:24:09 +0000
committerDavid Runge2020-03-14 09:24:09 +0000
commit51fb85934e385befc9ad70283c9f1b7c4a3cf936 (patch)
tree3a3920b189a6224b324266bbe456bbd8b0b56041
downloadaur-51fb85934e385befc9ad70283c9f1b7c4a3cf936.tar.gz
Adding python-jinja-time as depends for python-cookiecutter.
-rw-r--r--PKGBUILD48
-rw-r--r--python-jinja-time-0.2.0-arrow_shift.patch38
2 files changed, 86 insertions, 0 deletions
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..e98f112c16bd
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,48 @@
+# Maintainer: David Runge <dvzrv@archlinux.org>
+
+_name=jinja2-time
+pkgname=python-jinja-time
+pkgver=0.2.0
+pkgrel=3
+pkgdesc="Jinja2 Extension for Dates and Times"
+arch=('any')
+url="https://github.com/hackebrot/jinja2-time"
+license=('MIT')
+depends=('python-arrow' 'python-jinja')
+makedepends=('python-setuptools')
+checkdepends=('python-freezegun' 'python-pytest')
+source=("https://files.pythonhosted.org/packages/source/${_name::1}/${_name}/${_name}-${pkgver}.tar.gz"
+ "${pkgname}-0.2.0-arrow_shift.patch")
+sha512sums=('8ac4686312cde689f7a431001833d5d477030c4f5e9470d949bd07a40fcb9521f6ddcde37a72468093121ff9451e352a0bb43d20a796d7a204cf94e8a7545f2c'
+ '0286a608702bb445cf29da7900ec04f5b1f64d1e9658b84f9a90018adf5fce5cc959832abff73fa017afcaf0a0f6be85060e52a79038bf770b8b37d8c96a5e7d')
+
+prepare() {
+ mv -v "${_name}-${pkgver}" "$pkgname-$pkgver"
+ cd "$pkgname-$pkgver"
+ # fixing the way python-arrow is used:
+ # https://github.com/hackebrot/jinja2-time/issues/15
+ patch -Np1 -i "../${pkgname}-0.2.0-arrow_shift.patch"
+}
+
+build() {
+ cd "$pkgname-$pkgver"
+ python setup.py build
+}
+
+check() {
+ cd "$pkgname-$pkgver"
+ export PYTHONPATH="build:${PYTHONPATH}"
+ pytest -v
+# python setup.py test
+}
+
+package() {
+ cd "$pkgname-$pkgver"
+ python setup.py install --skip-build \
+ --optimize=1 \
+ --prefix=/usr \
+ --root="${pkgdir}"
+ install -vDm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}"
+ install -vDm 644 {CONTRIBUTING,CONTRIBUTORS,HISTORY,README}.rst \
+ -t "${pkgdir}/usr/share/doc/${pkgname}"
+}
diff --git a/python-jinja-time-0.2.0-arrow_shift.patch b/python-jinja-time-0.2.0-arrow_shift.patch
new file mode 100644
index 000000000000..04d2993c453f
--- /dev/null
+++ b/python-jinja-time-0.2.0-arrow_shift.patch
@@ -0,0 +1,38 @@
+From aa4af9af0a0a5111a8ad21bc1b43bbdb586ee8af Mon Sep 17 00:00:00 2001
+From: Vincent Bernat <vincent@bernat.ch>
+Date: Sun, 3 Nov 2019 07:48:08 +0100
+Subject: [PATCH] Use shift() instead of replace() to modify dates
+
+Previously, the `replace()` method from arrow was shifting the date
+when the arguments were using the plural form. Since Arrow 0.9.0, this
+has been deprecated in favor of a `shift()` method. Arrow 0.14.5
+completely removed the ability for `replace()` to shift dates. This
+leads to errors like `AttributeError: unknown attribute: "hours"` when
+using plural form.
+
+This commit replace the use of `replace()` by `shift()` since the
+intent is always to shift the current date.
+---
+ jinja2_time/jinja2_time.py | 6 +++---
+ setup.py | 4 ++--
+ 2 files changed, 5 insertions(+), 5 deletions(-)
+
+diff --git a/jinja2_time/jinja2_time.py b/jinja2_time/jinja2_time.py
+index ce713cb..717c8a0 100755
+--- a/jinja2_time/jinja2_time.py
++++ b/jinja2_time/jinja2_time.py
+@@ -19,11 +19,11 @@ def _datetime(self, timezone, operator, offset, datetime_format):
+ d = arrow.now(timezone)
+
+ # Parse replace kwargs from offset and include operator
+- replace_params = {}
++ shift_params = {}
+ for param in offset.split(','):
+ interval, value = param.split('=')
+- replace_params[interval.strip()] = float(operator + value.strip())
+- d = d.replace(**replace_params)
++ shift_params[interval.strip()] = float(operator + value.strip())
++ d = d.shift(**shift_params)
+
+ if datetime_format is None:
+ datetime_format = self.environment.datetime_format