summaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
authoradam <adam>2017-06-24 06:47:58 +0000
committeradam <adam>2017-06-24 06:47:58 +0000
commitde4623e11894e78ed404055c5c7f5fac3ca35f49 (patch)
treee7da193947b523a7b1e137930e14527518e17ea4 /devel
parent2c0baa774b25244181cb6cf05d889c46dacf13db (diff)
downloadpkgsrc-de4623e11894e78ed404055c5c7f5fac3ca35f49.tar.gz
uvloop is a fast, drop-in replacement of the built-in asyncio event loop.
uvloop and asyncio, combined with the power of async/await in Python 3.5, makes it easier than ever to write high-performance networking code in Python. uvloop makes asyncio fast. In fact, it is at least 2x faster than nodejs, gevent, as well as any other Python asynchronous framework. The performance of uvloop-based asyncio is close to that of Go programs.
Diffstat (limited to 'devel')
-rw-r--r--devel/Makefile3
-rw-r--r--devel/py-uvloop/DESCR8
-rw-r--r--devel/py-uvloop/Makefile29
-rw-r--r--devel/py-uvloop/PLIST68
-rw-r--r--devel/py-uvloop/distinfo7
-rw-r--r--devel/py-uvloop/patches/patch-setup.py15
6 files changed, 129 insertions, 1 deletions
diff --git a/devel/Makefile b/devel/Makefile
index 3c8cd42d5b6..5dc8e3a492a 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.2449 2017/06/23 23:20:07 markd Exp $
+# $NetBSD: Makefile,v 1.2450 2017/06/24 06:47:58 adam Exp $
#
COMMENT= Development utilities
@@ -2053,6 +2053,7 @@ SUBDIR+= py-unittest2py3k
SUBDIR+= py-urwid
SUBDIR+= py-usb
SUBDIR+= py-uuid
+SUBDIR+= py-uvloop
SUBDIR+= py-vcversioner
SUBDIR+= py-vine
SUBDIR+= py-virtualenv
diff --git a/devel/py-uvloop/DESCR b/devel/py-uvloop/DESCR
new file mode 100644
index 00000000000..67982a9ad69
--- /dev/null
+++ b/devel/py-uvloop/DESCR
@@ -0,0 +1,8 @@
+uvloop is a fast, drop-in replacement of the built-in asyncio event loop.
+
+uvloop and asyncio, combined with the power of async/await in Python 3.5,
+makes it easier than ever to write high-performance networking code in Python.
+
+uvloop makes asyncio fast. In fact, it is at least 2x faster than nodejs,
+gevent, as well as any other Python asynchronous framework. The performance
+of uvloop-based asyncio is close to that of Go programs.
diff --git a/devel/py-uvloop/Makefile b/devel/py-uvloop/Makefile
new file mode 100644
index 00000000000..780682c59d2
--- /dev/null
+++ b/devel/py-uvloop/Makefile
@@ -0,0 +1,29 @@
+# $NetBSD: Makefile,v 1.1 2017/06/24 06:47:58 adam Exp $
+
+DISTNAME= uvloop-0.8.0
+PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
+CATEGORIES= devel
+MASTER_SITES= ${MASTER_SITE_PYPI:=u/uvloop/}
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= https://github.com/MagicStack/uvloop
+COMMENT= Fast implementation of asyncio event loop on top of libuv
+LICENSE= mit AND apache-2.0
+
+BUILD_DEPENDS+= ${PYPKGPREFIX}-cython-[0-9]*:../../devel/py-cython
+#BUILD_DEPENDS+= ${PYPKGPREFIX}-setuptools_scm-[0-9]*:../../devel/py-setuptools_scm
+# TEST_DEPENDS
+
+PYTHON_VERSIONS_ACCEPTED= 36 35
+
+USE_LANGUAGES= c
+
+#post-install:
+# cd ${DESTDIR}${PREFIX}/bin && \
+# ${MV} py.test py.test-${PYVERSSUFFIX} && \
+# ${MV} pytest pytest-${PYVERSSUFFIX} || ${TRUE}
+
+.include "../../devel/libuv/buildlink3.mk"
+#.include "../../lang/python/application.mk"
+.include "../../lang/python/egg.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/devel/py-uvloop/PLIST b/devel/py-uvloop/PLIST
new file mode 100644
index 00000000000..87e41713980
--- /dev/null
+++ b/devel/py-uvloop/PLIST
@@ -0,0 +1,68 @@
+@comment $NetBSD: PLIST,v 1.1 2017/06/24 06:47:58 adam Exp $
+${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
+${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
+${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
+${PYSITELIB}/${EGG_INFODIR}/top_level.txt
+${PYSITELIB}/uvloop/__init__.py
+${PYSITELIB}/uvloop/__init__.pyc
+${PYSITELIB}/uvloop/__init__.pyo
+${PYSITELIB}/uvloop/_noop.py
+${PYSITELIB}/uvloop/_noop.pyc
+${PYSITELIB}/uvloop/_noop.pyo
+${PYSITELIB}/uvloop/_patch.py
+${PYSITELIB}/uvloop/_patch.pyc
+${PYSITELIB}/uvloop/_patch.pyo
+${PYSITELIB}/uvloop/_testbase.py
+${PYSITELIB}/uvloop/_testbase.pyc
+${PYSITELIB}/uvloop/_testbase.pyo
+${PYSITELIB}/uvloop/cbhandles.pxd
+${PYSITELIB}/uvloop/cbhandles.pyx
+${PYSITELIB}/uvloop/chain_futs.pyx
+${PYSITELIB}/uvloop/dns.pyx
+${PYSITELIB}/uvloop/errors.pyx
+${PYSITELIB}/uvloop/future.pyx
+${PYSITELIB}/uvloop/handles/async_.pxd
+${PYSITELIB}/uvloop/handles/async_.pyx
+${PYSITELIB}/uvloop/handles/basetransport.pxd
+${PYSITELIB}/uvloop/handles/basetransport.pyx
+${PYSITELIB}/uvloop/handles/check.pxd
+${PYSITELIB}/uvloop/handles/check.pyx
+${PYSITELIB}/uvloop/handles/handle.pxd
+${PYSITELIB}/uvloop/handles/handle.pyx
+${PYSITELIB}/uvloop/handles/idle.pxd
+${PYSITELIB}/uvloop/handles/idle.pyx
+${PYSITELIB}/uvloop/handles/pipe.pxd
+${PYSITELIB}/uvloop/handles/pipe.pyx
+${PYSITELIB}/uvloop/handles/poll.pxd
+${PYSITELIB}/uvloop/handles/poll.pyx
+${PYSITELIB}/uvloop/handles/process.pxd
+${PYSITELIB}/uvloop/handles/process.pyx
+${PYSITELIB}/uvloop/handles/stream.pxd
+${PYSITELIB}/uvloop/handles/stream.pyx
+${PYSITELIB}/uvloop/handles/streamserver.pxd
+${PYSITELIB}/uvloop/handles/streamserver.pyx
+${PYSITELIB}/uvloop/handles/tcp.pxd
+${PYSITELIB}/uvloop/handles/tcp.pyx
+${PYSITELIB}/uvloop/handles/timer.pxd
+${PYSITELIB}/uvloop/handles/timer.pyx
+${PYSITELIB}/uvloop/handles/udp.pxd
+${PYSITELIB}/uvloop/handles/udp.pyx
+${PYSITELIB}/uvloop/includes/__init__.py
+${PYSITELIB}/uvloop/includes/__init__.pyc
+${PYSITELIB}/uvloop/includes/__init__.pyo
+${PYSITELIB}/uvloop/includes/compat.h
+${PYSITELIB}/uvloop/includes/consts.pxi
+${PYSITELIB}/uvloop/includes/debug.h
+${PYSITELIB}/uvloop/includes/debug.pxd
+${PYSITELIB}/uvloop/includes/python.pxd
+${PYSITELIB}/uvloop/includes/stdlib.pxi
+${PYSITELIB}/uvloop/includes/system.pxd
+${PYSITELIB}/uvloop/includes/uv.pxd
+${PYSITELIB}/uvloop/loop.c
+${PYSITELIB}/uvloop/loop.pxd
+${PYSITELIB}/uvloop/loop.pyx
+${PYSITELIB}/uvloop/loop.so
+${PYSITELIB}/uvloop/request.pxd
+${PYSITELIB}/uvloop/request.pyx
+${PYSITELIB}/uvloop/server.pxd
+${PYSITELIB}/uvloop/server.pyx
diff --git a/devel/py-uvloop/distinfo b/devel/py-uvloop/distinfo
new file mode 100644
index 00000000000..cc81a971bb6
--- /dev/null
+++ b/devel/py-uvloop/distinfo
@@ -0,0 +1,7 @@
+$NetBSD: distinfo,v 1.1 2017/06/24 06:47:58 adam Exp $
+
+SHA1 (uvloop-0.8.0.tar.gz) = 40b34525963ef411e3672f6fb6b14fda74831f5a
+RMD160 (uvloop-0.8.0.tar.gz) = 029d7eec10d0fb9df7ec9dce4e4fa4ae1376fbd8
+SHA512 (uvloop-0.8.0.tar.gz) = 58fc8c7b372893a0d3ef257efb4d1c8165e05dbd0946fba54735490d543d858ae0cb9ce69b98452424d8461d74b898ea92825ddd4fc3436ecf00a4de5b95231a
+Size (uvloop-0.8.0.tar.gz) = 1720356 bytes
+SHA1 (patch-setup.py) = 5c554660825c3e3d0ee883b40d04453f9cc56cc5
diff --git a/devel/py-uvloop/patches/patch-setup.py b/devel/py-uvloop/patches/patch-setup.py
new file mode 100644
index 00000000000..2679642c74d
--- /dev/null
+++ b/devel/py-uvloop/patches/patch-setup.py
@@ -0,0 +1,15 @@
+$NetBSD: patch-setup.py,v 1.1 2017/06/24 06:47:59 adam Exp $
+
+Use external libuv.
+
+--- setup.py.orig 2017-06-24 06:13:59.000000000 +0000
++++ setup.py
+@@ -81,7 +81,7 @@ class uvloop_build_ext(build_ext):
+
+ def initialize_options(self):
+ super().initialize_options()
+- self.use_system_libuv = False
++ self.use_system_libuv = True
+ self.cython_always = False
+ self.cython_annotate = None
+ self.cython_directives = None