Hello.

The following patch seems to add a working uwsgi-plugin-gevent-python3 package.

From a9dbd3f15d8fb6accd100c8f7076eae21f8f2c76 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Micha=C5=82=20Mas=C5=82owski?= <m.maslow...@clearcode.cc>
Date: Fri, 23 Feb 2018 15:49:40 +0100
Subject: [PATCH] Enable greenlet and gevent plugins for Python 3

---
 debian/control    | 36 ++++++++++++++++++++++++++++++++++--
 debian/control.in | 36 ++++++++++++++++++++++++++++++++++--
 debian/rules      |  2 +-
 3 files changed, 69 insertions(+), 5 deletions(-)

diff --git a/debian/control b/debian/control
index da1377f1..a56d65f3 100644
--- a/debian/control
+++ b/debian/control
@@ -234,6 +234,8 @@ Depends: ${misc:Depends},
  uwsgi-plugin-fiber (= ${binary:Version}),
  uwsgi-plugin-gevent-python (= ${binary:Version}) [amd64 arm64 armel armhf 
hurd-i386 i386 kfreebsd-amd64 kfreebsd-i386 mips mips64el mipsel powerpc 
ppc64el s390x],
  uwsgi-plugin-greenlet-python (= ${binary:Version}) [amd64 arm64 armel armhf 
hurd-i386 i386 kfreebsd-amd64 kfreebsd-i386 mips mips64el mipsel powerpc 
ppc64el s390x],
+ uwsgi-plugin-gevent-python3 (= ${binary:Version}) [amd64 arm64 armel armhf 
hurd-i386 i386 kfreebsd-amd64 kfreebsd-i386 mips mips64el mipsel powerpc 
ppc64el s390x],
+ uwsgi-plugin-greenlet-python3 (= ${binary:Version}) [amd64 arm64 armel armhf 
hurd-i386 i386 kfreebsd-amd64 kfreebsd-i386 mips mips64el mipsel powerpc 
ppc64el s390x],
  uwsgi-plugin-asyncio-python (= ${binary:Version}) [any],
  uwsgi-plugin-asyncio-python3 (= ${binary:Version}),
  uwsgi-plugin-tornado-python (= ${binary:Version})
@@ -251,8 +253,8 @@ Description: all available plugins for uWSGI
     - PSGI, Rack, WSGI, etc.
   * coroutines
     - Fiber (${uwsgi:RubyDefaultkind})
-    - gevent (Python 2)
-    - greenlet (Python 2)
+    - gevent (Python 2, 3)
+    - greenlet (Python 2, 3)
     - asyncio (Python 3, and Python 2 when Trollius is available)
     - Ruby native threads (${uwsgi:RubyDefaultkind})
     - tornado (Python 2)
@@ -475,6 +477,22 @@ Description: gevent plugin for uWSGI (Python 2)
  This package provides gevent plugin for uWSGI
  with Python 2 WSGI interface.
+Package: uwsgi-plugin-gevent-python3
+Architecture: amd64 arm64 armel armhf hurd-i386 i386 kfreebsd-amd64 
kfreebsd-i386 mips mips64el mipsel powerpc ppc64el s390x
+Depends: ${shlibs:Depends}, ${misc:Depends},
+ python3-gevent (>= 1.0),
+ uwsgi-plugin-python3 (= ${binary:Version}),
+ uwsgi-plugin-greenlet-python3 (= ${binary:Version})
+Description: gevent plugin for uWSGI (Python 2)
+ uWSGI presents a complete stack for networked/clustered web applications,
+ implementing message/object passing, caching, RPC and process management.
+ It is designed to be fully modular. This means that different plugins can be
+ used in order to add compatibility with tons of different technology on top of
+ the same core.
+ .
+ This package provides gevent plugin for uWSGI
+ with Python 3 WSGI interface.
+
 Package: uwsgi-plugin-greenlet-python
 Architecture: amd64 arm64 armel armhf hurd-i386 i386 kfreebsd-amd64 
kfreebsd-i386 mips mips64el mipsel powerpc ppc64el s390x
 Depends: ${shlibs:Depends}, ${misc:Depends}, python-greenlet,
@@ -489,6 +507,20 @@ Description: greenlet plugin for uWSGI (Python 2)
  This package provides greenlet plugin for uWSGI
  with Python 2 WSGI interface.
+Package: uwsgi-plugin-greenlet-python3
+Architecture: amd64 arm64 armel armhf hurd-i386 i386 kfreebsd-amd64 
kfreebsd-i386 mips mips64el mipsel powerpc ppc64el s390x
+Depends: ${shlibs:Depends}, ${misc:Depends}, python3-greenlet,
+ uwsgi-plugin-python3 (= ${binary:Version})
+Description: greenlet plugin for uWSGI (Python 3)
+ uWSGI presents a complete stack for networked/clustered web applications,
+ implementing message/object passing, caching, RPC and process management.
+ It is designed to be fully modular. This means that different plugins can be
+ used in order to add compatibility with tons of different technology on top of
+ the same core.
+ .
+ This package provides greenlet plugin for uWSGI
+ with Python 3 WSGI interface.
+
 Package: uwsgi-plugin-asyncio-python
 Architecture: any
 Depends: ${shlibs:Depends}, ${misc:Depends}, python-trollius,
