svn commit: r496897 - in head/www/py-aiohttp: . files
Kubilay Kocak
koobs at FreeBSD.org
Tue Mar 26 13:39:05 UTC 2019
Author: koobs
Date: Tue Mar 26 13:38:59 2019
New Revision: 496897
URL: https://svnweb.freebsd.org/changeset/ports/496897
Log:
www/py-aiohttp: Update to 3.5.4
- Drop use of cython, only needed for 'from git' builds
- Document necessary but not-yet-ported TEST_DEPENDS for our future selves
and potential contributors to see.
- Update port metadata to match upstream: pkg-desc, WWW URL, LICENSE, COMMENT
- Patch setup.py: Add necessary but missing entries to tests_require. For the
ones not yet ported, they're fetched from PyPI via setuptools when correctly
declared. Move pytest min version requirement from pytest.ini to
tests_require where it belongs, so it can be parsed and the right version
can be fetched, instead of just failing if its not the required version.
- Patch pytest.ini: Strip --cov from pytest args. We don't care about coverage
downstream, and it shouldnt be a compulsory (tests_require) dependency, but
instead an extras_require, so dont add it to TEST_DEPENDS even though it is
a port.
Changelog:
https://github.com/aio-libs/aiohttp/blob/v3.5.4/CHANGES.rst
PR: 228575
Added:
head/www/py-aiohttp/files/
head/www/py-aiohttp/files/patch-pytest.ini (contents, props changed)
head/www/py-aiohttp/files/patch-setup.py (contents, props changed)
Modified:
head/www/py-aiohttp/Makefile
head/www/py-aiohttp/distinfo
head/www/py-aiohttp/pkg-descr
Modified: head/www/py-aiohttp/Makefile
==============================================================================
--- head/www/py-aiohttp/Makefile Tue Mar 26 13:33:05 2019 (r496896)
+++ head/www/py-aiohttp/Makefile Tue Mar 26 13:38:59 2019 (r496897)
@@ -2,36 +2,50 @@
# $FreeBSD$
PORTNAME= aiohttp
-PORTVERSION= 3.1.3
+PORTVERSION= 3.5.4
CATEGORIES= www python
MASTER_SITES= CHEESESHOP
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
MAINTAINER= koobs at FreeBSD.org
-COMMENT= HTTP client/server for asyncio
+COMMENT= Async http client/server framework (asyncio)
-LICENSE= BSD2CLAUSE
+LICENSE= APACHE20
LICENSE_FILE= ${WRKSRC}/LICENSE.txt
-RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}chardet>0:textproc/py-chardet@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}multidict>0:www/py-multidict@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}yarl>0:www/py-yarl@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}async_timeout>0:devel/py-async_timeout@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}attrs>0:devel/py-attrs@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}idna_ssl>0:dns/py-idna_ssl@${PY_FLAVOR}
-TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>0:devel/py-pytest@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}pytest-mock>0:devel/py-pytest-mock@${PY_FLAVOR} \
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}attrs>=17.3.0:devel/py-attrs@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}chardet>=2.0:textproc/py-chardet@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}multidict>=4.0:www/py-multidict@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}async_timeout>=3.0:devel/py-async_timeout@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}yarl>=1.0:www/py-yarl@${PY_FLAVOR}
+
+TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>=3.8.2:devel/py-pytest@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pytest-timeout>0:devel/py-pytest-timeout@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytest-xdist>0:devel/py-pytest-xdist@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}pytest-mock>0:devel/py-pytest-mock@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}async_generator>0:devel/py-async_generator@${PY_FLAVOR} \
- ${PYTHON_PKGNAMEPREFIX}gunicorn>0:www/py-gunicorn@${PY_FLAVOR}
+ ${PYTHON_PKGNAMEPREFIX}gunicorn>0:www/py-gunicorn@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}aiodns>0:dns/py-aiodns@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}cryptography>0:security/py-cryptography@${PY_FLAVOR}
+# cryptography is only needed here until trustme is ported (which depends on it)
+# to be ported ${PYTHON_PKGNAMEPREFIX}brotlypy>0:archivers/py-brotlipy@${PY_FLAVOR}
+# to be ported ${PYTHON_PKGNAMEPREFIX}trustme>0:security/py-trustme@${PY_FLAVOR}
-USES= python:3.4+
-USE_PYTHON= autoplist distutils cython
+# Actually 3.5.3+
+USES= python:3.5+
+USE_PYTHON= autoplist distutils
+.include <bsd.port.pre.mk>
+
+.if ${PYTHON_VER} < 3.7
+RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}idna_ssl>=1.0:dns/py-idna_ssl@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}typing-extensions>=3.6.5:devel/py-typing-extensions@${PY_FLAVOR}
+.endif
+
post-install:
${STRIP_CMD} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/aiohttp/*.so
do-test:
@cd ${WRKSRC} && ${PYTHON_CMD} ${PYDISTUTILS_SETUP} test
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
Modified: head/www/py-aiohttp/distinfo
==============================================================================
--- head/www/py-aiohttp/distinfo Tue Mar 26 13:33:05 2019 (r496896)
+++ head/www/py-aiohttp/distinfo Tue Mar 26 13:38:59 2019 (r496897)
@@ -1,3 +1,3 @@
-TIMESTAMP = 1524240686
-SHA256 (aiohttp-3.1.3.tar.gz) = 9fcef0489e3335b200d31a9c1fb6ba80fdafe14cd82b971168c2f9fa1e4508ad
-SIZE (aiohttp-3.1.3.tar.gz) = 756886
+TIMESTAMP = 1553568963
+SHA256 (aiohttp-3.5.4.tar.gz) = 9c4c83f4fa1938377da32bc2d59379025ceeee8e24b89f72fcbccd8ca22dc9bf
+SIZE (aiohttp-3.5.4.tar.gz) = 1097647
Added: head/www/py-aiohttp/files/patch-pytest.ini
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/www/py-aiohttp/files/patch-pytest.ini Tue Mar 26 13:38:59 2019 (r496897)
@@ -0,0 +1,11 @@
+--- pytest.ini.orig 2019-01-12 10:13:41 UTC
++++ pytest.ini
+@@ -1,7 +1,6 @@
+ [pytest]
+-addopts = --cov=aiohttp -v -rxXs
++addopts = -v -rxXs
+ filterwarnings = error
+ junit_suite_name = aiohttp_test_suite
+ norecursedirs = dist docs build .tox .eggs
+-minversion = 3.8.2
+ testpaths = tests/
Added: head/www/py-aiohttp/files/patch-setup.py
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ head/www/py-aiohttp/files/patch-setup.py Tue Mar 26 13:38:59 2019 (r496897)
@@ -0,0 +1,16 @@
+--- setup.py.orig 2019-01-12 10:13:41 UTC
++++ setup.py
+@@ -104,9 +104,12 @@ NEEDS_PYTEST = {'pytest', 'test'}.intersection(sys.arg
+ pytest_runner = ['pytest-runner'] if NEEDS_PYTEST else []
+
+ tests_require = [
+- 'pytest', 'gunicorn',
++ 'pytest>=3.8.2', 'gunicorn',
+ 'pytest-timeout', 'async-generator',
+ 'pytest-xdist',
++ 'pytest-mock',
++ 'trustme',
++ 'brotlipy',
+ ]
+
+
Modified: head/www/py-aiohttp/pkg-descr
==============================================================================
--- head/www/py-aiohttp/pkg-descr Tue Mar 26 13:33:05 2019 (r496896)
+++ head/www/py-aiohttp/pkg-descr Tue Mar 26 13:38:59 2019 (r496897)
@@ -1,12 +1,9 @@
-HTTP client/server for Python asyncio (PEP-3156)
+Async http client/server framework
-Features:
+Key Features
- * Compression (deflate)
- * HTTP Basic Authenntication
- * Chunked Transfer Encoding
- * Connection Pooling
- * Session Cookies
- * Custom Request/Response classes
+ * Supports both client and server side of HTTP protocol.
+ * Supports both client and server Web-Sockets out-of-the-box.
+ * Provides Web-server with middlewares and pluggable routing.
-WWW: https://github.com/KeepSafe/aiohttp
+WWW: https://github.com/aio-libs/aiohttp
More information about the svn-ports-all
mailing list