git: cfbd02100e95 - main - net-p2p/py-vertex: Remove expired port

From: Rene Ladan <rene_at_FreeBSD.org>
Date: Mon, 01 Apr 2024 11:45:39 UTC
The branch main has been updated by rene:

URL: https://cgit.FreeBSD.org/ports/commit/?id=cfbd02100e95487d3a283fdbcedceee203e9a034

commit cfbd02100e95487d3a283fdbcedceee203e9a034
Author:     Rene Ladan <rene@FreeBSD.org>
AuthorDate: 2024-04-01 11:45:30 +0000
Commit:     Rene Ladan <rene@FreeBSD.org>
CommitDate: 2024-04-01 11:45:30 +0000

    net-p2p/py-vertex: Remove expired port
    
    2024-03-31 net-p2p/py-vertex: Abandoned project since 7 years back
---
 MOVED                              |   1 +
 net-p2p/Makefile                   |   1 -
 net-p2p/py-vertex/Makefile         |  28 --
 net-p2p/py-vertex/distinfo         |   2 -
 net-p2p/py-vertex/files/patch-2to3 | 519 -------------------------------------
 net-p2p/py-vertex/pkg-descr        |  16 --
 6 files changed, 1 insertion(+), 566 deletions(-)

diff --git a/MOVED b/MOVED
index 20965885fb74..89975e0c0cfa 100644
--- a/MOVED
+++ b/MOVED
@@ -3122,3 +3122,4 @@ security/py-nassl||2024-04-01|Has expired: It does not support OpenSSL 3.0+
 devel/cil||2024-04-01|Has expired: Unmaintained upstream due to lack of time
 irc/infobot||2024-04-01|Has expired: Abandonware, outdated version and last upstream release in 2008
 devel/py-mox3||2024-04-01|Has expired: Upstream no longer active and repository has been archived. See also: https://lists.openstack.org/pipermail/openstack-discuss/2020-June/015518.html
+net-p2p/py-vertex||2024-04-01|Has expired: Abandoned project since 7 years back
diff --git a/net-p2p/Makefile b/net-p2p/Makefile
index 8b437a83c5d1..35eec1bd9aac 100644
--- a/net-p2p/Makefile
+++ b/net-p2p/Makefile
@@ -78,7 +78,6 @@
     SUBDIR += py-nicotine-plus
     SUBDIR += py-transmission-rpc
     SUBDIR += py-tremc
-    SUBDIR += py-vertex
     SUBDIR += pyln-bolt7
     SUBDIR += pyln-client
     SUBDIR += pyln-proto
