- 15 Feb, 2018 1 commit
-
-
Jason Madden authored
-
- 14 Feb, 2018 6 commits
-
-
Jason Madden authored
-
Jason Madden authored
-
Jason Madden authored
Don't let destroying the default C loop from two different Python loo…
-
Jason Madden authored
Don't let destroying the default C loop from two different Python loop objects crash the process. Fixes #1098
-
Jason Madden authored
Take a whack at using ccache to speed up builds on CI. [skip ci]
-
Jason Madden authored
-
- 13 Feb, 2018 8 commits
-
-
Jason Madden authored
-
Jason Madden authored
Centralize configuration in a ``gevent.config`` object.
-
Jason Madden authored
-
Jason Madden authored
Extra tests for _config. Fix a long-standing bug where package paths in import names did not clean up after themselves.
-
Jason Madden authored
-
Jason Madden authored
Before I realized that was the root cause, I refactored to avoid starting the hub greenlet *at all*, and that also fixed the problem. The problem was that some versions of CPython using the libev-cext loop (and only that one) would crash garbage collecting a greenlet (presumably the hub greenlet, which was attached to a destroyed loop): 0 libsystem_kernel.dylib 0x00007fff66455e3e __pthread_kill + 10 1 libsystem_pthread.dylib 0x00007fff66594150 pthread_kill + 333 2 libsystem_c.dylib 0x00007fff663648fe raise + 26 3 libsystem_platform.dylib 0x00007fff66587f5a _sigtramp + 26 4 ??? 000000000000000000 0 + 0 5 greenlet.cpython-35m-darwin.so 0x000000010d76b297 green_clear + 183 6 org.python.python 0x000000010c707e0c collect + 1824 7 org.python.python 0x000000010c7076e3 _PyGC_CollectNoFail + 43 8 org.python.python 0x000000010c6e81d4 PyImport_Cleanup + 968 9 org.python.python 0x000000010c6f1b49 Py_Finalize + 92 10 org.python.python 0x000000010c6f20d5 Py_Exit + 13 11 org.python.python 0x000000010c6f4631 handle_system_exit + 320 12 org.python.python 0x000000010c6f42a1 PyErr_PrintEx + 42 We should take a look at that and see if we can do something more graceful.
-
Jason Madden authored
-
Jason Madden authored
-
- 12 Feb, 2018 4 commits
-
-
Jason Madden authored
-
Jason Madden authored
The gevent.select.poll object must keep a tighter handle on the lifetime of io watchers it spawns. Previously they were leaking if not unregistered, which some callers fail to do --- looking at you, dnspython.
-
Jason Madden authored
This lets us document things more clearly, and, with care, allows configuring gevent from Python code without any environment varibles. All the fileobject implementations needed to be moved out of the ``gevent.fileobject`` module so as not to introduce import cycles that made configuring from code impossible. Fixes #1090
-
Jason Madden authored
-
- 07 Feb, 2018 3 commits
-
-
Jason Madden authored
Add support for /etc/hosts to dnspython resolver.
-
Jason Madden authored
-
Jason Madden authored
Based on code from eventlet, but heavily refactored and modified: - Split host parsing into its own class, re-used from the test case - Hosts handle PTR lookups for ipv4 - Some bug fixes around what should be strings where. - Allow strings for the rdtype paramater - Watch last modified time instead of reloading the file at fixed intervals. More of our DNS tests pass now (notable TestEtcHosts is now enabled for this resolver), and we tend to generate more conformant results than the ares resolver (by observation, not tested).
-
- 06 Feb, 2018 5 commits
-
-
-
Jason Madden authored
-
Jason Madden authored
Let dnspython resolver be used without monkey-patching
-
Jason Madden authored
Install openssl on travis for 3.7b1 as a fix for https://github.com/travis-ci/travis-ci/issues/9069 [skip appveyor]
-
Jason Madden authored
-
- 05 Feb, 2018 9 commits
-
-
Jason Madden authored
The build cache was the only thing keeping 3.7.0a4 around; it can no longer be installed from pyenv. And I accidentaly deleted the master build cache, so we have no choice. It may be difficult to get 3.7b1 installed due to https://github.com/travis-ci/travis-ci/issues/9069
-
Jason Madden authored
-
Jason Madden authored
-
Jason Madden authored
-
Jason Madden authored
-
Jason Madden authored
-
Jason Madden authored
Do this by importing dns specially with sys.modules containing the gevent modules. This is the technique eventlet uses (but we don't leave the patched modules sitting around in sys.modules after we're done; eventlet may have good reason to do that, but this is not a public API here and is specialized just for dns).
-
Jason Madden authored
-
Jason Madden authored
Cleanups for timeout.py docs.
-
- 03 Feb, 2018 1 commit
-
-
Jason Madden authored
-
- 02 Feb, 2018 1 commit
-
-
Jason Madden authored
Deal gracefully with passing None watchers to hub.cancel_wait, something that may be more common now that we try to destroy watchers ASAP for GC reasons. Fixes #1089.
-
- 01 Feb, 2018 2 commits
-
-
Jason Madden authored
-
Jason Madden authored
Add a DNSpython resolver
-