this is a work in progress update to py-gevent 1.0.1
changes:
- big internal changes.
libev instead of libeventextra
libcares as (optional) dns resolver
- html docs and examples
it is work in progress because some tests fail.
gevent users could give this a spin.
20/120 tests failed in 05:04
2/120 expected failures
- /usr/local/bin/python2.7 -u -m monkey_test test_ssl.py
- /usr/local/bin/python2.7 -u -m monkey_test --Event test_ssl.py
18/120 unexpected failures
- /usr/local/bin/python2.7 -u -m monkey_test test_threading_local.py
- /usr/local/bin/python2.7 -u -m monkey_test --Event test_urllib2.py
- /usr/local/bin/python2.7 -u test__server_pywsgi.py
- /usr/local/bin/python2.7 -u -m monkey_test test_urllib2.py
- /usr/local/bin/python2.7 -u test__example_echoserver.py
- /usr/local/bin/python2.7 -u -m monkey_test --Event test_httpservers.py
- /usr/local/bin/python2.7 -u -m monkey_test test_httpservers.py
- /usr/local/bin/python2.7 -u test_close_backend_fd.py
- /usr/local/bin/python2.7 -u test__destroy.py
- /usr/local/bin/python2.7 -u test__doctests.py
- /usr/local/bin/python2.7 -u -m monkey_test --Event test_threading_local.py
- /usr/local/bin/python2.7 -u test_ares_timeout.py
- /usr/local/bin/python2.7 -u -m monkey_test --Event test_socket.py
- /usr/local/bin/python2.7 -u test__pywsgi.py
- /usr/local/bin/python2.7 -u test__queue.py
- /usr/local/bin/python2.7 -u -m monkey_test --Event test_threading.py
- /usr/local/bin/python2.7 -u -m monkey_test test_socket.py
- /usr/local/bin/python2.7 -u -m monkey_test test_threading.py
-f
--
real programmers use "copy com1 program.zip" and whistle.
Index: Makefile
===================================================================
RCS file: /cvs/ports/devel/py-gevent/Makefile,v
retrieving revision 1.3
diff -u -p -u -p -r1.3 Makefile
--- Makefile 11 Mar 2013 10:50:25 -0000 1.3
+++ Makefile 27 Sep 2014 17:33:04 -0000
@@ -2,10 +2,9 @@
COMMENT = network library for easy and scalable concurrency
-MODPY_EGG_VERSION = 0.13.7
+MODPY_EGG_VERSION = 1.0.1
DISTNAME = gevent-${MODPY_EGG_VERSION}
PKGNAME = py-${DISTNAME}
-REVISION = 0
CATEGORIES = devel
HOMEPAGE = http://www.gevent.org/
@@ -18,11 +17,35 @@ MASTER_SITES = ${MASTER_SITE_PYPI:=g/gev
MODULES = lang/python
MODPY_SETUPTOOLS = Yes
-MODPY_DISTUTILS_BUILD= build --build-base=${WRKSRC} \
- -I${LOCALBASE}/include -L${LOCALBASE}/lib
-LIB_DEPENDS = devel/libeventextra
-WANTLIB = ${MODPY_WANTLIB} event eventextra pthread
+BUILD_DEPENDS = textproc/py-sphinx
+LIB_DEPENDS = net/libcares \
+ devel/libev
RUN_DEPENDS = devel/py-greenlet
+TEST_DEPENDS = lang/python-tests
+
+WANTLIB = ${MODPY_WANTLIB} cares ev pthread
+
+MAKE_ENV += LIBEV_EMBED=0 \
+ CARES_EMBED=0 \
+ CPPFLAGS="-I${LOCALBASE}/include -L${LOCALBASE}/lib"
+
+DOCSRC = ${WRKSRC}/doc
+post-build:
+ cd ${DOCSRC} && PYTHONPATH=${WRKSRC} \
+ ${LOCALBASE}/bin/sphinx-build -N . _build/html
+
+DOCS = ${PREFIX}/share/doc/${MODPY_PY_PREFIX}gevent
+EXAMPLES = ${PREFIX}/share/examples/${MODPY_PY_PREFIX}gevent
+post-install:
+ ${INSTALL_DATA_DIR} ${DOCS}
+ cd ${DOCSRC}/_build/html && pax -rw * ${DOCS}
+ ${INSTALL_DATA_DIR} ${EXAMPLES}
+ cd ${WRKSRC}/examples && pax -rw * ${EXAMPLES}
+
+test:
+ cd ${WRKSRC}/greentest && ${MAKE_ENV} \
+ PYTHONPATH=${WRKINST}${MODPY_SITEPKG} \
+ ${MODPY_BIN} testrunner.py --config ../known_failures.py
.include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/devel/py-gevent/distinfo,v
retrieving revision 1.1.1.1
diff -u -p -u -p -r1.1.1.1 distinfo
--- distinfo 17 Jul 2012 19:23:31 -0000 1.1.1.1
+++ distinfo 27 Sep 2014 17:33:04 -0000
@@ -1,5 +1,2 @@
-MD5 (gevent-0.13.7.tar.gz) = x0AEcwwlQyYLdRsKp4KYfA==
-RMD160 (gevent-0.13.7.tar.gz) = iEF4Mobz/JZSteqxZtiA4mfy6Io=
-SHA1 (gevent-0.13.7.tar.gz) = K5xjuE4ho24kSnyCW5vbqpi37GY=
-SHA256 (gevent-0.13.7.tar.gz) = B1TxQdKIn6hhkY63VIK5VydjvWYUebv8c6jCUPTqtsU=
-SIZE (gevent-0.13.7.tar.gz) = 288284
+SHA256 (gevent-1.0.1.tar.gz) = RifiFdBY9x2V5rJtnnvkwmN4ikdWvShYqTd19sBy30M=
+SIZE (gevent-1.0.1.tar.gz) = 1455636
Index: patches/patch-setup_py
===================================================================
RCS file: patches/patch-setup_py
diff -N patches/patch-setup_py
--- patches/patch-setup_py 13 Dec 2012 20:42:45 -0000 1.1
+++ /dev/null 1 Jan 1970 00:00:00 -0000
@@ -1,12 +0,0 @@
-$OpenBSD: patch-setup_py,v 1.1 2012/12/13 20:42:45 landry Exp $
---- setup.py.orig Thu Dec 13 21:30:07 2012
-+++ setup.py Thu Dec 13 21:30:38 2012
-@@ -277,7 +277,7 @@ else:
- for filename in libevent_sources:
- sources.append(filename)
- else:
-- libraries = ['event']
-+ libraries = ['event', 'eventextra']
- if (libevent_source_path
- and (exists(join(libevent_source_path, ".libs"))
- or not exists(join(libevent_source_path, "configure")))):
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/devel/py-gevent/pkg/PLIST,v
retrieving revision 1.1.1.1
diff -u -p -u -p -r1.1.1.1 PLIST
--- pkg/PLIST 17 Jul 2012 19:23:31 -0000 1.1.1.1
+++ pkg/PLIST 27 Sep 2014 17:33:04 -0000
@@ -8,6 +8,11 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/gevent-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/top_level.txt
lib/python${MODPY_VERSION}/site-packages/gevent/__init__.py
lib/python${MODPY_VERSION}/site-packages/gevent/__init__.pyc
+lib/python${MODPY_VERSION}/site-packages/gevent/_semaphore.so
+lib/python${MODPY_VERSION}/site-packages/gevent/_threading.py
+lib/python${MODPY_VERSION}/site-packages/gevent/_threading.pyc
+lib/python${MODPY_VERSION}/site-packages/gevent/_util.so
+lib/python${MODPY_VERSION}/site-packages/gevent/ares.so
lib/python${MODPY_VERSION}/site-packages/gevent/backdoor.py
lib/python${MODPY_VERSION}/site-packages/gevent/backdoor.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/baseserver.py
@@ -15,30 +20,32 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/gevent/core.so
lib/python${MODPY_VERSION}/site-packages/gevent/coros.py
lib/python${MODPY_VERSION}/site-packages/gevent/coros.pyc
-lib/python${MODPY_VERSION}/site-packages/gevent/dns.py
-lib/python${MODPY_VERSION}/site-packages/gevent/dns.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/event.py
lib/python${MODPY_VERSION}/site-packages/gevent/event.pyc
+lib/python${MODPY_VERSION}/site-packages/gevent/fileobject.py
+lib/python${MODPY_VERSION}/site-packages/gevent/fileobject.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/greenlet.py
lib/python${MODPY_VERSION}/site-packages/gevent/greenlet.pyc
-lib/python${MODPY_VERSION}/site-packages/gevent/http.py
-lib/python${MODPY_VERSION}/site-packages/gevent/http.pyc
-lib/python${MODPY_VERSION}/site-packages/gevent/httplib.py
-lib/python${MODPY_VERSION}/site-packages/gevent/httplib.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/hub.py
lib/python${MODPY_VERSION}/site-packages/gevent/hub.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/local.py
lib/python${MODPY_VERSION}/site-packages/gevent/local.pyc
+lib/python${MODPY_VERSION}/site-packages/gevent/lock.py
+lib/python${MODPY_VERSION}/site-packages/gevent/lock.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/monkey.py
lib/python${MODPY_VERSION}/site-packages/gevent/monkey.pyc
+lib/python${MODPY_VERSION}/site-packages/gevent/os.py
+lib/python${MODPY_VERSION}/site-packages/gevent/os.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/pool.py
lib/python${MODPY_VERSION}/site-packages/gevent/pool.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/pywsgi.py
lib/python${MODPY_VERSION}/site-packages/gevent/pywsgi.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/queue.py
lib/python${MODPY_VERSION}/site-packages/gevent/queue.pyc
-lib/python${MODPY_VERSION}/site-packages/gevent/rawgreenlet.py
-lib/python${MODPY_VERSION}/site-packages/gevent/rawgreenlet.pyc
+lib/python${MODPY_VERSION}/site-packages/gevent/resolver_ares.py
+lib/python${MODPY_VERSION}/site-packages/gevent/resolver_ares.pyc
+lib/python${MODPY_VERSION}/site-packages/gevent/resolver_thread.py
+lib/python${MODPY_VERSION}/site-packages/gevent/resolver_thread.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/select.py
lib/python${MODPY_VERSION}/site-packages/gevent/select.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/server.py
@@ -47,10 +54,14 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/gevent/socket.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/ssl.py
lib/python${MODPY_VERSION}/site-packages/gevent/ssl.pyc
-lib/python${MODPY_VERSION}/site-packages/gevent/sslold.py
-lib/python${MODPY_VERSION}/site-packages/gevent/sslold.pyc
+lib/python${MODPY_VERSION}/site-packages/gevent/subprocess.py
+lib/python${MODPY_VERSION}/site-packages/gevent/subprocess.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/thread.py
lib/python${MODPY_VERSION}/site-packages/gevent/thread.pyc
+lib/python${MODPY_VERSION}/site-packages/gevent/threading.py
+lib/python${MODPY_VERSION}/site-packages/gevent/threading.pyc
+lib/python${MODPY_VERSION}/site-packages/gevent/threadpool.py
+lib/python${MODPY_VERSION}/site-packages/gevent/threadpool.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/timeout.py
lib/python${MODPY_VERSION}/site-packages/gevent/timeout.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/util.py
@@ -59,3 +70,136 @@ lib/python${MODPY_VERSION}/site-packages
lib/python${MODPY_VERSION}/site-packages/gevent/win32util.pyc
lib/python${MODPY_VERSION}/site-packages/gevent/wsgi.py
lib/python${MODPY_VERSION}/site-packages/gevent/wsgi.pyc
+share/doc/${MODPY_PY_PREFIX}gevent/
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/changelog.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/community.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/contents.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.backdoor.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.baseserver.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.core.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.coros.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.event.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.fileobject.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.hub.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.local.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.lock.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.monkey.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.os.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.pool.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.pywsgi.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.queue.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.resolver_ares.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.resolver_thread.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.select.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.server.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.socket.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.ssl.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.subprocess.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.thread.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.threading.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.threadpool.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.util.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.win32util.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/gevent.wsgi.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/intro.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/networking.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/reference.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/servers.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/success.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/synchronization.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_sources/whatsnew_1_0.txt
+share/doc/${MODPY_PY_PREFIX}gevent/_static/
+share/doc/${MODPY_PY_PREFIX}gevent/_static/basic.css
+share/doc/${MODPY_PY_PREFIX}gevent/_static/file.png
+share/doc/${MODPY_PY_PREFIX}gevent/_static/img/
+share/doc/${MODPY_PY_PREFIX}gevent/_static/img/main-two-columns.gif
+share/doc/${MODPY_PY_PREFIX}gevent/_static/minus.png
+share/doc/${MODPY_PY_PREFIX}gevent/_static/omegle_48.png
+share/doc/${MODPY_PY_PREFIX}gevent/_static/plus.png
+share/doc/${MODPY_PY_PREFIX}gevent/_static/pygments.css
+share/doc/${MODPY_PY_PREFIX}gevent/_static/spotify_logo.png
+share/doc/${MODPY_PY_PREFIX}gevent/_static/transparent.gif
+share/doc/${MODPY_PY_PREFIX}gevent/changelog.html
+share/doc/${MODPY_PY_PREFIX}gevent/community.html
+share/doc/${MODPY_PY_PREFIX}gevent/contents.html
+share/doc/${MODPY_PY_PREFIX}gevent/genindex.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.backdoor.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.baseserver.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.core.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.coros.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.event.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.fileobject.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.hub.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.local.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.lock.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.monkey.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.os.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.pool.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.pywsgi.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.queue.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.resolver_ares.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.resolver_thread.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.select.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.server.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.socket.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.ssl.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.subprocess.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.thread.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.threading.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.threadpool.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.util.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.win32util.html
+share/doc/${MODPY_PY_PREFIX}gevent/gevent.wsgi.html
+share/doc/${MODPY_PY_PREFIX}gevent/intro.html
+share/doc/${MODPY_PY_PREFIX}gevent/networking.html
+share/doc/${MODPY_PY_PREFIX}gevent/objects.inv
+share/doc/${MODPY_PY_PREFIX}gevent/py-modindex.html
+share/doc/${MODPY_PY_PREFIX}gevent/reference.html
+share/doc/${MODPY_PY_PREFIX}gevent/search.html
+share/doc/${MODPY_PY_PREFIX}gevent/searchindex.js
+share/doc/${MODPY_PY_PREFIX}gevent/servers.html
+share/doc/${MODPY_PY_PREFIX}gevent/success.html
+share/doc/${MODPY_PY_PREFIX}gevent/synchronization.html
+share/doc/${MODPY_PY_PREFIX}gevent/whatsnew_1_0.html
+share/examples/${MODPY_PY_PREFIX}gevent/
+share/examples/${MODPY_PY_PREFIX}gevent/concurrent_download.py
+share/examples/${MODPY_PY_PREFIX}gevent/dns_mass_resolve.py
+share/examples/${MODPY_PY_PREFIX}gevent/echoserver.py
+share/examples/${MODPY_PY_PREFIX}gevent/geventsendfile.py
+share/examples/${MODPY_PY_PREFIX}gevent/portforwarder.py
+share/examples/${MODPY_PY_PREFIX}gevent/processes.py
+share/examples/${MODPY_PY_PREFIX}gevent/psycopg2_pool.py
+share/examples/${MODPY_PY_PREFIX}gevent/server.crt
+share/examples/${MODPY_PY_PREFIX}gevent/server.key
+share/examples/${MODPY_PY_PREFIX}gevent/threadpool.py
+share/examples/${MODPY_PY_PREFIX}gevent/udp_client.py
+share/examples/${MODPY_PY_PREFIX}gevent/udp_server.py
+share/examples/${MODPY_PY_PREFIX}gevent/unixsocket_client.py
+share/examples/${MODPY_PY_PREFIX}gevent/unixsocket_server.py
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/README
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/__init__.py
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/application.py
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/chat/
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/chat/__init__.py
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/chat/views.py
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/manage.py
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/run_standalone.py
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/run_uwsgi
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/settings.py
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/static/
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/static/chat.css
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/static/chat.js
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/templates/
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/templates/404.html
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/templates/500.html
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/templates/index.html
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/templates/message.html
+share/examples/${MODPY_PY_PREFIX}gevent/webchat/urls.py
+share/examples/${MODPY_PY_PREFIX}gevent/webproxy.py
+share/examples/${MODPY_PY_PREFIX}gevent/webpy.py
+share/examples/${MODPY_PY_PREFIX}gevent/wsgiserver.py
+share/examples/${MODPY_PY_PREFIX}gevent/wsgiserver_ssl.py