diff options
author | bill-auger <mr.j.spam.me@gmail.com> | 2022-10-13 12:39:04 -0400 |
---|---|---|
committer | bill-auger <mr.j.spam.me@gmail.com> | 2022-10-19 17:18:14 -0400 |
commit | 0bcfc852caa1e548c59a7f19818be980cb5d8b47 (patch) | |
tree | 5f060a8dfc973a22101ea0dd9b59e4e5fb854f1c | |
parent | 741b2b35a61fe632d9aedb77f1728ac658d8e947 (diff) |
sq goblin python deps
-rw-r--r-- | pcr/mediagoblin/PKGBUILD | 95 | ||||
-rw-r--r-- | pcr/python-amqp2/PKGBUILD | 42 | ||||
-rw-r--r-- | pcr/python-billiard3/PKGBUILD | 45 | ||||
-rw-r--r-- | pcr/python-celery4.3/PKGBUILD | 86 | ||||
-rw-r--r-- | pcr/python-celery4.3/celery.tmpfiles.d | 2 | ||||
-rw-r--r-- | pcr/python-celery4.3/celery@.service | 15 | ||||
-rw-r--r-- | pcr/python-docutils0.16/PKGBUILD | 53 | ||||
-rw-r--r-- | pcr/python-exifread/PKGBUILD | 36 | ||||
-rw-r--r-- | pcr/python-jinja2/PKGBUILD | 54 | ||||
-rw-r--r-- | pcr/python-kombu4/PKGBUILD | 58 | ||||
-rw-r--r-- | pcr/python-markupsafe2.0/PKGBUILD | 42 | ||||
-rw-r--r-- | pcr/python-pastescript/PKGBUILD | 35 | ||||
-rw-r--r-- | pcr/python-pyld/0001-Fixed-remote-frame-context-handling.patch | 253 | ||||
-rw-r--r-- | pcr/python-pyld/PKGBUILD | 39 | ||||
-rw-r--r-- | pcr/python-soundfile/PKGBUILD | 40 | ||||
-rw-r--r-- | pcr/python-sphinx4/PKGBUILD | 77 | ||||
-rw-r--r-- | pcr/python-vine1.3/PKGBUILD | 41 | ||||
-rw-r--r-- | pcr/python-werkzeug1/PKGBUILD | 50 | ||||
-rw-r--r-- | pcr/python-wtforms2/PKGBUILD | 44 |
19 files changed, 1088 insertions, 19 deletions
diff --git a/pcr/mediagoblin/PKGBUILD b/pcr/mediagoblin/PKGBUILD index 71ae2add8..aba11d263 100644 --- a/pcr/mediagoblin/PKGBUILD +++ b/pcr/mediagoblin/PKGBUILD @@ -1,5 +1,30 @@ # Maintainer (aur): Immae <ismael.bouya@normalesup.org> -# Maintainer: Isaac David <isacdaavid@at@isacdaavid@dot@info> +# Contributor: Isaac David <isacdaavid@at@isacdaavid@dot@info> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - allow building offline (no pip, npm, etc) +# - dependencies packaged only for mediagoblin: +# * python-billiard3 +# * python-celery4.2 +# * python-docutils0.16 +# * python-exifread +# * python-jinja2 +# * python-kombu4 +# * python-markupsafe2.0 <- python-jinja2 +# * python-pastescript +# * python-pyld +# * python-soundfile +# * python-sphinx4 +# * python-vine1.3 +# * python-werkzeug1 +# * python-wtforms2 +# file conflicts: +# mediagoblin: /usr/bin/jsonschema ekzistas en dosiersistemo (python-jsonschema ĝin posedas) +# mediagoblin: /usr/bin/markdown_py ekzistas en dosiersistemo (python-markdown ĝin posedas) +# mediagoblin: /usr/bin/pybabel ekzistas en dosiersistemo (python-babel ĝin posedas) +# mediagoblin: /usr/bin/pygmentize ekzistas en dosiersistemo (python-pygments ĝin posedas) pkgname=mediagoblin @@ -9,7 +34,32 @@ pkgdesc="A free software media publishing platform" url=https://mediagoblin.org license=(AGPL) arch=(armv7h i686 x86_64) -depends=(python-babel python-lxml python-pillow nodejs sqlite) +depends=(nodejs python-lxml python-pillow sqlite) +makedepends=( +python-alembic +python-amqp2 +python-babel +python-bcrypt +python-billiard3 +python-celery4.2 +python-certifi +python-configobj +python-dateutil +python-docutils0.16 +python-email-validator +python-exifread +python-feedgenerator +python-itsdangerous +python-jinja2 +python-jsonschema +python-kombu4 +python-markdown +python-oauthlib +python-paste +python-pastedeploy +python-pastescript python-pyld=1.0.5 python-setuptools python-soundfile python-sphinx4 python-sqlalchemy1.3 python-unidecode +python-vine1.3 +python-waitress python-werkzeug1 python-wtforms2) optdepends=('postgresql: to use the postgresql database backend' 'python-psycopg2: to use the postgresql database backend' 'python-gobject: to handle videos' @@ -33,7 +83,7 @@ sha256sums=('64706dd2d1d39cdc4c269b04858495d382c6ead5274b57767acd9059e43b4bce' 'f636d02f86d2dab5ecc901be5b0f7c42366500393f22dfdc7e354ca299fca65a' 'ac914d60886d9bf53d3f40b8b00a60d46ada1cac9130210e045a4776d898e884' '9adf338f5dbfb94ee7ae29433091b6991a1fa39a6135a8295f9f1cc1fde0edc1' - 'abb6c4c4e54d4372adfe67ab22371ad625505098311955e5ae8e34102b059d47' + 'fd6f6dea7f933d4d006bbe1702d9f2a5de4d09595c913a00a51b6b25b894c39c' '79bb2cf315dc760e0eee16c9c9e990c78e56ea0a8fa3c46f0b5ff2c1fc4e4974') @@ -41,8 +91,16 @@ prepare() { cd "${srcdir}"/${pkgname}-${pkgver} - sed -i '/^git/d' bootstrap.sh + # non-VCS patching + sed -i '/^git submodule /d' bootstrap.sh + # non-pip patching + sed -i 's|py-bcrypt|bcrypt|' setup.cfg + + # bug fixes + # the `--with-virtualenv` handling borks the generated configure script + # https://todo.sr.ht/~mediagoblin/mediagoblin/12 + # offered upstream https://lists.gnu.org/archive/html/mediagoblin-devel/2022-10/msg00001.html echo "applying ac.patch" patch -Np1 < "${srcdir}"/ac.patch } @@ -52,34 +110,33 @@ build() cd "${srcdir}"/${pkgname}-${pkgver} ./bootstrap.sh - ./configure + ./configure --prefix=/usr make } package() { cd "${srcdir}"/${pkgname}-${pkgver} - rm -rf .git .gitignore + make DESTDIR="${pkgdir}" install + +return 0 install -dm755 "${pkgdir}"/usr/share/webapps/mediagoblin/ cp -a . "${pkgdir}"/usr/share/webapps/mediagoblin - - cd "${pkgdir}"/usr/share/webapps/mediagoblin - find . -name '*.pyc' -delete - find . -type f -exec sed -Ei \ + find "${pkgdir}"/usr/share/webapps/mediagoblin -name '*.pyc' -delete + find "${pkgdir}"/usr/share/webapps/mediagoblin -type f -exec sed -Ei \ "s|${srcdir}/${pkgname}(-${pkgver})?|/usr/share/webapps/${pkgname}|g" {} \; - install -dm755 "${pkgdir}"/var/lib/mediagoblin install -dm755 "${pkgdir}"/etc/webapps/mediagoblin + install -Dm644 "${srcdir}"/paste_local.ini "${pkgdir}"/etc/webapps/mediagoblin/paste_local.ini + install -Dm644 "${srcdir}"/mediagoblin_local.ini "${pkgdir}"/etc/webapps/mediagoblin/mediagoblin_local.ini + ln -s /etc/webapps/mediagoblin/paste_local.ini "${pkgdir}"/usr/share/webapps/mediagoblin/paste_local.ini + ln -s /etc/webapps/mediagoblin/mediagoblin_local.ini "${pkgdir}"/usr/share/webapps/mediagoblin/mediagoblin_local.ini - install -Dm644 "$srcdir"/paste_local.ini "${pkgdir}"/etc/webapps/mediagoblin/paste_local.ini - ln -s /etc/webapps/mediagoblin/paste_local.ini "${pkgdir}"/usr/share/webapps/mediagoblin/paste_local.ini - install -Dm644 "$srcdir"/mediagoblin_local.ini "${pkgdir}"/etc/webapps/mediagoblin/mediagoblin_local.ini - ln -s /etc/webapps/mediagoblin/mediagoblin_local.ini "${pkgdir}"/usr/share/webapps/mediagoblin/mediagoblin_local.ini - + install -dm755 "${pkgdir}"/var/lib/mediagoblin ln -s /var/lib/mediagoblin/ "${pkgdir}"/usr/share/webapps/mediagoblin/user_dev - install -Dm644 "$srcdir"/mediagoblin-paster.service "${pkgdir}"/usr/lib/systemd/system/mediagoblin-paster.service - install -Dm644 "$srcdir"/mediagoblin-celeryd.service "${pkgdir}"/usr/lib/systemd/system/mediagoblin-celeryd.service - install -Dm644 "$srcdir"/mediagoblin-tmpfiles.conf "${pkgdir}"/usr/lib/tmpfiles.d/mediagoblin.conf + install -Dm644 "${srcdir}"/mediagoblin-paster.service "${pkgdir}"/usr/lib/systemd/system/mediagoblin-paster.service + install -Dm644 "${srcdir}"/mediagoblin-celeryd.service "${pkgdir}"/usr/lib/systemd/system/mediagoblin-celeryd.service + install -Dm644 "${srcdir}"/mediagoblin-tmpfiles.conf "${pkgdir}"/usr/lib/tmpfiles.d/mediagoblin.conf } diff --git a/pcr/python-amqp2/PKGBUILD b/pcr/python-amqp2/PKGBUILD new file mode 100644 index 000000000..c4b47749e --- /dev/null +++ b/pcr/python-amqp2/PKGBUILD @@ -0,0 +1,42 @@ +# Maintainer (arch): Felix Yan <felixonmars@archlinux.org> +# Contributor: mutantmonkey <aur@mutantmonkey.in> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - down-grade of 'python-amqp' +# - build dependency of 'mediagoblin' (<2.7 >=2.6) + + +pkgname=python-amqp2 +pkgver=2.6.1 +pkgrel=1 +pkgdesc="Low-level AMQP client for Python (fork of amqplib)" +arch=('any') +url="https://github.com/celery/py-amqp" +license=('custom:BSD3') # https://github.com/celery/py-amqp/pull/104 +provides=(python-amqp) +conflicts=(python-amqp) +depends=('python-vine1.3') +checkdepends=('python-case' 'python-pytest-sugar') +source=("https://github.com/celery/py-amqp/archive/v$pkgver/$pkgname-$pkgver.tar.gz") +sha512sums=('47e2d848df8023e31969fef54456eced1c63db49d7570264c6fdb969399d7a97998e948cf65995f8216cbf9932795573c13b6b08bcbcd5d9865155caaeee7aeb') + +build() { + cd py-amqp-$pkgver + python setup.py build +} + +check() { + # FAILED t/unit/test_transport.py::test_AbstractTransport_connect::test_connect_already_connected + return 0 + + cd py-amqp-$pkgver + pytest +} + +package() { + cd py-amqp-$pkgver + python setup.py install --root="$pkgdir" --optimize=1 + install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE +} diff --git a/pcr/python-billiard3/PKGBUILD b/pcr/python-billiard3/PKGBUILD new file mode 100644 index 000000000..7dca54850 --- /dev/null +++ b/pcr/python-billiard3/PKGBUILD @@ -0,0 +1,45 @@ +# Maintainer (arch): Felix Yan <felixonmars@archlinux.org> +# Contributor: Benjamin A. Shelton <zancarius@gmail.com> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - down-grade of 'python-billiard' +# - build dependency of 'mediagoblin' (<4.0) + + +pkgname=python-billiard3 +pkgver=3.6.4.0 +pkgrel=3 +pkgdesc="Python multiprocessing fork with improvements and bugfixes." +arch=('any') +url="https://pypi.org/project/billiard/" +license=('custom:BSD3') +provides=(python-billiard) +conflicts=(python-billiard) +depends=('python') +makedepends=('python-setuptools') +checkdepends=('python-pytest-runner' 'python-case' 'python-psutil') +source=("https://pypi.io/packages/source/b/billiard/billiard-$pkgver.tar.gz") +sha512sums=('9f2a44024e45c4e7667472a0a3ade7caae755ec7c163929433f818e4b87165218b9cc9545bdee2254e7159c206e525306e383d38906b00fd5428bd1616c39b8f') + +prepare() { + cd billiard-$pkgver + sed -i 's/< *5/<6/' requirements/test.txt +} + +build() { + cd billiard-$pkgver + python setup.py build +} + +check() { + cd billiard-$pkgver + python setup.py pytest +} + +package() { + cd billiard-$pkgver + python setup.py install --root="$pkgdir" --optimize=1 --skip-build + install -Dm664 LICENSE.txt -t "$pkgdir"/usr/share/licenses/$pkgname/ +} diff --git a/pcr/python-celery4.3/PKGBUILD b/pcr/python-celery4.3/PKGBUILD new file mode 100644 index 000000000..cabb24929 --- /dev/null +++ b/pcr/python-celery4.3/PKGBUILD @@ -0,0 +1,86 @@ +# Maintainer: Felix Yan <felixonmars@archlinux.org> +# Contributor: Marcin Kolenda <marcinkolenda419@gmail.com> +# Contributor: Valentin Haloiu <vially.ichb+aur@gmail.com> +# Contributor: Lukas Linhart <bugs@almad.net> +# Contributor: Marco Elver <marco.elver AT gmail.com> +# Contributor: apkawa <apkawa@gmail.com> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - remove python2 split package +# - down-grade of 'python-celery' +# - build dependency of 'mediagoblin' (<4.3.0) + + +pkgname=python-celery4.2 +pkgver=4.2.2 +pkgrel=1 +pkgdesc='Distributed Asynchronous Task Queue' +arch=('any') +url='http://celeryproject.org/' +license=('custom:BSD3') +provides=('python-celery') +conflicts=('python-celery') +makedepends=('python-setuptools' 'python2-setuptools' 'python-kombu' 'python2-kombu' + 'python-billiard' 'python2-billiard' 'python-pytz' 'python2-pytz') +makedepends=( ${makedepends[*]/python2-*/} ) +checkdepends=('python-pytest32' 'python2-pytest32' 'python-pytest-runner' 'python2-pytest-runner' + 'python-case' 'python2-case' 'python-pyopenssl' 'python2-pyopenssl' 'python-gevent' + 'python2-gevent' 'python2-librabbitmq' 'python-pymongo' 'python2-pymongo' + 'python-msgpack' 'python2-msgpack' 'python-pyro' 'python2-pyro' 'python-redis' + 'python2-redis' 'python-sqlalchemy' 'python2-sqlalchemy' 'python-boto' 'python2-boto' + 'python-yaml' 'python2-yaml' 'python-pyzmq' 'python2-pyzmq' 'python-eventlet' + 'python2-eventlet') +checkdepends=( ${makedepends[*]/python2-*/} ) +source=("https://pypi.io/packages/source/c/celery/celery-$pkgver.tar.gz" + "https://github.com/celery/celery/commit/e7002769211f7340f38df80b3112706a8e07cafb.patch" + "https://github.com/celery/celery/commit/1c3a15938d0b9dde674d4666689d6a6c733d64e4.patch" + celery@.service + celery.tmpfiles.d) +options=('!emptydirs') +sha512sums=('22183c8bfed0c17aa50ec8bda16fb4faf5e5e2cab4265124f0831929dc6414daabf182c4b07a8d6385a4954a440c3c99cfd1e784b126f566fcdbb887feeefd9b' + 'f3778f20233f50fa0fa39c7f8b5ca1f5c9dafd342aa58ccb9083e8126d229a97d3a28ef9892d713659113f440bfbbe5cb2b4085a1c5fa4dbf9047670ff184d8d' + '470bbd68cbc31a48cedac4e09a45d0f414bd765450e65697d443f0e4ace8eb141735b7a4bd5d23e912d1f9d0014770bc8196bef5625b54162c7ad0df4cb7263a' + '3c6c9dbdacca2de12d49c03526b34797fd867c14d04115af0d1fda64d2848a5d3f64ceb6d284be319a81d932dc86e69c157b6f5f859f2fa213fc2f43a6052c65' + '67279b75c3b44d065811c9c90aee006296164000912d5bb97c74956b26ee4ad4f0847e846052a896d379848b869c849300367e676d3f689cf29e3a0c7ae5310b') + +prepare() { + # python 3.7 compat + patch -p1 -d celery-$pkgver < e7002769211f7340f38df80b3112706a8e07cafb.patch + patch -p1 -d celery-$pkgver < 1c3a15938d0b9dde674d4666689d6a6c733d64e4.patch + sed -i -e 's/< *3.6/<4/' -e 's/< *4.4/<5/' celery-$pkgver/requirements/default.txt + cp -a celery-$pkgver{,-py2} +} + +build() { + cd "$srcdir"/celery-$pkgver + python setup.py build +} + +check() { + cd "$srcdir"/celery-$pkgver + # Project does not officially support python 3.7, and does not wish us to + # open bugreports for python 3.7 issues. Backport all known python 3.7 fixes + # and hope for the best. https://github.com/celery/celery/issues/4913 + python setup.py pytest || warning "tests fail on python 3.7: https://github.com/celery/celery/issues/4913" +} + +package() { + depends=('python-kombu' 'python-billiard' 'python-pytz') + optdepends=('python-pyopenssl: for celery.security' + 'python-pymongo: for celery.backends.mongodb' + 'python-msgpack: for using the msgpack serializer' + 'python-pyro: for using Pyro4 message transport' + 'python-redis: for celery.backends.redis' + 'python-sqlalchemy: for celery.backends.database' + 'python-boto: for SQS transport' + 'python-yaml: for using the yaml serializer' + 'python-pyzmq: for using ZeroMQ transport') + + cd "$srcdir"/celery-$pkgver + python setup.py install --root="$pkgdir" --optimize=1 --skip-build + install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE + install -Dm644 "$srcdir"/celery@.service "$pkgdir"/usr/lib/systemd/system/celery@.service + install -Dm644 "$srcdir"/celery.tmpfiles.d "$pkgdir"/usr/lib/tmpfiles.d/celery.conf +} diff --git a/pcr/python-celery4.3/celery.tmpfiles.d b/pcr/python-celery4.3/celery.tmpfiles.d new file mode 100644 index 000000000..9e6a8b783 --- /dev/null +++ b/pcr/python-celery4.3/celery.tmpfiles.d @@ -0,0 +1,2 @@ +d /run/celery 0755 - - - - +d /var/log/celery 0755 - - - - diff --git a/pcr/python-celery4.3/celery@.service b/pcr/python-celery4.3/celery@.service new file mode 100644 index 000000000..ce38b5c89 --- /dev/null +++ b/pcr/python-celery4.3/celery@.service @@ -0,0 +1,15 @@ +[Unit] +Description=Celery Nodes Daemon +After=network.target + +[Service] +Type=oneshot +EnvironmentFile=/etc/celery/%I.conf +ExecStart=/usr/bin/celery multi start $CELERYD_NODES --pidfile=/run/celery/%n.pid --logfile=/var/log/celery/%n.log --loglevel="INFO" $CELERYD_OPTS +ExecStop=/usr/bin/celery multi stopwait $CELERYD_NODES --pidfile=/run/celery/%n.pid +ExecReload=/usr/bin/celery multi restart $CELERYD_NODES --pidfile=/run/celery/%n.pid --logfile=/var/log/celery/%n.log --loglevel="INFO" $CELERYD_OPTS +KillMode=control-group +RemainAfterExit=yes + +[Install] +WantedBy=multi-user.target diff --git a/pcr/python-docutils0.16/PKGBUILD b/pcr/python-docutils0.16/PKGBUILD new file mode 100644 index 000000000..c4305c055 --- /dev/null +++ b/pcr/python-docutils0.16/PKGBUILD @@ -0,0 +1,53 @@ +# Maintainer (arch): Felix Yan <felixonmars@archlinux.org> +# Maintainer (arch): Daniel M. Capella <polyzen@archlinux.org> +# Contributor: Sébastien Luttringer +# Contributor: Ionut Biru <ibiru@archlinux.org> +# Contributor: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - no changes (down-grade of 'python-docutils') +# - build dependency of 'mediagoblin' (<0.18) + + +_name=docutils +pkgname=python-docutils0.16 +pkgver=0.16 +pkgrel=2 +epoch=1 +pkgdesc='Set of tools for processing plaintext docs into formats such as HTML, XML, or LaTeX' +arch=('any') +url='http://docutils.sourceforge.net' +license=(custom:PD custom:BSD2 GPL3 custom:PSF2.1.1 PSF) +provides=(python-docutils) +conflicts=(python-docutils) +depends=('python') +makedepends=('python-setuptools') +source=("https://downloads.sourceforge.net/$_name/$_name-$pkgver.tar.gz") +sha512sums=('1a4e1bdedc79388e73dd438ae6d4d2ba67a005c745613452e027c0f6b378058b528f3329d650454fc0d3dd5253a1eb95dc52b35846cbfb4d8618d9bd4c3ad934') + +build() { + cd $_name-$pkgver + python setup.py build +} + +check() { + cd $_name-$pkgver + # we need utf locale to valid utf8 tests + export LANG=en_US.UTF-8 + PYTHONPATH="$PWD/build/python/" python test/alltests.py +} + +package() { + cd $_name-$pkgver + python setup.py build install --root="$pkgdir" --optimize=1 + # symlink without .py + for f in "$pkgdir"/usr/bin/*.py; do + ln -s "$(basename $f)" "$pkgdir/usr/bin/$(basename $f .py)" + done + # setup license + install -D -m644 COPYING.txt "$pkgdir/usr/share/licenses/$pkgname/COPYING.txt" + install -D -m644 licenses/BSD-2-Clause.txt "$pkgdir/usr/share/licenses/$pkgname/BSD-2-Clause.txt" + install -D -m644 licenses/python-2-1-1.txt "$pkgdir/usr/share/licenses/$pkgname/python-2-1-1.txt" +} diff --git a/pcr/python-exifread/PKGBUILD b/pcr/python-exifread/PKGBUILD new file mode 100644 index 000000000..2fabdaecc --- /dev/null +++ b/pcr/python-exifread/PKGBUILD @@ -0,0 +1,36 @@ +# Maintainer (aur): nblock <nblock [/at\] archlinux DOT us> +# Contributor: Simon Chabot <simon dot chabot at etu dot utc dot fr> +# Contributor: Christopher Loen <christopherloen at gmail dot com> +# Contributor: David McInnis <davidm@eagles.ewu.edu> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - no changes +# - build dependency of 'mediagoblin' + + +pkgname=python-exifread +_name="ExifRead" +pkgver=3.0.0 +pkgrel=2 +pkgdesc="Python library to extract EXIF data from tiff and jpeg files" +arch=('any') +url="https://github.com/ianare/exif-py" +license=('custom:BSD3') +depends=('python') +makedepends=('python-setuptools') +source=("https://files.pythonhosted.org/packages/source/${_name::1}/$_name/$_name-$pkgver.tar.gz") +sha1sums=('1558d678b959b9c374c6d932700762d3d261a831') +sha256sums=('0ac5a364169dbdf2bd62f94f5c073970ab6694a3166177f5e448b10c943e2ca4') + +build() { + cd "$_name-$pkgver" + python setup.py build +} + +package() { + cd "$_name-$pkgver" + install -Dm644 LICENSE.txt "$pkgdir/usr/share/licenses/$pkgname/LICENSE" + python setup.py install --root="$pkgdir/" --optimize=1 --skip-build +} diff --git a/pcr/python-jinja2/PKGBUILD b/pcr/python-jinja2/PKGBUILD new file mode 100644 index 000000000..b62412650 --- /dev/null +++ b/pcr/python-jinja2/PKGBUILD @@ -0,0 +1,54 @@ +# Maintainer (arch): Evangelos Foutras <evangelos@foutrelis.com> +# Contributor: David Runge <dave@sleepmap.de> +# Contributor: Peter Baldwin <bald_pete@hotmail.com> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - no changes (down-grade of 'python-jinja') +# - build dependency of 'mediagoblin' (<3.0.0) + + +pkgname=python-jinja2 +pkgver=2.11.3 +pkgrel=2 +pkgdesc="A simple pythonic template language written in Python" +arch=('any') +url="https://palletsprojects.com/p/jinja/" +license=('custom:BSD3') +provides=('python-jinja') +conflicts=('python-jinja') +depends=('python-markupsafe2.0') +makedepends=('python-setuptools') +optdepends=('python-babel: for i18n support') +# checkdepends=('python-pytest') +source=(https://files.pythonhosted.org/packages/source/J/Jinja2/Jinja2-$pkgver.tar.gz) +sha256sums=('a6d58433de0ae800347cab1fa3043cebbabe8baa9d29e668f1c768cb87a333c6') + +build() { + cd Jinja2-$pkgver + python3 setup.py build +} + +check() { + cd Jinja2-$pkgver + + # large number of failing tests + return 0 + + # https://github.com/pypa/setuptools/issues/2466 + PYTHONPATH=build/lib pytest \ + --deselect tests/test_bytecode_cache.py::TestByteCodeCache::test_simple \ + --deselect tests/test_loader.py::TestLoaders::test_package_loader \ + --deselect tests/test_loader.py::TestLoaders::test_choice_loader +} + +package() { + cd Jinja2-$pkgver + python3 setup.py install --root="$pkgdir" --optimize=1 --skip-build + install -Dm644 LICENSE.rst -t "$pkgdir/usr/share/licenses/$pkgname" + + install -Dm644 ext/Vim/jinja.vim -t "$pkgdir/usr/share/vim/vimfiles/syntax" +} + +# vim:set ts=2 sw=2 et: diff --git a/pcr/python-kombu4/PKGBUILD b/pcr/python-kombu4/PKGBUILD new file mode 100644 index 000000000..8bf49785d --- /dev/null +++ b/pcr/python-kombu4/PKGBUILD @@ -0,0 +1,58 @@ +# Maintainer (arch): Felix Yan <felixonmars@archlinux.org> +# Contributor: mutantmonkey <aur@mutantmonkey.in> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - down-grade of 'python-kombu' +# - build dependency of 'mediagoblin' (<5) + + +pkgname=python-kombu4 +pkgver=4.6.11 +pkgrel=1 +pkgdesc='A messaging library for Python' +arch=('any') +url="https://kombu.readthedocs.org/" +license=('custom:BSD3') +options=('!emptydirs') +provides=(python-kombu) +conflicts=(python-kombu) +depends=('python-amqp') +optdepends=('python-pymongo: for MongoDB support' + 'python-msgpack: for MessagePack support' + 'python-pyro: for Pyro support' + 'python-redis: for Redis support' + 'python-sqlalchemy: for SQLAlchemy support' + 'python-boto3: for Amazon SQS support' + 'python-pycurl: for Amazon SQS support' + 'python-yaml: for YAML support') + # 'python-softlayer-messaging: for SoftLayer Message Queue support': Not packaged yet + # 'python-kazoo: for Zookeeper support': Not packaged yet + # 'python-librabbitmq: C optimization for AMQP transport' Not available for python 3 yet +makedepends=('python-setuptools') +checkdepends=('python-pytest' 'python-redis' 'python-yaml' 'python-msgpack' 'python-pycurl' + 'python-case' 'python-pymongo' 'python-pytz' 'python-pytest-sugar' 'python-sqlalchemy' + 'python-pyro' 'python-boto3') +checkdepends+=(python-vine1.3) +source=("$pkgname-$pkgver.tar.gz::https://github.com/celery/kombu/archive/v$pkgver.tar.gz") +sha512sums=('67656c63e42c1cf018c438d60edece925cdf1a25abb46c9b413bfca3032ba108550277ced70f6696d61561d501fe49f85f0f8ee063405ac650662aa24d0cc95a') + +build() { + cd kombu-$pkgver + python setup.py build +} + +check() { + # many tests fail + return 0 + + cd kombu-$pkgver + python -m pytest +} + +package() { + cd kombu-$pkgver + python setup.py install --root="$pkgdir" --optimize=1 --skip-build + install -D -m644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE +} diff --git a/pcr/python-markupsafe2.0/PKGBUILD b/pcr/python-markupsafe2.0/PKGBUILD new file mode 100644 index 000000000..dbbc04be0 --- /dev/null +++ b/pcr/python-markupsafe2.0/PKGBUILD @@ -0,0 +1,42 @@ +# Maintainer (arch) : Felix Yan <felixonmars@archlinux.org> +# Contributor: Ionut Biru <ibiru@archlinux.org> +# Contributor: Alex Anthony <alex.anthony28991@gmail.com> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - no changes (down-grade of 'python-markupsafe') +# - build dependency of 'mediagoblin' -> 'python-jinja2' + + +pkgname=python-markupsafe2.0 +pkgver=2.0.1 +pkgrel=3 +pkgdesc="Implements a XML/HTML/XHTML Markup safe string for Python" +arch=('any') +url="https://pypi.python.org/pypi/MarkupSafe" +license=('custom:BSD3') +provides=('python-markupsafe') +conflicts=('python-markupsafe') +depends=('python') +makedepends=('python-setuptools') +checkdepends=('python-pytest-runner') +source=("$pkgname-$pkgver.tar.gz::https://github.com/pallets/markupsafe/archive/$pkgver.tar.gz") +sha512sums=('f9a32c6aebd5057b85ac374d24d14b4ffbe627858932ba551c0cf60f4100afef17436a0c822f195d070b7f0cd73fb099d1726f07b50c30068a0bae500c6387e0') + +build() { + cd markupsafe-$pkgver + python setup.py build +} + +check() { + cd markupsafe-$pkgver + python setup.py pytest +} + +package() { + cd markupsafe-$pkgver + python setup.py install --root="$pkgdir" --optimize=1 + + install -D -m644 LICENSE.rst "$pkgdir"/usr/share/licenses/python-markupsafe/LICENSE.rst +} diff --git a/pcr/python-pastescript/PKGBUILD b/pcr/python-pastescript/PKGBUILD new file mode 100644 index 000000000..daae121ad --- /dev/null +++ b/pcr/python-pastescript/PKGBUILD @@ -0,0 +1,35 @@ +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - build dependency of 'mediagoblin' + + +pkgname=python-pastescript +_upstream_name=pastescript +pkgver=3.2.1 +pkgrel=1 +pkgdesc="a pluggable command-line tool for paste" +arch=(any) +url=https://github.com/cdent/pastescript/ +license=(custom:MIT) +makedepends=(python-setuptools) +source=(${_upstream_name}-${pkgver}.tar.gz::https://github.com/cdent/pastescript/archive/refs/tags/${pkgver}.tar.gz) +sha256sums=('0ab37947ff35e37daf7c383ff4ab8dfb1452d916bd22c2b6090a85783efe5401') + + +build() +{ + cd "${srcdir}"/${_upstream_name}-${pkgver}/ + + python setup.py build +} + +package() +{ + cd "${srcdir}"/${_upstream_name}-${pkgver}/ + + python setup.py install --root="${pkgdir}" -O1 + + install -Dm644 docs/license.txt "${pkgdir}"/usr/share/licenses/${pkgname}/license.txt +} diff --git a/pcr/python-pyld/0001-Fixed-remote-frame-context-handling.patch b/pcr/python-pyld/0001-Fixed-remote-frame-context-handling.patch new file mode 100644 index 000000000..e5368df3e --- /dev/null +++ b/pcr/python-pyld/0001-Fixed-remote-frame-context-handling.patch @@ -0,0 +1,253 @@ +From a87843cca026e82fe2779d7176c6be3a6e4c9478 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?=C5=81ukasz=20Jancewicz?= <lj@rdprojekt.pl> +Date: Thu, 24 Jul 2014 16:11:10 +0200 +Subject: [PATCH 1/2] Fixed remote frame context handling. + +Added unit-tests to cover this scenario. +--- + lib/pyld/jsonld.py | 9 ++- + tests/unit-tests.py | 202 ++++++++++++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 206 insertions(+), 5 deletions(-) + create mode 100644 tests/unit-tests.py + +diff --git a/lib/pyld/jsonld.py b/lib/pyld/jsonld.py +index b9eecaa..0aa8ef1 100644 +--- a/lib/pyld/jsonld.py ++++ b/lib/pyld/jsonld.py +@@ -832,11 +832,11 @@ class JsonLdProcessor: + if frame is not None: + ctx = frame.get('@context', {}) + if remote_frame['contextUrl'] is not None: +- if ctx is not None: +- ctx = remote_frame['contextUrl'] +- else: ++ if ctx: + ctx = JsonLdProcessor.arrayify(ctx) + ctx.append(remote_frame['contextUrl']) ++ else: ++ ctx = remote_frame['contextUrl'] + frame['@context'] = ctx + + try: +@@ -1036,8 +1036,7 @@ class JsonLdProcessor: + + # retrieve URLs in local_ctx + local_ctx = copy.deepcopy(local_ctx) +- if (_is_string(local_ctx) or ( +- _is_object(local_ctx) and '@context' not in local_ctx)): ++ if not (_is_object(local_ctx) and '@context' in local_ctx): + local_ctx = {'@context': local_ctx} + try: + self._retrieve_context_urls( +diff --git a/tests/unit-tests.py b/tests/unit-tests.py +new file mode 100644 +index 0000000..3248b20 +--- /dev/null ++++ b/tests/unit-tests.py +@@ -0,0 +1,202 @@ ++import json ++import unittest ++ ++from pyld import jsonld ++ ++# Inputs and outputs used here are essentially modified documents ++# of JSON-LD frame-0001 test. ++ ++FRAME_0001_IN = '''{ ++ "@context": { ++ "dc": "http://purl.org/dc/elements/1.1/", ++ "ex": "http://example.org/vocab#", ++ "ex:contains": {"@type": "@id"} ++ }, ++ "@graph": [ ++ { ++ "@id": "http://example.org/test/#library", ++ "@type": "ex:Library", ++ "ex:contains": "http://example.org/test#book" ++ }, ++ { ++ "@id": "http://example.org/test#book", ++ "@type": "ex:Book", ++ "dc:contributor": "Writer", ++ "dc:title": "My Book", ++ "ex:contains": "http://example.org/test#chapter" ++ }, ++ { ++ "@id": "http://example.org/test#chapter", ++ "@type": "ex:Chapter", ++ "dc:description": "Fun", ++ "dc:title": "Chapter One" ++ } ++ ] ++}''' ++ ++ ++FRAME_0001_FRAME = '''{ ++ "@context": { ++ "dc": "http://purl.org/dc/elements/1.1/", ++ "ex": "http://example.org/vocab#" ++ }, ++ "@type": "ex:Library", ++ "ex:contains": { ++ "@type": "ex:Book", ++ "ex:contains": { ++ "@type": "ex:Chapter" ++ } ++ } ++}''' ++ ++FRAME_0001_FRAME_WITHOUT_CONTEXT = '''{ ++ "@type": "ex:Library", ++ "ex:contains": { ++ "@type": "ex:Book", ++ "ex:contains": { ++ "@type": "ex:Chapter" ++ } ++ } ++}''' ++ ++FRAME_0001_FRAME_WITH_PARTIAL_CONTEXT = '''{ ++ "@context": { ++ "dc": "http://purl.org/dc/elements/1.1/" ++ }, ++ "@type": "ex:Library", ++ "ex:contains": { ++ "@type": "ex:Book", ++ "ex:contains": { ++ "@type": "ex:Chapter" ++ } ++ } ++}''' ++ ++FRAME_0001_FRAME_CONTEXT = '''{ ++ "@context": { ++ "dc": "http://purl.org/dc/elements/1.1/", ++ "ex": "http://example.org/vocab#" ++ } ++}''' ++ ++FRAME_0001_FRAME_PARTIAL_CONTEXT = '''{ ++ "@context": { ++ "ex": "http://example.org/vocab#" ++ } ++}''' ++ ++FRAME_0001_OUT_WITH_REMOTE_CONTEXT = '''{ ++ "@context": "http://example.com/frame-context.json", ++ "@graph": [{ ++ "@id": "http://example.org/test/#library", ++ "@type": "ex:Library", ++ "ex:contains": { ++ "@id": "http://example.org/test#book", ++ "@type": "ex:Book", ++ "dc:contributor": "Writer", ++ "dc:title": "My Book", ++ "ex:contains": { ++ "@id": "http://example.org/test#chapter", ++ "@type": "ex:Chapter", ++ "dc:description": "Fun", ++ "dc:title": "Chapter One" ++ } ++ } ++ }] ++}''' ++ ++FRAME_0001_OUT_WITH_LOCAL_AND_REMOTE_CONTEXT = '''{ ++ "@context": [{ ++ "dc": "http://purl.org/dc/elements/1.1/", ++ "ex": "http://example.org/vocab#" ++ }, "http://example.com/frame-context.json"], ++ "@graph": [{ ++ "@id": "http://example.org/test/#library", ++ "@type": "ex:Library", ++ "ex:contains": { ++ "@id": "http://example.org/test#book", ++ "@type": "ex:Book", ++ "dc:contributor": "Writer", ++ "dc:title": "My Book", ++ "ex:contains": { ++ "@id": "http://example.org/test#chapter", ++ "@type": "ex:Chapter", ++ "dc:description": "Fun", ++ "dc:title": "Chapter One" ++ } ++ } ++ }] ++}''' ++ ++FRAME_0001_OUT_WITH_HALF_LOCAL_AND_HALF_REMOTE_CONTEXT = '''{ ++ "@context": [{ ++ "dc": "http://purl.org/dc/elements/1.1/" ++ }, "http://example.com/frame-context.json"], ++ "@graph": [{ ++ "@id": "http://example.org/test/#library", ++ "@type": "ex:Library", ++ "ex:contains": { ++ "@id": "http://example.org/test#book", ++ "@type": "ex:Book", ++ "dc:contributor": "Writer", ++ "dc:title": "My Book", ++ "ex:contains": { ++ "@id": "http://example.org/test#chapter", ++ "@type": "ex:Chapter", ++ "dc:description": "Fun", ++ "dc:title": "Chapter One" ++ } ++ } ++ }] ++}''' ++ ++ ++class TestCaseForFrame(unittest.TestCase): ++ ++ def _test_remote_context_with( ++ self, frame_doc, frame_context_doc, out_doc): ++ input_ = json.loads(FRAME_0001_IN) ++ ++ def fake_loader(url): ++ if url == 'http://example.com/frame.json': ++ return { ++ 'contextUrl': 'http://example.com/frame-context.json', ++ 'document': frame_doc, ++ 'documentUrl': url ++ } ++ elif url == 'http://example.com/frame-context.json': ++ return { ++ 'contextUrl': None, ++ 'document': frame_context_doc, ++ 'documentUrl': url ++ } ++ else: ++ raise Exception("Unknown URL: {}".format(url)) ++ ++ options = { ++ 'documentLoader': fake_loader ++ } ++ framed = jsonld.frame( ++ input_, 'http://example.com/frame.json', options=options) ++ ++ self.assertEqual(framed, json.loads(out_doc)) ++ ++ def test_remote_context_local_and_remote_context_equal(self): ++ self._test_remote_context_with( ++ FRAME_0001_FRAME, FRAME_0001_FRAME_CONTEXT, ++ FRAME_0001_OUT_WITH_LOCAL_AND_REMOTE_CONTEXT) ++ ++ def test_remote_context_remote_context_only(self): ++ self._test_remote_context_with( ++ FRAME_0001_FRAME_WITHOUT_CONTEXT, FRAME_0001_FRAME_CONTEXT, ++ FRAME_0001_OUT_WITH_REMOTE_CONTEXT) ++ ++ def test_remote_context_half_context_local_and_half_remote(self): ++ self._test_remote_context_with( ++ FRAME_0001_FRAME_WITH_PARTIAL_CONTEXT, ++ FRAME_0001_FRAME_PARTIAL_CONTEXT, ++ FRAME_0001_OUT_WITH_HALF_LOCAL_AND_HALF_REMOTE_CONTEXT) ++ ++ ++if __name__ == '__main__': ++ unittest.main() +\ No newline at end of file +-- +2.11.0 + diff --git a/pcr/python-pyld/PKGBUILD b/pcr/python-pyld/PKGBUILD new file mode 100644 index 000000000..a5f3fa50c --- /dev/null +++ b/pcr/python-pyld/PKGBUILD @@ -0,0 +1,39 @@ +# Maintainer (aur): Sven Schneider <archlinux.sandmann@googlemail.com> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - remove python2 split package +# - build dependency of 'mediagoblin' (<2.0.0) + + +pkgname=python-pyld +pkgver=1.0.5 +pkgrel=3 +pkgdesc="An implementation of the JSON-LD specification in Python" +arch=('any') +url="https://github.com/digitalbazaar/pyld" +license=('custom:BSD3') +makedepends=('python-setuptools') +source=(pyld-1.0.5.tar.gz::https://github.com/digitalbazaar/pyld/archive/refs/tags/1.0.5.tar.gz + 0001-Fixed-remote-frame-context-handling.patch) +sha512sums=('a673d953be990fde98a3b32e879e1b7941afc9d3082be6400f69223deee226047e05b0ce68bdf05844cb7e8e3142f731f7c4891b6a4986413518dbdaa2da779c' + 'd0b15814c2fe315ad3dddda8ea452229a172be060d7074b6d99ec9eaed857f2e6b715e760cbcc194f9c8a679bc929ac652df847377c6e8b4944bf77795432f19') + +prepare() { + cd "${srcdir}"/pyld-1.0.5/ + patch -p1 < "${srcdir}"/0001-Fixed-remote-frame-context-handling.patch +} + +build() { + cd "${srcdir}"/pyld-1.0.5/ + python setup.py build +} + +package() { + cd "${srcdir}"/pyld-1.0.5/ + + python setup.py install --root="${pkgdir}" -O1 + + install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE" +} diff --git a/pcr/python-soundfile/PKGBUILD b/pcr/python-soundfile/PKGBUILD new file mode 100644 index 000000000..2db88bba2 --- /dev/null +++ b/pcr/python-soundfile/PKGBUILD @@ -0,0 +1,40 @@ +# Maintainer (aur): OSAMC <https://github.com/osam-cologne/archlinux-proaudio> +# Contributor: Christopher Arndt <aur -at- chrisarndt -dot- de> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - no changes +# - build dependency of 'mediagoblin' + + +_name=soundfile +pkgname=python-soundfile +pkgver=0.11.0 +pkgrel=3 +pkgdesc='A Python library to read and write audio files using libsndfile, CFFI and NumPy' +url='https://github.com/bastibe/python-soundfile' +arch=(any) +license=(custom:BSD3) +makedepends=(python-build python-installer python-setuptools python-wheel) +depends=(python-cffi libsndfile python-numpy) +checkdepends=(python-pytest python-setuptools) +source=("https://github.com/bastibe/python-soundfile/releases/download/$pkgver/$_name-$pkgver.tar.gz") +sha256sums=('931738a1c93e8684c2d3e1d514ac63440ce827ec783ea0a2d3e4730e3dc58c18') + +build() { + cd $_name-$pkgver + python -m build --wheel --no-isolation +} + +check() { + cd $_name-$pkgver + python setup.py test +} + +package() { + cd $_name-$pkgver + python -m installer --destdir="$pkgdir" dist/*.whl + # install license + install -Dm644 LICENSE -t "$pkgdir"/usr/share/licenses/$pkgname +} diff --git a/pcr/python-sphinx4/PKGBUILD b/pcr/python-sphinx4/PKGBUILD new file mode 100644 index 000000000..e6b54b261 --- /dev/null +++ b/pcr/python-sphinx4/PKGBUILD @@ -0,0 +1,77 @@ +# Maintainer (arch): Johannes Löthberg <johannes@kyriasis.com> +# Maintainer: Daniel M. Capella <polyzen@archlinux.org> +# Contributor: Sébastien Luttringer +# Contributor: Angel Velasquez <angvp@archlinux.org> +# Contributor: Fabio Volpe <volpefabio@gmail.com> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - no changes (down-grade of 'python-sphinx') +# - build dependency of 'mediagoblin' -> jinja2<3.0.0 +# 'mediagoblin' -> 'sphinx' -> jinja2>=3.0 +# error: Jinja2 2.11.3 is installed but Jinja2>=3.0 is required by {'sphinx'} + + +pkgname=python-sphinx4 +pkgver=4.5.0 +pkgrel=1 +pkgdesc='Python documentation generator' +arch=('any') +url=http://www.sphinx-doc.org/ +license=('custom:BSD2') +provides=('python-sphinx') +conflicts=('python-sphinx') +depends=('python-babel' + 'python-docutils' + 'python-imagesize' + 'python-jinja' + 'python-packaging' + 'python-pygments' + 'python-requests' + 'python-snowballstemmer' + 'python-sphinx-alabaster-theme' + 'python-sphinxcontrib-'{{apple,dev,html}help,jsmath,qthelp,serializinghtml}) +makedepends=('python-setuptools') +# checkdepends=('cython' +# 'imagemagick' 'librsvg' +# 'python-html5lib' +# 'python-pytest' +# 'texlive-fontsextra' 'texlive-latexextra') +optdepends=('imagemagick: for ext.imgconverter' + 'texlive-latexextra: for generation of PDF documentation') +source=("https://pypi.org/packages/source/S/Sphinx/Sphinx-$pkgver.tar.gz"{,.asc}) +noextract=(Sphinx-$pkgver.tar.gz) +sha256sums=('7bf8ca9637a4ee15af412d1a1d9689fec70523a68ca9bb9127c2f3eeb344e2e6' + 'SKIP') +b2sums=('e6c46d35492c3d3068c4f97e497d33973ca86b40934578804fcec901fa89d2c52b45a7546b835b873846dd16936c1bd34a7b053aec8206c688d974671155fd56' + 'SKIP') +validpgpkeys=('8A11B79A5D0D749A66F0A030102C2C17498D6B9E' # Takeshi KOMIYA <i.tkomiya@gmail.com> + 'E9BEABB07E7B9CC3F56E62C91425F8CE5EBA0E07') # Takayuki Shimizukawa <shimizukawa@gmail.com> + +prepare() +{ + LC_ALL='en_US.UTF-8' tar xzf "${srcdir}"/Sphinx-$pkgver.tar.gz +} + +build() { + cd Sphinx-$pkgver + make build +} + +check() { + # with networking disabled + # === 26 failed, 1736 passed, 27 skipped, 23101 warnings in 193.18s (0:03:13) ==== + # with networking enabled + # === 24 failed, 1738 passed, 27 skipped, 23101 warnings in 199.94s (0:03:19) ==== + return 0 + + cd Sphinx-$pkgver + LC_ALL="en_US.UTF-8" make test +} + +package() { + cd Sphinx-$pkgver + python setup.py install --root="$pkgdir" --optimize=1 --skip-build + install -Dm644 -t "$pkgdir"/usr/share/licenses/$pkgname LICENSE +} diff --git a/pcr/python-vine1.3/PKGBUILD b/pcr/python-vine1.3/PKGBUILD new file mode 100644 index 000000000..dbe498956 --- /dev/null +++ b/pcr/python-vine1.3/PKGBUILD @@ -0,0 +1,41 @@ +# Maintainer (arch): Felix Yan <felixonmars@archlinux.org> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - down-grade of 'python-vine' +# - build dependency of 'mediagoblin' (<5.0.0a1) +# also: mediagoblin -> python-amqp2 -> python-vine<5 +# also: mediagoblin -> python-kombu4 -> python-vine<5 + + +pkgname=python-vine1.3 +pkgver=1.3.0 +pkgrel=3 +pkgdesc="Promises, promises, promises" +arch=('any') +license=('custom:BSD3') +url="https://github.com/celery/vine" +provides=(python-vine) +conflicts=(python-vine) +depends=('python-case') +makedepends=('python-setuptools') +checkdepends=('python-pytest') +source=("$pkgname-$pkgver.tar.gz::https://github.com/celery/vine/archive/v$pkgver.tar.gz") +sha512sums=('cb6ee9fcfcd7e7e23e894fce646c9e8b2300622fcc1811c1547bda90e3756de248ac01e4f812ecbb31dd1798734219d0b8f986354ae16014a7e5d949ab5d994f') + +build() { + cd "$srcdir"/vine-$pkgver + python setup.py build +} + +check() { + cd "$srcdir"/vine-$pkgver + python setup.py test +} + +package() { + cd vine-$pkgver + python setup.py install --root="$pkgdir" --optimize=1 + install -Dm644 LICENSE "$pkgdir"/usr/share/licenses/$pkgname/LICENSE +} diff --git a/pcr/python-werkzeug1/PKGBUILD b/pcr/python-werkzeug1/PKGBUILD new file mode 100644 index 000000000..db796ea29 --- /dev/null +++ b/pcr/python-werkzeug1/PKGBUILD @@ -0,0 +1,50 @@ +# Maintainer (arch): Sven-Hendrik Haase <svenstaro@gmail.com> +# Contributor: Alexander Rødseth <rodseth@gmail.com> +# Contributor: Thomas Dziedzic < gostrc at gmail > +# Contributor: Dan Serban +# Contributor: Richard Murri +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - no changes (down-grade of 'python-werkzeug') +# - build dependency of 'mediagoblin' + + +pkgname=python-werkzeug1 +pkgver=1.0.1 +pkgrel=4 +pkgdesc='Swiss Army knife of Python web development' +url='http://werkzeug.pocoo.org/' +arch=('any') +license=('custom:BSD3') +provides=('python-werkzeug') +conflicts=('python-werkzeug') +depends=('python') +makedepends=('python-setuptools') +# checkdepends=('python-pytest-timeout' 'python-requests') +source=(werkzeug-1.0.1.tar.gz::https://github.com/pallets/werkzeug/archive/1.0.1.tar.gz) +sha512sums=('ba82120fb3e96e3a1334c6452d5ba1950fc016d2d147d643bbc2168ccec496f1dea799982ae8c578167155082c0bdbda5d56a23f64b4b6865f97e90e22df022e') + +build() { + cd "werkzeug-$pkgver" + + python setup.py build +} + +check() { + cd "werkzeug-$pkgver" + + # FAILED tests/test_datastructures.py::TestFileStorage::test_save_to_pathlib_dst + # FAILED tests/test_formparser.py::TestMultiPart::test_basic - pytest.PytestUnr... + return 0 + + PYTHONPATH="$PWD/build/lib" pytest +} + +package() { + cd "werkzeug-$pkgver" + + python setup.py install --root="$pkgdir" --optimize=1 + install -Dm644 LICENSE.rst "$pkgdir/usr/share/licenses/$pkgname/LICENSE.rst" +} diff --git a/pcr/python-wtforms2/PKGBUILD b/pcr/python-wtforms2/PKGBUILD new file mode 100644 index 000000000..4048d19f9 --- /dev/null +++ b/pcr/python-wtforms2/PKGBUILD @@ -0,0 +1,44 @@ +# Maintainer (arch): Levente Polyak <anthraxx[at]archlinux[dot]org> +# Contributor: nblock <nblock [/at\] archlinux DOT us> +# Contributor: neithere <neithere at gmail> +# Contributor: mitsuse <mitsuse at gmail> +# Maintainer: bill-auger <bill-auger@programmer.net> + + +# parabola changes and rationale: +# - no changes (down-grade of 'python-wtforms') +# - build dependency of 'mediagoblin' + + +pkgname=python-wtforms2 +pkgver=2.3.3 +pkgrel=3 +pkgdesc='Flexible forms validation and rendering library for python web development' +url='https://wtforms.readthedocs.io/' +arch=('any') +license=('custom:BSD3') +provides=('python-wtforms') +conflicts=('python-wtforms') +depends=('python') +makedepends=('python-setuptools' 'python-babel' 'python-sphinx' + 'python-pallets-sphinx-themes' 'python-sphinx-issues' + 'python-sphinxcontrib-log-cabinet') +source=(wtforms-2.3.3.tar.gz::https://github.com/wtforms/wtforms/archive/refs/tags/2.3.3.tar.gz) +sha512sums=('f2b825a85f46a5eca2c8ecb7e0d1945e9697ad98c430b3043952eb5df87b77e180ac26aea0ad10c134438ef8f9d9c8d00ffc5b38a9fa413c6c95d43a681456a2') +b2sums=('96a504e5a5334086372c81f3691edc0a598d3df9bb3eecce007daae1f445930e80aeea5c943e10500b2cba24ebff16e6e89ec31c9e6a1a33c5008297bbc1b064') + +build() { + cd wtforms-2.3.3/ + python setup.py compile_catalog build + export PYTHONPATH=.. + make -C docs html SPHINXBUILD=sphinx-build +} + +package() { + cd wtforms-2.3.3/ + python setup.py install --root="${pkgdir}" -O1 + find "$pkgdir" -type f -name \*.po -delete + install -Dm 644 LICENSE.rst -t "${pkgdir}/usr/share/licenses/${pkgname}" + install -Dm 644 CHANGES.rst README.rst -t "${pkgdir}/usr/share/doc/${pkgname}" + cp -r docs/_build/html "${pkgdir}/usr/share/doc/${pkgname}/html" +} |