diff --git a/debian/control.in b/debian/control.in
index e1201b67..82461f47 100644
--- a/debian/control.in
+++ b/debian/control.in
@@ -224,6 +224,8 @@ Depends: ${misc:Depends},
  uwsgi-plugin-fiber (= ${binary:Version}),
  uwsgi-plugin-gevent-python (= ${binary:Version}) [@greenlet_archs@],
  uwsgi-plugin-greenlet-python (= ${binary:Version}) [@greenlet_archs@],
+ uwsgi-plugin-gevent-python3 (= ${binary:Version}) [@greenlet_archs@],
+ uwsgi-plugin-greenlet-python3 (= ${binary:Version}) [@greenlet_archs@],
  uwsgi-plugin-asyncio-python (= ${binary:Version}) [@trollius_archs@],
  uwsgi-plugin-asyncio-python3 (= ${binary:Version}),
  uwsgi-plugin-tornado-python (= ${binary:Version})
@@ -241,8 +243,8 @@ Description: all available plugins for uWSGI
     - PSGI, Rack, WSGI, etc.
   * coroutines
     - Fiber (${uwsgi:RubyDefaultkind})
-    - gevent (Python 2)
-    - greenlet (Python 2)
+    - gevent (Python 2, 3)
+    - greenlet (Python 2, 3)
     - asyncio (Python 3, and Python 2 when Trollius is available)
     - Ruby native threads (${uwsgi:RubyDefaultkind})
     - tornado (Python 2)
@@ -465,6 +467,22 @@ Description: gevent plugin for uWSGI (Python 2)
  This package provides gevent plugin for uWSGI
  with Python 2 WSGI interface.
+Package: uwsgi-plugin-gevent-python3
+Architecture: @greenlet_archs@
+Depends: ${shlibs:Depends}, ${misc:Depends},
+ python3-gevent (>= 1.0),
+ uwsgi-plugin-python3 (= ${binary:Version}),
+ uwsgi-plugin-greenlet-python3 (= ${binary:Version})
+Description: gevent plugin for uWSGI (Python 2)
+ uWSGI presents a complete stack for networked/clustered web applications,
+ implementing message/object passing, caching, RPC and process management.
+ It is designed to be fully modular. This means that different plugins can be
+ used in order to add compatibility with tons of different technology on top of
+ the same core.
+ .
+ This package provides gevent plugin for uWSGI
+ with Python 3 WSGI interface.
+
 Package: uwsgi-plugin-greenlet-python
 Architecture: @greenlet_archs@
 Depends: ${shlibs:Depends}, ${misc:Depends}, python-greenlet,
@@ -479,6 +497,20 @@ Description: greenlet plugin for uWSGI (Python 2)
  This package provides greenlet plugin for uWSGI
  with Python 2 WSGI interface.
+Package: uwsgi-plugin-greenlet-python3
+Architecture: @greenlet_archs@
+Depends: ${shlibs:Depends}, ${misc:Depends}, python3-greenlet,
+ uwsgi-plugin-python3 (= ${binary:Version})
+Description: greenlet plugin for uWSGI (Python 3)
+ uWSGI presents a complete stack for networked/clustered web applications,
+ implementing message/object passing, caching, RPC and process management.
+ It is designed to be fully modular. This means that different plugins can be
+ used in order to add compatibility with tons of different technology on top of
+ the same core.
+ .
+ This package provides greenlet plugin for uWSGI
+ with Python 3 WSGI interface.
+
 Package: uwsgi-plugin-asyncio-python
 Architecture: @trollius_archs@
 Depends: ${shlibs:Depends}, ${misc:Depends}, python-trollius,
diff --git a/debian/rules b/debian/rules
index 982ab365..957f22fc 100755
--- a/debian/rules
+++ b/debian/rules
@@ -109,7 +109,7 @@ UWSGI_KINDS_python = python python3
 UWSGI_SRCPLUGINS_LANG_SELF += python
 UWSGI_SRCPLUGINS_python = gevent greenlet tornado
 UWSGI_SRCPLUGINS_python += $(if $(UWSGI_ARCHS_trollius),asyncio)
-UWSGI_SRCPLUGINS_python3 = asyncio
+UWSGI_SRCPLUGINS_python3 = gevent greenlet asyncio
UWSGI_KINDS_java = openjdk-8
 UWSGI_DEFAULTKIND_java = openjdk-8
--
2.11.0

Reply via email to