<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/eventlet.git/tests/isolated, branch codecov</title>
<subtitle>github.com: eventlet/eventlet.git
</subtitle>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/eventlet.git/'/>
<entry>
<title>patcher: built-in open() did not accept kwargs</title>
<updated>2021-01-29T10:26:10+00:00</updated>
<author>
<name>Sergey Shepelev</name>
<email>temotor@gmail.com</email>
</author>
<published>2021-01-29T10:26:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/eventlet.git/commit/?id=44979522af5fb9dfa64afd0310c4eb6b62ae477f'/>
<id>44979522af5fb9dfa64afd0310c4eb6b62ae477f</id>
<content type='text'>
https://github.com/eventlet/eventlet/issues/683
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/eventlet/eventlet/issues/683
</pre>
</div>
</content>
</entry>
<entry>
<title>patcher: monkey_patch(builtins=True) failed on py3 because `file` class is gone (#545)</title>
<updated>2020-10-22T01:56:12+00:00</updated>
<author>
<name>秋葉</name>
<email>ambiguous404@gmail.com</email>
</author>
<published>2020-10-22T01:56:12+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/eventlet.git/commit/?id=089a1a73e6af6ca8f7f3627f04843add023b86ce'/>
<id>089a1a73e6af6ca8f7f3627f04843add023b86ce</id>
<content type='text'>
https://github.com/eventlet/eventlet/issues/541
https://github.com/eventlet/eventlet/pull/545
https://docs.python.org/release/3.0/whatsnew/3.0.html#builtins</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/eventlet/eventlet/issues/541
https://github.com/eventlet/eventlet/pull/545
https://docs.python.org/release/3.0/whatsnew/3.0.html#builtins</pre>
</div>
</content>
</entry>
<entry>
<title>Clean up threading book-keeping at fork when monkey-patched</title>
<updated>2020-08-29T03:58:07+00:00</updated>
<author>
<name>Tim Burke</name>
<email>tim.burke@gmail.com</email>
</author>
<published>2020-05-07T23:00:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/eventlet.git/commit/?id=115103d5608cbe8f15df10e27eba1644f5364e95'/>
<id>115103d5608cbe8f15df10e27eba1644f5364e95</id>
<content type='text'>
Previously, if we patched threading then forked (or, in some cases, used
the subprocess module), Python would log an ignored exception like

   Exception ignored in: &lt;function _after_fork at 0x7f16493489d8&gt;
   Traceback (most recent call last):
     File "/usr/lib/python3.7/threading.py", line 1335, in _after_fork
       assert len(_active) == 1
   AssertionError:

This comes down to threading in Python 3.7+ having an import side-effect
of registering an at-fork callback. When we re-import threading to patch
it, the old (but still registered) callback still points to the old
thread-tracking dict, rather than the new dict that's actually doing the
tracking.

Now, register our own at_fork hook that will fix up the dict reference
before threading's _at_fork runs and put it back afterwards.

Closes #592
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Previously, if we patched threading then forked (or, in some cases, used
the subprocess module), Python would log an ignored exception like

   Exception ignored in: &lt;function _after_fork at 0x7f16493489d8&gt;
   Traceback (most recent call last):
     File "/usr/lib/python3.7/threading.py", line 1335, in _after_fork
       assert len(_active) == 1
   AssertionError:

This comes down to threading in Python 3.7+ having an import side-effect
of registering an at-fork callback. When we re-import threading to patch
it, the old (but still registered) callback still points to the old
thread-tracking dict, rather than the new dict that's actually doing the
tracking.

Now, register our own at_fork hook that will fix up the dict reference
before threading's _at_fork runs and put it back afterwards.

Closes #592
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix #508: Py37 Deadlock ThreadPoolExecutor (#598)</title>
<updated>2020-05-15T18:14:22+00:00</updated>
<author>
<name>Gorka Eguileor</name>
<email>gorka@eguileor.com</email>
</author>
<published>2020-05-15T18:14:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/eventlet.git/commit/?id=99e0c110a47bef59be2b0139309544d083dc5a06'/>
<id>99e0c110a47bef59be2b0139309544d083dc5a06</id>
<content type='text'>
Python 3.7 and later implement queue.SimpleQueue in C, causing a
deadlock when using ThreadPoolExecutor with eventlet.

To avoid this deadlock we now replace the C implementation with the
Python implementation on monkey_patch for Python versions 3.7 and
higher.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Python 3.7 and later implement queue.SimpleQueue in C, causing a
deadlock when using ThreadPoolExecutor with eventlet.

To avoid this deadlock we now replace the C implementation with the
Python implementation on monkey_patch for Python versions 3.7 and
higher.</pre>
</div>
</content>
</entry>
<entry>
<title>[bug] reimport submodule as well in patcher.inject (#540)</title>
<updated>2019-01-23T11:10:23+00:00</updated>
<author>
<name>Junyi</name>
<email>xmaswillyou@gmail.com</email>
</author>
<published>2019-01-23T11:10:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/eventlet.git/commit/?id=05d613d8ed123b87f64f8d1987968c5bf825b07a'/>
<id>05d613d8ed123b87f64f8d1987968c5bf825b07a</id>
<content type='text'>
* [bug] reimport submodule as well in patcher.inject

* [dev] add unit-test

* [dev] move unit test to isolated tests

* improve unit test
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* [bug] reimport submodule as well in patcher.inject

* [dev] add unit-test

* [dev] move unit test to isolated tests

* improve unit test
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix for Python 3.7 (#506)</title>
<updated>2018-09-28T15:08:59+00:00</updated>
<author>
<name>Marcel Plch</name>
<email>mplch@redhat.com</email>
</author>
<published>2018-09-28T15:08:59+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/eventlet.git/commit/?id=cf47cb518db3e0dbdd48473fb40cf9f6ecd50e07'/>
<id>cf47cb518db3e0dbdd48473fb40cf9f6ecd50e07</id>
<content type='text'>
* Fix for Python 3.7

* Remove redundant piece of code.

* Put back do_handshake_on_connect kwarg

* Use Python 3.7 instead of 3.7-dev

* Fix buildbot failing permissions with 3.7

* tests: env_tpool_zero assert details

* setup: Python 3.7 classificator
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Fix for Python 3.7

* Remove redundant piece of code.

* Put back do_handshake_on_connect kwarg

* Use Python 3.7 instead of 3.7-dev

* Fix buildbot failing permissions with 3.7

* tests: env_tpool_zero assert details

* setup: Python 3.7 classificator
</pre>
</div>
</content>
</entry>
<entry>
<title>IMPORTANT: late import in `use_hub()` + thread race caused using epolls even when it is unsupported on current platform</title>
<updated>2018-09-12T21:01:37+00:00</updated>
<author>
<name>Sergey Shepelev</name>
<email>temotor@gmail.com</email>
</author>
<published>2018-09-01T20:38:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/eventlet.git/commit/?id=77bccbe48d4d9a46982b2e0503e76784e76b066a'/>
<id>77bccbe48d4d9a46982b2e0503e76784e76b066a</id>
<content type='text'>
Solution: eager import all built-in hubs, explicitly check support later

https://github.com/eventlet/eventlet/issues/466
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Solution: eager import all built-in hubs, explicitly check support later

https://github.com/eventlet/eventlet/issues/466
</pre>
</div>
</content>
</entry>
<entry>
<title>support.greendns: ImportError when dns.rdtypes was imported before eventlet</title>
<updated>2018-05-14T10:50:20+00:00</updated>
<author>
<name>Jaume Marhuenda</name>
<email>jaumemarhuenda@gmail.com</email>
</author>
<published>2018-05-14T10:50:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/eventlet.git/commit/?id=81c7cf94afbb37fcd406cad032b5e73444c6cc10'/>
<id>81c7cf94afbb37fcd406cad032b5e73444c6cc10</id>
<content type='text'>
https://github.com/eventlet/eventlet/issues/479</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/eventlet/eventlet/issues/479</pre>
</div>
</content>
</entry>
<entry>
<title>external dependencies for six, monotonic, dnspython</title>
<updated>2018-05-10T17:33:32+00:00</updated>
<author>
<name>nat-goodspeed</name>
<email>nat@lindenlab.com</email>
</author>
<published>2018-05-10T17:33:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/eventlet.git/commit/?id=53b63c66f0d9a7d6ba9182a207529ebd949e95f3'/>
<id>53b63c66f0d9a7d6ba9182a207529ebd949e95f3</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>green.threading: current_thread() did not see new monkey-patched threads; Thanks to Jake Tesler</title>
<updated>2018-04-15T00:16:28+00:00</updated>
<author>
<name>Sergey Shepelev</name>
<email>temotor@gmail.com</email>
</author>
<published>2018-04-14T23:10:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.baserock.org/cgit/delta/python-packages/eventlet.git/commit/?id=1d6d8924a9da6a0cb839b81e785f99b6ac219a0e'/>
<id>1d6d8924a9da6a0cb839b81e785f99b6ac219a0e</id>
<content type='text'>
https://github.com/eventlet/eventlet/issues/172
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/eventlet/eventlet/issues/172
</pre>
</div>
</content>
</entry>
</feed>
