summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* hubs: drop pyevent hubupSergey Shepelev2018-03-1120-319/+42
|
* Drop support for Python2.6 and python-epoll packageSergey Shepelev2018-03-1115-124/+55
|
* typoSourabh Deshmukh2018-03-111-1/+1
| | | | https://github.com/sourabhdeshmukh/eventlet/pull/1
* wsgi: latin-1 encoding dance for environ[PATH_INFO]Sergey Shepelev2018-03-113-4/+33
| | | | | https://www.python.org/dev/peps/pep-0333/#unicode-issues https://github.com/eventlet/eventlet/issues/468
* travis: allow fail python 3.7 see issue ↵fix-psycoSergey Shepelev2018-03-101-6/+3
| | | | https://github.com/eventlet/eventlet/issues/475
* moved function eventlet.support.capture_stderr to testsSergey Shepelev2018-03-105-28/+23
|
* travis: update test dependencies, use psycopg2-binarySergey Shepelev2018-03-092-11/+13
|
* support: psycopg2_patcher import module, not functionSergey Shepelev2018-03-091-3/+3
|
* Add Python 3.6Hugo2018-03-091-0/+1
|
* v0.22.1 releasev0.22.1Sergey Shepelev2018-02-174-2/+10
|
* event: Event.wait() timeout=None argument to be compatible with upstream CPythonevent-wait-timeoutSergey Shepelev2018-01-142-14/+45
| | | | https://github.com/eventlet/eventlet/issues/402
* greendns: Treat /etc/hosts entries case-insensitiveRalf Haferkamp2018-01-132-1/+17
| | | | | | | | | Hostname in /etc/hosts are not case-sensitive, this fixes HostsResolver() accordingly. eventlet#458 Co-Authored-By: Thomas Bechtold <tbechtold@suse.com>
* v0.22.0 releasev0.22.0Sergey Shepelev2018-01-124-2/+35
|
* travis: crutch to get ipv6 backtravis-ipv6-fixSergey Shepelev2017-12-091-1/+3
|
* Travis broke ipv6, allow failure; test against Python 2.7Sergey Shepelev2017-12-055-13/+40
|
* websocket: fd leak when client did not close connection properlyKonstantin Enchant2017-12-041-6/+22
| | | | https://github.com/eventlet/eventlet/pull/450
* Avoid dependency on enum-compatJames Page2017-12-031-1/+1
| | | | Directly depend on enum34, scoping requirement to < Python 3.4.
* wsgi: handle remote connection resetsStefan Nica2017-11-071-1/+6
| | | | | | | | | | While processing a WSGI request, if the remote client forcefully resets the connection while the request data is being read from the socket (e.g. HAProxy health check), the ECONNRESET socket error is not properly handled and may end up being logged in strerr or in a log file. https://github.com/eventlet/eventlet/issues/446
* Drop OpenSSL.rand supportHaikel Guemar2017-10-044-4/+1
| | | | | | PyOpenSSL deprecated OpenSSL.rand in 17.2.0 and removed it in 17.3.0. To comply, update min version in tests to 17.3.0 and removes it. https://pyopenssl.org/en/stable/changelog.html
* websocket: support permessage-deflate extension; Thanks to Costas Christofi ↵costasgambit2017-09-113-20/+471
| | | | | | | and Peter Kovary Support for compression extension as described in RFC7692 https://tools.ietf.org/html/rfc7692 https://github.com/eventlet/eventlet/pull/417
* init: second workaround for monotonic "no suitable implementation"; Thanks ↵monotonic-401Sergey Shepelev2017-09-071-0/+8
| | | | | | | | | | to Geoffrey Thomas Force sooner find_library child process by early import monotonic. Helps with gunicorn and possibly other applications. https://github.com/eventlet/eventlet/issues/401 https://github.com/benoitc/gunicorn/issues/1584
* patcher: workaround for monotonic "no suitable implementation"patcher-gethub-401Geoffrey Thomas2017-08-262-0/+12
| | | | | | | | | | | | | | In some cases -- notably with Python 2.7.13 and the default hub -- the process of importing the hub involves calling code in a module we monkey-patch. This leads to recursive imports: the first eventlet function will call get_hub(), which will try to import the hub, which will call a monkey-patched module, which will call get_hub() and try to import the hub again. To avoid this, make sure the hub is fully imported before monkey-patching anything. https://github.com/eventlet/eventlet/issues/401
* greendns: early socket.timeout was breaking IO retry loopsdns-from-address-433Sergey Shepelev2017-08-251-15/+28
| | | | https://github.com/eventlet/eventlet/issues/433
* travis: codecov flags format was running `tr` with invalid argumentsSergey Shepelev2017-08-191-1/+1
|
* socket: context manager supportMiguel Grinberg2017-08-121-0/+6
| | | | Fixes #430
* convenience: (SO_REUSEPORT) socket.error is not OSError on Python 2; Thanks ↵reuseport-380Sergey Shepelev2017-07-291-1/+2
| | | | | | to JacoFourie@github https://github.com/eventlet/eventlet/issues/380
* support: upgrade bundled dnspython to 1.16.0 (22e9de1d7957e)dns-427Sergey Shepelev2017-07-2540-1691/+2191
| | | | https://github.com/eventlet/eventlet/issues/427
* dns: reading /etc/hosts raised DeprecationWarning for universal lines on ↵Chris Kerr2017-07-172-11/+30
| | | | | | | Python 3.4+ Solved by always reading in binary mode with explicit decoding. Plus: new hosts parser in regex, better comment handling.
* Use tox's `TOXENV` environment variableAnthony Sottile2017-07-031-31/+31
|
* green.subprocess: keep CalledProcessError identity; Thanks to Linbing@githubSergey Shepelev2017-07-024-0/+29
| | | | https://github.com/eventlet/eventlet/issues/413
* convenience: SO_REUSEPORT is not available on WSL platform (Linux on Windows)Sergey Shepelev2017-06-022-1/+46
| | | | | https://github.com/eventlet/eventlet/issues/380 https://github.com/eventlet/eventlet/issues/418
* convenience: skip SO_REUSEPORT for bind on random port (0)listen-reuseSergey Shepelev2017-05-122-19/+56
| | | | https://github.com/eventlet/eventlet/issues/411
* patcher: set locked RLocks' owner only when patching existing locksQuan Tian2017-05-104-1/+40
| | | | | | | | | | | | | | | | | For Python 2, patching existing locks replaces RLock._RLock__owner with current thread ID no matter the old lock is locked or not and thus an unlocked RLock would have a non None owner (e.g. <_RLock owner=140106584489808 count=0>). Then if we acquire the RLock in the same thread, the method RLock.acquire would not invoke the _RLock__block.acquire() since it treats this is a recursive acquire by checking current thread ID. And then the following RLock.release would invoke the _RLock__block.release method resulting in the counter of Semaphore being improved to 2. There should be only two states being expected for RLock: 1. owner != None and count > 0 2. owner == None and count == 0 This patch fixs it by only setting locked RLocks' owner during patching.
* wsgi: close idle connections (also applies to websockets)wsgi-close-idle-188Sergey Shepelev2017-04-303-29/+115
| | | | https://github.com/eventlet/eventlet/issues/188
* wsgi: push deprecated options one stepSergey Shepelev2017-04-281-40/+40
| | | | + cosmetic/style changes
* queue: empty except was catching too muchSergey Shepelev2017-04-262-11/+22
| | | | https://github.com/eventlet/eventlet/issues/407
* Issue #405: GreenSocket.accept does not notify_open (#406)orishoshan2017-04-172-1/+69
| | | | | greenio: GreenSocket.accept does not notify_open https://github.com/eventlet/eventlet/issues/405
* greendns: be explicit about expecting bytes from sock.recvMatt Bennett2017-04-121-3/+3
| | | | https://github.com/eventlet/eventlet/pull/391
* update monotonic 1.3 5c0322dc559bf961f7e111d97cd3ed9ab5c1a73bmonotonic-13Sergey Shepelev2017-04-122-1/+3
| | | | https://github.com/eventlet/eventlet/issues/403
* v0.21.0 releasev0.21.0Sergey Shepelev2017-04-064-2/+28
|
* wsgi: log_output=False was not disabling startup and accepted messagesSergey Shepelev2017-04-052-6/+32
| | | | https://stackoverflow.com/questions/43211241/eventlet-wsgi-server-logging-wont-stop
* ssl: RecursionError on Python3.6+; Thanks to justdoit0823@github and Gevent ↵Sergey Shepelev2017-04-042-0/+36
| | | | | | developers https://github.com/eventlet/eventlet/issues/371
* New feature: Add zipkin tracing to eventletYuichi Bando2017-03-1718-0/+1139
| | | | | | | | | | | | | | | Zipkin is a trend distributed tracing framewrok developed at Twitter. Such tracing is useful for both developers and operatos to understand the behavior of complex distributed systems and find performance bottlenecks. This patch provides a WSGI application using eventlet with tracing facility that complies with Zipkin. Signed-off-by: Yuichi Bando <bando.yuichi@lab.ntt.co.jp> Original commit modified for PEP-8 fixes. https://github.com/eventlet/eventlet/pull/218
* greenio: Fixed OSError: [WinError 10038] Socket operation on nonsocketFeng2017-03-071-1/+1
| | | | https://github.com/eventlet/eventlet/pull/397
* db_pool: proxy Connection.set_isolation_level()Sergey Shepelev2017-02-252-144/+100
| | | | https://github.com/eventlet/eventlet/issues/389
* dns: EAI_NODATA was removed from RFC3493 and FreeBSDeainodata-393Sergey Shepelev2017-02-251-2/+8
| | | | | | | | If your code depends on EAI_NODATA, run with EVENTLET_DEPRECATED_EAI_NODATA=yes during transition to EAI_NONAME. Support for EAI_NODATA will be removed in future versions. https://github.com/eventlet/eventlet/issues/393
* dns: EVENTLET_NO_GREENDNS option is back, green is still defaultdns-383Sergey Shepelev2017-02-171-13/+7
| | | | | | | | Sorry for negation in name, perfectionists want EVENTLET_GREEN_DNS=no but I figured it's lesser evil than reviving same behavior under different name. This works around https://github.com/eventlet/eventlet/issues/383 at the cost of resolving blocking other greenthreads.
* hubs: use monotonic clock by default (bundled package); Thanks to Roman ↵Sergey Shepelev2017-02-168-14/+188
| | | | | | | | | | Podoliaka and Victor Stinner eventlet/support/monotonic.py is copied by curl from specific version on Github. Change and run bin/pull-monotonic script to update to newer version. https://github.com/eventlet/eventlet/pull/388 https://github.com/eventlet/eventlet/pull/303
* dns: hosts file was consulted after nameserversSergey Shepelev2017-02-162-43/+81
| | | | | | | This bug was introduced in v0.20.1 Now the behavior is as expected: first check hosts file, if it contains address - short return without querying nameservers. https://github.com/eventlet/eventlet/issues/387
* green.zmq: support RCVTIMEO (receive timeout)talwrii2017-02-163-2/+35
| | | | | https://github.com/eventlet/eventlet/issues/282 https://github.com/eventlet/eventlet/pull/283