r47009 - Merge forward.
hawkowl-TA+aISz0psMTMxyoc4vAAJOcrHinNvQL0E9HWUfgJXw@public.gmane.org Thu, 17 Mar 2016 08:04:40 -0600 (MDT)
| Newsgroups | gmane.comp.python.twisted.commits |
|---|---|
| Message-ID | <[email protected]> |
Author: hawkowl
Date: Thu Mar 17 08:04:33 2016
New Revision: 47009
Modified:
branches/no-call-with-logger-6789-2/twisted/internet/_glibbase.py
branches/no-call-with-logger-6789-2/twisted/internet/_threadedselect.py
branches/no-call-with-logger-6789-2/twisted/internet/base.py
branches/no-call-with-logger-6789-2/twisted/internet/cfreactor.py
branches/no-call-with-logger-6789-2/twisted/internet/epollreactor.py
branches/no-call-with-logger-6789-2/twisted/internet/iocpreactor/reactor.py
branches/no-call-with-logger-6789-2/twisted/internet/kqreactor.py
branches/no-call-with-logger-6789-2/twisted/internet/pollreactor.py
branches/no-call-with-logger-6789-2/twisted/internet/selectreactor.py
branches/no-call-with-logger-6789-2/twisted/internet/test/connectionmixins.py
branches/no-call-with-logger-6789-2/twisted/internet/test/test_udp.py
branches/no-call-with-logger-6789-2/twisted/internet/win32eventreactor.py
Log:
Merge forward.
Modified: branches/no-call-with-logger-6789-2/twisted/internet/_glibbase.py
==============================================================================
--- branches/no-call-with-logger-6789-2/twisted/internet/_glibbase.py (original)
+++ branches/no-call-with-logger-6789-2/twisted/internet/_glibbase.py Thu Mar 17 08:04:33 2016
@@ -166,8 +166,10 @@
"""
Called by event loop when an I/O event occurs.
"""
- log.callWithLogger(
- source, self._doReadOrWrite, source, source, condition)
+ try:
+ self._doReadOrWrite(source, source, condition)
+ except Exception:
+ log.err()
return True # True = don't auto-remove the source
Modified: branches/no-call-with-logger-6789-2/twisted/internet/_threadedselect.py
==============================================================================
--- branches/no-call-with-logger-6789-2/twisted/internet/_threadedselect.py (original)
+++ branches/no-call-with-logger-6789-2/twisted/internet/_threadedselect.py Thu Mar 17 08:04:33 2016
@@ -185,14 +185,16 @@
writes = self.writes
_drdw = self._doReadOrWrite
- _logrun = log.callWithLogger
for selectables, method, dct in ((r, "doRead", reads), (w, "doWrite", writes)):
for selectable in selectables:
# if this was disconnected in another thread, kill it.
if selectable not in dct:
continue
# This for pausing input when we're not ready for more.
- _logrun(selectable, _drdw, selectable, method, dct)
+ try:
+ _drdw(selectable, method, dct)
+ except Exception:
+ log.err()
#print >>sys.stderr, "done _process_Notify"
def _process_Failure(self, f):
Modified: branches/no-call-with-logger-6789-2/twisted/internet/base.py
==============================================================================
--- branches/no-call-with-logger-6789-2/twisted/internet/base.py (original)
+++ branches/no-call-with-logger-6789-2/twisted/internet/base.py Thu Mar 17 08:04:33 2016
@@ -615,14 +615,16 @@
log.msg("Received SIGTERM, shutting down.")
self.callFromThread(self.stop)
+
def disconnectAll(self):
"""Disconnect every reader, and writer in the system.
"""
selectables = self.removeAll()
for reader in selectables:
- log.callWithLogger(reader,
- reader.connectionLost,
- failure.Failure(main.CONNECTION_LOST))
+ try:
+ reader.connectionLost(failure.Failure(main.CONNECTION_LOST))
+ except Exception:
+ log.err()
def iterate(self, delay=0):
Modified: branches/no-call-with-logger-6789-2/twisted/internet/cfreactor.py
==============================================================================
--- branches/no-call-with-logger-6789-2/twisted/internet/cfreactor.py (original)
+++ branches/no-call-with-logger-6789-2/twisted/internet/cfreactor.py Thu Mar 17 08:04:33 2016
@@ -187,12 +187,16 @@
# actually attempt a doRead/doWrite first. -glyph
if isRead:
if rw[_READ]:
- why = log.callWithLogger(
- readWriteDescriptor, readWriteDescriptor.doRead)
+ try:
+ why = readWriteDescriptor.doRead()
+ except Exception:
+ log.err()
else:
if rw[_WRITE]:
- why = log.callWithLogger(
- readWriteDescriptor, readWriteDescriptor.doWrite)
+ try:
+ why = readWriteDescriptor.doWrite()
+ except Exception:
+ log.err()
except:
why = sys.exc_info()[1]
log.err()
@@ -497,5 +501,3 @@
from twisted.internet.main import installReactor
installReactor(reactor)
return reactor
-
-
Modified: branches/no-call-with-logger-6789-2/twisted/internet/epollreactor.py
==============================================================================
--- branches/no-call-with-logger-6789-2/twisted/internet/epollreactor.py (original)
+++ branches/no-call-with-logger-6789-2/twisted/internet/epollreactor.py Thu Mar 17 08:04:33 2016
@@ -393,7 +393,10 @@
except KeyError:
pass
else:
- log.callWithLogger(selectable, _drdw, selectable, fd, event)
+ try:
+ _drdw(selectable, fd, event)
+ except Exception:
+ log.err()
doIteration = doPoll
Modified: branches/no-call-with-logger-6789-2/twisted/internet/iocpreactor/reactor.py
==============================================================================
--- branches/no-call-with-logger-6789-2/twisted/internet/iocpreactor/reactor.py (original)
+++ branches/no-call-with-logger-6789-2/twisted/internet/iocpreactor/reactor.py Thu Mar 17 08:04:33 2016
@@ -103,8 +103,10 @@
break
if key != KEY_WAKEUP:
assert key == KEY_NORMAL
- log.callWithLogger(evt.owner, self._callEventCallback,
- rc, bytes, evt)
+ try:
+ self._callEventCallback(rc, bytes, evt)
+ except Exception:
+ log.err()
processed_events += 1
if processed_events >= EVENTS_PER_LOOP:
break
Modified: branches/no-call-with-logger-6789-2/twisted/internet/kqreactor.py
==============================================================================
--- branches/no-call-with-logger-6789-2/twisted/internet/kqreactor.py (original)
+++ branches/no-call-with-logger-6789-2/twisted/internet/kqreactor.py Thu Mar 17 08:04:33 2016
@@ -267,7 +267,10 @@
# handler disconnects another.
continue
else:
- log.callWithLogger(selectable, _drdw, selectable, fd, event)
+ try:
+ _drdw(selectable, fd, event)
+ except Exception:
+ log.err()
def _doWriteOrRead(self, selectable, fd, event):
Modified: branches/no-call-with-logger-6789-2/twisted/internet/pollreactor.py
==============================================================================
--- branches/no-call-with-logger-6789-2/twisted/internet/pollreactor.py (original)
+++ branches/no-call-with-logger-6789-2/twisted/internet/pollreactor.py Thu Mar 17 08:04:33 2016
@@ -166,7 +166,10 @@
# Handles the infrequent case where one selectable's
# handler disconnects another.
continue
- log.callWithLogger(selectable, _drdw, selectable, fd, event)
+ try:
+ _drdw(selectable, fd, event)
+ except Exception:
+ log.err()
doIteration = doPoll
Modified: branches/no-call-with-logger-6789-2/twisted/internet/selectreactor.py
==============================================================================
--- branches/no-call-with-logger-6789-2/twisted/internet/selectreactor.py (original)
+++ branches/no-call-with-logger-6789-2/twisted/internet/selectreactor.py Thu Mar 17 08:04:33 2016
@@ -131,7 +131,6 @@
raise
_drdw = self._doReadOrWrite
- _logrun = log.callWithLogger
for selectables, method, fdset in ((r, "doRead", self._reads),
(w,"doWrite", self._writes)):
for selectable in selectables:
@@ -140,7 +139,10 @@
if selectable not in fdset:
continue
# This for pausing input when we're not ready for more.
- _logrun(selectable, _drdw, selectable, method)
+ try:
+ _drdw(selectable, method)
+ except Exception:
+ log.err()
doIteration = doSelect
Modified: branches/no-call-with-logger-6789-2/twisted/internet/test/connectionmixins.py
==============================================================================
--- branches/no-call-with-logger-6789-2/twisted/internet/test/connectionmixins.py (original)
+++ branches/no-call-with-logger-6789-2/twisted/internet/test/connectionmixins.py Thu Mar 17 08:04:33 2016
@@ -15,10 +15,9 @@
from zope.interface.verify import verifyObject
-from twisted.python import context, log
+from twisted.python import log
from twisted.python.failure import Failure
from twisted.python.runtime import platform
-from twisted.python.log import ILogContext, msg, err
from twisted.internet.defer import Deferred, gatherResults
from twisted.internet.interfaces import IConnector, IReactorFDSet
from twisted.internet.protocol import ClientFactory, Protocol, ServerFactory
@@ -248,7 +247,7 @@
def clientConnectionFailed(self, connector, reason):
self.failReason = reason
- msg("Stop(CF) cCFailed: %s" % (reason.getErrorMessage(),))
+ log.msg("Stop(CF) cCFailed: %s" % (reason.getErrorMessage(),))
self.reactor.stop()
@@ -265,16 +264,16 @@
def connectionMade(self):
- msg("ClosingLaterProtocol.connectionMade")
+ log.msg("ClosingLaterProtocol.connectionMade")
def dataReceived(self, bytes):
- msg("ClosingLaterProtocol.dataReceived %r" % (bytes,))
+ log.msg("ClosingLaterProtocol.dataReceived %r" % (bytes,))
self.transport.loseConnection()
def connectionLost(self, reason):
- msg("ClosingLaterProtocol.connectionLost")
+ log.msg("ClosingLaterProtocol.connectionLost")
self.lostConnectionReason = reason
self.onConnectionLost.callback(self)
@@ -290,37 +289,6 @@
endpoints = None
- def test_logPrefix(self):
- """
- Client and server transports implement L{ILoggingContext.logPrefix} to
- return a message reflecting the protocol they are running.
- """
- class CustomLogPrefixProtocol(ConnectableProtocol):
- def __init__(self, prefix):
- self._prefix = prefix
- self.system = None
-
- def connectionMade(self):
- self.transport.write(b"a")
-
- def logPrefix(self):
- return self._prefix
-
- def dataReceived(self, bytes):
- self.system = context.get(ILogContext)["system"]
- self.transport.write(b"b")
- # Only close connection if both sides have received data, so
- # that both sides have system set.
- if b"b" in bytes:
- self.transport.loseConnection()
-
- client = CustomLogPrefixProtocol("Custom Client")
- server = CustomLogPrefixProtocol("Custom Server")
- runProtocolsWithReactor(self, server, client, self.endpoints)
- self.assertIn("Custom Client", client.system)
- self.assertIn("Custom Server", server.system)
-
-
def test_writeAfterDisconnect(self):
"""
After a connection is disconnected, L{ITransport.write} and
@@ -335,19 +303,19 @@
portDeferred = self.endpoints.server(reactor).listen(
ServerFactory.forProtocol(protocol))
def listening(port):
- msg("Listening on %r" % (port.getHost(),))
+ log.msg("Listening on %r" % (port.getHost(),))
endpoint = self.endpoints.client(reactor, port.getHost())
lostConnectionDeferred = Deferred()
protocol = lambda: ClosingLaterProtocol(lostConnectionDeferred)
client = endpoint.connect(ClientFactory.forProtocol(protocol))
def write(proto):
- msg("About to write to %r" % (proto,))
+ log.msg("About to write to %r" % (proto,))
proto.transport.write(b'x')
client.addCallbacks(write, lostConnectionDeferred.errback)
def disconnected(proto):
- msg("%r disconnected" % (proto,))
+ log.msg("%r disconnected" % (proto,))
proto.transport.write(b"some bytes to get lost")
proto.transport.writeSequence([b"some", b"more"])
finished.append(True)
@@ -359,7 +327,7 @@
def onListen():
portDeferred.addCallback(listening)
- portDeferred.addErrback(err)
+ portDeferred.addErrback(log.err)
portDeferred.addCallback(lambda ignored: reactor.stop())
needsRunningReactor(reactor, onListen)
@@ -380,13 +348,13 @@
portDeferred = self.endpoints.server(reactor).listen(
ServerFactory.forProtocol(Protocol))
def listening(port):
- msg("Listening on %r" % (port.getHost(),))
+ log.msg("Listening on %r" % (port.getHost(),))
endpoint = self.endpoints.client(reactor, port.getHost())
client = endpoint.connect(
ClientFactory.forProtocol(lambda: clientProtocol))
def disconnect(proto):
- msg("About to disconnect %r" % (proto,))
+ log.msg("About to disconnect %r" % (proto,))
proto.transport.loseConnection()
client.addCallback(disconnect)
client.addErrback(lostConnectionDeferred.errback)
@@ -394,7 +362,7 @@
def onListening():
portDeferred.addCallback(listening)
- portDeferred.addErrback(err)
+ portDeferred.addErrback(log.err)
portDeferred.addBoth(lambda ignored: reactor.stop())
needsRunningReactor(reactor, onListening)
Modified: branches/no-call-with-logger-6789-2/twisted/internet/test/test_udp.py
==============================================================================
--- branches/no-call-with-logger-6789-2/twisted/internet/test/test_udp.py (original)
+++ branches/no-call-with-logger-6789-2/twisted/internet/test/test_udp.py Thu Mar 17 08:04:33 2016
@@ -15,8 +15,7 @@
from zope.interface import implementer
from zope.interface.verify import verifyObject
-from twisted.python import context
-from twisted.python.log import ILogContext, err
+from twisted.python import log
from twisted.internet.test.reactormixins import ReactorBuilder
from twisted.internet.defer import Deferred, maybeDeferred
from twisted.internet.interfaces import (
@@ -165,41 +164,6 @@
0, interface='example.com')
- def test_logPrefix(self):
- """
- Datagram transports implement L{ILoggingContext.logPrefix} to return a
- message reflecting the protocol they are running.
- """
- class CustomLogPrefixDatagramProtocol(DatagramProtocol):
- def __init__(self, prefix):
- self._prefix = prefix
- self.system = Deferred()
-
- def logPrefix(self):
- return self._prefix
-
- def datagramReceived(self, bytes, addr):
- if self.system is not None:
- system = self.system
- self.system = None
- system.callback(context.get(ILogContext)["system"])
-
- reactor = self.buildReactor()
- protocol = CustomLogPrefixDatagramProtocol("Custom Datagrams")
- d = protocol.system
- port = self.getListeningPort(reactor, protocol)
- address = port.getHost()
-
- def gotSystem(system):
- self.assertEqual("Custom Datagrams (UDP)", system)
- d.addCallback(gotSystem)
- d.addErrback(err)
- d.addCallback(lambda ignored: reactor.stop())
-
- port.write(b"some bytes", ('127.0.0.1', address.port))
- self.runReactor(reactor)
-
-
def test_str(self):
"""
C{str()} on the listening port object includes the port number.
@@ -257,7 +221,7 @@
d = defer.gatherResults([serverStarted, clientStarted])
d.addCallback(cbClientStarted)
d.addCallback(cbServerReceived)
- d.addErrback(err)
+ d.addErrback(log.err)
self.runReactor(reactor)
packet = server.packets[0]
@@ -306,7 +270,7 @@
d = defer.gatherResults([serverStarted, clientStarted])
d.addCallback(cbClientStarted)
d.addCallback(cbServerReceived)
- d.addErrback(err)
+ d.addErrback(log.err)
self.runReactor(reactor)
packet = server.packets[0]
Modified: branches/no-call-with-logger-6789-2/twisted/internet/win32eventreactor.py
==============================================================================
--- branches/no-call-with-logger-6789-2/twisted/internet/win32eventreactor.py (original)
+++ branches/no-call-with-logger-6789-2/twisted/internet/win32eventreactor.py Thu Mar 17 08:04:33 2016
@@ -232,7 +232,10 @@
for fd in self._writes.keys():
ranUserCode = True
- log.callWithLogger(fd, self._runWrite, fd)
+ try:
+ self._runWrite(fd)
+ except Exception:
+ log.err()
if ranUserCode:
# If application code *might* have scheduled an event, assume it
@@ -275,7 +278,10 @@
events = WSAEnumNetworkEvents(fileno, event)
if FD_CLOSE in events:
self._closedAndReading[fd] = True
- log.callWithLogger(fd, self._runAction, action, fd)
+ try:
+ self._runAction(action, fd)
+ except Exception:
+ log.err()
def _runWrite(self, fd):