Date: Friday, November 15, 2019 @ 05:46:50 Author: felixonmars Revision: 528795
archrelease: copy trunk to community-testing-x86_64 Added: python-rapidjson/repos/community-testing-x86_64/ python-rapidjson/repos/community-testing-x86_64/PKGBUILD (from rev 528794, python-rapidjson/trunk/PKGBUILD) python-rapidjson/repos/community-testing-x86_64/python-3.8.patch (from rev 528794, python-rapidjson/trunk/python-3.8.patch) ------------------+ PKGBUILD | 38 ++++++++++++++++++++++++++++++++++++++ python-3.8.patch | 35 +++++++++++++++++++++++++++++++++++ 2 files changed, 73 insertions(+) Copied: python-rapidjson/repos/community-testing-x86_64/PKGBUILD (from rev 528794, python-rapidjson/trunk/PKGBUILD) =================================================================== --- community-testing-x86_64/PKGBUILD (rev 0) +++ community-testing-x86_64/PKGBUILD 2019-11-15 05:46:50 UTC (rev 528795) @@ -0,0 +1,38 @@ +# Maintainer: Felix Yan <felixonm...@archlinux.org> + +pkgname=python-rapidjson +pkgver=0.9.1 +pkgrel=1 +pkgdesc="Python wrapper around rapidjson" +arch=('x86_64') +url="https://pypi.python.org/pypi/python-rapidjson" +license=('MIT') +depends=('python') +makedepends=('python-setuptools' 'rapidjson') +checkdepends=('python-pytest-runner' 'python-pytest-benchmark' 'python-pytz') +source=("https://pypi.io/packages/source/p/python-rapidjson/python-rapidjson-$pkgver.tar.gz") +sha512sums=('0feb085c7cd4a8c0476b67f5ce671ccbe4605c3b08ca364eba64b84b9e8d4a2bbd9f481295023286cba63af0ecbfe69e33581df65a38577ec214672644028aa2') + +prepare() { + #rm -r python-rapidjson-$pkgver/rapidjson + #sed -i 's/if not os.path.isdir/if os.path.isdir/' python-rapidjson-$pkgver/setup.py + # Shared rapidjson fails tests. + + cp -a python-rapidjson-$pkgver{,-py2} +} + +build() { + cd python-rapidjson-$pkgver + python setup.py build # --rj-include-dir=/usr/include +} + +check() { + cd python-rapidjson-$pkgver + python setup.py pytest --addopts '--ignore benchmarks/' +} + +package() { + cd python-rapidjson-$pkgver + python setup.py install -O1 --root="$pkgdir" + install -Dm644 LICENSE "$pkgdir/usr/share/licenses/$pkgname/LICENSE" +} Copied: python-rapidjson/repos/community-testing-x86_64/python-3.8.patch (from rev 528794, python-rapidjson/trunk/python-3.8.patch) =================================================================== --- community-testing-x86_64/python-3.8.patch (rev 0) +++ community-testing-x86_64/python-3.8.patch 2019-11-15 05:46:50 UTC (rev 528795) @@ -0,0 +1,35 @@ +From aa16ff9daec2153f47c3c6977bde31df221bb097 Mon Sep 17 00:00:00 2001 +From: Lele Gaifax <l...@metapensiero.it> +Date: Sat, 2 Nov 2019 14:31:16 +0100 +Subject: [PATCH] Use repr() instead of str() to obtain string representation + of PyLong instances + +In Python 3.8 they removed several __str__() implementations (see commit +https://github.com/python/cpython/commit/96aeaec64738b730c719562125070a52ed570210), so +under that version calling str() on an IntEnum instance gives something like +"<EnumName.attr: 123>", not the literal integer value as before, so the right thing, that +seems to work also on Python 3.7, is to use repr() instead. + +This fixes issue #125. +--- + rapidjson.cpp | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/rapidjson.cpp b/rapidjson.cpp +index e649e52..32f527b 100644 +--- a/rapidjson.cpp ++++ b/rapidjson.cpp +@@ -2267,11 +2267,11 @@ dumps_internal( + writer->Uint64(ui); + } + } else { +- // Mimic stdlib json: subclasses of int may override __str__, but we still ++ // Mimic stdlib json: subclasses of int may override __repr__, but we still + // want to encode them as integers in JSON; one example within the standard + // library is IntEnum + +- PyObject* intStrObj = PyLong_Type.tp_str(object); ++ PyObject* intStrObj = PyLong_Type.tp_repr(object); + if (intStrObj == NULL) + return false; +