<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>Crochet is an MIT-licensed library that makes it easier for
blocking or
threaded applications like Flask or Django to use the Twisted
networking
framework. Crochet provides the following features:</p>
<ul class="simple">
<li>Runs Twisted's reactor in a thread it manages.</li>
<li>The reactor shuts down automatically when the process' main
thread finishes.</li>
<li>Hooks up Twisted's log system to the Python standard library <tt
class="docutils literal">logging</tt>
framework. Unlike Twisted's built-in <tt class="docutils
literal">logging</tt> bridge, this includes
support for blocking Handler instances.</li>
<li>A blocking API to eventual results (i.e. <tt class="docutils
literal">Deferred</tt> instances). This last
feature can be used separately, so Crochet is also useful for
normal Twisted
applications that use threads.</li>
</ul>
<p><br>
Downloads: <a class="moz-txt-link-freetext" href="https://pypi.python.org/pypi/crochet">https://pypi.python.org/pypi/crochet</a><br>
Documentation: <a class="moz-txt-link-freetext" href="https://crochet.readthedocs.org/en/latest/">https://crochet.readthedocs.org/en/latest/</a><br>
</p>
<p><strong><br>
What's New in 1.1.0</strong></p>
<p>Bug fixes:</p>
<ul class="simple">
<li><tt class="docutils literal">EventualResult.wait()</tt> can
now be used safely from multiple threads,
thanks to Gavin Panella for reporting the bug.</li>
<li>Fixed reentrancy deadlock in the logging code caused by
<a class="reference external"
href="http://bugs.python.org/issue14976">http://bugs.python.org/issue14976</a>,
thanks to Rod Morehead for reporting the
bug.</li>
<li>Crochet now installs on Python 3.3 again, thanks to Ben
Cordero.</li>
<li>Crochet should now work on Windows, thanks to Konstantinos
Koukopoulos.</li>
<li>Crochet tests can now run without adding its absolute path to
PYTHONPATH or
installing it first.</li>
</ul>
<p>Documentation:</p>
<ul class="simple">
<li><tt class="docutils literal">EventualResult.original_failure</tt>
is now documented.</li>
</ul>
<strong></strong>
</body>
</html>