File: PKG-INFO

package info (click to toggle)
python-psycogreen 1.0-1
  • links: PTS, VCS
  • area: main
  • in suites: buster, stretch
  • size: 128 kB
  • ctags: 27
  • sloc: python: 145; makefile: 2
file content (101 lines) | stat: -rw-r--r-- 4,710 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
Metadata-Version: 1.0
Name: psycogreen
Version: 1.0
Summary: psycopg2 integration with coroutine libraries
Home-page: https://bitbucket.org/dvarrazzo/psycogreen
Author: Daniele Varrazzo
Author-email: daniele.varrazzo@gmail.com
License: BSD
Description: psycogreen -- psycopg2 integration with coroutine libraries
        ===========================================================
        
        The `psycogreen`_ package enables psycopg2 to work with coroutine libraries,
        using asynchronous calls internally but offering a blocking interface so that
        regular code can run unmodified.
        
        `Psycopg`_ offers `coroutines support`__ since release 2.2. Because the main
        module is a C extension it cannot be monkey-patched to become
        coroutine-friendly. Instead it exposes `a hook`__ that coroutine libraries can
        use to install a function integrating with their event scheduler. Psycopg will
        call the function whenever it executes a libpq call that may block.
        `psycogreen` is a collection of "wait callbacks" useful to integrate Psycopg
        with different coroutine libraries.
        
        .. _psycogreen: https://bitbucket.org/dvarrazzo/psycogreen
        .. _Psycopg: http://initd.org/psycopg/
        .. __: http://initd.org/psycopg/docs/advanced.html#support-to-coroutine-libraries
        .. __: http://initd.org/psycopg/docs/extensions.html#psycopg2.extensions.set_wait_callback
        
        
        Module ``psycogreen.eventlet``
        ------------------------------
        
        `Eventlet`_ currently supports Psycopg out-of-the-box and ``psycogreen`` is not
        necessary. See `the documentation`__ for patching instruction.
        
        .. _Eventlet: http://eventlet.net/
        .. __: http://eventlet.net/doc/patching.html#monkeypatching-the-standard-library
        
        If for any reason you want to avoid using Eventlet monkeypatching you can use
        ``psycogreen.eventlet.patch_psycopg()``.
        
        Function ``psycogreen.eventlet.patch_psycopg()``
            Enable async processing in Psycopg integrated with the Eventlet events
            loop.  It is performed by registering ``eventlet_wait_callback()`` as
            psycopg2 wait callback.
        
        Function ``psycogreen.eventlet.eventlet_wait_callback(conn)``
            A wait callback integrating with Eventlet events loop.
        
        An example script showing concurrent usage of ``psycopg2`` with ``urlopen()``
        with Eventlet is available in |tests/test_eventlet.py|__.
        
        .. |tests/test_eventlet.py| replace:: ``tests/test_eventlet.py``
        .. __: https://bitbucket.org/dvarrazzo/psycogreen/src/master/tests/test_eventlet.py
        
        
        Module ``psycogreen.gevent``
        ----------------------------
        
        In order to use psycopg2 asynchronously with `gevent`_ you can use
        ``psycogreen.gevent.patch_psycopg()``.
        
        Function ``psycogreen.gevent.patch_psycopg()``
            Enable async processing in Psycopg integrated with the gevent events
            loop.  It is performed by registering ``gevent_wait_callback()`` as
            psycopg2 wait callback.
        
        Function ``psycogreen.gevent.gevent_wait_callback(conn)``
            A wait callback integrating with gevent events loop.
        
        An example script showing concurrent usage of ``psycopg2`` with ``urlopen()``
        with gevent is available in |tests/test_gevent.py|__.
        
        .. _gevent: http://www.gevent.org/
        .. |tests/test_gevent.py| replace:: ``tests/test_gevent.py``
        .. __: https://bitbucket.org/dvarrazzo/psycogreen/src/master/tests/test_gevent.py
        
        
        uWSGI green threads
        -------------------
        
        Roberto De Ioris is writing uGreen__, a green thread implementation on top of
        the `uWSGI async platform`__.
        
        .. __: http://projects.unbit.it/uwsgi/wiki/uGreen
        .. __: http://projects.unbit.it/uwsgi/
        
        He has performed some tests using both `psycopg2 async support`__ and
        `psycopg2 green support`__ and has reported no problem in their stress tests
        with both the async styles.
        
        .. __: http://projects.unbit.it/uwsgi/browser/tests/psycopg2_green.py
        .. __: http://projects.unbit.it/uwsgi/browser/tests/psycogreen_green.py
        
        
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: License :: OSI Approved :: BSD License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 2
Classifier: Topic :: Database