14
0

- update to 0.24.1:

* greendns: don't contact nameservers if one entry is returned from hosts file; Thanks to Daniel Alvarez
  * greendns: Fix infinite loop when UDP source address mismatch; Thanks to Lon Hohberger
  * greendns: Fix bad ipv6 comparison; Thanks to Lon Hohberger
  * wsgi: Use byte strings on py2 and unicode strings on py3; Thanks to Tim Burke
  * pools: put to empty pool would block sometimes; Thanks to Sam Merritt
  * greendns: resolving over TCP produced ValueError; Thanks to Jaume Marhuenda
  * support.greendns: ImportError when dns.rdtypes was imported before eventlet; Thanks to Jaume Marhuenda
  * greendns: full comment lines were not skipped; Thanks to nat-goodspeed
  * Drop support for Python3.3; Python2.6 and python-epoll package
  * external dependencies for six, monotonic, dnspython; Thanks to nat-goodspeed
  * wsgi: Don't strip all Unicode whitespace from headers on py3; Thanks to Tim Burke
  * green.threading: current_thread() did not see new monkey-patched threads; Thanks to Jake Tesler
  * tpool: exception in tpool-ed call leaked memory via backtrace
  * wsgi: latin-1 encoding dance for environ[PATH_INFO]
  * Fixed issue installing excess enum34 on Python3.4+ (rebuild with updated setuptools)
  * event: Event.wait() timeout=None argument to be compatible with upstream CPython
  * greendns: Treat /etc/hosts entries case-insensitive; Thanks to Ralf Haferkamp
  * convenience: (SO_REUSEPORT) socket.error is not OSError on Python 2; Thanks to JacoFourie@github
  * convenience: SO_REUSEPORT is not available on WSL platform (Linux on Windows)
  * convenience: skip SO_REUSEPORT for bind on random port (0)
  * dns: reading /etc/hosts raised DeprecationWarning for universal lines on Python 3.4+; Thanks to Chris Kerr
  * green.openssl: Drop OpenSSL.rand support; Thanks to Haikel Guemar
  * green.subprocess: keep CalledProcessError identity; Thanks to Linbing@github
  * greendns: be explicit about expecting bytes from sock.recv; Thanks to Matt Bennett
  * greendns: early socket.timeout was breaking IO retry loops
  * GreenSocket.accept does not notify_open; Thanks to orishoshan
  * patcher: set locked RLocks' owner only when patching existing locks; Thanks to Quan Tian
  * patcher: workaround for monotonic "no suitable implementation"; Thanks to Geoffrey Thomas
  * queue: empty except was catching too much

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-eventlet?expand=0&rev=53
This commit is contained in:
Thomas Bechtold
2018-12-06 15:44:37 +00:00
committed by Git OBS Bridge
parent 718fe09a9d
commit f7e5fd44cd
5 changed files with 71 additions and 27 deletions

View File

@@ -1,18 +0,0 @@
diff --git a/eventlet/wsgi.py b/eventlet/wsgi.py
index ef458aa..3c848b7 100644
--- a/eventlet/wsgi.py
+++ b/eventlet/wsgi.py
@@ -346,7 +346,12 @@ class HttpProtocol(BaseHTTPServer.BaseHTTPRequestHandler):
except greenio.SSL.ZeroReturnError:
self.raw_requestline = ''
except socket.error as e:
- if support.get_errno(e) not in BAD_SOCK:
+ last_errno = support.get_errno(e)
+ if last_errno in BROKEN_SOCK:
+ self.server.log.debug('(%s) connection reset by peer %r',
+ self.server.pid,
+ self.client_address)
+ elif last_errno not in BAD_SOCK:
raise
self.raw_requestline = ''

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:2e17cda85f2003796f13de0e6c59a5253c0afd1f45dfc97bb9b6bfb8962f7895
size 466828

3
eventlet-0.24.1.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d9d31a3c8dbcedbcce5859a919956d934685b17323fc80e1077cb344a2ffa68d
size 391579

View File

