mirror of
https://github.com/frappe/gunicorn.git
synced 2026-01-14 11:09:11 +08:00
Python 3.3+: replace deprecated aliases
since 3.3: EnvironmentError, IOError, socket.error and select.error are merged into IOError. They may now return a more specific subclass - which this commit does not utilize yet.
This commit is contained in:
parent
ec85b32d3b
commit
4f7766585d
@ -17,7 +17,7 @@ class MemoryWatch(threading.Thread):
|
||||
def memory_usage(self, pid):
|
||||
try:
|
||||
out = commands.getoutput("ps -o rss -p %s" % pid)
|
||||
except IOError:
|
||||
except OSError:
|
||||
return -1
|
||||
used_mem = sum(int(x) for x in out.split('\n')[1:])
|
||||
return used_mem
|
||||
|
||||
@ -332,7 +332,7 @@ class Arbiter:
|
||||
"""
|
||||
try:
|
||||
os.write(self.PIPE[1], b'.')
|
||||
except IOError as e:
|
||||
except OSError as e:
|
||||
if e.errno not in [errno.EAGAIN, errno.EINTR]:
|
||||
raise
|
||||
|
||||
@ -361,7 +361,7 @@ class Arbiter:
|
||||
return
|
||||
while os.read(self.PIPE[0], 1):
|
||||
pass
|
||||
except (select.error, OSError) as e:
|
||||
except OSError as e:
|
||||
# TODO: select.error is a subclass of OSError since Python 3.3.
|
||||
error_number = getattr(e, 'errno', e.args[0])
|
||||
if error_number not in [errno.EAGAIN, errno.EINTR]:
|
||||
|
||||
@ -36,7 +36,7 @@ class Spew:
|
||||
try:
|
||||
src = inspect.getsourcelines(frame)
|
||||
line = src[lineno]
|
||||
except IOError:
|
||||
except OSError:
|
||||
line = 'Unknown code named [%s]. VM instruction #%d' % (
|
||||
frame.f_code.co_name, frame.f_lasti)
|
||||
if self.trace_names is None or name in self.trace_names:
|
||||
|
||||
@ -372,13 +372,13 @@ class Request(Message):
|
||||
try:
|
||||
socket.inet_pton(socket.AF_INET, s_addr)
|
||||
socket.inet_pton(socket.AF_INET, d_addr)
|
||||
except socket.error:
|
||||
except OSError:
|
||||
raise InvalidProxyLine(line)
|
||||
elif proto == "TCP6":
|
||||
try:
|
||||
socket.inet_pton(socket.AF_INET6, s_addr)
|
||||
socket.inet_pton(socket.AF_INET6, d_addr)
|
||||
except socket.error:
|
||||
except OSError:
|
||||
raise InvalidProxyLine(line)
|
||||
|
||||
try:
|
||||
|
||||
@ -79,7 +79,7 @@ class Pidfile:
|
||||
if e.args[0] == errno.ESRCH:
|
||||
return
|
||||
raise
|
||||
except IOError as e:
|
||||
except OSError as e:
|
||||
if e.args[0] == errno.ENOENT:
|
||||
return
|
||||
raise
|
||||
|
||||
@ -42,7 +42,7 @@ class BaseSocket:
|
||||
and hasattr(socket, 'SO_REUSEPORT')): # pragma: no cover
|
||||
try:
|
||||
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEPORT, 1)
|
||||
except socket.error as err:
|
||||
except OSError as err:
|
||||
if err.errno not in (errno.ENOPROTOOPT, errno.EINVAL):
|
||||
raise
|
||||
if not bound:
|
||||
@ -65,7 +65,7 @@ class BaseSocket:
|
||||
|
||||
try:
|
||||
self.sock.close()
|
||||
except socket.error as e:
|
||||
except OSError as e:
|
||||
self.log.info("Error while closing socket %s", str(e))
|
||||
|
||||
self.sock = None
|
||||
@ -182,7 +182,7 @@ def create_sockets(conf, log, fds=None):
|
||||
for i in range(5):
|
||||
try:
|
||||
sock = sock_type(addr, conf, log)
|
||||
except socket.error as e:
|
||||
except OSError as e:
|
||||
if e.args[0] == errno.EADDRINUSE:
|
||||
log.error("Connection in use: %s", str(addr))
|
||||
if e.args[0] == errno.EADDRNOTAVAIL:
|
||||
|
||||
@ -216,7 +216,7 @@ def unlink(filename):
|
||||
def is_ipv6(addr):
|
||||
try:
|
||||
socket.inet_pton(socket.AF_INET6, addr)
|
||||
except socket.error: # not a valid address
|
||||
except OSError: # not a valid address
|
||||
return False
|
||||
except ValueError: # ipv6 not supported on this platform
|
||||
return False
|
||||
@ -268,7 +268,7 @@ def set_non_blocking(fd):
|
||||
def close(sock):
|
||||
try:
|
||||
sock.close()
|
||||
except socket.error:
|
||||
except OSError:
|
||||
pass
|
||||
|
||||
|
||||
@ -565,7 +565,7 @@ def check_is_writable(path):
|
||||
try:
|
||||
with open(path, 'a') as f:
|
||||
f.close()
|
||||
except IOError as e:
|
||||
except OSError as e:
|
||||
raise RuntimeError("Error: '%s' isn't writable [%r]" % (path, e))
|
||||
|
||||
|
||||
@ -586,7 +586,7 @@ def has_fileno(obj):
|
||||
# check BytesIO case and maybe others
|
||||
try:
|
||||
obj.fileno()
|
||||
except (AttributeError, IOError, io.UnsupportedOperation):
|
||||
except (AttributeError, OSError, io.UnsupportedOperation):
|
||||
return False
|
||||
|
||||
return True
|
||||
|
||||
@ -59,7 +59,7 @@ class AsyncWorker(base.Worker):
|
||||
except ssl.SSLError:
|
||||
# pass to next try-except level
|
||||
util.reraise(*sys.exc_info())
|
||||
except EnvironmentError:
|
||||
except OSError:
|
||||
# pass to next try-except level
|
||||
util.reraise(*sys.exc_info())
|
||||
except Exception as e:
|
||||
@ -71,7 +71,7 @@ class AsyncWorker(base.Worker):
|
||||
else:
|
||||
self.log.debug("Error processing SSL request.")
|
||||
self.handle_error(req, client, addr, e)
|
||||
except EnvironmentError as e:
|
||||
except OSError as e:
|
||||
if e.errno not in (errno.EPIPE, errno.ECONNRESET, errno.ENOTCONN):
|
||||
self.log.exception("Socket error processing request.")
|
||||
else:
|
||||
@ -123,7 +123,7 @@ class AsyncWorker(base.Worker):
|
||||
raise StopIteration()
|
||||
except StopIteration:
|
||||
raise
|
||||
except EnvironmentError:
|
||||
except OSError:
|
||||
# If the original exception was a socket.error we delegate
|
||||
# handling it to the caller (where handle() might ignore it)
|
||||
util.reraise(*sys.exc_info())
|
||||
@ -135,7 +135,7 @@ class AsyncWorker(base.Worker):
|
||||
try:
|
||||
sock.shutdown(socket.SHUT_RDWR)
|
||||
sock.close()
|
||||
except EnvironmentError:
|
||||
except OSError:
|
||||
pass
|
||||
raise StopIteration()
|
||||
raise
|
||||
|
||||
@ -127,7 +127,7 @@ class ThreadWorker(base.Worker):
|
||||
with self._lock:
|
||||
self.poller.register(conn.sock, selectors.EVENT_READ,
|
||||
partial(self.on_client_socket_readable, conn))
|
||||
except EnvironmentError as e:
|
||||
except OSError as e:
|
||||
if e.errno not in (errno.EAGAIN, errno.ECONNABORTED,
|
||||
errno.EWOULDBLOCK):
|
||||
raise
|
||||
@ -170,7 +170,7 @@ class ThreadWorker(base.Worker):
|
||||
with self._lock:
|
||||
try:
|
||||
self.poller.unregister(conn.sock)
|
||||
except EnvironmentError as e:
|
||||
except OSError as e:
|
||||
if e.errno != errno.EBADF:
|
||||
raise
|
||||
except KeyError:
|
||||
@ -294,7 +294,7 @@ class ThreadWorker(base.Worker):
|
||||
self.log.debug("Error processing SSL request.")
|
||||
self.handle_error(req, conn.sock, conn.client, e)
|
||||
|
||||
except EnvironmentError as e:
|
||||
except OSError as e:
|
||||
if e.errno not in (errno.EPIPE, errno.ECONNRESET, errno.ENOTCONN):
|
||||
self.log.exception("Socket error processing request.")
|
||||
else:
|
||||
@ -348,7 +348,7 @@ class ThreadWorker(base.Worker):
|
||||
if resp.should_close():
|
||||
self.log.debug("Closing connection.")
|
||||
return False
|
||||
except EnvironmentError:
|
||||
except OSError:
|
||||
# pass to next try-except level
|
||||
util.reraise(*sys.exc_info())
|
||||
except Exception:
|
||||
@ -359,7 +359,7 @@ class ThreadWorker(base.Worker):
|
||||
try:
|
||||
conn.sock.shutdown(socket.SHUT_RDWR)
|
||||
conn.sock.close()
|
||||
except EnvironmentError:
|
||||
except OSError:
|
||||
pass
|
||||
raise StopIteration()
|
||||
raise
|
||||
|
||||
@ -39,7 +39,7 @@ class SyncWorker(base.Worker):
|
||||
os.read(self.PIPE[0], 1)
|
||||
return ret[0]
|
||||
|
||||
except select.error as e:
|
||||
except OSError as e:
|
||||
if e.args[0] == errno.EINTR:
|
||||
return self.sockets
|
||||
if e.args[0] == errno.EBADF:
|
||||
@ -72,7 +72,7 @@ class SyncWorker(base.Worker):
|
||||
# process.
|
||||
continue
|
||||
|
||||
except EnvironmentError as e:
|
||||
except OSError as e:
|
||||
if e.errno not in (errno.EAGAIN, errno.ECONNABORTED,
|
||||
errno.EWOULDBLOCK):
|
||||
raise
|
||||
@ -101,7 +101,7 @@ class SyncWorker(base.Worker):
|
||||
|
||||
try:
|
||||
self.accept(listener)
|
||||
except EnvironmentError as e:
|
||||
except OSError as e:
|
||||
if e.errno not in (errno.EAGAIN, errno.ECONNABORTED,
|
||||
errno.EWOULDBLOCK):
|
||||
raise
|
||||
@ -143,7 +143,7 @@ class SyncWorker(base.Worker):
|
||||
else:
|
||||
self.log.debug("Error processing SSL request.")
|
||||
self.handle_error(req, client, addr, e)
|
||||
except EnvironmentError as e:
|
||||
except OSError as e:
|
||||
if e.errno not in (errno.EPIPE, errno.ECONNRESET, errno.ENOTCONN):
|
||||
self.log.exception("Socket error processing request.")
|
||||
else:
|
||||
@ -187,7 +187,7 @@ class SyncWorker(base.Worker):
|
||||
self.log.access(resp, req, environ, request_time)
|
||||
if hasattr(respiter, "close"):
|
||||
respiter.close()
|
||||
except EnvironmentError:
|
||||
except OSError:
|
||||
# pass to next try-except level
|
||||
util.reraise(*sys.exc_info())
|
||||
except Exception:
|
||||
@ -198,7 +198,7 @@ class SyncWorker(base.Worker):
|
||||
try:
|
||||
client.shutdown(socket.SHUT_RDWR)
|
||||
client.close()
|
||||
except EnvironmentError:
|
||||
except OSError:
|
||||
pass
|
||||
raise StopIteration()
|
||||
raise
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user