diff --git a/net-p2p/py-vertex/Makefile b/net-p2p/py-vertex/Makefile
deleted file mode 100644
index 9325d438e1d8..000000000000
--- a/net-p2p/py-vertex/Makefile
+++ /dev/null
@@ -1,28 +0,0 @@
-PORTNAME=	vertex
-PORTVERSION=	0.3.1
-PORTREVISION=	3
-CATEGORIES=	net-p2p python
-MASTER_SITES=	PYPI
-PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
-DISTNAME=	Vertex-${PORTVERSION}
-
-MAINTAINER=	sunpoet@FreeBSD.org
-COMMENT=	Implementation of Q2Q protocol
-WWW=		https://launchpad.net/divmod
-
-LICENSE=	MIT
-LICENSE_FILE=	${WRKSRC}/LICENSE
-
-DEPRECATED=	Abandoned project since 7 years back
-EXPIRATION_DATE=2024-03-31
-
-RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}epsilon>=0:devel/py-epsilon@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}openssl>=0,1:security/py-openssl@${PY_FLAVOR} \
-		${PYTHON_PKGNAMEPREFIX}twisted>=0:devel/py-twisted@${PY_FLAVOR}
-
-USES=		python
-USE_PYTHON=	autoplist concurrent distutils
-
-NO_ARCH=	yes
-
-.include <bsd.port.mk>
diff --git a/net-p2p/py-vertex/distinfo b/net-p2p/py-vertex/distinfo
deleted file mode 100644
index faf3254b5caf..000000000000
--- a/net-p2p/py-vertex/distinfo
+++ /dev/null
@@ -1,2 +0,0 @@
-SHA256 (Vertex-0.3.1.tar.gz) = 2a81a33bb21392ae2c068399d6a720c6c5fef8b3591528ba7300749d1a054c43
-SIZE (Vertex-0.3.1.tar.gz) = 89909
diff --git a/net-p2p/py-vertex/files/patch-2to3 b/net-p2p/py-vertex/files/patch-2to3
deleted file mode 100644
index 6f04ad175c56..000000000000
--- a/net-p2p/py-vertex/files/patch-2to3
+++ /dev/null
@@ -1,519 +0,0 @@
---- vertex/gtk2hack.py.orig	2013-08-05 02:42:24 UTC
-+++ vertex/gtk2hack.py
-@@ -15,7 +15,7 @@ class _NullCb:
-         self.name = name
- 
-     def __call__(self, *a, **kw):
--        print 'No callback provided for', self.name, a, kw
-+        print('No callback provided for', self.name, a, kw)
- 
- class _SignalAttacher:
-     def __init__(self, original):
-@@ -100,19 +100,19 @@ class AcceptConnectionDialog:
- 
-     def acceptConnectionEvt(self, evt):
-         self.done = True
--        print "YES"
-+        print("YES")
-         self.d.callback(1)
--        print "WHAT"
-+        print("WHAT")
-         self.window.destroy()
- 
-     def rejectConnectionEvt(self, evt):
--        print "DSTRY"
-+        print("DSTRY")
-         if not self.done:
--            print "DIE!"
-+            print("DIE!")
-             from twisted.python import failure
-             self.d.errback(failure.Failure(KeyError("Connection rejected by user")))
-         else:
--            print "OK"
-+            print("OK")
- 
- from twisted.internet.protocol import ServerFactory
- from twisted.internet.protocol import Protocol
-@@ -120,10 +120,10 @@ from twisted.internet.protocol import Protocol
- class VertexDemoProtocol(Protocol):
- 
-     def connectionMade(self):
--        print 'CONN MADE'
-+        print('CONN MADE')
- 
-     def dataReceived(self, data):
--        print 'HOLY SHNIKIES', data
-+        print('HOLY SHNIKIES', data)
- 
- class VertexFactory(ServerFactory):
-     protocol = VertexDemoProtocol
-@@ -151,7 +151,7 @@ class BuddyItem:
-         self.plug.loadedBuddies[q2qaddress] = self
- 
-     def initiateFileTransfer(self, evt):
--        print 'Initiate transfer with ' + self.alias + self.q2qaddress
-+        print('Initiate transfer with ' + self.alias + self.q2qaddress)
- 
-     def addToMenu(self):
-         self.plug.section.append(self.menuItem)
-@@ -170,7 +170,7 @@ class PlugEntry:
-         self.xml = gtk.glade.XML(GLADE_FILE, "notification_popup")
- 
-     def register(self, section):
--        print 'REGISTER'
-+        print('REGISTER')
-         self.section = section
- 
-         workingdir = FilePath(os.path.expanduser("~/.vertex"))
-@@ -197,11 +197,11 @@ class PlugEntry:
-         self.buildContactMenu()
- 
-     def clearContactMenu(self):
--        for bud in self.loadedBuddies.values():
-+        for bud in list(self.loadedBuddies.values()):
-             bud.removeFromMenu()
- 
-     def buildContactMenu(self):
--        l = self.loadedBuddies.values()
-+        l = list(self.loadedBuddies.values())
-         l.sort(key=lambda x: x.alias)
-         l.reverse()
-         for bud in l:
---- vertex/ptcp.py.orig	2013-08-05 02:42:24 UTC
-+++ vertex/ptcp.py
-@@ -17,7 +17,7 @@ from vertex import tcpdfa
- from vertex.statemachine import StateError
- 
- 
--genConnID = itertools.count(8).next
-+genConnID = itertools.count(8).__next__
- 
- MAX_PSEUDO_PORT = (2 ** 16)
- 
-@@ -818,7 +818,9 @@ class PTCPConnection(tcpdfa.TCP):
- class PTCPAddress(object):
-     # garbage
- 
--    def __init__(self, (host, port), (pseudoHostPort, pseudoPeerPort)):
-+    def __init__(self, xxx_todo_changeme, xxx_todo_changeme1):
-+        (host, port) = xxx_todo_changeme
-+        (pseudoHostPort, pseudoPeerPort) = xxx_todo_changeme1
-         self.host = host
-         self.port = port
-         self.pseudoHostPort = pseudoHostPort
-@@ -945,7 +947,7 @@ class PTCP(protocol.DatagramProtocol):
-         stop notifications, sending hail-mary final FIN packets (which may not
-         reach the other end, but nevertheless can be useful) when possible.
-         """
--        for conn in self._connections.values():
-+        for conn in list(self._connections.values()):
-             conn.immediateShutdown()
-         assert not self._connections
- 
-@@ -994,11 +996,11 @@ class PTCP(protocol.DatagramProtocol):
-                     stb=True,
-                     destination=addr))
-         except GarbageDataError:
--            print "garbage data!", pkt
--        except ChecksumMismatchError, cme:
--            print "bad checksum", pkt, cme
--            print repr(pkt.data)
--            print hex(pkt.checksum), hex(pkt.computeChecksum())
-+            print("garbage data!", pkt)
-+        except ChecksumMismatchError as cme:
-+            print("bad checksum", pkt, cme)
-+            print(repr(pkt.data))
-+            print(hex(pkt.checksum), hex(pkt.computeChecksum()))
-         else:
-             self.packetReceived(pkt)
- 
---- vertex/q2q.py.orig	2015-03-05 04:12:41 UTC
-+++ vertex/q2q.py
-@@ -373,7 +373,7 @@ class TCPMethod:
-     def attempt(self, *a):
-         return [self.attemptFactory(self, *a)]
- 
--connectionCounter = itertools.count().next
-+connectionCounter = itertools.count().__next__
- connectionCounter()
- 
- class VirtualConnectionAttempt(AbstractConnectionAttempt):
-@@ -441,7 +441,7 @@ class _PTCPConnectionAttemptPress(AbstractConnectionAt
-         if not self.cancelled:
-             self.q2qproto.service.dispatcher.unbindPort(self.newPort)
-         else:
--            print 'totally wacky, [press] cancelled twice!'
-+            print('totally wacky, [press] cancelled twice!')
-         AbstractConnectionAttempt.cancel(self)
- 
- class PTCPMethod(TCPMethod):
-@@ -498,7 +498,7 @@ class RPTCPConnectionAttempt(AbstractConnectionAttempt
-         if not self.cancelled:
-             self.q2qproto.service.dispatcher.unbindPort(self.newPort)
-         else:
--            print 'totally wacky, [rptcp] cancelled twice!'
-+            print('totally wacky, [rptcp] cancelled twice!')
-         AbstractConnectionAttempt.cancel(self)
- 
- 
-@@ -866,7 +866,7 @@ class Q2Q(AMP, subproducer.SuperProducer):
-             log.msg("removing remote listener for %r" % (key,))
-             self.service.listeningClients[key].remove(value)
-         self.listeningClient = []
--        for xport in self.connections.values():
-+        for xport in list(self.connections.values()):
-             safely(xport.connectionLost, reason)
-         for observer in self.connectionObservers:
-             safely(observer)
-@@ -1349,7 +1349,7 @@ class Q2Q(AMP, subproducer.SuperProducer):
- 
-         subj = certificate_request.getSubject()
- 
--        sk = subj.keys()
-+        sk = list(subj.keys())
-         if 'commonName' not in sk:
-             raise BadCertificateRequest(
-                 "Certificate requested with bad subject: %s" % (sk,))
-@@ -1926,7 +1926,7 @@ class DefaultQ2QAvatar:
- 
-     def signCertificateRequest(self, certificateRequest,
-                                domainCert, suggestedSerial):
--        keyz = certificateRequest.getSubject().keys()
-+        keyz = list(certificateRequest.getSubject().keys())
-         if keyz != ['commonName']:
-             raise BadCertificateRequest(
-                 "Don't know how to verify fields other than CN: " +
-@@ -2034,7 +2034,7 @@ class _pemmap(object):
-     def file(self, name, mode):
-         try:
-             return file(os.path.join(self.pathname, name)+'.pem', mode)
--        except IOError, ioe:
-+        except IOError as ioe:
-             raise KeyError(name, ioe)
- 
-     def __setitem__(self, key, cert):
-@@ -2054,21 +2054,21 @@ class _pemmap(object):
-                 yield key, value
- 
-     def items(self):
--        return list(self.iteritems())
-+        return list(self.items())
- 
-     def iterkeys(self):
--        for k, v in self.iteritems():
-+        for k, v in self.items():
-             yield k
- 
-     def keys(self):
--        return list(self.iterkeys())
-+        return list(self.keys())
- 
-     def itervalues(self):
--        for k, v in self.iteritems():
-+        for k, v in self.items():
-             yield v
- 
-     def values(self):
--        return list(self.itervalues())
-+        return list(self.values())
- 
- 
- 
-@@ -2149,7 +2149,8 @@ class PTCPConnectionDispatcher(object):
-         self.factory = factory
-         self._ports = {}
- 
--    def seedNAT(self, (host, port), sourcePort=0, conditional=True):
-+    def seedNAT(self, xxx_todo_changeme, sourcePort=0, conditional=True):
-+        (host, port) = xxx_todo_changeme
-         if sourcePort not in self._ports:
-             if sourcePort != 0:
-                 if conditional:
-@@ -2183,8 +2184,8 @@ class PTCPConnectionDispatcher(object):
-         return proto.connect(factory, host, port)
- 
-     def iterconnections(self):
--        for (p, proto) in self._ports.itervalues():
--            for c in p.protocol._connections.itervalues():
-+        for (p, proto) in self._ports.values():
-+            for c in p.protocol._connections.values():
-                 if c.protocol is not None:
-                     yield c.protocol
-                 else:
-@@ -2193,8 +2194,8 @@ class PTCPConnectionDispatcher(object):
- 
-     def killAllConnections(self):
-         dl = []
--        for p, proto in self._ports.itervalues():
--            for c in p.protocol._connections.itervalues():
-+        for p, proto in self._ports.values():
-+            for c in p.protocol._connections.values():
-                 c._stopRetransmitting()
-             dl.append(defer.maybeDeferred(p.stopListening))
-         self._ports = {}
-@@ -2227,8 +2228,8 @@ class Q2QService(service.MultiService, protocol.Server
-         not.  For testing purposes only.
-         """
-         return itertools.chain(
--            self.appConnectionCache.cachedConnections.itervalues(),
--            self.secureConnectionCache.cachedConnections.itervalues(),
-+            iter(self.appConnectionCache.cachedConnections.values()),
-+            iter(self.secureConnectionCache.cachedConnections.values()),
-             iter(self.subConnections),
-             (self.dispatcher or ()) and self.dispatcher.iterconnections())
- 
-@@ -2328,7 +2329,7 @@ class Q2QService(service.MultiService, protocol.Server
-         def _secured(proto):
-             lfm = self.localFactoriesMapping
-             def startup(listenResult):
--                for protocol, factory in protocolsToFactories.iteritems():
-+                for protocol, factory in protocolsToFactories.items():
-                     key = (fromAddress, protocol)
-                     if key not in lfm:
-                         lfm[key] = []
-@@ -2336,7 +2337,7 @@ class Q2QService(service.MultiService, protocol.Server
-                     factory.doStart()
- 
-                 def shutdown():
--                    for protocol, factory in protocolsToFactories.iteritems():
-+                    for protocol, factory in protocolsToFactories.items():
-                         lfm[fromAddress, protocol].remove(
-                             (factory, serverDescription))
-                         factory.doStop()
-@@ -2353,7 +2354,7 @@ class Q2QService(service.MultiService, protocol.Server
- 
-             def _gotPubUDPPort(publicAddress):
-                 self._publicUDPAddress = publicAddress
--                return proto.listen(fromAddress, protocolsToFactories.keys(),
-+                return proto.listen(fromAddress, list(protocolsToFactories.keys()),
-                                     serverDescription).addCallback(startup)
-             pubUDPDeferred.addCallback(_gotPubUDPPort)
-             return pubUDPDeferred
-@@ -2501,7 +2502,7 @@ class Q2QService(service.MultiService, protocol.Server
- 
-     def stopService(self):
-         dl = []
--        for cwait, delayed in self.inboundConnections.itervalues():
-+        for cwait, delayed in self.inboundConnections.values():
-             delayed.cancel()
-         self.inboundConnections.clear()
-         if self.q2qPort is not None:
---- vertex/q2qclient.py.orig	2015-03-05 02:53:34 UTC
-+++ vertex/q2qclient.py
-@@ -24,7 +24,7 @@ class Q2QAuthorize(Options):
-         self.password = password
- 
-     def reportNoCertificate(self, error):
--        print "No certificate retrieved:", error.getErrorMessage(), "(see ~/.q2q-client-log for details)"
-+        print("No certificate retrieved:", error.getErrorMessage(), "(see ~/.q2q-client-log for details)")
-         log.err(error)
-         return None
- 
-@@ -115,7 +115,7 @@ class FileSender(protocol.Protocol):
-         self.transport.loseConnection()
- 
-     def dataReceived(self, data):
--        print "WTF THE CLIENT IS GETTING DATA", repr(data)
-+        print("WTF THE CLIENT IS GETTING DATA", repr(data))
- 
-     def registerProducer(self, producer, streaming):
-         self.transport.registerProducer(producer, streaming)
-@@ -166,9 +166,9 @@ class ClientQ2QService(q2q.Q2QService):
-                                 *a, **kw)
- 
-     def getDefaultFrom(self, default=None):
--        i = self.certificateStorage.localStore.iterkeys()
-+        i = iter(self.certificateStorage.localStore.keys())
-         try:
--            return i.next()
-+            return next(i)
-         except StopIteration:
-             return default
- 
-@@ -244,7 +244,7 @@ class Q2QReceive(Options):
-         def pr(x):
-             return x
-         def stopit(err):
--            print "Couldn't Register for File Transfer:", err.getErrorMessage()
-+            print("Couldn't Register for File Transfer:", err.getErrorMessage())
-             log.err(err)
-             reactor.stop()
-         serv.listenQ2Q(self.parent.getFrom(),
-@@ -276,13 +276,13 @@ class TextNexusUI(sigma.BaseNexusUI):
-         self.call.start(5)
- 
-     def report(self):
--        print 'Transloads:', len(self.transloads)
-+        print('Transloads:', len(self.transloads))
-         for transloadui in self.transloads:
--            print '---', transloadui.name, '---'
--            print transloadui.bits.percent()
--            for peer, mask in transloadui.masks.items():
--                print peer, mask.percent()
--        print 'end report'
-+            print('---', transloadui.name, '---')
-+            print(transloadui.bits.percent())
-+            for peer, mask in list(transloadui.masks.items()):
-+                print(peer, mask.percent())
-+        print('end report')
- 
- class Q2QSigma(Options):
- 
-@@ -346,7 +346,7 @@ class Q2QRegister(Options):
-         svc = self.parent.getService()
- 
-         def showit(x):
--            print "%s: %s" % (x.value.__class__, x.getErrorMessage())
-+            print("%s: %s" % (x.value.__class__, x.getErrorMessage()))
- 
-         enregister(svc, newAddress, self.password).addErrback(
-             showit).addBoth(lambda nothing: reactor.stop())
---- vertex/q2qstandalone.py.orig	2015-03-05 02:53:34 UTC
-+++ vertex/q2qstandalone.py
-@@ -41,7 +41,8 @@ class _usermap:
-     def __init__(self, path):
-         self.path = path
- 
--    def __setitem__(self, (domain, username), password):
-+    def __setitem__(self, xxx_todo_changeme, password):
-+        (domain, username) = xxx_todo_changeme
-         domainpath = os.path.join(self.path, domain)
-         if not os.path.exists(domainpath):
-             os.makedirs(domainpath)
-@@ -53,7 +54,8 @@ class _usermap:
-                     password=password.encode('hex')).serialize())
-         f.close()
- 
--    def get(self, (domain, username)):
-+    def get(self, xxx_todo_changeme1):
-+        (domain, username) = xxx_todo_changeme1
-         domainpath = os.path.join(self.path, domain)
-         if os.path.exists(domainpath):
-             filepath = os.path.join(domainpath, username+".info")
-@@ -70,7 +72,7 @@ class DirectoryCertificateAndUserStore(q2q.DirectoryCe
-         try:
-             return q2q.DirectoryCertificateStore.getPrivateCertificate(self, domain)
-         except KeyError:
--            if len(self.localStore.keys()) > 10:
-+            if len(list(self.localStore.keys())) > 10:
-                 # avoid DoS; nobody is going to need autocreated certs for more
-                 # than 10 domains
-                 raise
---- vertex/test/helpers.py.orig	2015-03-05 02:53:34 UTC
-+++ vertex/test/helpers.py
-@@ -63,17 +63,17 @@ class FakeQ2QService:
-                     if pump.flush(debug):
-                         result = True
-                 if debug:
--                    print 'iteration finished.  continuing?', result
-+                    print('iteration finished.  continuing?', result)
-                 c = self.calls
-                 self.calls = []
-                 for s, f, a, k in c:
-                     if debug:
--                        print 'timed event', s, f, a, k
-+                        print('timed event', s, f, a, k)
-                     f(*a,**k)
-         return result
- 
-     def listenQ2Q(self, fromAddress, protocolsToFactories, serverDescription):
--        for pname, pfact in protocolsToFactories.items():
-+        for pname, pfact in list(protocolsToFactories.items()):
-             self.listeners[fromAddress, pname] = pfact, serverDescription
-         return defer.succeed(None)
- 
-@@ -90,7 +90,7 @@ class FakeQ2QService:
- 
-         listener, description = self.listeners.get((toAddress, protocolName))
-         if listener is None:
--            print 'void listener', fromAddress, toAddress, self.listeners, self.listener
-+            print('void listener', fromAddress, toAddress, self.listeners, self.listener)
-             reason = Failure(KeyError())
-             protocolFactory.clientConnectionFailed(None, reason)
-             return defer.fail(reason)
---- vertex/test/test_dependencyservice.py.orig	2013-08-05 02:42:24 UTC
-+++ vertex/test/test_dependencyservice.py
-@@ -35,10 +35,10 @@ class TestDependencyService(unittest.TestCase):
-         args = dict(one={}, two={}, three={})
- 
-         one = One(**args)
--        self.assert_(one.initialized == ['ONE', 'THREE', 'TWO'])
-+        self.assertTrue(one.initialized == ['ONE', 'THREE', 'TWO'])
- 
-         two = Two(**args)
--        self.assert_(two.initialized == ['ONE', 'TWO', 'THREE'])
-+        self.assertTrue(two.initialized == ['ONE', 'TWO', 'THREE'])
- 
- 
-     def test_circularDepends(self):
-@@ -52,7 +52,7 @@ class TestDependencyService(unittest.TestCase):
-         except depserv.StartupError:
-             pass
-         else:
--            raise unittest.FailTest, 'circular dependencies did not raise an error'
-+            raise unittest.FailTest('circular dependencies did not raise an error')
- 
- 
-     def test_requiredWithDependency(self):
-@@ -66,4 +66,4 @@ class TestDependencyService(unittest.TestCase):
-         except depserv.StartupError:
-             pass
-         else:
--            raise unittest.FailTest, 'unsatisfied dependencies did not raise an error'
-+            raise unittest.FailTest('unsatisfied dependencies did not raise an error')
---- vertex/test/test_ptcp.py.orig	2015-03-05 04:12:41 UTC
-+++ vertex/test/test_ptcp.py
-@@ -48,8 +48,8 @@ class TestProtocol(protocol.Protocol):
-             bytes = ''.join(self.buffer)
-             if not self._waiting[1].startswith(bytes):
-                 x = len(os.path.commonprefix([bytes, self._waiting[1]]))
--                print x
--                print 'it goes wrong starting with', repr(bytes[x:x+100]), repr(self._waiting[1][x:x+100])
-+                print(x)
-+                print('it goes wrong starting with', repr(bytes[x:x+100]), repr(self._waiting[1][x:x+100]))
-             if bytes == self._waiting[1]:
-                 self._waiting[0].callback(None)
-                 self._waiting = None
-@@ -167,11 +167,11 @@ class PTCPTransportTestCase(ConnectedPTCPMixin, unitte
- 
-         def gotAddress(results):
-             (serverSuccess, serverAddress), (clientSuccess, clientAddress) = results
--            self.failUnless(serverSuccess)
--            self.failUnless(clientSuccess)
-+            self.assertTrue(serverSuccess)
-+            self.assertTrue(clientSuccess)
- 
--            self.assertEquals(serverAddress[1], serverPort.getHost().port)
--            self.assertEquals(clientAddress[1], clientPort.getHost().port)
-+            self.assertEqual(serverAddress[1], serverPort.getHost().port)
-+            self.assertEqual(clientAddress[1], clientPort.getHost().port)
- 
-         def connectionsMade(ignored):
-             return defer.DeferredList([serverProto.transport.whoami(), clientProto.transport.whoami()]).addCallback(gotAddress)
-@@ -228,7 +228,7 @@ class PTCPTransportTestCase(ConnectedPTCPMixin, unitte
-             ServerProtocol=TestProducerProtocol)
- 
-         def disconnected(ignored):
--            self.assertEquals(
-+            self.assertEqual(
-                 ''.join(clientProto.buffer),
-                 ''.join([chr(n) * serverProto.WRITE_SIZE
-                          for n in range(serverProto.NUM_WRITES)]))
-@@ -249,7 +249,7 @@ class PTCPTransportTestCase(ConnectedPTCPMixin, unitte
-             clientProto.transport.resumeProducing()
- 
-         def cbBytes(ignored):
--            self.failUnless(resumed)
-+            self.assertTrue(resumed)
-             clientProto.transport.loseConnection()
- 
-         def cbConnect(ignored):
-@@ -282,7 +282,7 @@ class PTCPTransportTestCase(ConnectedPTCPMixin, unitte
- 
-         def cbBytes(ignored):
-             # print 'Disconnected'
--            self.assertEquals(
-+            self.assertEqual(
-                 ''.join(clientProto.buffer),
-                 ''.join([chr(n) * serverProto.WRITE_SIZE
-                          for n in range(serverProto.NUM_WRITES)]))
diff --git a/net-p2p/py-vertex/pkg-descr b/net-p2p/py-vertex/pkg-descr
deleted file mode 100644
index 0d4242a7a471..000000000000
--- a/net-p2p/py-vertex/pkg-descr
+++ /dev/null
@@ -1,16 +0,0 @@
-Vertex is an implementation of the Q2Q protocol (sort of like P2P, but one
-better). There are a few moving parts in Vertex:
-
-    * PTCP: a protocol which is nearly identical to TCP, but which runs over
-      UDP. This lets Q2Q penetrate most NAT configurations.
-    * JUICE ([JU]ice [I]s [C]oncurrent [E]vents): a very simple but immensely
-      flexible protocol which forms the basis of the high-level aspects of Q2Q
-    * vertex: a command line tool which exposes a few features useful in many
-      situations (such as registration and authentication)
-
-The Q2Q network has some decentralized features (there is no one server or
-company which can control all Q2Q addresses) and features of centralization
-(addresses beneath a particular domain are issued by a server for that domain;
-once issued, some activities require the server to be contacted again, while
-others do not). Vertex includes an identity server capable of hosting Q2Q
-addresses.