@@ -1,3 +1,67 @@
-------------------------------------------------------------------
Thu Dec 6 15:31:02 UTC 2018 - Thomas Bechtold <tbechtold@suse.com>
- update to 0.24.1:
* greendns: don't contact nameservers if one entry is returned from hosts file; Thanks to Daniel Alvarez
* greendns: Fix infinite loop when UDP source address mismatch; Thanks to Lon Hohberger
* greendns: Fix bad ipv6 comparison; Thanks to Lon Hohberger
* wsgi: Use byte strings on py2 and unicode strings on py3; Thanks to Tim Burke
* pools: put to empty pool would block sometimes; Thanks to Sam Merritt
* greendns: resolving over TCP produced ValueError; Thanks to Jaume Marhuenda
* support.greendns: ImportError when dns.rdtypes was imported before eventlet; Thanks to Jaume Marhuenda
* greendns: full comment lines were not skipped; Thanks to nat-goodspeed
* Drop support for Python3.3; Python2.6 and python-epoll package
* external dependencies for six, monotonic, dnspython; Thanks to nat-goodspeed
* wsgi: Don't strip all Unicode whitespace from headers on py3; Thanks to Tim Burke
* green.threading: current_thread() did not see new monkey-patched threads; Thanks to Jake Tesler
* tpool: exception in tpool-ed call leaked memory via backtrace
* wsgi: latin-1 encoding dance for environ[PATH_INFO]
* Fixed issue installing excess enum34 on Python3.4+ (rebuild with updated setuptools)
* event: Event.wait() timeout=None argument to be compatible with upstream CPython
* greendns: Treat /etc/hosts entries case-insensitive; Thanks to Ralf Haferkamp
* convenience: (SO_REUSEPORT) socket.error is not OSError on Python 2; Thanks to JacoFourie@github
* convenience: SO_REUSEPORT is not available on WSL platform (Linux on Windows)
* convenience: skip SO_REUSEPORT for bind on random port (0)
* dns: reading /etc/hosts raised DeprecationWarning for universal lines on Python 3.4+; Thanks to Chris Kerr
* green.openssl: Drop OpenSSL.rand support; Thanks to Haikel Guemar
* green.subprocess: keep CalledProcessError identity; Thanks to Linbing@github
* greendns: be explicit about expecting bytes from sock.recv; Thanks to Matt Bennett
* greendns: early socket.timeout was breaking IO retry loops
* GreenSocket.accept does not notify_open; Thanks to orishoshan
* patcher: set locked RLocks' owner only when patching existing locks; Thanks to Quan Tian
* patcher: workaround for monotonic "no suitable implementation"; Thanks to Geoffrey Thomas
* queue: empty except was catching too much
* socket: context manager support; Thanks to Miguel Grinberg
* support: update monotonic 1.3 (5c0322dc559bf)
* support: upgrade bundled dnspython to 1.16.0 (22e9de1d7957e) https://github.com/eventlet/eventlet/issues/427
* websocket: fd leak when client did not close connection properly; Thanks to Konstantin Enchant
* websocket: support permessage-deflate extension; Thanks to Costas Christofi and Peter Kovary
* wsgi: close idle connections (also applies to websockets)
* wsgi: deprecated options are one step closer to removal
* wsgi: handle remote connection resets; Thanks to Stefan Nica
* New timeout error API: .is_timeout=True on exception object
It's now easy to test if network error is transient and retry is appropriate.
Please spread the word and invite other libraries to support this interface.
* hubs: use monotonic clock by default (bundled package); Thanks to Roman Podoliaka and Victor Stinner
* dns: EVENTLET_NO_GREENDNS option is back, green is still default
* dns: hosts file was consulted after nameservers
* ssl: RecursionError on Python3.6+; Thanks to justdoit0823@github and Gevent developers
* wsgi: log_output=False was not disabling startup and accepted messages
* greenio: Fixed OSError: [WinError 10038] Socket operation on nonsocket
* dns: EAI_NODATA was removed from RFC3493 and FreeBSD
* green.select: fix mark_as_closed() wrong number of args
* green.zmq: socket.{recv,send}_* signatures did not match recent upstream pyzmq
* New feature: Add zipkin tracing to eventlet
* db_pool: proxy Connection.set_isolation_level()
* green.zmq: support RCVTIMEO (receive timeout)
* green.profile: Python3 compatibility; Thanks to Artur Stawiarski
* support: upgrade bundled six to 1.10 (dbfbfc818e3d)
* python3.6: http.client.request support chunked_encoding
* dns: try unqualified queries as top level
* test_import_patched_defaults bended to play with pyopenssl>=16.1.0
* Explicit environ flag for importing eventlet.__version__ without ignoring import errors
* Type check Semaphore, GreenPool arguments; Thanks to Matthew D. Pagel
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Dec 6 13:26:44 UTC 2018 - Tomáš Chvátal <tchvatal@suse.com> Thu Dec 6 13:26:44 UTC 2018 - Tomáš Chvátal <tchvatal@suse.com>

View File

@@ -18,16 +18,13 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}} %{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-eventlet Name: python-eventlet
Version: 0.20.0 Version: 0.24.1
Release: 0 Release: 0
Summary: Concurrent networking library for Python Summary: Concurrent networking library for Python
License: MIT License: MIT
Group: Development/Languages/Python Group: Development/Languages/Python
URL: http://eventlet.net URL: http://eventlet.net
Source: https://files.pythonhosted.org/packages/source/e/eventlet/eventlet-%{version}.tar.gz Source: https://files.pythonhosted.org/packages/source/e/eventlet/eventlet-%{version}.tar.gz
Patch0: 0001-Fix-SSL-connection-reset-errors.patch
# PATCH-FIX-UPSTREAM PR-459.patch -- https://github.com/eventlet/eventlet/pull/459
Patch1: PR-459.patch
BuildRequires: %{python_module Sphinx} BuildRequires: %{python_module Sphinx}
BuildRequires: %{python_module greenlet} BuildRequires: %{python_module greenlet}
BuildRequires: %{python_module setuptools} BuildRequires: %{python_module setuptools}
@@ -35,7 +32,10 @@ BuildRequires: fdupes
BuildRequires: python-rpm-macros BuildRequires: python-rpm-macros
# eventlet parses /etc/protocols which is not available in normal build envs # eventlet parses /etc/protocols which is not available in normal build envs
Requires: netcfg Requires: netcfg
Requires: python-dnspython >= 1.15.0
Requires: python-greenlet >= 0.3 Requires: python-greenlet >= 0.3
Requires: python-monotonic >= 1.4
Requires: python-six >= 1.10.0
BuildArch: noarch BuildArch: noarch
%if %{python_version_nodots} < 34 %if %{python_version_nodots} < 34
Requires: python-enum34 Requires: python-enum34
@@ -63,8 +63,6 @@ for Python that allows changing how code is run.
%prep %prep
%setup -q -n eventlet-%{version} %setup -q -n eventlet-%{version}
%patch0 -p1
%patch1 -p1
sed -i '/enum.compat/d' setup.py # crude way to drop the strange "enum-compat" requirement sed -i '/enum.compat/d' setup.py # crude way to drop the strange "enum-compat" requirement
sed -i "s|^#!.*||" eventlet/support/greendns.py # Fix non-executable script sed -i "s|^#!.*||" eventlet/support/greendns.py # Fix non-executable script