summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--experimental/py3-filelock/APKBUILD31
-rw-r--r--experimental/py3-toml/APKBUILD47
-rw-r--r--experimental/py3-toml/test.toml65
-rw-r--r--user/nextcloud/APKBUILD18
-rw-r--r--user/nextcloud/nextcloud.post-upgrade55
-rw-r--r--user/py3-atomicwrites/APKBUILD7
-rw-r--r--user/py3-attrs/APKBUILD9
-rw-r--r--user/py3-docutils/APKBUILD11
-rw-r--r--user/py3-importlib_metadata/APKBUILD33
-rw-r--r--user/py3-importlib_metadata/scm.patch18
-rw-r--r--user/py3-importlib_resources/APKBUILD35
-rw-r--r--user/py3-importlib_resources/python3-provides.patch14
-rw-r--r--user/py3-more-itertools/APKBUILD13
-rw-r--r--user/py3-more-itertools/fix-test-32bit-overflow.patch25
-rw-r--r--user/py3-packaging/APKBUILD19
-rw-r--r--user/py3-packaging/test-glibc.patch10
-rw-r--r--user/py3-pillow/APKBUILD13
-rw-r--r--user/py3-pluggy/APKBUILD11
-rw-r--r--user/py3-pluggy/scm.patch24
-rw-r--r--user/py3-py/APKBUILD13
-rw-r--r--user/py3-pytest/APKBUILD12
-rw-r--r--user/py3-pytest/scm.patch19
-rw-r--r--user/py3-roman/APKBUILD7
-rw-r--r--user/py3-tox/APKBUILD2
-rw-r--r--user/py3-virtualenv/APKBUILD21
-rw-r--r--user/py3-virtualenv/python3-provides.patch8
-rw-r--r--user/py3-virtualenv/python3.patch44
-rw-r--r--user/py3-virtualenv/test-python3.6.patch96
-rw-r--r--user/py3-virtualenv/tests.patch84
-rw-r--r--user/py3-wcwidth/APKBUILD34
-rw-r--r--user/py3-wcwidth/run-tests.patch16
-rw-r--r--user/py3-zipp/APKBUILD34
-rw-r--r--user/py3-zipp/scm.patch19
-rw-r--r--user/py3-zope-hookable/APKBUILD12
34 files changed, 639 insertions, 240 deletions
diff --git a/experimental/py3-filelock/APKBUILD b/experimental/py3-filelock/APKBUILD
new file mode 100644
index 000000000..06392a74b
--- /dev/null
+++ b/experimental/py3-filelock/APKBUILD
@@ -0,0 +1,31 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer:
+pkgname=py3-filelock
+_pkgname=filelock
+_p="${_pkgname#?}"
+_p="${_pkgname%"$_p"}"
+pkgver=3.0.12
+pkgrel=0
+pkgdesc="A platform independent file lock for Python"
+url="https://pypi.python.org/pypi/filelock"
+arch="noarch"
+# Certified net clean
+license="Unlicense"
+depends="python3"
+makedepends=""
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/$_p/$_pkgname/$_pkgname-$pkgver.tar.gz"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ python3 setup.py test
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="09b8b16c12a60044a259a5d644bc8066660871104a7f4cd431431173d475b9f15744adfb8d86ec8cda69f2a1b52bd14cb8a066d70fa5e49c449bc5ee702ec2a0 py3-filelock-3.0.12.tar.gz"
diff --git a/experimental/py3-toml/APKBUILD b/experimental/py3-toml/APKBUILD
new file mode 100644
index 000000000..71bed3556
--- /dev/null
+++ b/experimental/py3-toml/APKBUILD
@@ -0,0 +1,47 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer:
+pkgname=py3-toml
+_pkgname=toml
+_p="${_pkgname#?}"
+_p="${_pkgname%"$_p"}"
+pkgver=0.10.0
+pkgrel=0
+pkgdesc="Python Library for Tom's Obvious, Minimal Language"
+url="https://pypi.python.org/pypi/toml"
+arch="noarch"
+# Certified net clean
+license="MIT"
+depends="python3"
+makedepends=""
+checkdepends="py3-pytest"
+_testver="df90d31"
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/$_p/$_pkgname/$_pkgname-$pkgver.tar.gz
+ https://dev.sick.bike/dist/$pkgname-test-$_testver.tar.gz
+ test.toml"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+unpack() {
+ default_unpack
+ cd "$builddir"
+ tar -zxf "$srcdir/$pkgname-test-$_testver.tar.gz"
+ mv toml-test-* toml-test
+
+ # This should be included in the next release
+ cp "$srcdir/test.toml" "$builddir"
+}
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ PYTHONPATH="$builddir" pytest
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="26f26c38ce9cd48305218c2c34c5a5407b00aefc25a933f044bb7be22c23cfdfa3b8cf2da952d17760c4b9038df62e405fa039cc7b63dd3e94c9c312f04f9182 py3-toml-0.10.0.tar.gz
+5c52dd75e75dd1f7ba787eaaadfebf28161aba056730b9b75e5e88745fa773195ae01c0b588d70b30f97b3c4e07e8108803ebba564f05f1f027315ff0f2ac401 py3-toml-test-df90d31.tar.gz
+47510e59f9e0bdaaf4052fc5edb570a36b8b173ed7b8e5fac52804f6619f409e545ae3c91f838dbaeefe3c7cfd1a835b699164ac631feaa61de971d2381ac246 test.toml"
diff --git a/experimental/py3-toml/test.toml b/experimental/py3-toml/test.toml
new file mode 100644
index 000000000..f0e44a89a
--- /dev/null
+++ b/experimental/py3-toml/test.toml
@@ -0,0 +1,65 @@
+# This is a TOML document. Boom.
+
+a = "C:\\Users\\n"
+
+title = "TOML Example"
+the-void = [[[[[]]]]]
+mixed = [[1, +2], ["a", "b"], [1.0, 2.0]]
+avogadro = 6.23e23
+
+[owner]
+name = "Tom \\ / Preston-Werner"
+organization = "GitHub"
+bio = "GitHub Cofounder & CEO\nLikes tater tots and beer."
+dob = 1979-05-27T07:32:00Z # First class dates? Why not?
+
+[database]
+server = "192.168.1.1"
+ports = [ 8001, 8001, 8002 ]
+connection_max = 5000
+enabled = true
+test = [["a"], ["b"], ["c"]]
+
+[servers]
+
+ # You can indent as you please. Tabs or spaces. TOML don't care.
+ [servers.alpha]
+ ip = "10.0.0.1"
+ dc = "eqdc10"
+
+ [servers.beta]
+ ip = "\u000a\u1000\u1000\u0002"
+ dc = "eqdc10"
+
+[clients]
+data = [ ["gamma", "delta"], [1, 2] ] # just an update to make sure parsers support it
+
+# Line breaks are OK when inside arrays
+hosts = [
+ "alpha",
+ "omega"
+]
+
+[[fruit]]
+ name = "apple"
+
+ [fruit.physical]
+ color = "red"
+ shape = "round"
+
+ [[fruit.variety]]
+ name = "red delicious"
+
+ #[fruit.variety]
+ # name = "granny smith"
+
+[[fruit]]
+ name = "banana"
+
+ [[fruit.variety]]
+ name = "plantain"
+
+ [[fruit.variety]]
+ name = "whatever"
+ thing=34
+ "l.mao" = 42
diff --git a/user/nextcloud/APKBUILD b/user/nextcloud/APKBUILD
index e21c3bf54..b044b12af 100644
--- a/user/nextcloud/APKBUILD
+++ b/user/nextcloud/APKBUILD
@@ -2,8 +2,8 @@
# Contributor: Leonardo Arena <rnalrd@alpinelinux.org>
# Maintainer: Max Rees <maxcrees@me.com>
pkgname=nextcloud
-pkgver=14.0.3
-pkgrel=1
+pkgver=14.0.13
+pkgrel=0
pkgdesc="Self-hosted file sync and groupware server"
url="https://nextcloud.com"
arch="noarch"
@@ -171,7 +171,7 @@ doc() {
initscript() {
pkgdesc="Init script that runs Nextcloud with php-fpm"
- depends="$pkgname php7-fpm"
+ depends="$pkgname=$pkgver-r$pkgrel php7-fpm"
install -Dm 644 "$srcdir/fpm-pool.conf" "$subpkgdir/etc/php/php-fpm.d/$pkgname.conf"
install -Dm 644 "$srcdir/$pkgname.confd" "$subpkgdir/etc/conf.d/$pkgname"
@@ -185,25 +185,25 @@ initscript() {
pgsql() {
pkgdesc="Nextcloud PostgreSQL support"
- depends="$pkgname php7-pgsql php7-pdo_pgsql"
+ depends="$pkgname=$pkgver-r$pkgrel php7-pgsql php7-pdo_pgsql"
mkdir -p "$subpkgdir"
}
sqlite() {
pkgdesc="Nextcloud SQLite support"
- depends="$pkgname php7-sqlite3 php7-pdo_sqlite"
+ depends="$pkgname=$pkgver-r$pkgrel php7-sqlite3 php7-pdo_sqlite"
mkdir -p "$subpkgdir"
}
mysql() {
pkgdesc="Nextcloud MySQL support"
- depends="$pkgname php7-pdo_mysql"
+ depends="$pkgname=$pkgver-r$pkgrel php7-pdo_mysql"
mkdir -p "$subpkgdir"
}
_default_apps() {
pkgdesc="Nextcloud default apps"
- depends="$pkgname"
+ depends="$pkgname=$pkgver-r$pkgrel"
local path; for path in $pkgdir/$_appsdir/*; do
if grep -q '<default_enable\s*/>' "$path/appinfo/info.xml"; then
@@ -237,13 +237,13 @@ _package_app() {
systemtags) app_deps="$pkgname-workflowengine";;
esac
- depends="$pkgname $php_deps $app_deps"
+ depends="$pkgname=$pkgver-r$pkgrel $php_deps $app_deps"
mkdir -p "$subpkgdir/$_appsdir"
mv "$pkgdir/$_appsdir/$appname" "$subpkgdir/$_appsdir/"
}
-sha512sums="f3b8bf22f4c17e038352a9f6c202d79220b5d9a19a2148c486cf22558d626095ab5c35f02ddf64292165e34572e199c72a44318b5c19a6dd5113f0ee0f6e937f nextcloud-14.0.3.zip
+sha512sums="ea6d688fb23bc6b6fbaa8b4c5bf8bdb8732825cf43bc3a09df288d128218b1ef5d743f042ec36d5e4813f0e0349524c2ff426abc1786cb77902ca20a3db7c392 nextcloud-14.0.13.zip
63690b8d8ffe6d4896c5b666aa9d493b501aa3e171c6557e7a003599049f0d36f266a2a257a9535dea055bca1e84208b219c6cd5e4ecd70dd064e1dd1007203a nextcloud14-dont-chmod.patch
aef3c92497d738d6968e0f0b0d415b4953500db24ae14af41ef972665cf7eff00cb6c53dc953845fdbb389c3c965a75b8b14b9247513c05cf4130fe1cfc61731 dont-update-htaccess.patch
d2100a837fef1eeae5f706650ab4c985d9e00f61efa5526ef76c7c1f5811c3906eb6c3c13c151eff9677a0c303faab64411a5a84d6792728bc520d2c618d7d5b disable-integrity-check-as-default.patch
diff --git a/user/nextcloud/nextcloud.post-upgrade b/user/nextcloud/nextcloud.post-upgrade
index e4ad291ac..8c48296ad 100644
--- a/user/nextcloud/nextcloud.post-upgrade
+++ b/user/nextcloud/nextcloud.post-upgrade
@@ -3,6 +3,59 @@
ver_new="$1"
ver_old="$2"
+maj_new="${ver_new%%.*}"
+maj_old="${ver_old%%.*}"
+maj_diff="$((maj_new - maj_old))"
+
+if [ "$(apk version -t "$ver_old" "14.0.13-r0")" = "<" ]; then
+ cat >&2 <<-EOF
+ *
+ * Some of Nextcloud's versions may be out of sync.
+ * You can check by running:
+ *
+ * apk info -v | grep '^nextcloud-.*-$ver_old'
+ EOF
+fi
+
+if [ "$maj_diff" -lt 0 ]; then
+ cat >&2 <<-EOF
+ *
+ * Warning: Nextcloud does not support downgrading major versions.
+ * Only run "occ upgrade" if you have skipped major versions
+ * and are in the middle of fixing that!
+ *
+ EOF
+ exit 0
+fi
+
+if [ "$maj_diff" -gt 1 ]; then
+ cat >&2 <<-EOF
+ *
+ * Warning: Nextcloud does not support skipping major versions.
+ * Try the following instead:
+ *
+ EOF
+
+ maj_old="$((maj_old + 1))"
+ while [ "$maj_old" -lt "$maj_new" ]; do
+ cat >&2 <<-EOF
+ * apk add nextcloud~$maj_old
+ * occ upgrade
+ EOF
+ maj_old="$((maj_old + 1))"
+ done
+ cat >&2 <<-EOF
+ * apk add nextcloud
+ * occ upgrade
+ *
+ EOF
+ exit 0
+fi
+
if [ "${ver_new%-r*}" != "${ver_old%-r*}" ]; then
- echo '* Run "occ upgrade" to finish upgrade of your NextCloud instance!' >&2
+ cat >&2 <<-EOF
+ *
+ * Run "occ upgrade" to finish upgrade of your Nextcloud instance!
+ *
+ EOF
fi
diff --git a/user/py3-atomicwrites/APKBUILD b/user/py3-atomicwrites/APKBUILD
index 06dc535c1..4605ecca8 100644
--- a/user/py3-atomicwrites/APKBUILD
+++ b/user/py3-atomicwrites/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Max Rees <maxcrees@me.com>
pkgname=py3-atomicwrites
_pkgname=atomicwrites
-pkgver=1.2.1
+pkgver=1.3.0
pkgrel=0
pkgdesc="Powerful Python library for atomic file writes"
url="https://pypi.org/project/atomicwrites/"
@@ -17,18 +17,15 @@ source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- cd "$builddir"
python3 setup.py build
}
check() {
- cd "$builddir"
PYTHONPATH="$builddir/build/lib:$PYTHONPATH" pytest
}
package() {
- cd "$builddir"
python3 setup.py install --prefix=/usr --root="$pkgdir"
}
-sha512sums="4df7ee97e0817a80378b273ced310b8ad88eb6ced93a594a6e3dc38ad1e7208226fde01b6d282f85583c57a50859e82c85bacaae8a7c64fce55e6965f74b12c5 py3-atomicwrites-1.2.1.tar.gz"
+sha512sums="9b619b622f4509c2a41ad340f91bd6e74f238cf9a35f4662fa70f1f957a78069cb89f9bf16f8da70a597bc43a0c6c4fdea6afd0d157364a53a2fa5d8f4272a61 py3-atomicwrites-1.3.0.tar.gz"
diff --git a/user/py3-attrs/APKBUILD b/user/py3-attrs/APKBUILD
index ec2bb62c3..0131140b4 100644
--- a/user/py3-attrs/APKBUILD
+++ b/user/py3-attrs/APKBUILD
@@ -1,7 +1,7 @@
# Contributor: Jean-Louis Fuchs <ganwell@fangorn.ch>
# Maintainer: Max Rees <maxcrees@me.com>
pkgname=py3-attrs
-pkgver=18.2.0
+pkgver=19.1.0
pkgrel=0
pkgdesc="Python classes without boilerplate"
url="https://www.attrs.org"
@@ -11,23 +11,20 @@ options="!check" # Circular dependency with py3-pytest. Passes on x86_64
license="MIT"
depends="python3"
makedepends="python3-dev"
-#checkdepends="py3-pytest py3-hypothesis py3-six"
+#checkdepends="py3-pytest py3-hypothesis py3-six py3-zope-interface"
source="$pkgname-$pkgver.tar.gz::https://github.com/python-attrs/attrs/archive/$pkgver.tar.gz"
builddir="$srcdir/attrs-$pkgver"
build() {
- cd "$builddir"
python3 setup.py build
}
check() {
- cd "$builddir"
pytest
}
package() {
- cd "$builddir"
python3 setup.py install --prefix=/usr --root="$pkgdir"
}
-sha512sums="01bcd8d492f0b7e64ae42e311b0e443d2b365d98021d8c15f8003da084f48cd20456c12defd734d3386979bb69ac2bebafa1d14692c6dad69b084929992b2c2d py3-attrs-18.2.0.tar.gz"
+sha512sums="c7c13d1aa2c8f8b5459cda02dee8f311a22e3d198bda3d4c5508e6e1914004e53388d149fea61358784f28cebf8e712f7807018586eeaa87d31199085e59675a py3-attrs-19.1.0.tar.gz"
diff --git a/user/py3-docutils/APKBUILD b/user/py3-docutils/APKBUILD
index 30e60456d..c07253ad7 100644
--- a/user/py3-docutils/APKBUILD
+++ b/user/py3-docutils/APKBUILD
@@ -4,21 +4,20 @@ pkgname=py3-docutils
_pkgname=docutils
_p="${_pkgname#?}"
_p="${_pkgname%"$_p"}"
-pkgver=0.14
+pkgver=0.15.2
pkgrel=0
pkgdesc="Documentation utilities for Python"
url="https://pypi.python.org/pypi/docutils"
arch="noarch"
# Certified net clean
license="Custom"
-depends="python3 py3-pillow py3-roman"
+depends="python3 py3-pillow"
makedepends="python3-dev"
subpackages="$pkgname-doc"
source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/$_p/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- cd "$builddir"
python3 setup.py build
}
@@ -28,7 +27,6 @@ check() {
}
package() {
- cd "$builddir"
python3 setup.py install --prefix=/usr --root="$pkgdir"
# Remove .py extension from executable files.
@@ -38,8 +36,9 @@ package() {
}
doc() {
- cd "$builddir"
+ default_doc
+ cd "$builddir"
local docdir="$subpkgdir/usr/share/doc/$pkgname"
mkdir -p "$docdir"
cp -R docs/* "$docdir"
@@ -51,4 +50,4 @@ doc() {
cp licenses/* "$licdir"
}
-sha512sums="1ed72c2ef7d2ca38d1c6f3154b7986ea46f599d9bd826405a5257fdd7740c8626957d6298aa95fb0edea8a24515de22f1ad9b2ecbd59341a1ab7a2bab30f500c py3-docutils-0.14.tar.gz"
+sha512sums="b4528c7eba5a27e40f290a9df6894c277d11906d02f6842b9f364b29af9aa1e46f6008c87e4355947bcfa9f2db1cae9f38cf9fa7b8008ba45fa6d685922003a6 py3-docutils-0.15.2.tar.gz"
diff --git a/user/py3-importlib_metadata/APKBUILD b/user/py3-importlib_metadata/APKBUILD
new file mode 100644
index 000000000..d642738f9
--- /dev/null
+++ b/user/py3-importlib_metadata/APKBUILD
@@ -0,0 +1,33 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=py3-importlib_metadata
+_pkgname=importlib_metadata
+_p="${_pkgname#?}"
+_p="${_pkgname%"$_p"}"
+pkgver=0.19
+pkgrel=0
+pkgdesc="Python package metadata accessor"
+url="https://pypi.python.org/pypi/importlib_metadata"
+arch="noarch"
+# Certified net clean
+license="Apache-2.0"
+depends="python3 py3-importlib_resources py3-zipp"
+makedepends=""
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/$_p/$_pkgname/$_pkgname-$pkgver.tar.gz
+ scm.patch"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ python3 setup.py test
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="2d0126e7430804b2295ec159778082806957cb86b5c7408c38064cc7c7e62229d382778284a5a231925ab336a7cc6da8e705f6bd7ae6da66f11acd1229bda17b py3-importlib_metadata-0.19.tar.gz
+5aa0967a0c9e5c27434689586e51fcf3898a52f904d7ec92cf1eda15810da04b837ac0f5caea32d9f41733b13e826b06a1064b6f15e14c5fac5b2c4b6fd950c8 scm.patch"
diff --git a/user/py3-importlib_metadata/scm.patch b/user/py3-importlib_metadata/scm.patch
new file mode 100644
index 000000000..1c33ab959
--- /dev/null
+++ b/user/py3-importlib_metadata/scm.patch
@@ -0,0 +1,18 @@
+--- importlib_metadata-0.19/setup.cfg 2019-07-28 13:52:18.000000000 -0400
++++ importlib_metadata-0.19/setup.cfg 2019-08-06 05:14:29.910183441 -0400
+@@ -16,7 +16,7 @@ classifiers =
+
+ [options]
+ python_requires = >=2.7,!=3.0,!=3.1,!=3.2,!=3.3
+-setup_requires = setuptools-scm
++setup_requires =
+ install_requires =
+ zipp>=0.5
+ pathlib2; python_version=='3.4.*' or python_version < '3'
+--- importlib_metadata-0.19/setup.py 2019-07-28 13:51:04.000000000 -0400
++++ importlib_metadata-0.19/setup.py 2019-08-06 05:14:08.670183361 -0400
+@@ -1,3 +1,3 @@
+ from setuptools import setup
+
+-setup(use_scm_version=True)
++setup(version='0.19')
diff --git a/user/py3-importlib_resources/APKBUILD b/user/py3-importlib_resources/APKBUILD
new file mode 100644
index 000000000..4c6ffa7d4
--- /dev/null
+++ b/user/py3-importlib_resources/APKBUILD
@@ -0,0 +1,35 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+# FIXME: drop after python3 >= 3.7.0
+pkgname=py3-importlib_resources
+_pkgname=importlib_resources
+_p="${_pkgname#?}"
+_p="${_pkgname%"$_p"}"
+pkgver=1.0.2
+pkgrel=0
+pkgdesc="Backport of Python 3.7's importlib.resources"
+url="https://pypi.python.org/pypi/importlib_resources"
+arch="noarch"
+# Certified net clean
+license="Apache-2.0"
+depends="python3"
+makedepends=""
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/$_p/$_pkgname/$_pkgname-$pkgver.tar.gz
+ python3-provides.patch"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ rm "$builddir"/importlib_resources/_py2.py
+ python3 setup.py test
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="50bfc5130a2c9c9354efef1cd7132e805ed0f13467ba67172f83e11d907212bef3957aeef51fd904b73996c8280008d99c918637956a470448dfd67ef4807f82 py3-importlib_resources-1.0.2.tar.gz
+8e91cfa2e7c59041a038d44c9de559ed757f789515c89d18a786e30bf2f387dddab004e66261b1f33b0ca142013b6b203cfcc990d2757c610302a23d0a9387ab python3-provides.patch"
diff --git a/user/py3-importlib_resources/python3-provides.patch b/user/py3-importlib_resources/python3-provides.patch
new file mode 100644
index 000000000..bd1a1606e
--- /dev/null
+++ b/user/py3-importlib_resources/python3-provides.patch
@@ -0,0 +1,14 @@
+Our python3 package provides these, and it'll choke if it has no network access
+while trying to determine if they're installed
+
+--- importlib_resources-1.0.2/setup.cfg
++++ importlib_resources-1.0.2/setup.cfg
+@@ -18,8 +18,6 @@ classifiers =
+ [options]
+ python_requires = >=2.7,!=3.0,!=3.1,!=3.2,!=3.3
+ setup_requires =
+- setuptools
+- wheel
+ install_requires =
+ pathlib2; python_version < '3'
+ typing; python_version < '3.5'
diff --git a/user/py3-more-itertools/APKBUILD b/user/py3-more-itertools/APKBUILD
index 3bd3d229d..14fca656c 100644
--- a/user/py3-more-itertools/APKBUILD
+++ b/user/py3-more-itertools/APKBUILD
@@ -2,33 +2,28 @@
# Maintainer: Max Rees <maxcrees@me.com>
pkgname=py3-more-itertools
_pkgname=more-itertools
-pkgver=4.3.0
+pkgver=7.2.0
pkgrel=0
pkgdesc="More routines for operating on iterables, beyond itertools"
url="https://pypi.org/project/more-itertools"
arch="noarch"
# Certified net clean
license="MIT"
-depends="python3 py3-six"
+depends="python3"
makedepends=""
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/m/$_pkgname/$_pkgname-$pkgver.tar.gz
- fix-test-32bit-overflow.patch"
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/m/$_pkgname/$_pkgname-$pkgver.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- cd "$builddir"
python3 setup.py build
}
check() {
- cd "$builddir"
python3 -m unittest discover -v
}
package() {
- cd "$builddir"
python3 setup.py install --prefix=/usr --root="$pkgdir"
}
-sha512sums="5fee3d99fd796b0f0f6b5aa99a8db22e219d3dced71fef6f4b16286fe67061dce280389b3638c55c6e5f6c828ef1286cee845d76a6861d2af66d90e995d5aa4e py3-more-itertools-4.3.0.tar.gz
-3b9e6b7e8d5abd1f7edf27e8501576612cc6c84deed10f14ca8321c42a77c6d4db1b109d900a4474c2c66b6d6397da8c9d70d8df0f64813d895ca3faf9f4db08 fix-test-32bit-overflow.patch"
+sha512sums="840b535bf5f2fc3cf9c4c0106f977f0b178049b95e5ccb6cf51b5e68d0a6afd77a577bb0d0af25ea8cdf4b7dd2ce9691754ba6c773a196f8b10dba5d7683c6b0 py3-more-itertools-7.2.0.tar.gz"
diff --git a/user/py3-more-itertools/fix-test-32bit-overflow.patch b/user/py3-more-itertools/fix-test-32bit-overflow.patch
deleted file mode 100644
index 1ca1775f1..000000000
--- a/user/py3-more-itertools/fix-test-32bit-overflow.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 27a6dd8272e4fc1b74f0e8dd3746764ae8901523 Mon Sep 17 00:00:00 2001
-From: Efraim Flashner <efraim@flashner.co.il>
-Date: Thu, 11 Oct 2018 20:36:05 +0300
-Subject: [PATCH] Fix overflow error on 32-bit hardware
-
-Addresses bug#234
----
- more_itertools/tests/test_more.py | 4 ++--
- 1 file changed, 2 insertions(+), 2 deletions(-)
-
-diff --git a/more_itertools/tests/test_more.py b/more_itertools/tests/test_more.py
-index f94170b..5fbeec3 100644
---- a/more_itertools/tests/test_more.py
-+++ b/more_itertools/tests/test_more.py
-@@ -2016,8 +2016,8 @@ def test_custom_pred(self):
- self.assertEqual(actual, expected)
-
- def test_efficient_reversal(self):
-- iterable = range(10 ** 10) # Is efficiently reversible
-- target = 10 ** 10 - 2
-+ iterable = range(9 ** 9) # Is efficiently reversible
-+ target = 9 ** 9 - 2
- pred = lambda x: x == target # Find-able from the right
- actual = next(mi.rlocate(iterable, pred))
- self.assertEqual(actual, target)
diff --git a/user/py3-packaging/APKBUILD b/user/py3-packaging/APKBUILD
index 87527b822..1bd5298dd 100644
--- a/user/py3-packaging/APKBUILD
+++ b/user/py3-packaging/APKBUILD
@@ -4,32 +4,33 @@ pkgname=py3-packaging
_pkgname=packaging
_p="${_pkgname#?}"
_p="${_pkgname%"$_p"}"
-pkgver=19.0
+pkgver=19.1
pkgrel=0
pkgdesc="Core utilities for Python packages"
url="https://pypi.python.org/pypi/packaging"
arch="noarch"
+options="!check" # Cyclic dependency with py3-pytest.
+# Certified net clean
license="Apache-2.0 AND BSD-2-Clause"
-depends="python3"
+depends="python3 py3-attrs py3-pyparsing py3-six"
makedepends="python3-dev"
-checkdepends="py3-pytest py3-pretend py3-pyparsing"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/$_p/$_pkgname/$_pkgname-$pkgver.tar.gz"
+#checkdepends="py3-pytest py3-pretend"
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/$_p/$_pkgname/$_pkgname-$pkgver.tar.gz
+ test-glibc.patch"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- cd "$builddir"
python3 setup.py build
}
check() {
- cd "$builddir/tests"
- python3 -m pytest
+ PYTHONPATH="$builddir" pytest
}
package() {
- cd "$builddir"
python3 setup.py install --prefix=/usr --root="$pkgdir"
}
-sha512sums="aa55b6fbca764e7de2992e294b7be9dc90b25f88b64ba0cd2d1d93042402d4360b4c2cdc134a94b083da0c0bc83de8fa7185c0856bcc96fa25828c10a793fba7 py3-packaging-19.0.tar.gz"
+sha512sums="1dec7f49c325801eb85b11432f8a316d228bb1881a04ac546f5556d60f5fa33f8085d0e91bbd5abfeb30bfcb05ec0532ed75a977dc996e256b4dc8c27c10e79b py3-packaging-19.1.tar.gz
+d67e8f3eae1b7571edf705ba532e1c9a6dc4c241cb01dfeda8addb587c2039114b0e21e73140369e4a30d0256a2073ac877737458cb95006029e7ce44d0bae93 test-glibc.patch"
diff --git a/user/py3-packaging/test-glibc.patch b/user/py3-packaging/test-glibc.patch
new file mode 100644
index 000000000..b8c3f2fee
--- /dev/null
+++ b/user/py3-packaging/test-glibc.patch
@@ -0,0 +1,10 @@
+--- packaging-19.1/tests/test_tags.py 2019-07-20 01:03:21.000000000 -0400
++++ packaging-19.1/tests/test_tags.py 2019-08-06 09:08:16.490018542 -0400
+@@ -474,6 +474,7 @@ def test_glibc_version_string(version_st
+ assert tags._glibc_version_string() is None
+
+
++@pytest.mark.skip(reason="musl is not glibc")
+ def test_have_compatible_glibc(monkeypatch):
+ if platform.system() == "Linux":
+ # Assuming no one is running this test with a version of glibc released in
diff --git a/user/py3-pillow/APKBUILD b/user/py3-pillow/APKBUILD
index 24583fbc7..48d9a22dd 100644
--- a/user/py3-pillow/APKBUILD
+++ b/user/py3-pillow/APKBUILD
@@ -4,7 +4,7 @@ pkgname=py3-pillow
_pkgname=Pillow
_p="${_pkgname#?}"
_p="${_pkgname%"$_p"}"
-pkgver=5.3.0
+pkgver=6.1.0
pkgrel=0
pkgdesc="A Python Imaging Library"
url="https://pypi.org/project/Pillow"
@@ -15,9 +15,9 @@ depends="py3-olefile python3"
makedepends="python3-dev freetype-dev libjpeg-turbo-dev libwebp-dev
tiff-dev libpng-dev lcms2-dev openjpeg-dev zlib-dev"
subpackages="$pkgname-doc"
-_scripts_rev="f578e2c"
+_scripts_rev="b24479c"
source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/P/$_pkgname/$_pkgname-$pkgver.tar.gz
- $pkgname-scripts-$_scripts_rev.tar.gz::https://github.com/python-pillow/pillow-scripts/archive/$_scripts_rev.tar.gz"
+ https://dev.sick.bike/dist/$pkgname-scripts-$_scripts_rev.tar.gz"
builddir="$srcdir/$_pkgname-$pkgver"
unpack() {
@@ -26,19 +26,16 @@ unpack() {
}
build() {
- cd "$builddir"
# zlib resides in lib
export CFLAGS="$CFLAGS -L/lib"
python3 setup.py build
}
check() {
- cd "$builddir"
PYTHONPATH="$(find 'build' -name 'lib.*')" python3 selftest.py
}
package() {
- cd "$builddir"
python3 setup.py install --prefix=/usr --root="$pkgdir"
}
@@ -53,5 +50,5 @@ doc() {
install -Dm644 LICENSE "$subpkgdir/usr/share/licenses/$pkgname/LICENSE"
}
-sha512sums="0596207069a87a645f7694b19ea5100d753dbb7553148fa5982b073e4e1163b5bd83ddf8b1c783a90a0b718576f08d3f15352f2742d46a425cf639de2409c4ab py3-pillow-5.3.0.tar.gz
-1a2e6dc45127b3f0b706d5be4fdc8ddeb09a9e046a182eb48239572e1bdc62d1b1f1a1f11ef1f1f23766aaac1b498556cc9a9cf11d3b943c9f2834c9b41612e0 py3-pillow-scripts-f578e2c.tar.gz"
+sha512sums="6e9404eaa6a7d01642b9201a0733eb208422070993aa214691f549e261350e0baad6eb2bcde6d5edfa47c232d89457b9185de24e55e9536dde7790124ea34a0f py3-pillow-6.1.0.tar.gz
+c01e83a7cef6653a33f60acbcbc737f0d40ff0dbc792ce0b2ce52f21092d3071845830fa0f64b27a1c5e679c53df57e0ec2e89867ee717f938d4e6f19db77790 py3-pillow-scripts-b24479c.tar.gz"
diff --git a/user/py3-pluggy/APKBUILD b/user/py3-pluggy/APKBUILD
index 552956797..2604e972f 100644
--- a/user/py3-pluggy/APKBUILD
+++ b/user/py3-pluggy/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Max Rees <maxcrees@me.com>
pkgname=py3-pluggy
_pkgname=pluggy
-pkgver=0.7.1
+pkgver=0.12.0
pkgrel=0
pkgdesc="Plugin management and hook calling for Python"
url="https://pypi.python.org/pypi/pluggy"
@@ -10,7 +10,7 @@ arch="noarch"
options="!check" # Cyclic dependency with py3-pytest. Passes on x86_64
# Certified net clean
license="MIT"
-depends="python3"
+depends="python3 py3-importlib_metadata"
makedepends="python3-dev"
#checkdepends="py3-pytest"
source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/p/$_pkgname/$_pkgname-$pkgver.tar.gz
@@ -18,19 +18,16 @@ source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- cd "$builddir"
python3 setup.py build
}
check() {
- cd "$builddir"
PYTHONPATH="$builddir/build/lib:$PYTHONPATH" pytest testing
}
package() {
- cd "$builddir"
python3 setup.py install --prefix=/usr --root="$pkgdir"
}
-sha512sums="e19f6c1b3f2e711df1c8b075a2b802751afd218f1b692f08b2434c01d71c402331ff8c937550fbdfece2098f6d6856422d485f193e188916b365ded2e4087697 py3-pluggy-0.7.1.tar.gz
-6b805de27cf1255e0279e076fbcb94ef0494ab0d8bc73999ab45afdb026108d249b730932e28b723b9a0d63aba1746da6e72901cebb9ab6bd91ea3b5e9e64d3b scm.patch"
+sha512sums="a3a64caefc797334b73b0614e467613b99909037a62dcbfbb0cf917788ee8d12af4f43d7c371634ac6eb6f32a5aa08e51aa8179e70b5998d4d055cd7f535129f py3-pluggy-0.12.0.tar.gz
+7a5c4d3fe2d57b079c2589c2ca1b75d96ff2561cf5bfb7991b81828dd6de04f6b126633f248bb71a5f165174184792b5857f9c7678e694dd68e0ba2b1ffef627 scm.patch"
diff --git a/user/py3-pluggy/scm.patch b/user/py3-pluggy/scm.patch
index 5e42a72e4..733e8d297 100644
--- a/user/py3-pluggy/scm.patch
+++ b/user/py3-pluggy/scm.patch
@@ -1,14 +1,12 @@
---- pluggy-0.7.1/setup.py 2018-07-28 22:45:12.000000000 +0000
-+++ pluggy-0.7.1/setup.py 2018-10-11 04:54:18.590233336 +0000
-@@ -24,10 +24,7 @@
- name='pluggy',
- description='plugin and hook calling mechanisms for python',
+--- pluggy-0.12.0/setup.py 2019-05-27 16:19:53.000000000 -0400
++++ pluggy-0.12.0/setup.py 2019-08-06 04:29:39.930173285 -0400
+@@ -29,8 +29,7 @@ def main():
+ name="pluggy",
+ description="plugin and hook calling mechanisms for python",
long_description=long_description,
-- use_scm_version={
-- 'write_to': 'pluggy/_version.py',
-- },
-- setup_requires=['setuptools-scm'],
-+ version='0.7.1',
- license='MIT license',
- platforms=['unix', 'linux', 'osx', 'win32'],
- author='Holger Krekel',
+- use_scm_version={"write_to": "src/pluggy/_version.py"},
+- setup_requires=["setuptools-scm"],
++ version='0.12.0',
+ license="MIT license",
+ platforms=["unix", "linux", "osx", "win32"],
+ author="Holger Krekel",
diff --git a/user/py3-py/APKBUILD b/user/py3-py/APKBUILD
index a38f90caf..72f6ee4c1 100644
--- a/user/py3-py/APKBUILD
+++ b/user/py3-py/APKBUILD
@@ -2,35 +2,34 @@
# Maintainer: Max Rees <maxcrees@me.com>
pkgname=py3-py
_pkgname=py
-pkgver=1.7.0
+_p=p
+pkgver=1.8.0
pkgrel=0
pkgdesc="A python library with cross-python path, ini-parsing, io, code, log facilities"
url="https://pypi.python.org/project/py"
arch="noarch"
-options="!checkroot !check" # Circular dependency with py3-pytest. Passes on x86_64
+options="!check" # Circular dependency with py3-pytest.
+# And nobody seems to care about it. (some failures with pytest deprecation)
# Certified net clean
license="MIT"
depends="python3"
makedepends="python3-dev"
#checkdepends="py3-pytest"
-source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/${_pkgname:0:1}/$_pkgname/$_pkgname-$pkgver.tar.gz
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/$_p/$_pkgname/$_pkgname-$pkgver.tar.gz
scm.patch"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- cd "$builddir"
python3 setup.py build
}
check() {
- cd "$builddir"
PYTHONPATH="$builddir/build/lib:$PYTHONPATH" pytest
}
package() {
- cd "$builddir"
python3 setup.py install --prefix=/usr --root="$pkgdir"
}
-sha512sums="c522be926c5716d866cb800eaa398a55518889da207a00575212254642eda2107e68c286e72b99cf94ecec1c8dcde1f763e2d8f296ab7e7673ae2671e70d5548 py3-py-1.7.0.tar.gz
+sha512sums="37b9a66229b834a034d9ba6769a46addf098380b494c1eb863607a52d00b7ec5b9157dd7ac6ffc52535a05006648c775c78716d7f85cf44966065b225be6e95b py3-py-1.8.0.tar.gz
08a1645832d46ffab5b1fb2e7ef480c55a0d4ac266d53857d9ddae5c46ba11232b04bc0cb035bb9e3d08f9d439e844a623340882080555206811fe0624c61bc1 scm.patch"
diff --git a/user/py3-pytest/APKBUILD b/user/py3-pytest/APKBUILD
index 6965bf73a..63616f400 100644
--- a/user/py3-pytest/APKBUILD
+++ b/user/py3-pytest/APKBUILD
@@ -2,16 +2,16 @@
# Maintainer: Max Rees <maxcrees@me.com>
pkgname=py3-pytest
_pkgname=pytest
-pkgver=3.9.1
+pkgver=5.0.1
pkgrel=0
pkgdesc="A python test library"
url="https://pypi.python.org/pypi/pytest"
arch="noarch"
-options="!checkroot !check" # Cyclic dependency with itself. Passes on x86_64
+options="!check" # Cyclic dependency with itself. Passes on x86_64
# Certified net clean
license="MIT"
depends="python3 py3-atomicwrites py3-attrs py3-more-itertools
- py3-pluggy py3-py py3-six"
+ py3-packaging py3-pluggy py3-py py3-six py3-wcwidth"
makedepends="python3-dev"
#checkdepends="py3-pytest py3-hypothesis"
source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/p/$_pkgname/$_pkgname-$pkgver.tar.gz
@@ -19,12 +19,10 @@ source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- cd "$builddir"
python3 setup.py build
}
check() {
- cd "$builddir"
# You would think you could get away with "python3 -m pytest" but no...
PYTHONPATH="$builddir/build/lib:$PYTHONPATH" pytest
}
@@ -34,5 +32,5 @@ package() {
python3 setup.py install --prefix=/usr --root="$pkgdir"
}
-sha512sums="0a3a6842fb549c8223f0ddf56ca28eb200a21a4cadf382fbcd2ab930c58d57c55c77d5869e84bd79bf611d959cba6d363ace3b5fd33d5ce44259fd580b1a9369 py3-pytest-3.9.1.tar.gz
-7fc2cd75f55caa661fb4bed578955511ee38cd28a25fcb405c29eb7227a382c33c0fc52a4eeb8950315793dfc0eb02235b140415deebd113f24df1a320b25959 scm.patch"
+sha512sums="92f5feb263a8708ef6cb8f4565688620b6bfeaef23536cfd24b9bc09515e37fdecd7fa8bcaeeb0775c0be1d8e9dcbd9a56e52f97fb13dc98116efc0056f870db py3-pytest-5.0.1.tar.gz
+c671edd19cf5bfe1502e2c42a1b301205417c5d4f564a8dd02ddad354021b0a8b4d01cc0f5d7c36b13d56583c18cd6a1db736b7d49634c0fb2d1159b429dafda scm.patch"
diff --git a/user/py3-pytest/scm.patch b/user/py3-pytest/scm.patch
index 799eefac0..ef45821cd 100644
--- a/user/py3-pytest/scm.patch
+++ b/user/py3-pytest/scm.patch
@@ -1,13 +1,12 @@
---- pytest-3.9.1/setup.py 2018-10-16 15:46:37.000000000 -0400
-+++ pytest-3.9.1/setup.py 2018-10-22 19:32:49.261592294 -0400
-@@ -25,8 +25,8 @@ if "_PYTEST_SETUP_SKIP_PLUGGY_DEP" not i
-
+--- pytest-5.0.1/setup.py 2019-07-05 07:12:59.000000000 -0400
++++ pytest-5.0.1/setup.py 2019-08-06 08:09:07.890005143 -0400
+@@ -19,7 +19,8 @@ INSTALL_REQUIRES = [
def main():
setup(
-- use_scm_version={"write_to": "src/_pytest/_version.py"},
-- setup_requires=["setuptools-scm", "setuptools>=30.3"],
-+ setup_requires=["setuptools>=30.3"],
-+ version="3.9.1",
+ use_scm_version={"write_to": "src/_pytest/_version.py"},
+- setup_requires=["setuptools-scm", "setuptools>=40.0"],
++ setup_requires=["setuptools>=40.0"],
++ version="5.0.1",
package_dir={"": "src"},
- install_requires=INSTALL_REQUIRES,
- )
+ # fmt: off
+ extras_require={
diff --git a/user/py3-roman/APKBUILD b/user/py3-roman/APKBUILD
index 0105c986a..068e00963 100644
--- a/user/py3-roman/APKBUILD
+++ b/user/py3-roman/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Max Rees <maxcrees@me.com>
pkgname=py3-roman
_pkgname=roman
-pkgver=3.0
+pkgver=3.2
pkgrel=0
pkgdesc="Python library to convert integers to Roman numerals"
url="https://pypi.org/project/roman/"
@@ -15,19 +15,16 @@ source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- cd "$builddir"
# Do not bootstrap - tries to access web
python3 setup.py build
}
check() {
- cd "$builddir"
python3 setup.py test
}
package() {
- cd "$builddir"
python3 setup.py install --prefix=/usr --root="$pkgdir"
}
-sha512sums="468a4ac7188cdf3155698f260de5ecc5bb2072c120c79d046618ac07b6de6f777cfc69661f2e0df4ca66359bb20169d22599b3f342edaa48f8575bdc17b40c08 py3-roman-3.0.tar.gz"
+sha512sums="142904551745c8b7874d52c8d04f483b0c18b18ba8bc3d3a51fcf509e09b3a3f8a28d0b88bdd8282957bf3d698b1bab86de7fb4808cde9b0e5cfb910deca35ab py3-roman-3.2.tar.gz"
diff --git a/user/py3-tox/APKBUILD b/user/py3-tox/APKBUILD
index fe36077c9..5447ee9d6 100644
--- a/user/py3-tox/APKBUILD
+++ b/user/py3-tox/APKBUILD
@@ -1,5 +1,5 @@
# Contributor: Max Rees <maxcrees@me.com>
-# Maintainer: Max Rees <maxcrees@me.com>
+# Maintainer:
pkgname=py3-tox
_pkgname=tox
_p="${_pkgname#?}"
diff --git a/user/py3-virtualenv/APKBUILD b/user/py3-virtualenv/APKBUILD
index d78f6e7e7..bd609fdf2 100644
--- a/user/py3-virtualenv/APKBUILD
+++ b/user/py3-virtualenv/APKBUILD
@@ -2,37 +2,36 @@
# Maintainer: Max Rees <maxcrees@me.com>
pkgname=py3-virtualenv
_pkgname=virtualenv
-pkgver=16.0.0
+pkgver=16.7.2
pkgrel=0
pkgdesc="Virtual Python Environment builder"
url="https://pypi.org/project/virtualenv"
arch="noarch"
-options="net"
+# Certified net clean
license="MIT"
depends="python3"
makedepends="python3-dev"
checkdepends="py3-pytest cmd:which"
source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/v/$_pkgname/$_pkgname-$pkgver.tar.gz
- test-python3.6.patch"
+ python3-provides.patch
+ python3.patch
+ tests.patch"
builddir="$srcdir/$_pkgname-$pkgver"
build() {
- cd "$builddir"
python3 setup.py build
sed -ie "s/env python$/env python3/" virtualenv.py
}
check() {
- cd "$builddir"
- python3 setup.py test
- cd tests
- ./test_activate.sh
+ PIP_NO_INDEX=true PYTHONPATH="$builddir" pytest
}
package() {
- cd "$builddir"
python3 setup.py install --prefix=/usr --root="$pkgdir"
}
-sha512sums="43bc37f1da1b65e9a2df5a8813a801f27f5783b7211219d441d1c2132789917df42fdc0aba1d5ec51e3d6f7583af9474d59c1f532d8880c8c325ccc96e73b3df py3-virtualenv-16.0.0.tar.gz
-9c68dcda515dfc974433c9a68d81be0b028a7967eebb1b6d1d912c3859c7925fe970f1668ac9e406768de91ed32b27b3b8ea7a4939f8adc7a09e1bf904df10b9 test-python3.6.patch"
+sha512sums="63467cd2e577d0d56b5fb3529d9fb12a64f08f756a5f1310487f0d64da8452c4743872c6b620984e0877e0a98b3080efc6bb8c58cc64c4f120da8e67e91044cc py3-virtualenv-16.7.2.tar.gz
+22f05b9c3d35339a28f50f7a01d81df082a00609712a5c38b92fe5d5c98ea077ad76c7d5a5072968105622d06e40897a34878133a4b5fd895a62d1e0d9a8928e python3-provides.patch
+f5e2a5036c7dfa124b71914981c46955466cb718392a90a4d8536dde4c153eb9cf3a8539c5cf870bb820b6e518c8b781025b825e11924ea4533890fa31e5a951 python3.patch
+a5545b1dd3b0465233b983fd90cdfbd4514350e32a7d312107b9cfa83c8755f961bd483796a48697c9938fd44a60171c4368aa3f4b2760be8d2d8e053f719529 tests.patch"
diff --git a/user/py3-virtualenv/python3-provides.patch b/user/py3-virtualenv/python3-provides.patch
new file mode 100644
index 000000000..b3a7f11fc
--- /dev/null
+++ b/user/py3-virtualenv/python3-provides.patch
@@ -0,0 +1,8 @@
+--- virtualenv-16.7.2/setup.py 2019-07-26 05:13:47.000000000 -0400
++++ virtualenv-16.7.2/setup.py 2019-08-06 10:12:36.010033115 -0400
+@@ -13,4 +13,4 @@ def get_version():
+ raise RuntimeError("Unable to find version string.")
+
+
+-setup(version=get_version(), py_modules=["virtualenv"], setup_requires=["setuptools >= 40.6.3"])
++setup(version=get_version(), py_modules=["virtualenv"], setup_requires=[])
diff --git a/user/py3-virtualenv/python3.patch b/user/py3-virtualenv/python3.patch
new file mode 100644
index 000000000..f1550f49c
--- /dev/null
+++ b/user/py3-virtualenv/python3.patch
@@ -0,0 +1,44 @@
+--- virtualenv-16.7.2/virtualenv.py
++++ virtualenv-16.7.2/virtualenv.py
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env python
++#!/usr/bin/env python3
+ """Create a "virtual" Python installation"""
+
+ # fmt: off
+@@ -82,7 +82,7 @@ DEFAULT_CONFIG_FILE = os.path.join(DEFAU
+ if IS_PYPY:
+ EXPECTED_EXE = "pypy"
+ else:
+- EXPECTED_EXE = "python"
++ EXPECTED_EXE = "python3"
+
+ # Return a mapping of version -> Python executable
+ # Only provided for Windows, where the information in the registry is used
+--- virtualenv-16.7.2/tasks/update_embedded.py
++++ virtualenv-16.7.2/tasks/update_embedded.py
+@@ -1,4 +1,4 @@
+-#!/usr/bin/env python
++#!/usr/bin/env python3
+ """
+ Helper script to rebuild virtualenv.py from virtualenv_support
+ """
+--- virtualenv-16.7.2/tests/test_virtualenv.py
++++ virtualenv-16.7.2/tests/test_virtualenv.py
+@@ -288,14 +288,14 @@ def test_resolve_interpreter_with_invali
+ def test_activate_after_future_statements():
+ """Should insert activation line after last future statement"""
+ script = [
+- "#!/usr/bin/env python",
++ "#!/usr/bin/env python3",
+ "from __future__ import with_statement",
+ "from __future__ import print_function",
+ 'print("Hello, world!")',
+ ]
+ out = virtualenv.relative_script(script)
+ assert out == [
+- "#!/usr/bin/env python",
++ "#!/usr/bin/env python3",
+ "from __future__ import with_statement",
+ "from __future__ import print_function",
+ "",
diff --git a/user/py3-virtualenv/test-python3.6.patch b/user/py3-virtualenv/test-python3.6.patch
deleted file mode 100644
index 782aca2c5..000000000
--- a/user/py3-virtualenv/test-python3.6.patch
+++ /dev/null
@@ -1,96 +0,0 @@
---- virtualenv-15.1.0/tests/test_activate_output.expected 2016-11-16 02:39:30.000000000 +0000
-+++ virtualenv-15.1.0/tests/test_activate_output.expected 2018-01-10 23:31:17.840000000 +0000
-@@ -1,2 +1,4 @@
--New python executable in /tmp/test_virtualenv_activate.venv/bin/python
-+Using base prefix '/usr'
-+New python executable in /tmp/test_virtualenv_activate.venv/bin/python3
-+Also creating executable in /tmp/test_virtualenv_activate.venv/bin/python
- Installing setuptools, pip, wheel...done.
---- virtualenv-15.1.0/tests/test_virtualenv.py 2016-11-16 02:39:30.000000000 +0000
-+++ virtualenv-15.1.0/tests/test_virtualenv.py 2018-01-11 03:40:22.270000000 +0000
-@@ -58,13 +58,13 @@
- def test_activate_after_future_statements():
- """Should insert activation line after last future statement"""
- script = [
-- '#!/usr/bin/env python',
-+ '#!/usr/bin/env python3',
- 'from __future__ import with_statement',
- 'from __future__ import print_function',
- 'print("Hello, world!")'
- ]
- assert virtualenv.relative_script(script) == [
-- '#!/usr/bin/env python',
-+ '#!/usr/bin/env python3',
- 'from __future__ import with_statement',
- 'from __future__ import print_function',
- '',
-@@ -110,7 +110,7 @@
- if virtualenv.is_win:
- required_executables = ['python.exe', 'pythonw.exe']
- else:
-- py_exe_no_version = 'python'
-+ py_exe_no_version = 'python3'
- py_exe_version_major = 'python%s' % sys.version_info[0]
- py_exe_version_major_minor = 'python%s.%s' % (
- sys.version_info[0], sys.version_info[1])
---- virtualenv-15.1.0/tests/test_activate.sh 2016-11-16 02:39:30.000000000 +0000
-+++ virtualenv-15.1.0/tests/test_activate.sh 2018-01-11 03:49:05.070000000 +0000
-@@ -19,7 +19,7 @@
- echo "$0: Created virtualenv ${TESTENV}." 1>&2
-
- echo "$0: Activating ${TESTENV}..." 1>&2
--. ${TESTENV}/bin/activate
-+PS1="${PS1:-}" . ${TESTENV}/bin/activate
- echo "$0: Activated ${TESTENV}." 1>&2
-
- echo "$0: Checking value of \$VIRTUAL_ENV..." 1>&2
-@@ -31,14 +31,14 @@
-
- echo "$0: \$VIRTUAL_ENV = \"${VIRTUAL_ENV}\" -- OK." 1>&2
-
--echo "$0: Checking output of \$(which python)..." 1>&2
-+echo "$0: Checking output of \$(which python3)..." 1>&2
-
--if [ "$(which python)" != "${TESTENV}/bin/python" ]; then
-- echo "$0: Expected \$(which python) to return \"${TESTENV}/bin/python\"; actual value: \"$(which python)\"!" 1>&2
-+if [ "$(which python3)" != "${TESTENV}/bin/python3" ]; then
-+ echo "$0: Expected \$(which python3) to return \"${TESTENV}/bin/python3\"; actual value: \"$(which python3)\"!" 1>&2
- exit 3
- fi
-
--echo "$0: Output of \$(which python) is OK." 1>&2
-+echo "$0: Output of \$(which python3) is OK." 1>&2
-
- echo "$0: Checking output of \$(which pip)..." 1>&2
-
-@@ -60,7 +60,7 @@
-
- echo "$0: Executing a simple Python program..." 1>&2
-
--TESTENV=${TESTENV} python <<__END__
-+TESTENV=${TESTENV} python3 <<__END__
- import os, sys
-
- expected_site_packages = os.path.join(os.environ['TESTENV'], 'lib','python%s' % sys.version[:3], 'site-packages')
---- virtualenv-16.0.0/setup.py 2018-05-16 19:36:07.000000000 -0400
-+++ virtualenv-16.0.0/setup.py 2018-10-22 20:56:04.691681656 -0400
-@@ -33,7 +33,7 @@ try:
- },
- 'zip_safe': False,
- 'cmdclass': {'test': PyTest},
-- 'tests_require': ['pytest', 'mock'],
-+ 'tests_require': ['pytest'],
- }
- except ImportError:
- from distutils.core import setup
---- virtualenv-16.0.0/tests/test_virtualenv.py 2018-05-16 19:36:07.000000000 -0400
-+++ virtualenv-16.0.0/tests/test_virtualenv.py 2018-10-22 20:56:38.771682266 -0400
-@@ -7,7 +7,7 @@ import tempfile
- import pytest
- import platform # noqa
-
--from mock import patch, Mock
-+from unittest.mock import patch, Mock
-
-
- def test_version():
diff --git a/user/py3-virtualenv/tests.patch b/user/py3-virtualenv/tests.patch
new file mode 100644
index 000000000..98619b1c1
--- /dev/null
+++ b/user/py3-virtualenv/tests.patch
@@ -0,0 +1,84 @@
+--- virtualenv-16.7.2/tests/test_virtualenv.py
++++ virtualenv-16.7.2/tests/test_virtualenv.py
+@@ -10,9 +10,7 @@ import tempfile
+ import textwrap
+ import zipfile
+
+-import pypiserver
+ import pytest
+-import pytest_localserver.http
+ import six
+
+ import virtualenv
+@@ -346,7 +344,7 @@ def test_install_python_bin():
+ py_exe_no_version = "python"
+ py_exe_version_major = "python%s" % sys.version_info[0]
+ py_exe_version_major_minor = "python{}.{}".format(sys.version_info[0], sys.version_info[1])
+- required_executables = [py_exe_no_version, py_exe_version_major, py_exe_version_major_minor]
++ required_executables = [py_exe_version_major, py_exe_version_major_minor]
+
+ for pth in required_executables:
+ assert os.path.exists(os.path.join(bin_dir, pth)), "%s should exist in bin_dir" % pth
+@@ -489,6 +487,7 @@ def test_create_environment_in_dir_with_
+ virtualenv.create_environment(ve_path)
+
+
++@pytest.mark.skip(reason="pypiserver et al are not packaged")
+ def test_create_environment_with_local_https_pypi(tmpdir):
+ """Create virtual environment using local PyPI listening https with
+ certificate signed with custom certificate authority
+@@ -643,7 +642,7 @@ def test_create_environment_with_old_pip
+ def test_license_builtin(clean_python):
+ _, bin_dir, _ = clean_python
+ proc = subprocess.Popen(
+- (os.path.join(bin_dir, "python"), "-c", "license()"), stdin=subprocess.PIPE, stdout=subprocess.PIPE
++ (os.path.join(bin_dir, "python3"), "-c", "license()"), stdin=subprocess.PIPE, stdout=subprocess.PIPE
+ )
+ out_b, _ = proc.communicate(b"q\n")
+ out = out_b.decode()
+--- virtualenv-16.7.2/tests/test_zipapp.py
++++ virtualenv-16.7.2/tests/test_zipapp.py
+@@ -55,6 +55,7 @@ def test_zipapp_basic_invocation(call_zi
+ _test_basic_invocation(call_zipapp, tmp_path)
+
+
++@pytest.mark.skip(reason="requires network access")
+ def test_wheel_basic_invocation(call_wheel, tmp_path):
+ _test_basic_invocation(call_wheel, tmp_path)
+
+@@ -91,6 +91,7 @@ def _test_invocation_dash_p(make_env, tm
+ assert_venv_looks_good(venv, [expected], "python{}".format(".exe" if virtualenv.IS_WIN else ""))
+
+
++@pytest.mark.skip(reason="no python2 available")
+ def test_zipapp_invocation_dash_p(call_zipapp, tmp_path):
+ _test_invocation_dash_p(call_zipapp, tmp_path)
+
+@@ -95,6 +95,6 @@ def test_zipapp_invocation_dash_p(call_z
+ _test_invocation_dash_p(call_zipapp, tmp_path)
+
+
+-@pytest.mark.skipif(sys.platform == "win32" and six.PY2, reason="no python 3 for windows on CI")
++@pytest.mark.skip(reason="no python2 available")
+ def test_wheel_invocation_dash_p(call_wheel, tmp_path):
+ _test_invocation_dash_p(call_wheel, tmp_path)
+--- virtualenv-16.7.2/tests/test_from_source.py
++++ virtualenv-16.7.2/tests/test_from_source.py
+@@ -40,6 +40,7 @@ def test_use_from_source_sdist(sdist, tm
+ )
+
+
++@pytest.mark.skip(reason="requires network access")
+ def test_use_from_wheel(tmp_path, extracted_wheel, clean_python, monkeypatch, call_subprocess):
+ """test that we can create a virtual environment by feeding to a clean python the wheels content"""
+ virtualenv_file = extracted_wheel / "virtualenv.py"
+--- virtualenv-16.7.2/tests/test_source_content.py
++++ virtualenv-16.7.2/tests/test_source_content.py
+@@ -41,6 +41,7 @@ def test_sdist_contains(sdist):
+ assert not extra, " | ".join(extra)
+
+
++@pytest.mark.skip(reason="requires network access")
+ def test_wheel_contains(extracted_wheel):
+ content = set(extracted_wheel.iterdir())
+
diff --git a/user/py3-wcwidth/APKBUILD b/user/py3-wcwidth/APKBUILD
new file mode 100644
index 000000000..620c158e7
--- /dev/null
+++ b/user/py3-wcwidth/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+pkgname=py3-wcwidth
+_pkgname=wcwidth
+_p="${_pkgname#?}"
+_p="${_pkgname%"$_p"}"
+pkgver=0.1.7
+pkgrel=0
+pkgdesc="Wide-character terminal column cell measurement"
+url="https://pypi.python.org/pypi/wcwidth"
+arch="noarch"
+# Certified net clean
+license="MIT"
+depends="python3"
+makedepends=""
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/$_p/$_pkgname/$_pkgname-$pkgver.tar.gz
+ run-tests.patch"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ PYTHONPATH="$builddir" python3 "$builddir/wcwidth/tests/test_core.py"
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+
+}
+
+sha512sums="5bc9625fbd10721a50a3ac7d7f91012cca8e4f83533f265cf56890498bc52a53b155c82e67d6bc5523a5593c8d7992a1dec2a0f590318170eddf987c56f9c368 py3-wcwidth-0.1.7.tar.gz
+f221823b0a7c70e45dd4cba806db5b463425e067f12395ec88370f884a652b1b3959a52d57b830dfe25229afb2d5ea9d8bd97c33c8a97766953f8458997c07f8 run-tests.patch"
diff --git a/user/py3-wcwidth/run-tests.patch b/user/py3-wcwidth/run-tests.patch
new file mode 100644
index 000000000..8d62e0962
--- /dev/null
+++ b/user/py3-wcwidth/run-tests.patch
@@ -0,0 +1,16 @@
+--- wcwidth-0.1.7/wcwidth/tests/test_core.py 2016-07-02 00:13:27.000000000 -0400
++++ wcwidth-0.1.7/wcwidth/tests/test_core.py 2019-08-06 08:38:15.420011741 -0400
+@@ -136,3 +136,13 @@ def test_combining_spacing():
+ # verify,
+ assert length_each == expect_length_each
+ assert length_phrase == expect_length_phrase
++
++if __name__ == "__main__":
++ test_hello_jp()
++ test_wcswidth_substr()
++ test_null_width_0()
++ test_control_c0_width_negative_1()
++ test_combining_width_negative_1()
++ test_combining_cafe()
++ test_combining_enclosing()
++ test_combining_spacing()
diff --git a/user/py3-zipp/APKBUILD b/user/py3-zipp/APKBUILD
new file mode 100644
index 000000000..ba2673027
--- /dev/null
+++ b/user/py3-zipp/APKBUILD
@@ -0,0 +1,34 @@
+# Contributor: Max Rees <maxcrees@me.com>
+# Maintainer: Max Rees <maxcrees@me.com>
+# FIXME: drop after python3 >= 3.8.0
+pkgname=py3-zipp
+_pkgname=zipp
+_p="${_pkgname#?}"
+_p="${_pkgname%"$_p"}"
+pkgver=0.5.2
+pkgrel=0
+pkgdesc="Backport of Python 3.7's zip.Path"
+url="https://pypi.python.org/pypi/zipp"
+arch="noarch"
+# Certified net clean
+license="MIT"
+depends="python3"
+makedepends=""
+source="$pkgname-$pkgver.tar.gz::https://files.pythonhosted.org/packages/source/$_p/$_pkgname/$_pkgname-$pkgver.tar.gz
+ scm.patch"
+builddir="$srcdir/$_pkgname-$pkgver"
+
+build() {
+ python3 setup.py build
+}
+
+check() {
+ python3 setup.py test
+}
+
+package() {
+ python3 setup.py install --prefix=/usr --root="$pkgdir"
+}
+
+sha512sums="8c84b620844315ab1f1aa3c5bb29dcdf1271a0139198b5c3d6aa31ecb9a86f0dcef963819403d971ae0461c737312c064572c57ecf32d73dc973a5f69cf0375c py3-zipp-0.5.2.tar.gz
+7e9061e3ba0e3ded95633f1baa1438f7bb7ea32cecd423001bcbafdfad93aca5bfe0a444035e41b31aeea66b31c86b22854b4f18b2cbbfda356986a2433ca677 scm.patch"
diff --git a/user/py3-zipp/scm.patch b/user/py3-zipp/scm.patch
new file mode 100644
index 000000000..b7d0f690e
--- /dev/null
+++ b/user/py3-zipp/scm.patch
@@ -0,0 +1,19 @@
+--- zipp-0.5.2/setup.cfg 2019-07-07 17:14:00.000000000 -0400
++++ zipp-0.5.2/setup.cfg 2019-08-06 05:03:34.500180967 -0400
+@@ -22,7 +22,7 @@ packages = find:
+ include_package_data = true
+ python_requires = >=2.7
+ install_requires =
+-setup_requires = setuptools_scm >= 1.15.0
++setup_requires =
+
+ [options.extras_require]
+ testing =
+--- zipp-0.5.2/setup.py 2019-07-07 17:13:42.000000000 -0400
++++ zipp-0.5.2/setup.py 2019-08-06 05:03:01.970180844 -0400
+@@ -3,4 +3,4 @@
+ import setuptools
+
+ if __name__ == "__main__":
+- setuptools.setup(use_scm_version=True)
++ setuptools.setup(version='0.5.2')
diff --git a/user/py3-zope-hookable/APKBUILD b/user/py3-zope-hookable/APKBUILD
index 454d1c46e..dcda3dde3 100644
--- a/user/py3-zope-hookable/APKBUILD
+++ b/user/py3-zope-hookable/APKBUILD
@@ -3,25 +3,27 @@
pkgname=py3-zope-hookable
_pkgname=zope.hookable
pkgver=4.2.0
-pkgrel=0
+pkgrel=1
pkgdesc="A library that provides an interface for hookable functions"
url="https://github.com/zopefoundation/zope.hookable"
arch="all"
-options="!check" # needs zope.testing
+# Certified net clean
license="ZPL-2.1"
depends="python3"
-makedepends="python3-dev py3-tox coverage"
+makedepends="python3-dev"
subpackages=""
source="$_pkgname-$pkgver.tar.gz::https://github.com/zopefoundation/$_pkgname/archive/$pkgver.tar.gz"
builddir="$srcdir"/$_pkgname-$pkgver
build() {
- cd "$builddir"
python3 setup.py build
}
+check() {
+ python3 setup.py test
+}
+
package() {
- cd "$builddir"
python3 setup.py install --prefix=/usr --root="$pkgdir"
}